[geeklog-cvs] geeklog: Disabled checkboxes need an accompanying hidden input f...

geeklog-cvs at lists.geeklog.net geeklog-cvs at lists.geeklog.net
Sat Jan 31 04:21:26 EST 2009


details:   http://project.geeklog.net/cgi-bin/hgweb.cgi/rev/d7dffa7655fe
changeset: 6734:d7dffa7655fe
user:      Dirk Haun <dirk at haun-online.de>
date:      Sat Jan 31 10:21:07 2009 +0100
description:
Disabled checkboxes need an accompanying hidden input field for the actual value; allow saving core groups again (for now)

diffstat:

2 files changed, 24 insertions(+), 26 deletions(-)
public_html/admin/group.php |   42 ++++++++++++++++++++----------------------
system/lib-admin.php        |    8 ++++----

diffs (78 lines):

diff -r b047a9ee59aa -r d7dffa7655fe public_html/admin/group.php
--- a/public_html/admin/group.php	Sat Jan 31 09:43:54 2009 +0100
+++ b/public_html/admin/group.php	Sat Jan 31 10:21:07 2009 +0100
@@ -429,8 +429,11 @@
 
                 $retval .= '<td class="' . $pluginRow . '">'
                         . '<input type="checkbox" checked="checked" '
-                        . 'disabled="disabled"' . XHTML . '>(<i title="'
-                        . $A['ft_descr'] . '">' . $A['ft_name'] . '</i>)</td>';
+                        . 'disabled="disabled"' . XHTML . '>'
+                        . '<input type="hidden" name="features[]" value="'
+                        . $A['ft_id'] . '"' . XHTML . '>'
+                        . '(<i title="' . $A['ft_descr'] . '">' . $A['ft_name']
+                        . '</i>)</td>';
             }
         }
     }
@@ -1033,27 +1036,22 @@
     }
 } elseif (($mode == $LANG_ADMIN['save']) && !empty($LANG_ADMIN['save']) && SEC_checkToken()) {
     $grp_gl_core = COM_applyFilter($_POST['grp_gl_core'], true);
-    if ($grp_gl_core != 1) {
-        $chk_grpadmin = '';
-        if (isset($_POST['chk_grpadmin'])) {
-            $chk_grpadmin = COM_applyFilter($_POST['chk_grpadmin']);
-        }
-        $features = array();
-        if (isset($_POST['features'])) {
-            $features = $_POST['features'];
-        }
-        $groups = array();
-        if (isset($_POST[$_TABLES['groups']])) {
-            $groups = $_POST[$_TABLES['groups']];
-        }
-        $display .= savegroup(COM_applyFilter($_POST['grp_id'], true),
-                              COM_applyFilter($_POST['grp_name']),
-                              $_POST['grp_descr'], $chk_grpadmin, $grp_gl_core,
-                              $features, $groups);
-    } else {
-        // Core groups can not be changed, period
-        $display .= COM_refresh($_CONF['site_admin_url'] . '/group.php');
+    $chk_grpadmin = '';
+    if (isset($_POST['chk_grpadmin'])) {
+        $chk_grpadmin = COM_applyFilter($_POST['chk_grpadmin']);
     }
+    $features = array();
+    if (isset($_POST['features'])) {
+        $features = $_POST['features'];
+    }
+    $groups = array();
+    if (isset($_POST[$_TABLES['groups']])) {
+        $groups = $_POST[$_TABLES['groups']];
+    }
+    $display .= savegroup(COM_applyFilter($_POST['grp_id'], true),
+                          COM_applyFilter($_POST['grp_name']),
+                          $_POST['grp_descr'], $chk_grpadmin, $grp_gl_core,
+                          $features, $groups);
 } else if (($mode == 'savegroupusers') && SEC_checkToken()) {
     $grp_id = COM_applyFilter ($_REQUEST['grp_id'], true);
     $display .= savegroupusers ($grp_id, $_POST['groupmembers']);
diff -r b047a9ee59aa -r d7dffa7655fe system/lib-admin.php
--- a/system/lib-admin.php	Sat Jan 31 09:43:54 2009 +0100
+++ b/system/lib-admin.php	Sat Jan 31 10:21:07 2009 +0100
@@ -731,10 +731,10 @@
                 $retval .= XHTML . '>';
                 break;
             case 'disabled-checkbox':
-                $retval = '<input type="checkbox" name="groups[]" value="'
-                        . $A['grp_id']
-                        . '" checked="checked" disabled="disabled"'
-                        . XHTML . '>';
+                $retval = '<input type="checkbox" checked="checked" '
+                        . 'disabled="disabled"' . XHTML . '>'
+                        . '<input type="hidden" name="groups[]" value="'
+                        . $A['grp_id'] . '"' . XHTML . '>';
                 break;
             default:
                 $retval = $fieldvalue;



More information about the geeklog-cvs mailing list