* Philippe Mingo
*
* $Id$
+ * @package plugins
+ * @subpackage administrator
*/
+/**
+ * parse the config file
+ */
function parseConfig( $cfg_file ) {
global $newcfg;
/* ---------------------- main -------------------------- */
+/** @ignore */
define('SM_PATH','../../');
/* SquirrelMail required files. */
'Group5' => getPref($data_dir, $username, 'adm_Group5', 'on' ),
'Group6' => getPref($data_dir, $username, 'adm_Group6', 'on' ),
'Group7' => getPref($data_dir, $username, 'adm_Group7', 'on' ),
- 'Group8' => getPref($data_dir, $username, 'adm_Group8', 'on' ) );
+ 'Group8' => getPref($data_dir, $username, 'adm_Group8', 'on' ),
+ 'Group9' => getPref($data_dir, $username, 'adm_Group9', 'on' ),
+ 'Group10' => getPref($data_dir, $username, 'adm_Group10', 'on' ) );
-if ( isset( $_GET['switch'] ) ) {
- $switch = $_GET['switch'];
+/* look in $_GET array for 'switch' */
+if ( sqgetGlobalVar('switch', $switch, SQ_GET) ) {
if ( $colapse[$switch] == 'on' ) {
$colapse[$switch] = 'off';
} else {
"<center><table width=95% bgcolor=\"$color[5]\"><tr><td>".
"<table width=100% cellspacing=0 bgcolor=\"$color[4]\">" ,
"<tr bgcolor=\"$color[5]\"><th colspan=2>" . _("Configuration Administrator") . "</th></tr>",
- "<tr bgcolor=\"$color[5]\"><td colspan=2i align=\"center\">";
-?>
-<small>Note: it is recommended that you configure your system using conf.pl, and not this plugin.
-conf.pl contains additional information regarding the purpose of variables and
-appropriate values, as well as additional verification steps.<br />
-Run or consult conf.pl should you run into difficulty with your configuration.</small>
-</td></tr>
-<?php
+ "<tr bgcolor=\"$color[5]\"><td colspan=2 align=\"center\">";
+
+echo "<small>";
+echo _("Note: it is recommended that you configure your system using conf.pl, and not this plugin. conf.pl contains additional information regarding the purpose of variables and appropriate values, as well as additional verification steps.");
+echo "<br />";
+echo _("Run or consult conf.pl should you run into difficulty with your configuration.");
+echo "</small></td></tr>";
+
$act_grp = 'Titles'; /* Active group */
echo "</td></tr>\n";
break;
case SMOPT_TYPE_INTEGER:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = intval( $HTTP_POST_VARS[$e] );
+ /* look for variable $e in POST, fill into $v */
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
+ $v = intval( $v );
$newcfg[$k] = $v;
}
echo "<tr><td>$name</td><td>".
echo "</td></tr>\n";
break;
case SMOPT_TYPE_NUMLIST:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = $HTTP_POST_VARS[$e];
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
$newcfg[$k] = $v;
}
echo "<tr><td>$name</td><td>";
echo "</td></tr>\n";
break;
case SMOPT_TYPE_STRLIST:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = '"' . $HTTP_POST_VARS[$e] . '"';
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
+ $v = '"' . $v . '"';
$newcfg[$k] = $v;
}
echo "<tr><td>$name</td><td>".
break;
case SMOPT_TYPE_TEXTAREA:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = '"' . $HTTP_POST_VARS[$e] . '"';
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
+ $v = '"' . $v . '"';
$newcfg[$k] = str_replace( "\n", '', $v );
}
echo "<tr><td valign=top>$name</td><td>".
echo "</td></tr>\n";
break;
case SMOPT_TYPE_STRING:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = '"' . $HTTP_POST_VARS[$e] . '"';
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
+ $v = '"' . $v . '"';
$newcfg[$k] = $v;
}
if ( $v == '""' && isset( $defcfg[$k]['default'] ) ) {
echo "</td></tr>\n";
break;
case SMOPT_TYPE_BOOLEAN:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = $HTTP_POST_VARS[$e];
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
$newcfg[$k] = $v;
} else {
$v = strtoupper( $v );
echo "</td></tr>\n";
break;
case SMOPT_TYPE_PATH:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = change_to_sm_path($HTTP_POST_VARS[$e]);
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
+ $v = change_to_sm_path($v);
$newcfg[$k] = $v;
}
if ( $v == "''" && isset( $defcfg[$k]['default'] ) ) {
while ( isset( $newcfg["\$theme[$i]['NAME']"] ) ) {
$k1 = "\$theme[$i]['NAME']";
$e1 = "theme_name_$i";
- if ( isset( $HTTP_POST_VARS[$e1] ) ) {
- $v1 = '"' . str_replace( '\"', '"', $HTTP_POST_VARS[$e1] ) . '"';
+ if ( sqgetGlobalVar($e, $v1, SQ_POST) ) {
+ $v1 = '"' . str_replace( '\"', '"', $v1 ) . '"';
$v1 = '"' . str_replace( '"', '\"', $v1 ) . '"';
$newcfg[$k1] = $v1;
} else {
}
$k2 = "\$theme[$i]['PATH']";
$e2 = "theme_path_$i";
- if ( isset( $HTTP_POST_VARS[$e2] ) ) {
- $v2 = change_to_sm_path($HTTP_POST_VARS[$e2]);
+ if ( sqgetGlobalVar($e, $v2, SQ_POST) ) {
+ $v2 = change_to_sm_path($v2);
$newcfg[$k2] = $v2;
} else {
$v2 = $newcfg[$k2];
if( $colapse['Group8'] == 'off' ) {
- $fd = opendir( '../plugins/' );
- $op_plugin = array();
- $p_count = 0;
- while (false!==($file = readdir($fd))) {
- if ($file != '.' && $file != '..' && $file != 'CVS' ) {
- if ( filetype( $file ) == 'dir' ) {
- $op_plugin[] = $file;
- $p_count++;
- }
+ $plugpath = SM_PATH . 'plugins/';
+ if ( file_exists($plugpath) ) {
+ $fd = opendir( $plugpath );
+ $op_plugin = array();
+ $p_count = 0;
+ while (false !== ($file = readdir($fd))) {
+ if ($file != '.' && $file != '..' && $file != 'CVS' && is_dir($plugpath . $file) ) {
+ $op_plugin[] = $file;
+ $p_count++;
}
- }
- closedir($fd);
- asort( $op_plugin );
+ }
+ closedir($fd);
+ asort( $op_plugin );
- /* Lets get the plugins that are active */
- $plugins = array();
- if ( isset( $HTTP_POST_VARS['plg'] ) ) {
+ /* Lets get the plugins that are active */
+ $plugins = array();
+ if ( sqgetGlobalVar('plg', $v, SQ_POST) ) {
foreach ( $op_plugin as $plg ) {
- if ( isset( $HTTP_POST_VARS["plgs_$plg"] ) &&
- $HTTP_POST_VARS["plgs_$plg"] == 'on' ) {
+ if ( sqgetGlobalVar("plgs_$plg", $v, SQ_POST) && $v == 'on' ) {
$plugins[] = $plg;
}
}
$newcfg[$k] = '';
$i++;
}
- } else {
+ } else {
$i = 0;
while ( isset( $newcfg["\$plugins[$i]"] ) ) {
$k = "\$plugins[$i]";
$plugins[] = substr( $v, 1, strlen( $v ) - 2 );
$i++;
}
- }
- echo "<tr><td colspan=2><input type=hidden name=plg value=on><center><table><tr><td>";
- foreach ( $op_plugin as $plg ) {
+ }
+ echo "<tr><td colspan=2><input type=hidden name=plg value=on><center><table><tr><td>";
+ foreach ( $op_plugin as $plg ) {
if ( in_array( $plg, $plugins ) ) {
$sw = ' checked';
} else {
echo '<tr>' .
"<td>$plg</td><td><input$sw type=checkbox name=plgs_$plg></td>".
"</tr>\n";
- }
- echo '</td></tr></table>';
-
+ }
+ echo '</td></tr></table></td></tr>';
+ } else {
+ echo '<tr><td colspan=2 align="center">Plugin directory could not be found: ' . $plugpath . "</td></tr>\n";
+ }
}
echo "<tr bgcolor=\"$color[5]\"><th colspan=2><input value=\"" .
_("Change Settings") . "\" type=submit></th></tr>" ,
"/**\n".
" * SquirrelMail Configuration File\n".
" * Created using the Administrator Plugin\n".
- " */\n" );
+ " */\n".
+ "\n".
+ "global \$version;\n" );
foreach ( $newcfg as $k => $v ) {
if ( $k{0} == '$' && $v <> '' ) {