Хуки

Главные вкладки

Аватар пользователя naz_zh naz_zh 3 марта 2011 в 6:30

Здрасьте всем!Надо изменить дурпаловскую форму регистрации, просто я новичок в этом деле, умные люди подсказали что надо использовать hook_form_alter. Ну прочитала теорию, а на деле не знаю с чего начать. Можете порекомендовать хорошую книгу или где мне найти примеры?

Комментарии

Аватар пользователя phpandrei phpandrei 3 марта 2011 в 6:44

Что надо изменить, новичок? Думаю умные люди друпаловскую форму регистрации посоветуют менять либо с помощью модуля profile который идёт в коробке с друпалом и сторонних модулей для profile, либо с поммощью CONTENT PROFILE - к форме регистрации присабачится нода, в которой с помощью CCK любые поля прицепить можно.
Но если экзотика - то

unction xxx_form_alter(&$form, $form_state, $form_id)
{
        switch ($form_id)
        {
            case 'casetracker_basic_case_node_form':
            $form['ikey'] = array
            (
              '#type' => 'textfield',
              '#title' => t('xxx'),
              '#default_value' => $my_xxx,
            );
        };

То есть $form_id - имя формы, которую следует изменить
$form - сама форма.

Эотот пример добавит к форме casetracker_basic_case_node_form - новое текстовое поле

Чтоб узнать массив формы и имя формы - юзайте var_dump($form_id) и далее по списку.

А книга лучшая по мне - Pro Drupal Developer 6.

Аватар пользователя naz_zh naz_zh 3 марта 2011 в 6:55

Спасибо!!!
ФОРМА такая: логин, е-майл, если своего е-майла нет, использовать стандартный е-майл, ну когда нажимаю чекбокс, поле е-майл должно исчезнуть и пароль.

Аватар пользователя naz_zh naz_zh 9 марта 2011 в 9:15

Здравствуйте, как обойти дурпаловскую валидацию, например, при совпадении е-майла выводится ошибка - это пусть остается, а у меня стандартный е-майл есть, те у которых нет своего е-майла могут воспользоваться стандартным, как сделать чтобы этот стандартный е майл, например 'n@mail.ru', обошел валидацию