<?php
- /**
- ** setup.php -- Squirrelspell setup file
- **
- ** Copyright (c) 1999-2001 The SquirrelMail development team
- ** Licensed under the GNU GPL. For full terms see the file COPYING.
- **
- ** This is a standard Squirrelmail-1.2 API for plugins.
- **
- ** $Id$
- **/
+/**
+ * setup.php
+ *
+ * Squirrelspell setup file, as defined by the SquirrelMail-1.2 API.
+ *
+ * @author Konstantin Riabitsev <icon at duke.edu>
+ * @copyright © 1999-2005 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.
+ */
- /**
- * This function checks whether the user's USER_AGENT is known to
- * be broken. If so, returns true and the plugin is invisible to the
- * offending browser.
- */
- function soupNazi(){
+/** @ignore */
+if (! defined('SM_PATH')) define('SM_PATH','../../');
- global $HTTP_USER_AGENT, $SQSPELL_SOUP_NAZI;
-
- require_once('../plugins/squirrelspell/sqspell_config.php');
+/**
+ * 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';
+ $squirrelmail_plugin_hooks['right_main_after_header']['squirrelspell'] =
+ 'squirrelspell_upgrade';
+}
- $soup_menu = explode( ',', $SQSPELL_SOUP_NAZI );
- return( in_array( trim( $HTTP_USER_AGENT ), $soup_menu ) );
- }
+/**
+ * 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() {
+ include_once(SM_PATH . 'plugins/squirrelspell/sqspell_functions.php');
+ squirrelspell_optpage_block_function();
+}
- function squirrelmail_plugin_init_squirrelspell() {
- /* Standard initialization API. */
- global $squirrelmail_plugin_hooks;
+/**
+ * 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() {
+ include_once(SM_PATH . 'plugins/squirrelspell/sqspell_functions.php');
+ squirrelspell_setup_function();
+}
- $squirrelmail_plugin_hooks['compose_button_row']['squirrelspell'] = 'squirrelspell_setup';
- $squirrelmail_plugin_hooks['options_register']['squirrelspell'] = 'squirrelspell_options';
- $squirrelmail_plugin_hooks['options_link_and_description']['squirrelspell'] = 'squirrelspell_options';
- }
+/**
+ * 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();
+}
- function squirrelspell_options() {
- // Gets added to the user's OPTIONS page.
- global $optionpages;
+/**
+ * Display SquirrelSpell version
+ * @since 1.5.1 (sqspell 0.5)
+ * @return string plugin's version
+ */
+function squirrelspell_version() {
+ return '0.5';
+}
- if ( !soupNazi() ) {
-
- /* Register Squirrelspell with the $optionpages array. */
- $optionpages[] = 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
- );
- }
- }
-
- function squirrelspell_setup() {
- /* Gets added to the COMPOSE buttons row. */
- if ( !soupNazi() ) {
- /*
- ** using document.write to hide this functionality from people
- ** with JavaScript turned off.
- */
- 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";
- }
- }
-
-?>
+?>
\ No newline at end of file