From 3d4313f29fee4603a5a6ca7d1e08fc7b74cfa5b4 Mon Sep 17 00:00:00 2001
From: Jared Hancock <jared@osticket.com>
Date: Thu, 6 Aug 2015 12:21:26 -0500
Subject: [PATCH] search: Fix dropped fields when editing advanced search

---
 include/class.forms.php                          |  4 ++++
 include/class.search.php                         | 11 +++++++++++
 include/staff/templates/advanced-search.tmpl.php |  1 +
 3 files changed, 16 insertions(+)

diff --git a/include/class.forms.php b/include/class.forms.php
index 555ef456b..7e59dd169 100644
--- a/include/class.forms.php
+++ b/include/class.forms.php
@@ -970,6 +970,10 @@ class FormField {
             return __('%s contains "%s"');
         case 'match':
             return __('%s matches pattern %s');
+        case 'includes':
+            return __('%s in (%s)');
+        case '!includes':
+            return __('%s not in (%s)');
         }
     }
     function describeSearch($method, $value, $name=false) {
diff --git a/include/class.search.php b/include/class.search.php
index c754b4068..a64d216c9 100644
--- a/include/class.search.php
+++ b/include/class.search.php
@@ -1055,6 +1055,17 @@ class AssigneeChoiceField extends ChoiceField {
         }
         return $Q;
     }
+
+    function describeSearchMethod($method) {
+        switch ($method) {
+        case 'assigned':
+            return __('assigned');
+        case '!assigned':
+            return __('unassigned');
+        default:
+            return parent::describeSearchMethod($method);
+        }
+    }
 }
 
 class TicketStateChoiceField extends ChoiceField {
diff --git a/include/staff/templates/advanced-search.tmpl.php b/include/staff/templates/advanced-search.tmpl.php
index 908126e9b..b31763e4e 100644
--- a/include/staff/templates/advanced-search.tmpl.php
+++ b/include/staff/templates/advanced-search.tmpl.php
@@ -16,6 +16,7 @@ $errors = !!$form->errors();
 $inbody = false;
 $first_field = true;
 foreach ($form->getFields() as $name=>$field) {
+    ?><input type="hidden" name="fields[]" value="<?php echo $name; ?>"/><?php
     @list($name, $sub) = explode('+', $field->get('name'), 2);
     if ($sub === 'search') {
         if (!$first_field) {
-- 
GitLab