Добрый день.
Есть:
ноды 'clinic', 'doctor', 'department'. Все с дополнительными CCK полями.
нода 'clinic' содержит в себе 2 ССК поля с типом 'doctor' и 'department'.
Необходимо:
Как сделать так, чтобы при вводе новой ноды 'clinic' можно было нажать на ссылку "Добавить доктора", "Добавить отделение", и в модальном окне (или же в заготовленный div id="add-doctor") вывелась форма создания ноды типа "Доктор" или "Отделение". Потом, при правильном заполнении нового "Доктора" в еще открытую форму создания "Больницы" передался аргумент 'nid' свежесозданной ноды доктор.
Было бы очень хорошо для общего развития сделать все это своим модулем с хуками темизации и с чистым аяксом, а не использовать дополнительные модули вида modalframe, popups, dialog, jquery_ui_dialog.
Комментарии
изучайте AHAH, это как раз то что вам нужно.
Что именно изучать? Повесить на ссылку "Добавить доктора" AHAH? Или как? С примером можно?
на ссылку вам через АХАХ надо вешать drupal_get_form('нужная форма')
ссылок не дам, сам изучал по куче различных мануалов забугорских
очень много для понимания сыграло видео луллаботов
http://rutracker.org/forum/viewtopic.php?t=3172237
9 часть думаю будет вам полезно для начала, если раньше не работали с АХАХ
Хорошо....
получается, что ахах должен вызывать типа такую функцию??
module_load_include('inc', 'node', 'node.pages');
$type = 'doctor';
$node = new stdClass();
$node = array(
'uid' => $GLOBALS['user']->uid,
'name' => (isset($GLOBALS['user']->name) ? $GLOBALS['user']->name : ''),
'type' => $type,
'language' => ''
);
//dpm($form1);
$output = drupal_get_form('doctor_node_form', $node);
echo $output;
//return $form;
}
А как вернуть аргумент обратно? аргумент -это nid новосозданной ноды доктор.
почитайте сначала, и вопросы сами собой отпадут, а то совсем не понятно
Да проблема в том, что читал...и про форм апи, и про ахах...не могу просто понять в общем, какие функции использовать и что за чем должно вызываться. И с какого конца подойти к решению этой проблемы.
вешаете обработчик на ссылку "Добавить доктора"
по наступлению события подгружаете с помощью ajax страницу с формой
в полученных данных находите форму по её id
показываете в окне
А можно хоть чуточку поподробней?? особенно, не понимаю, каким образом получить форму по ее id?
http://api.jquery.com/click/
http://api.jquery.com/jQuery.get/
http://api.jquery.com/category/selectors/
http://jqueryui.com/demos/dialog/
Спасибо большое, xxandeadxx, буду пробовать))