예제 #1
0
    return $str;
}
$word = isset($_POST['word']) ? $_POST['word'] : false;
$lang = replacer(isset($_GET['BXLang']) ? $_GET['BXLang'] : 'en');
$use_pspell = isset($_GET['use_pspell']) ? $_GET['use_pspell'] : true;
$use_custom_spell = isset($_GET['use_custom_spell']) ? $_GET['use_custom_spell'] : true;
$SC = new spellChecker();
$path = replacer($_SERVER["DOCUMENT_ROOT"] . COption::GetOptionString('fileman', "user_dics_path", "/freetrix/modules/fileman/u_dics"));
if (!is_dir($path)) {
    mkdir($path, FX_DIR_PERMISSIONS);
}
$lang_path = $path . '/' . $lang;
if (!is_dir($lang_path)) {
    mkdir($lang_path, FX_DIR_PERMISSIONS);
}
if (COption::GetOptionString('fileman', "use_separeted_dics", "Y") == "Y") {
    $user_path = $lang_path . '/' . $USER->GetID();
    if (!is_dir($user_path)) {
        mkdir($user_path, FX_DIR_PERMISSIONS);
    }
    $path = $user_path;
} else {
    $path = $lang_path;
}
$SC->init($lang, 2, $use_pspell, $use_custom_spell, "", PSPELL_FAST, $path . "/custom.pws");
$SC->addWord($word);
$node = 1;
$encoding = "Windows-1251";
header('Content-Type: text/xml');
echo '<?xml version="1.0" encoding="' . $encoding . '" standalone="yes"?>';
echo '<root>' . $node . '</root>';
예제 #2
0
//$dict = 'en';
if (empty($dict)) {
    $lang = ucfirst($atmail->Language);
    header("Content-type: text/xml; charset: utf-8");
    echo "<Error>Spellcheck not available for {$lang} language</Error>\n";
    $atmail->end();
}
// only bother requiring if we pass authentication
require_once 'spellChecker.php';
$atmail->httpheaders();
$spellChecker = new spellChecker($dict, "{$atmail->username}@{$atmail->pop3host}", $pref['use_php_pspell']);
// Add word to our personal dict file
if ($_REQUEST['add']) {
    $personal = $_REQUEST['replace'] ? $_REQUEST['replace'] : $_REQUEST['wordreplace'];
    // Insert the entry into the database
    $spellChecker->addWord($atmail->Account, $personal);
}
if ($_REQUEST['ignore'] || $_REQUEST['change'] && $_REQUEST['wordreplace']) {
    // Ignore the word
    $spellChecker->ignoreWord($_REQUEST['wordreplace']);
}
// spell check the email
$_REQUEST['emailmessage'] = str_replace(array('<br>', '<BR>', '<br/>', '<BR/>', '</p>', '</P>'), "\n", $_REQUEST['emailmessage']);
// Remove any html entities and tags
$_REQUEST['emailmessage'] = preg_replace('/&\\w+;/', '', $_REQUEST['emailmessage']);
$_REQUEST['emailmessage'] = strip_tags($_REQUEST['emailmessage']);
// Remove punctuation such as , ; :
//$_REQUEST['emailmessage'] = preg_replace('/[^a-zA-Z\-]+/', ' ', $_REQUEST['emailmessage']);
foreach (explode("\n", $_REQUEST['emailmessage']) as $line) {
    $words = array_unique(preg_split('/\\s+/', $line));
    foreach ($words as $word) {