- switch ( $type ) {
- case SMOPT_TYPE_TITLE:
- echo "<tr bgcolor=\"$color[0]\"><th colspan=2>$name</th></tr>";
- break;
- case SMOPT_TYPE_COMMENT:
- $v = substr( $v, 1, strlen( $v ) - 2 );
- echo "<tr><td>$name</td><td>";
- echo "<b>$v</b>";
- $newcfg[$k] = "'$v'";
- break;
- case SMOPT_TYPE_INTEGER:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = intval( $HTTP_POST_VARS[$e] );
- $newcfg[$k] = $v;
- }
- echo "<tr><td>$name</td><td>";
- echo "<input size=10 name=\"adm_$n\" value=\"$v\">";
- break;
- case SMOPT_TYPE_NUMLIST:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = $HTTP_POST_VARS[$e];
- $newcfg[$k] = $v;
- }
- echo "<tr><td>$name</td><td>";
- echo "<select name=\"adm_$n\">";
- foreach ( $defcfg[$k]['posvals'] as $kp => $vp ) {
- echo "<option value=\"$kp\"";
- if ( $kp == $v ) {
- echo ' selected';
- }
- echo ">$vp</option>";
- }
- echo '</select>';
- break;
- case SMOPT_TYPE_STRLIST:
- if ( isset( $HTTP_POST_VARS[$e] ) ) {
- $v = '"' . $HTTP_POST_VARS[$e] . '"';
- $newcfg[$k] = $v;
- }
- echo "<tr><td>$name</td><td>";
- echo "<select name=\"adm_$n\">";
- foreach ( $defcfg[$k]['posvals'] as $kp => $vp ) {
- echo "<option value=\"$kp\"";
- if ( $kp == substr( $v, 1, strlen( $v ) - 2 ) ) {
- echo ' selected';
- }
- echo ">$vp</option>";
- }
- echo '</select>';
- break;
+ if ( substr( $k, 0, 7 ) == '$theme[' ) {
+ $type = SMOPT_TYPE_THEME;
+ } else if ( substr( $k, 0, 9 ) == '$plugins[' ) {
+ $type = SMOPT_TYPE_PLUGINS;
+ } else if ( substr( $k, 0, 13 ) == '$ldap_server[' ) {
+ $type = SMOPT_TYPE_LDAP;
+ }
+
+ if ( $type == SMOPT_TYPE_TITLE || $colapse[$act_grp] == 'off' ) {
+
+ switch ( $type ) {
+ case SMOPT_TYPE_LDAP:
+ case SMOPT_TYPE_PLUGINS:
+ case SMOPT_TYPE_THEME:
+ case SMOPT_TYPE_HIDDEN:
+ break;
+ case SMOPT_TYPE_EXTERNAL:
+ echo "<tr><td>$name</td><td><b>" .
+ $defcfg[$k]['value'] .
+ '</b></td></tr>';
+ break;
+ case SMOPT_TYPE_TITLE:
+ if ( $colapse[$k] == 'on' ) {
+ $sw = '(+)';
+ } else {
+ $sw = '(-)';
+ }
+ echo '<tr bgcolor="'.$color[0].'"><th colspan="2">'.
+ "<a href=\"options.php?switch=$k\" style=\"text-decoration:none\">".
+ '<b>'.$sw.'</b></a> '.$name.'</th></tr>';
+ $act_grp = $k;
+ break;
+ case SMOPT_TYPE_COMMENT:
+ $v = substr( $v, 1, strlen( $v ) - 2 );
+ echo "<tr><td>$name</td><td>".
+ "<b>$v</b>";
+ $newcfg[$k] = "'$v'";
+ if ( isset( $defcfg[$k]['comment'] ) ) {
+ echo ' ' . $defcfg[$k]['comment'];
+ }
+ echo "</td></tr>\n";
+ break;
+ case SMOPT_TYPE_INTEGER:
+ /* 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>".
+ "<input size=\"10\" name=\"adm_$n\" value=\"$v\" />";
+ if ( isset( $defcfg[$k]['comment'] ) ) {
+ echo ' ' . $defcfg[$k]['comment'];
+ }
+ echo "</td></tr>\n";
+ break;
+ case SMOPT_TYPE_NUMLIST:
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
+ $newcfg[$k] = $v;
+ }
+ echo "<tr><td>$name</td><td>";
+ echo "<select name=\"adm_$n\">";
+ foreach ( $defcfg[$k]['posvals'] as $kp => $vp ) {
+ echo "<option value=\"$kp\"";
+ if ( $kp == $v ) {
+ echo ' selected="selected"';
+ }
+ echo ">$vp</option>";
+ }
+ echo '</select>';
+ if ( isset( $defcfg[$k]['comment'] ) ) {
+ echo ' ' . $defcfg[$k]['comment'];
+ }
+ echo "</td></tr>\n";
+ break;
+ case SMOPT_TYPE_STRLIST:
+ if ( sqgetGlobalVar($e, $v, SQ_POST) ) {
+ $v = '"' . $v . '"';
+ $newcfg[$k] = $v;
+ }
+ echo "<tr><td>$name</td><td>".
+ "<select name=\"adm_$n\">";
+ foreach ( $defcfg[$k]['posvals'] as $kp => $vp ) {
+ echo "<option value=\"$kp\"";
+ if ( $kp == substr( $v, 1, strlen( $v ) - 2 ) ) {
+ echo ' selected="selected"';
+ }
+ echo ">$vp</option>";
+ }
+ echo '</select>';
+ if ( isset( $defcfg[$k]['comment'] ) ) {
+ echo ' ' . $defcfg[$k]['comment'];
+ }
+ echo "</td></tr>\n";
+ break;