--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/includes/clientside/tinymce/plugins/spellchecker/classes/PSpell.php Sun Dec 21 17:56:32 2008 -0500
@@ -0,0 +1,81 @@
+<?php
+/**
+ * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $
+ *
+ * @author Moxiecode
+ * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.
+ */
+
+class PSpell extends SpellChecker {
+ /**
+ * Spellchecks an array of words.
+ *
+ * @param {String} $lang Language code like sv or en.
+ * @param {Array} $words Array of words to spellcheck.
+ * @return {Array} Array of misspelled words.
+ */
+ function &checkWords($lang, $words) {
+ $plink = $this->_getPLink($lang);
+
+ $outWords = array();
+ foreach ($words as $word) {
+ if (!pspell_check($plink, trim($word)))
+ $outWords[] = utf8_encode($word);
+ }
+
+ return $outWords;
+ }
+
+ /**
+ * Returns suggestions of for a specific word.
+ *
+ * @param {String} $lang Language code like sv or en.
+ * @param {String} $word Specific word to get suggestions for.
+ * @return {Array} Array of suggestions for the specified word.
+ */
+ function &getSuggestions($lang, $word) {
+ $words = pspell_suggest($this->_getPLink($lang), $word);
+
+ for ($i=0; $i<count($words); $i++)
+ $words[$i] = utf8_encode($words[$i]);
+
+ return $words;
+ }
+
+ /**
+ * Opens a link for pspell.
+ */
+ function &_getPLink($lang) {
+ // Check for native PSpell support
+ if (!function_exists("pspell_new"))
+ $this->throwError("PSpell support not found in PHP installation.");
+
+ // Setup PSpell link
+ $plink = pspell_new(
+ $lang,
+ $this->_config['PSpell.spelling'],
+ $this->_config['PSpell.jargon'],
+ $this->_config['PSpell.encoding'],
+ $this->_config['PSpell.mode']
+ );
+
+ // Setup PSpell link
+/* if (!$plink) {
+ $pspellConfig = pspell_config_create(
+ $lang,
+ $this->_config['PSpell.spelling'],
+ $this->_config['PSpell.jargon'],
+ $this->_config['PSpell.encoding']
+ );
+
+ $plink = pspell_new_config($pspell_config);
+ }*/
+
+ if (!$plink)
+ $this->throwError("No PSpell link found opened.");
+
+ return $plink;
+ }
+}
+
+?>