|
@@ -11,6 +11,7 @@
|
|
|
* @version $Id$
|
|
|
* @package plugins
|
|
|
* @subpackage squirrelspell
|
|
|
+ * @todo remove sqspell_ prefix from main php scripts.
|
|
|
*/
|
|
|
|
|
|
/** @ignore */
|
|
@@ -34,101 +35,48 @@ function squirrelmail_plugin_init_squirrelspell() {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * This function formats and adds the plugin and its description to the
|
|
|
- * Options screen.
|
|
|
+ * Register option block
|
|
|
*
|
|
|
+ * This function formats and adds the plugin and its description to the
|
|
|
+ * Options screen. Code moved to internal function in order to reduce
|
|
|
+ * setup.php size.
|
|
|
* @return void
|
|
|
*/
|
|
|
function squirrelspell_optpage_register_block() {
|
|
|
- global $optpage_blocks;
|
|
|
- /**
|
|
|
- * Check if this browser is capable of using the plugin
|
|
|
- */
|
|
|
- if (checkForJavascript()) {
|
|
|
- /**
|
|
|
- * The browser checks out.
|
|
|
- * Register Squirrelspell with the $optpage_blocks array.
|
|
|
- */
|
|
|
- $optpage_blocks[] =
|
|
|
- array(
|
|
|
- 'name' => _("SpellChecker Options"),
|
|
|
- 'url' => '../plugins/squirrelspell/sqspell_options.php',
|
|
|
- 'desc' => _("Here you may set up how your personal dictionary is stored, edit it, or choose which languages should be available to you when spell-checking."),
|
|
|
- 'js' => TRUE);
|
|
|
- }
|
|
|
+ include_once(SM_PATH . 'plugins/squirrelspell/sqspell_functions.php');
|
|
|
+ squirrelspell_optpage_block_function();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * Add spell check button in compose.
|
|
|
+ *
|
|
|
* This function adds a "Check Spelling" link to the "Compose" row
|
|
|
* during message composition.
|
|
|
- *
|
|
|
* @return void
|
|
|
*/
|
|
|
function squirrelspell_setup() {
|
|
|
- /**
|
|
|
- * Check if this browser is capable of displaying SquirrelSpell
|
|
|
- * correctly.
|
|
|
- */
|
|
|
- if (checkForJavascript()) {
|
|
|
- /**
|
|
|
- * Some people may choose to disable javascript even though their
|
|
|
- * browser is capable of using it. So these freaks don't complain,
|
|
|
- * use document.write() so the "Check Spelling" button is not
|
|
|
- * displayed if js is off in the browser.
|
|
|
- */
|
|
|
- echo "<script type=\"text/javascript\">\n".
|
|
|
- "<!--\n".
|
|
|
- 'document.write("<input type=\"button\" value=\"'.
|
|
|
- _("Check Spelling").
|
|
|
- '\" name=\"check_spelling\" onclick=\"window.open(\'../plugins/squirrelspell/sqspell_'.
|
|
|
- 'interface.php\', \'sqspell\', \'status=yes,width=550,height=370,'.
|
|
|
- 'resizable=yes\')\" />");' . "\n".
|
|
|
- "//-->\n".
|
|
|
- "</script>\n";
|
|
|
- }
|
|
|
+ include_once(SM_PATH . 'plugins/squirrelspell/sqspell_functions.php');
|
|
|
+ squirrelspell_setup_function();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * Upgrade dictionaries
|
|
|
+ *
|
|
|
* Transparently upgrades user's dictionaries when message listing is loaded
|
|
|
* @since 1.5.1 (sqspell 0.5)
|
|
|
*/
|
|
|
function squirrelspell_upgrade() {
|
|
|
- // globalize configuration vars before loading config.
|
|
|
- // Vars are not available to scripts if not globalized before loading config.
|
|
|
- // FIXME: move configuration loading to loading_prefs hook.
|
|
|
- global $SQSPELL_APP, $SQSPELL_APP_DEFAULT, $SQSPELL_WORDS_FILE, $SQSPELL_CRYPTO;
|
|
|
- include_once(SM_PATH . 'plugins/squirrelspell/sqspell_config.php');
|
|
|
include_once(SM_PATH . 'plugins/squirrelspell/sqspell_functions.php');
|
|
|
-
|
|
|
- if (! sqspell_check_version(0,5)) {
|
|
|
- $langs=sqspell_getSettings_old(null);
|
|
|
- $words=sqspell_getWords_old();
|
|
|
- sqspell_saveSettings($langs);
|
|
|
- foreach ($langs as $lang) {
|
|
|
- $lang_words=sqspell_getLang_old($words,$lang);
|
|
|
- $aLang_words=explode("\n",$lang_words);
|
|
|
- $new_words=array();
|
|
|
- foreach($aLang_words as $word) {
|
|
|
- if (! preg_match("/^#/",$word) && trim($word)!='') {
|
|
|
- $new_words[]=$word;
|
|
|
- }
|
|
|
- }
|
|
|
- sqspell_writeWords($new_words,$lang);
|
|
|
- }
|
|
|
- // bump up version number
|
|
|
- setPref($data_dir,$username,'sqspell_version','0.5');
|
|
|
- }
|
|
|
+ squirrelspell_upgrade_function();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * Function that displays internal squirrelspell version
|
|
|
+ * Display SquirrelSpell version
|
|
|
* @since 1.5.1 (sqspell 0.5)
|
|
|
* @return string plugin's version
|
|
|
- * @todo remove 'cvs' part from version when plugin's code is
|
|
|
- * stable enough
|
|
|
*/
|
|
|
function squirrelspell_version() {
|
|
|
- return '0.5cvs';
|
|
|
+ return '0.5';
|
|
|
}
|
|
|
|
|
|
?>
|