danielebarchiesi@0: 'Search_Embed_Form', danielebarchiesi@0: 'page callback' => 'drupal_get_form', danielebarchiesi@0: 'page arguments' => array('search_embedded_form_form'), danielebarchiesi@0: 'access arguments' => array('search content'), danielebarchiesi@0: 'type' => MENU_CALLBACK, danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: return $items; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * Builds a form for embedding in search results for testing. danielebarchiesi@0: * danielebarchiesi@0: * @see search_embedded_form_form_submit(). danielebarchiesi@0: */ danielebarchiesi@0: function search_embedded_form_form($form, &$form_state) { danielebarchiesi@0: $count = variable_get('search_embedded_form_submitted', 0); danielebarchiesi@0: danielebarchiesi@0: $form['name'] = array( danielebarchiesi@0: '#type' => 'textfield', danielebarchiesi@0: '#title' => t('Your name'), danielebarchiesi@0: '#maxlength' => 255, danielebarchiesi@0: '#default_value' => '', danielebarchiesi@0: '#required' => TRUE, danielebarchiesi@0: '#description' => t('Times form has been submitted: %count', array('%count' => $count)), danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: $form['actions'] = array('#type' => 'actions'); danielebarchiesi@0: $form['actions']['submit'] = array( danielebarchiesi@0: '#type' => 'submit', danielebarchiesi@0: '#value' => t('Send away'), danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: $form['#submit'][] = 'search_embedded_form_form_submit'; danielebarchiesi@0: danielebarchiesi@0: return $form; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * Submit handler for search_embedded_form_form(). danielebarchiesi@0: */ danielebarchiesi@0: function search_embedded_form_form_submit($form, &$form_state) { danielebarchiesi@0: $count = variable_get('search_embedded_form_submitted', 0) + 1; danielebarchiesi@0: variable_set('search_embedded_form_submitted', $count); danielebarchiesi@0: drupal_set_message(t('Test form was submitted')); danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * Adds the test form to search results. danielebarchiesi@0: */ danielebarchiesi@0: function search_embedded_form_preprocess_search_result(&$variables) { danielebarchiesi@0: $form = drupal_get_form('search_embedded_form_form'); danielebarchiesi@0: $variables['snippet'] .= drupal_render($form); danielebarchiesi@0: }