I am working on a custom module to create a form. Functionality of the module is as follows: The first form has an url, on clicking the url it should show another form as a pop-up. How can i call these forms in the hook menu. Does tools_js has any significance?
<?php function patient_menu() { $items['patient_add/mainpage'] = array( 'title' => 'New Patient', 'page callback' => 'patient_form', 'page arguments' => array(), 'access callback' => 'user_is_logged_in', 'type' => MENU_CALLBACK, ); //a link to add patient diseases $items['patient_add/%ctools_js'] = array( 'page callback' => 'patient_callback', 'page arguments' => array(1), 'access callback' => 'user_is_logged_in', 'type' => MENU_CALLBACK, ); return $items; } // a function to make a link function _patient_make_link($link_text = '') { return '<div id="patient">' . l($link_text, 'patient_add/nojs', array('attributes' => array('class' => 'ctools-use-modal'))) . '</div>'; } //first form function patient_form($form, &$form_state) { ctools_include('modal'); ctools_modal_add_js(); $form['p_name'] = array( '#type' => 'textfield', '#title' => t('Name'), '#size' => 30, '#maxlength' => 128, '#required' => TRUE, ); $form['age'] = array( '#type' => 'textfield', '#title' => t('Age'), '#size' => 30, '#maxlength' => 30, '#required' => TRUE, '#attributes' => array('placeholder' => t( 'in Years' )), ); $form['submit'] = array( '#value' => t('Add Patient'), '#type' => 'submit', ); _patient_make_link('add disease details'); return $form; } //Ajax menu callback function patient_callback($ajax) { if ($ajax) { ctools_include('ajax'); ctools_include('modal'); $form_state = array( 'ajax' => TRUE, 'title' => t('disease details'), ); $output = ctools_modal_form_wrapper('disease_form', $form_state); if (!empty($form_state['ajax_commands'])) { $output = $form_state['ajax_commands']; } print ajax_render($output); drupal_exit(); } else { return drupal_get_form('disease_form'); } } //second form function disease_form($form, $form_state){ $form['disease_ids'] = array( '#type' => 'select', '#title' => t('Disease IDs'), '#multiple' => TRUE, '#options' => array( 'Cancer' => 'Cancer', 'Dengu' => 'Dengu', 'Viral Fever' => 'Viral Fever', 'Malaria' => 'Malaria', ), ); $form['submit'] = array( '#type' => 'submit', '#value' => t('Submit'), ); return $form; } function patient_form_submit($form, &$form_state) {}