You are here

function search_api_saved_searches_search_edit_form_submit in Search API Saved Searches 7

Submission handler for search_api_saved_searches_search_edit_form().

See also

search_api_saved_searches_search_edit_form()

File

./search_api_saved_searches.pages.inc, line 271
User UI functions and form callbacks for saved searches.

Code

function search_api_saved_searches_search_edit_form_submit(array $form, array &$form_state) {
  $values = $form_state['values'];

  /** @var SearchApiSavedSearch $search */
  $search = $form_state['search'];
  $search->name = $values['name'];
  $search->enabled = $values['enabled'];
  if (isset($values['notify_interval'])) {
    $search->notify_interval = $values['notify_interval'];
  }
  if (!empty($form['keys']) && $values['keys'] != $form['keys']['#default_value']) {
    $search->query['keys'] = $values['keys'] === '' ? NULL : $values['keys'];

    // Unsetting the results array will automatically re-calculate the current
    // results when saving.
    $search->results = NULL;
  }
  if ($search
    ->save()) {
    drupal_set_message(t('Successfully saved your changes.'));
    if (!empty($form_state['destination'])) {
      $form_state['redirect'] = $form_state['destination'];
    }
  }
  else {
    drupal_set_message(t('An error occurred while trying to save the changes.'), 'error');
  }
}