Index: contributions/modules/role_weights/role_weights.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/role_weights/role_weights.module,v retrieving revision 1.15 diff -u -r1.15 role_weights.module --- contributions/modules/role_weights/role_weights.module 19 Feb 2008 18:07:13 -0000 1.15 +++ contributions/modules/role_weights/role_weights.module 19 Feb 2008 23:22:02 -0000 @@ -17,10 +17,10 @@ * role forms, and also act on role deletion (deleting * role_weights). */ -function role_weights_form_alter($form_id, &$form) { +function role_weights_form_alter(&$form, &$form_state, $form_id) { // Alter the 'user_admin_new_role' form to retheme. if ($form_id == 'user_admin_new_role') { - $form['#pre_render'][] = 'role_weights_admin_new_role_set_theme'; + $form['#pre_render']['role_weights_admin_new_role_set_theme'] = array(); } else if ($form_id == 'user_admin_role') { $rid = arg(4); @@ -68,7 +68,7 @@ // appear below the buttons. $form['submit']['#weight'] = 9; $form['delete']['#weight'] = 10; - $form['#submit']['role_weights_admin_role_submit'] = array(); + $form['#submit'][] = 'role_weights_admin_role_submit'; } } @@ -78,7 +78,7 @@ * This needs to be done in pre_render because drupal_get_form uses a * $form_id .'_theme' function if present for the #theme value. */ -function role_weights_admin_new_role_set_theme($form_id, &$form) { +function role_weights_admin_new_role_set_theme($form) { $form['#theme'] = 'role_weights_admin_new_role'; } @@ -90,13 +90,11 @@ * links, as we need to be able to navigate to them * to provide weights. We will lock them in the role * admin form instead. - * - * DRUPAL-5 TODO: links to edit anon and authed user don't work */ function theme_role_weights_admin_new_role($form) { $header = array(t('Name'), array('data' => t('Operations'), 'colspan' => 2)); foreach (user_roles() as $rid => $name) { - $edit_permissions = l(t('edit permissions'), 'admin/user/access/'. $rid); + $edit_permissions = l(t('edit permissions'), 'admin/user/permissions/'. $rid); // Drupal core redirects if the rid is DRUPAL_ANONYMOUS_RID or DRUPAL_AUTHENTICATED_RID. // We prevent this by shifting the rid. @@ -111,19 +109,19 @@ /** * Submission from role_weights_admin form. * - * DRUPAL-5 TODO: $_POST[op] deprecated in favor of $form_values[op] - relevant here? + * DRUPAL-6 TODO: $_POST[op] deprecated in favor of $form_values[op] - relevant here? */ -function role_weights_admin_role_submit($form_id, $form_values) { +function role_weights_admin_role_submit($form_id, &$form_state) { $id = arg(4); _role_weights_shift_rid($id, FALSE); switch ($_POST['op']) { case t('Save'): // Handle the role name update previously done in user_admin_role(). - db_query("UPDATE {role} SET name = '%s' WHERE rid = %d", $form_values['name'], $id); + db_query("UPDATE {role} SET name = '%s' WHERE rid = %d", $form_state['values']['name'], $id); // Now set weights. - _role_weights_set_weight($id, $form_values['weight']); + _role_weights_set_weight($id, $form_state['values']['weight']); drupal_set_message(t('The changes have been saved.')); break; case t('Delete'): @@ -201,7 +199,7 @@ * Sets role weight for a role based on form input. */ function _role_weights_set_weight($rid, $weight) { - $exists = db_num_rows(db_query('SELECT * FROM {role_weights} WHERE rid = %d', $rid)); + $exists = db_result(db_query('SELECT COUNT(*) FROM {role_weights} WHERE rid = %d', $rid)); if ($exists) { db_query('UPDATE {role_weights} SET weight=%d WHERE rid=%d', $weight, $rid); }