home2/isose750/public_html/ajuda/suggest_email.php000064400000006572146730723020016101 0ustar00 "emailtypo{$display_div}{$div}", 'suggestText' => sprintf($hesklang['didum'], str_replace('@', '@', $suggest . '')), 'formattedSuggestedEmail' => addslashes($suggest), 'originalAddress' => preg_quote($address, '/'), 'noResponseText' => $hesklang['nole'], 'yesResponseText' => $hesklang['yfix'] ); } // END hesk_emailTypoShow() function hesk_emailTypo($address) { global $hesk_settings; // Remove anything more than a single address $address = str_replace(strstr($address,','),'',$address); $address = str_replace(strstr($address,';'),'',$address); $address = strtolower(trim($address)); // Get email domain $domain = substr(strrchr($address, '@'), 1); // If no domain return false if ( ! $domain) { return false; } // If we have an exact match return false if ( in_array($domain, $hesk_settings['email_providers']) ) { return false; } $shortest = -1; $closest = ''; foreach ($hesk_settings['email_providers'] as $provider) { $similar = levenshtein($domain, $provider, 2, 1, 3); if ($similar < 1) { return false; } if ($similar < $shortest || $shortest < 0) { $closest = $provider; $shortest = $similar; } } if ($shortest < 4) { return str_replace($domain, $closest, $address); } else { return false; } } // END hesk_emailTypo() ?>