Drupal: Как провести различие между регистрацией нового пользователя и обновлением пароля пользователя в операции подтверждения hook_user? - PullRequest
0 голосов
/ 26 мая 2010

Я использую операцию проверки hook_user для проверки регистрационной информации пользователя по моей бизнес-логике.

Я хочу, чтобы при регистрации менялись отдельные логики и менялся пароль.

Но я не могу различитьдва - оба проходят проверку и один и тот же код запускается для обоих.

Как я могу различить два в операторе проверки в hook_user?

Ответы [ 2 ]

0 голосов
/ 08 ноября 2013

В Drupal 7 вы можете попробовать что-то вроде:

/**
 * Implements hook_form_FORM_ID_alter().
 * Form ID: user_profile_form
 */
function foo_form_user_profile_form_alter($form, &$form_state) {
  // Set a custom form validate and submit handlers.
  $form['#validate'][] = 'foo_form_user_profile_form_validate';
  $form['#submit'][] = 'foo_form_user_profile_form_submit';
}

/**
 * Implements hook_form_FORM_ID_alter().
 * Form ID: user_register_form
 */
function foo_form_user_register_form_alter($form, &$form_state) {
  if ($form['#user_category'] == 'account') {
    // Set a custom form validate and submit handlers.
    $form['#validate'][] = 'foo_form_user_register_validate';
    $form['#submit'][] = 'foo_form_user_register_submit';
  }
}
0 голосов
/ 28 апреля 2011

с $ form_id

if ( ($form_id == 'user_profile_form' && arg(3) == NULL) {

  // validation code for updating 

}

elseif ($form_id == 'user_register') ) {

 // validation code for registering

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...