From 2e22d4bcee59731ae3fa5233864896e799007b1c Mon Sep 17 00:00:00 2001
From: Neil Drumm <drumm@3064.no-reply.drupal.org>
Date: Mon, 11 Sep 2006 09:05:46 +0000
Subject: [PATCH] #58860 by edkwh. Proper validation for editing roles.

---
 modules/user/user.module | 39 ++++++++++++++++++++++++++++++---------
 1 file changed, 30 insertions(+), 9 deletions(-)

diff --git a/modules/user/user.module b/modules/user/user.module
index 4f7b3d70a73b..ce76468dfa45 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -1900,17 +1900,38 @@ function user_admin_role() {
       form_set_error('name', t('You must specify a valid role name.'));
     }
   }
-  else if ($id) {
-    // Display the role form.
+  if ($id) {
+    // Display the edit role form.
     $role = db_fetch_object(db_query('SELECT * FROM {role} WHERE rid = %d', $id));
-    $form['name'] = array('#type' => 'textfield', '#title' => t('Role name'), '#default_value' => $role->name, '#size' => 30, '#maxlength' => 64, '#description' => t('The name for this role. Example: "moderator", "editorial board", "site architect".'));
-    $form['submit'] = array('#type' => 'submit', '#value' => t('Save role'));
-    $form['delete'] = array('#type' => 'submit', '#value' => t('Delete role'));
-
-    return $form;
+    $form['name'] = array(
+      '#type' => 'textfield',
+      '#title' => t('Role name'),
+      '#default_value' => $role->name,
+      '#size' => 30,
+      '#required' => TRUE,
+      '#maxlength' => 64,
+      '#description' => t('The name for this role. Example: "moderator", "editorial board", "site architect".'),
+    );
+    $form['submit'] = array(
+      '#type' => 'submit',
+      '#value' => t('Save role'),
+    );
+    $form['delete'] = array(
+      '#type' => 'submit',
+      '#value' => t('Delete role'),
+    );
+  }
+  else {
+    $form['name'] = array(
+      '#type' => 'textfield',
+      '#size' => 32,
+      '#maxlength' => 64,
+    );
+    $form['submit'] = array(
+      '#type' => 'submit',
+      '#value' => t('Add role'),
+    );
   }
-  $form['name'] = array('#type' => 'textfield', '#size' => 32, '#maxlength' => 64);
-  $form['submit'] = array('#type' => 'submit', '#value' => t('Add role'));
   return $form;
 }
 
-- 
GitLab