Initial groundwork to use phpdocumentor.
[squirrelmail.git] / plugins / squirrelspell / sqspell_options.php
index 8311678b91b6550367ec05d9b5777e3edeab0a6e..b5984067138835b9adfd2d6a5320ff3724f1eaca 100644 (file)
@@ -1,46 +1,59 @@
 <?php
+/**
+ * sqspell_options.php 
+ *
+ * Main wrapper for the options interface.
+ *
+ * Copyright (c) 1999-2003 The SquirrelMail development team
+ * Licensed under the GNU GPL. For full terms see the file COPYING.
+ *
+ * $Id$
+ *
+ * @author Konstantin Riabitsev <icon@duke.edu> ($Author$)
+ * @version $Date$
+ * @package plugins
+ * @subpackage squirrelspell
+ */
 
-   /**
-    **  sqspell_options.php -- Main wrapper for the options interface.
-    **
-    **  Copyright (c) 1999-2002 The SquirrelMail development team
-    **  Licensed under the GNU GPL. For full terms see the file COPYING.
-    **
-    **
-    **
-    **  $Id$
-    **/
+/**
+ * Set a couple of constants and defaults. Don't change these, 
+ * the configurable stuff is in sqspell_config.php
+ */
+$SQSPELL_DIR='plugins/squirrelspell/';
+$SQSPELL_CRYPTO=FALSE;
+
+/**
+ * Load some necessary stuff from squirrelmail. 
+ * @ignore
+ */
+define('SM_PATH','../../');
+
+/* SquirrelMail required files. */
+require_once(SM_PATH . 'include/validate.php');
+require_once(SM_PATH . 'include/load_prefs.php');
+require_once(SM_PATH . 'functions/strings.php');
+require_once(SM_PATH . 'functions/page_header.php');
+require_once(SM_PATH . $SQSPELL_DIR . 'sqspell_config.php');
+require_once(SM_PATH . $SQSPELL_DIR . 'sqspell_functions.php');
+
+/**
+ * $MOD is the name of the module to invoke.
+ * If $MOD is unspecified, assign "init" to it. Else check for
+ * security breach attempts.
+ */
+if(isset($_POST['MOD'])) {
+    $MOD = $_POST['MOD'];
+} elseif (isset($_GET['MOD'])) {
+    $MOD = $_GET['MOD'];
+}
+
+if(!isset($MOD) || !$MOD) {
+  $MOD = 'options_main';
+} else {
+  sqspell_ckMOD($MOD);
+}
+
+/* Load the stuff already. */
+require_once(SM_PATH . $SQSPELL_DIR . "modules/$MOD.mod");
 
-    /*
-    ** Set a couple of constants. Don't change these, the setuppable stuff is
-    ** in sqspell_config.php
-    */
-    $SQSPELL_DIR='squirrelspell';
-    $SQSPELL_CRYPTO=FALSE;
-    
-    /* Load some necessary stuff. */
-    chdir('..');
-    require_once('../src/validate.php');
-    require_once('../src/load_prefs.php');
-    require_once('../functions/strings.php');
-    require_once('../functions/page_header.php');
-    require_once("$SQSPELL_DIR/sqspell_config.php");
-    require_once("$SQSPELL_DIR/sqspell_functions.php");
-    
-    /* Access the module needed */
-    if (!$MOD) 
-        $MOD = 'options_main';
-    
-    /*
-    ** see if someone is attempting to be nasty by trying to get out of the
-    ** modules directory, although it probably wouldn't do them any good,
-    ** since every module has to end with .mod. Still, they deserve
-    ** to be warned. ;)
-    */
-    if (strstr($MOD, ".") || strstr($MOD, "/") || strstr($MOD, "%")){
-       echo _("SECURITY BREACH ON DECK 5! CMDR TUVOK AND SECURITY TEAM REQUESTED.");
-        exit;
-    }
-    /* load the stuff already. */
-    require_once("$SQSPELL_DIR/modules/$MOD.mod");
 ?>