/**
  * Overrides ctools_export_ui::edit_execute_form().
  *
  * This is hacky, but since CTools Export UI uses drupal_goto() we have to
  * effectively change the plugin to modify the redirect path dynamically.
  */
 function edit_execute_form(&$form_state)
 {
     $output = parent::edit_execute_form($form_state);
     if (!empty($form_state['executed'])) {
         $clicked = $form_state['clicked_button']['#value'];
         if (t('Add item') == $clicked || t('Save and edit') == $clicked) {
             // We always want to redirect back to this page when adding an item,
             // but we want to preserve the destination so we can be redirected back
             // to where we came from after clicking "Save".
             $options = array();
             if (!empty($_GET['destination'])) {
                 $options['query']['destination'] = $_GET['destination'];
                 unset($_GET['destination']);
             }
             // Sets redirect path and options.
             $op = $form_state['op'];
             $name = $form_state['values']['name'];
             $path = 'add' != $op ? current_path() : 'admin/config/search/current_search/list/' . $name . '/edit';
             $this->plugin['redirect'][$op] = array($path, $options);
         }
     }
     return $output;
 }
 /**
  * Implements ctools_export_ui::edit_execute_form().
  *
  * This is hacky, but since CTools Export UI uses drupal_goto() we have to
  * effectively change the plugin to modify the redirect path dynamically.
  */
 public function edit_execute_form(&$form_state)
 {
     $output = parent::edit_execute_form($form_state);
     if (!empty($form_state['executed'])) {
         if ($form_state['clicked_button']['#name'] == 'saveandedit') {
             // We always want to redirect back to this page when adding an item,
             // but we want to preserve the destination so we can be redirected back
             // to where we came from after clicking "Save".
             $options = array();
             if (!empty($_GET['destination'])) {
                 $options['query']['destination'] = $_GET['destination'];
                 unset($_GET['destination']);
             }
             // Sets redirect path and options.
             $op = $form_state['op'];
             $path = 'add' != $op ? current_path() : 'admin/structure/openlayers/' . $this->plugin['menu']['menu item'] . '/list/' . $form_state['item']->machine_name . '/edit/start';
             $this->plugin['redirect'][$op] = array($path, $options);
         }
     }
     return $output;
 }