Блог пользователя - anzebra

Drupal 7. Ajax submit text_format поле

7 июня 2012 в 14:46

Доброго времени суток!
Есть такая форма

function test_frm($form, &$form_state) {
$description = 'description text kaka bekaka';  
$form['#prefix'] = '<div id="test_frm_wrapper">';
$form['#suffix'] = '</div>';
$form['description'] = array(
    '#type' => 'text_format',
    '#title' => t('Description'),
    '#default_value' => (!empty($form_state['values']['description']['value']) ? '-'.$form_state['values']['description']['value'].'-' : $description),
    '#weight' => 0,
    '#format' => 'full_html',
    '#base_type' => 'textarea',
   
);    

$form['submit_send'] = array(
    '#type' => 'submit',
    '#value' => t('Send'),
    '#ajax' => array(
      'callback' => 'poll_choice_js',
      'wrapper' => 'test_frm_wrapper',
      'method' => 'replace',

Drupal 7. Database Schema

31 января 2012 в 18:31

Всем доброго времени суток!

Есть бд. Есть mymodule_schema() к бд. Но при установке модуля была отключена. То есть таблицы к модулю есть, а схема таблиц модуля не создана в кеше(...или где там друпал их хранит). А это как говорят бьет ниже колен. Потому что трудно отказаться писать запросы в drupal_write_record(). Как можно ручками написать инициализацию схемы, без переустановки модуля?

Всем спасибо за помощь и внимание Smile

Drupal 7. Диамические select в форме

18 января 2012 в 15:56

Всем доброго времени суток.

Есть форма в ней заполняется fieldset1 с адресом1(регион(список), город(список), улица(текстовое поле)) и fieldset2 с адресом2(регион(список), город(список), улица(текстовое поле)).
В fieldset2 нужно реализовать кнопку(*возможность на что то нажать) "Использовать данные адреса1".

Побывала:
1. С помощью jQuery копипастить value c адреса1 в адрес2 ... всё хорошо если форма заполнена корректно. Если же форма не валидна, то ошибка:
"Обнаружен неверный выбор. Свяжитесь с администратором сайта"
Ну понятно, друпал думает что кто то хочет хакнуть форму...

2. и тут мне пришла мягко говоря гениальная идея - делать это аяксом...из соображений что можно будет поменять значения $form и $form_state и оно будет жить.

Drupal 7. Добавить роль пользователю

22 декабря 2011 в 15:33

Доброго времени суток!

После регистрации пользователь заполняет форму профиля и, если, форма корректно заполнена, необходимо пользователю добавить роли.

Нашла такой метод:

Drupal 7 drupal_set_message после сабмита формы

21 декабря 2011 в 15:18

Доброго времени суток!

При сабмите пользовательской формы drupal_set_message отрабатывает, а при сабмите формы регистрации не выводится сообщение из drupal_set_message.
В чем может быть соль?

Всем спасибо за внимание и ответы Smile

Drupal 7. Регистрация (транзакция)

20 декабря 2011 в 20:58

Доброго времени суток!

При регистрации пользователя нужно добавлять информацию ещё в 2 таблицы базы данных: table1 и table2 и использовать транзакцию.
В обработчике сабмита формы регистрации написала:

<?php
function my_user_register_submit($form, &$form_state) {
    
$txn db_transaction();
    try { 
           
user_register_submit($form$form_state);
           ...
           
drupal_write_record('table1'$data);   
           
drupal_write_record('table2'$data);  

           

drupal_set_message(t('All cool!')); 
        }
    catch (
Exception $e) {
            
$txn->rollback();
            
watchdog_exception('registration error'$e);
            
drupal_set_message(t('Error!'));
    }
}
?>

.... как то так.
Но дело в том что в user_register_submit юзер создается так:

<?php
...
$account user_save($account$edit);
...
?>

а в user_save своя транзакция отрабатывает ... и моя транзакция остается не при делах.

Подскажите как решить такую проблему.

Всем спасибо за внимание и помощь.

Ajax подгрузка ajax формы

6 декабря 2011 в 14:27

Есть страничка на которую ajax-ом подгружается форма регистрации. При єтом форма регистрации содержит динамические элементы, например в зависимости от региона подгружается список городов. И если форму подгружать ajax -oм, то не работает ajax подгрузка городов на форме регистрации, я подозреваю что там не хватает каких-то джаваскриптов.

Как в футере вывести несколько блоков

4 августа 2011 в 14:07

Всем доброго времини суток. С drupal разбираюсь 4 день. Необходимо натянуть верстку на шаблон.
Задача: нужно в футере выводить копирайт, телефон, адрес. Я создала 3 региона:

regions[footer_phone] = Footer Phone
regions[footer_address] = Footer Address
regions[footer_copyright] = Footer Copyright

и к каждому региону по блоку соответсвенно.
Далее в page.tpl.php для Footer Phone: