Don't redirect to search screen on empty search
authorMichael M Slusarz <slusarz@curecanti.org>
Tue, 25 Aug 2009 05:29:52 +0000 (23:29 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Tue, 25 Aug 2009 05:29:52 +0000 (23:29 -0600)
imp/mailbox.php
imp/search.php

index 4b0dcc2..feca691 100644 (file)
@@ -239,12 +239,9 @@ $mbox_info = $imp_mailbox->getMailboxArray(range($pageOb['begin'], $pageOb['end'
 /* Determine sorting preferences. */
 $sortpref = IMP::getSort($imp_mbox['mailbox']);
 
-/* If search results are empty, return to the search page if this is
- * not a virtual folder. */
-if ($search_mbox && !$pageOb['msgcount'] && !$vfolder) {
+/* If search results are empty, inform the user. */
+if ($search_mbox && !$pageOb['msgcount']) {
     $notification->push(_("No messages matched your search."), 'horde.warning');
-    header('Location: ' . Horde_Util::addParameter(Horde::applicationUrl('search.php', true), array('no_match' => 1, 'mailbox' => $imp_mbox['mailbox']), null, false));
-    exit;
 }
 
 /* Cache this value since we use it alot on this page. */
index 65a7390..f744982 100644 (file)
@@ -48,11 +48,9 @@ $imp_search_fields = $imp_ui_search->searchFields();
 $charset = Horde_Nls::getCharset();
 
 /* Get URL parameter data. */
+$retrieve_search = false;
 $search = array();
-if (Horde_Util::getFormData('no_match')) {
-    $search = $imp_search->retrieveUIQuery();
-    $retrieve_search = true;
-} elseif (($edit_query !== null) && $imp_search->isSearchMbox($edit_query)) {
+if (!is_null($edit_query) && $imp_search->isSearchMbox($edit_query)) {
     if ($imp_search->isVFolder($edit_query)) {
         if (!$imp_search->isEditableVFolder($edit_query)) {
             $notification->push(_("Special Virtual Folders cannot be edited."), 'horde.error');
@@ -63,9 +61,8 @@ if (Horde_Util::getFormData('no_match')) {
     }
     $search = $imp_search->retrieveUIQuery($edit_query);
     $retrieve_search = true;
-} else {
-    $retrieve_search = false;
 }
+
 if (empty($search)) {
     $search['field'] = Horde_Util::getFormData('field', array('from', 'to', 'subject', 'body'));
     if (!empty($search['field']) && !end($search['field'])) {