Centralized init
[squirrelmail.git] / plugins / squirrelspell / setup.php
index 9e562463b5ef78cbf08cb0cd202987b3324a7e57..083e7fa13a634e945f625606860f9d04ba2ea16a 100644 (file)
@@ -1,85 +1,80 @@
 <?php
+
 /**
  * setup.php
- * -----------
- * Squirrelspell setup file, as defined by the SquirrelMail-1.2 API.
- * 
- * Copyright (c) 1999-2002 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 &copy; 1999-2006 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.
+ * 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['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';
+      'squirrelspell_options';
+  $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;
-  /**
-   * soupNazi checks if this browser is capable of using the plugin.
-   */
-  if (!soupNazi()) {
-    /**
-     * 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 (!soupNazi()) {
-    /**
-     * 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');
+  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