From 7910c0ff55edcb9ed973abd680489b9e0f28d0cb Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Wed, 03 Mar 2010 07:11:04 -0500
Subject: [PATCH] Remember search modifiers in user prefs (#1486146) + bring back the old defaults

---
 program/steps/mail/search.inc |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/program/steps/mail/search.inc b/program/steps/mail/search.inc
index 6a1c8c4..cfdb6fb 100644
--- a/program/steps/mail/search.inc
+++ b/program/steps/mail/search.inc
@@ -72,12 +72,17 @@
 else if(trim($str))
 {
   if ($headers) {
-    $headers = explode(',', $headers);
-    foreach($headers as $header)
+    foreach(explode(',', $headers) as $header)
       switch ($header) {
         case 'text': $subject['text'] = 'TEXT'; break;
-        default: $subject[$header] = 'HEADER '.$header;
+        default:     $subject[$header] = 'HEADER '.strtoupper($header);
       }
+    
+    // save search modifiers for the current folder to user prefs
+    $search_mods = $RCMAIL->config->get('search_mods', $SEARCH_MODS_DEFAULT);
+    $search_mods[$mbox] = array_fill_keys(array_keys($subject), 1);
+    $RCMAIL->user->save_prefs(array('search_mods' => $search_mods));
+    console($search_mods);
   } else {
     // search in subject by default
     $subject['subject'] = 'HEADER SUBJECT';
@@ -90,7 +95,6 @@
   $search_str .= str_repeat(' OR', count($subject)-1);
   foreach ($subject as $sub)
     $search_str .= sprintf(" %s {%d}\r\n%s", $sub, strlen($search), $search);
-  $_SESSION['search_mods'] = $subject;
 }
 
 $search_str = trim($search_str);

--
Gitblit v1.9.1