reducing size of setup.php
authortokul <tokul@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Fri, 15 Jul 2005 12:44:44 +0000 (12:44 +0000)
committertokul <tokul@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Fri, 15 Jul 2005 12:44:44 +0000 (12:44 +0000)
removing unneeded javascript support detection in registration of options block

git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@9782 7612ce4b-ef26-0410-bec9-ea0150e637f0

plugins/squirrelspell/setup.php
plugins/squirrelspell/sqspell_config.php
plugins/squirrelspell/sqspell_functions.php
plugins/squirrelspell/sqspell_interface.php
plugins/squirrelspell/sqspell_options.php

index 898fa0682bb5b798061d32bc3e27a9ace50ee910..cceed86a9b5a4438f0ceeb8daabf06ab62c0204b 100644 (file)
@@ -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';
 }
 
 ?>
\ No newline at end of file
index 489703460994678e4e35e848d4960c4421d52d82..d275f32e8de80a1d0b65e326b792610037f9e695 100644 (file)
@@ -89,7 +89,7 @@ $SQSPELL_WORDS_FILE =
    getHashedFile($username, $data_dir, "$username.words");
 
 /**
- * Function used cheching words in user's dictionary
+ * Function used for checking words in user's dictionary
  * @global string $SQSPELL_EREG
  * @deprecated It is not used since 1.5.1 (sqspell 0.5)
  */
index ad871e31b1d221f19b73d4927de067a3f84ccff7..c14b983377e7760db07e53bfe9e80a815141a076 100644 (file)
  * @subpackage squirrelspell
  */
 
+/** @ignore */
+if (! defined('SM_PATH')) define('SM_PATH','../../');
+
+/** globalize configuration vars **/
+global $SQSPELL_APP, $SQSPELL_APP_DEFAULT, $SQSPELL_WORDS_FILE, $SQSPELL_CRYPTO;
+
+/** 
+ * load plugin configuration
+ * @todo allow storing configuration file in config/ directory
+ */
+include_once(SM_PATH . 'plugins/squirrelspell/sqspell_config.php');
+
+/** Hooked functions **/
+
+/**
+ * Register option page block (internal function)
+ * @since 1.5.1 (sqspell 0.5)
+ * @return void
+ */
+function squirrelspell_optpage_block_function() {
+  global $optpage_blocks;
+
+  /**
+   * Dependency on JavaScript is checked by SquirrelMail scripts
+   * 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);
+}
+
+/**
+ * This function adds a "Check Spelling" link to the "Compose" row
+ * during message composition (internal function).
+ * @since 1.5.1 (sqspell 0.5)
+ * @return void
+ */
+function squirrelspell_setup_function() {
+  /**
+   * 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";
+  }
+}
+
+/**
+ * Upgrade dictionaries (internal function)
+ *
+ * Transparently upgrades user's dictionaries when message listing is loaded
+ * @since 1.5.1 (sqspell 0.5)
+ */
+function squirrelspell_upgrade_function() {
+  global $data_dir, $username;
+
+  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');
+  }
+}
+
+/** Internal functions **/
+
 /**
  * This function is the GUI wrapper for the options page. SquirrelSpell
  * uses it for creating all Options pages.
index 6e3b71be3903471fe9b35898c5d74acbe1285df2..a899ad037d1fe688a7fc4c3a4f6a680814e8e4f4 100644 (file)
@@ -33,7 +33,6 @@ define('SM_PATH','../../');
 /* SquirrelMail required files. */
 require_once(SM_PATH . 'include/validate.php');
 include_once(SM_PATH . 'functions/display_messages.php');
-include_once(SM_PATH . $SQSPELL_DIR . 'sqspell_config.php');
 include_once(SM_PATH . $SQSPELL_DIR . 'sqspell_functions.php');
 
 /**
index 5e99de8f773537534684cfdbf182bddcecd9442d..9003e57bb5ed9043f73e41a4034a180dd71c0405 100644 (file)
@@ -16,6 +16,7 @@
 /**
  * Set a couple of constants and defaults. Don't change these,
  * the configurable stuff is in sqspell_config.php
+ * @todo do we really need $SQSPELL_DIR var?
  */
 $SQSPELL_DIR='plugins/squirrelspell/';
 $SQSPELL_CRYPTO=FALSE;
@@ -29,7 +30,6 @@ define('SM_PATH','../../');
 /* SquirrelMail required files. */
 require_once(SM_PATH . 'include/validate.php');
 include_once(SM_PATH . 'functions/display_messages.php');
-include_once(SM_PATH . $SQSPELL_DIR . 'sqspell_config.php');
 include_once(SM_PATH . $SQSPELL_DIR . 'sqspell_functions.php');
 
 /**