function mb_user_form_alter in More Buttons 7
Implements hook_form_alter().
File
- mb_user/
mb_user.module, line 71 - Provides additional buttons for content in user context.
Code
function mb_user_form_alter(&$form, &$form_state, $form_id) {
$module = 'mb_user';
switch ($form_id) {
case 'user_profile_form':
$default_values = mb_default_values();
$mb_user_values = mb_get_values('mb');
if (!isset($form['actions']['submit']['#weight'])) {
$form['actions']['submit']['#weight'] = 10;
}
if (isset($form['actions']['cancel'])) {
$form['actions']['cancel']['#weight'] = 25;
}
$settings = array();
$settings['cancel'] = variable_get($module . '_cancel_user_account', 0);
$settings['sac'] = variable_get($module . '_sac_user_account', 0);
$settings['sacn'] = variable_get($module . '_sacn_user_account', 0);
// The "Cancel" form element on user account page.
if ($settings['cancel'] > 0) {
if ($settings['cancel'] == 1) {
$weight_cancel = $form['actions']['submit']['#weight'] - 1;
}
elseif ($settings['cancel'] == 2) {
$weight_cancel = 16;
}
// Define the "Cancel" form element.
$form['actions']['cancel_mb'] = array(
'#type' => 'submit',
'#value' => isset($mb_user_values['cancel']) ? t('@cancel-value', array(
'@cancel-value' => t($mb_user_values['cancel']),
)) : t($default_values['cancel']),
'#weight' => $weight_cancel,
'#validate' => array(
'mb_user_cancel_validate',
),
);
}
// The "Save and continue" form element on user account page.
if ($settings['sac'] > 0) {
// Left
if ($settings['sac'] == 1) {
$weight_sac = $form['actions']['submit']['#weight'] - 0.025;
}
// Right
if ($settings['sac'] == 2) {
$weight_sac = $form['actions']['submit']['#weight'] - 0.05;
}
//
if ($settings['sac'] == 3) {
$weight_sac = $form['actions']['submit']['#weight'] + 1.025;
}
//
if ($settings['sac'] == 4) {
$weight_sac = $form['actions']['submit']['#weight'] + 1.05;
}
// Define the "Save and continue" form element.
$submit = $form['#submit'];
$submit[] = 'mb_user_sac_submit';
$form['actions']['sac'] = array(
'#type' => 'submit',
'#value' => isset($mb_user_values['sac']) ? t('@sac-value', array(
'@sac-value' => t($mb_user_values['sac']),
)) : t($default_values['sac']),
'#weight' => $weight_sac,
'#submit' => $submit,
);
}
// The "Save and create new" form element on user account page.
if ($settings['sacn'] > 0 && user_access('administer users')) {
//
if ($settings['sacn'] == 1) {
$weight_sacn = $form['actions']['submit']['#weight'] - 0.025;
}
//
if ($settings['sacn'] == 2) {
$weight_sacn = $form['actions']['submit']['#weight'] - 0.05;
}
//
if ($settings['sacn'] == 3) {
$weight_sacn = $form['actions']['submit']['#weight'] + 1.025;
}
//
if ($settings['sacn'] == 4) {
$weight_sacn = $form['actions']['submit']['#weight'] + 1.05;
}
// Define the "Save and create new" form element.
$submit = $form['#submit'];
$submit[] = 'mb_user_sacn_submit';
$form['actions']['sacn'] = array(
'#type' => 'submit',
'#value' => isset($mb_user_values['sacn']) ? t('@sacn-value', array(
'@sacn-value' => t($mb_user_values['sacn']),
)) : t($default_values['sacn']),
'#weight' => $weight_sacn,
'#submit' => $submit,
);
}
break;
}
}