--- /var/www/basemine/modules/user/user.module 2009-07-02 04:51:56.000000000 +0800 +++ /var/www/basemine/sites/all/modules/user/user.module 2009-08-04 14:29:37.000000000 +0800 @@ -2242,7 +2242,43 @@ 'configurable' => FALSE, 'hooks' => array(), ), + 'user_edit_user_role_action' => array( + 'description' => t('Edit role of current user'), + 'type' => 'user', + 'configurable' => TRUE, + 'hooks' => array(), + ), + ); +} + +function user_edit_user_role_action_form($context){ + $form['operation'] = array( + '#type' => 'select', + '#options' => array( + 'add_role' => t('add_role'), + 'remove_role' => t('remove_role'), + ), + '#default_value' => $context['operation'], + '#title' => t('Operation'), + '#description' => t('Operation to this role.'), + ); + $form['role'] = array( + '#type' => 'select', + '#options' => user_roles(TRUE, NUll), + '#default_value' => $context['role'], + '#title' => t('Role'), + '#description' => t('Change user to this role.'), + ); + return $form; +} + +function user_edit_user_role_action_submit($form, $form_state){ + $form_values = $form_state['values']; + $params = array( + 'operation' => $form_values['operation'], + 'role' => $form_values['role'], ); + return $params; } /**