Темизация модального окна

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

Аватар пользователя Виктория Виктория 24 февраля 2015 в 23:25

Здравствуйте! Имеется модальное ctools окно, а как в этом окне отобразить собственную форму? Как создать собственный шаблон для такого окна? Подскажите пожалуйста

Комментарии

Аватар пользователя wolf1986 wolf1986 22 марта 2015 в 14:31

<?php
function mymodule_custom_menu() {
$items = array();
$items['example/%ctools_js/contact'] = array(
'title' => 'Contact',
'page callback' => 'example_contact_page_callback',
'page arguments' => array(1),
'access arguments' => array('access site-wide contact form'),
'delivery callback' => 'ajax_deliver',
'theme callback' => 'ajax_base_page_theme',
);
return $items;
}
function example_contact_page_callback($js = NULL) {
if (!$js) {
drupal_goto('/');
}
ctools_include('modal');
$form_state = array(
'title' => t('setting account'),
'ajax' => TRUE,
'build_info' => array(
'args' => array(),
),
);
$form_load_include($form_state, 'расширение файла (.init, .module и т.д)', 'название файла'); //как пример: форма определена в файле модуля mymodule.module form_load_include($form_state, 'module', 'mymodule')
$commands = array();
$commands = ctools_modal_form_wrapper('id вашей формы', $form_state); // как пример ctools_modal_form_wrapper('mymodule_form', $form_state);
if (!empty($form_state['executed'])) {
$commands = array();
$commands[] = ajax_command_html('#messages-wrapper', theme('status_messages'));
$commands[] = ctools_modal_command_dismiss();
}
return array('#type' => 'ajax', '#commands' => $commands);
}

function mymodule_form($form, $form_state) {
$form['save'] = array(
'#type' => 'submit',
'#value' => t('Save'),
);
return $form;
}
?>
вот вариант как я всталял еще нужно подключить библиотеки
я в шаблоне страницы page.tpl.php прописал
<?php
ctools_include('ajax');
ctools_include('modal');
ctools_modal_add_js();
?>