Мне нужно использовать «hook_user» в Drupal 6 для обновления стороннего API всякий раз, когда пользователь обновляет свой профиль.
Поэтому я использую операцию «обновления».Проблема, с которой я сталкиваюсь, заключается в том, что я просто не вижу, как остановить выполнение, если обновление стороннего API завершается неудачно.
Т.е. пользователь обновляет свое имя пользователя, но в случае сбоя API не позволяет Drupal обновить локальную запись.
function myhooks_user($op, &$edit, &$account, $category) {
switch ( $op )
{
case 'update':
if ( FALSE === updateAPI($data) )
{
drupal_set_message("Cannot update user information", "error", false);
return false;
}
break;
}
}
В настоящий момент возвращаемое значение false не останавливает выполнение.