silverstripe-framework/thirdparty/tinymce-spellchecker/classes/EnchantSpell.php
Ingo Schommer 9acde4e9ac API CHANGE Moved jsparty/tiny_mce/plugins/spellchecker to sapphire/thirdparty/tinymce-spellchecker
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@92501 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-11-21 02:29:47 +00:00

68 lines
1.7 KiB
PHP

<?php
/**
* $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $
*
* This class was contributed by Michel Weimerskirch.
*
* @package MCManager.includes
* @author Moxiecode
* @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.
*/
class EnchantSpell extends SpellChecker {
/**
* Spellchecks an array of words.
*
* @param String $lang Selected language code (like en_US or de_DE). Shortcodes like "en" and "de" work with enchant >= 1.4.1
* @param Array $words Array of words to check.
* @return Array of misspelled words.
*/
function &checkWords($lang, $words) {
$r = enchant_broker_init();
if (enchant_broker_dict_exists($r,$lang)) {
$d = enchant_broker_request_dict($r, $lang);
$returnData = array();
foreach($words as $key => $value) {
$correct = enchant_dict_check($d, $value);
if(!$correct) {
$returnData[] = trim($value);
}
}
return $returnData;
enchant_broker_free_dict($d);
} else {
}
enchant_broker_free($r);
}
/**
* Returns suggestions for a specific word.
*
* @param String $lang Selected language code (like en_US or de_DE). Shortcodes like "en" and "de" work with enchant >= 1.4.1
* @param String $word Specific word to get suggestions for.
* @return Array of suggestions for the specified word.
*/
function &getSuggestions($lang, $word) {
$r = enchant_broker_init();
$suggs = array();
if (enchant_broker_dict_exists($r,$lang)) {
$d = enchant_broker_request_dict($r, $lang);
$suggs = enchant_dict_suggest($d, $word);
enchant_broker_free_dict($d);
} else {
}
enchant_broker_free($r);
return $suggs;
}
}
?>