<?php
+
/**
* setup.php
- * -----------
- * Squirrelspell setup file, as defined by the SquirrelMail-1.2 API.
- *
- * Copyright (c) 1999-2005 The SquirrelMail development team
- * Licensed under the GNU GPL. For full terms see the file COPYING.
*
- * $Id$
+ * Squirrelspell setup file, as defined by the SquirrelMail-1.2 API.
*
- * @author Konstantin Riabitsev <icon@duke.edu> ($Author$)
- * @version $Date$
+ * @author Konstantin Riabitsev <icon at duke.edu>
+ * @copyright 1999-2017 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
+ * @version $Id$
* @package plugins
* @subpackage squirrelspell
+ * @todo remove sqspell_ prefix from main php scripts.
*/
+
/**
* Standard SquirrelMail plugin initialization API.
*
* @return void
*/
function squirrelmail_plugin_init_squirrelspell() {
- global $squirrelmail_plugin_hooks;
- $squirrelmail_plugin_hooks['compose_button_row']['squirrelspell'] =
- 'squirrelspell_setup';
- $squirrelmail_plugin_hooks['optpage_register_block']['squirrelspell'] =
- 'squirrelspell_optpage_register_block';
- $squirrelmail_plugin_hooks['options_link_and_description']['squirrelspell'] =
- 'squirrelspell_options';
+ global $squirrelmail_plugin_hooks;
+ $squirrelmail_plugin_hooks['template_construct_compose_buttons.tpl']['squirrelspell'] =
+ 'squirrelspell_setup';
+ $squirrelmail_plugin_hooks['optpage_register_block']['squirrelspell'] =
+ 'squirrelspell_optpage_register_block';
+ $squirrelmail_plugin_hooks['right_main_after_header']['squirrelspell'] =
+ 'squirrelspell_upgrade';
}
/**
- * 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 $optionpages 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").
- '\" 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');
+ return 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() {
+ include_once(SM_PATH . 'plugins/squirrelspell/sqspell_functions.php');
+ squirrelspell_upgrade_function();
+}
+
+/**
+ * Display SquirrelSpell version
+ * @since 1.5.1 (sqspell 0.5)
+ * @return string plugin's version
+ */
+function squirrelspell_version() {
+ return '0.5';
}
-?>
\ No newline at end of file