Server IP : 180.180.241.3 / Your IP : 216.73.216.252 Web Server : Microsoft-IIS/7.5 System : Windows NT NETWORK-NHRC 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586 User : IUSR ( 0) PHP Version : 5.3.28 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /AppServ/www/news/components/com_jce/editor/tiny_mce/plugins/spellchecker/classes/ |
Upload File : |
<?php /** * @package JCE * @copyright Copyright (c) 2009-2013 Ryan Demmer. All rights reserved. * @license GNU/GPL 2 or later - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html * JCE is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. */ require_once(WF_EDITOR_LIBRARIES . '/classes/plugin.php'); class WFSpellCheckerPlugin extends WFEditorPlugin { /** * Constructor activating the default information of the class * * @access protected */ public function __construct() { parent::__construct(); $config = $this->getConfig(); $engine = $this->getEngine(); if (!$engine) { self::error('No Spellchecker Engine available'); } $request = WFRequest::getInstance(); // Setup plugin XHR callback functions $request->setRequest(array($engine, 'checkWords')); $request->setRequest(array($engine, 'getSuggestions')); $request->setRequest(array($engine, 'ignoreWord')); $request->setRequest(array($engine, 'ignoreWords')); $request->setRequest(array($engine, 'learnWord')); $this->execute(); } private function getConfig() { static $config; if (!is_array($config)) { $params = $this->getParams(); $config = array( 'general.engine' => $params->get('spellchecker.engine', 'googlespell'), // PSpell settings 'PSpell.mode' => $params->get('spellchecker.pspell_mode', 'PSPELL_FAST'), 'PSpell.spelling' => $params->get('spellchecker.pspell_spelling', ''), 'PSpell.jargon' => $params->get('spellchecker.pspell_jargon', ''), 'PSpell.encoding' => $params->get('spellchecker.pspell_encoding', ''), 'PSpell.dictionary' => JPATH_BASE . '/' . $params->get('spellchecker.pspell_dictionary', ''), // PSpellShell settings 'PSpellShell.mode' => $params->get('spellchecker.pspellshell_mode', 'PSPELL_FAST'), 'PSpellShell.aspell' => $params->get('spellchecker.pspellshell_aspell', '/usr/bin/aspell'), 'PSpellShell.tmp' => $params->get('spellchecker.pspellshell_tmp', '/tmp') ); // default to googlespell if browser if ($config['general.engine'] == 'browser') { $config['general.engine'] = 'googlespell'; } } return $config; } private function getEngine() { static $engine; $config = $this->getConfig(); if (!is_object($engine)) { $classname = $config['general.engine']; $file = dirname(__FILE__) . '/' . $classname . ".php"; if (is_file($file)) { require_once($file); $engine = new $classname($config); } } return $engine; } private static function error($str) { die('{"result":null,"id":null,"error":{"errstr":"' . addslashes($str) . '","errfile":"","errline":null,"errcontext":"","level":"FATAL"}}'); } } /** * @author Moxiecode * @copyright Copyright (c) 2004-2007, Moxiecode Systems AB, All rights reserved. */ class SpellChecker { /** * Constructor. * * @param $config Configuration name/value array. */ public function SpellChecker(&$config) { $this->_config = $config; } /** * Simple loopback function everything that gets in will be send back. * * @param $args.. Arguments. * @return {Array} Array of all input arguments. */ protected function &loopback(/* args.. */) { return func_get_args(); } /** * 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. */ public function &checkWords($lang, $words) { return $words; } /** * 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. */ public function &getSuggestions($lang, $word) { return array(); } /** * Throws an error message back to the user. This will stop all execution. * * @param {String} $str Message to send back to user. */ protected function throwError($str) { die('{"result":null,"id":null,"error":{"errstr":"' . addslashes($str) . '","errfile":"","errline":null,"errcontext":"","level":"FATAL"}}'); } } ?>