<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Greetings,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Here is a summary of some of the changes we've made to help users search tickets.  If there is interest, I can submit feature requests or provide more details.  (See also another approach  at
<a href="http://requesttracker.wikia.com/wiki/Full_Text_Search_Portlet">http://requesttracker.wikia.com/wiki/Full_Text_Search_Portlet</a> )<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">We index our database and normally want to do a Content Search.   One of our managers wanted to type "cats OR dogs" in the "Search..." box and get a list all tickets with either cats or dogs in the content.  And he wanted each occurrence
 to be highlighted when a ticket is displayed.  And he didn't want to use the full Search/Build.html interface unless absolutely necessary.   So I tinkered a bit.  <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">1. When viewing a listing of tickets from Search/Results.html, we show the query just above the list of tickets (similar to what is seen below a chart from Search/Chart.html).  This is very useful when following a link from a dashboard
 or RT at a Glance when it might not be obvious exactly what was searched.  Best Practical added more callbacks in Results.html (after v4.0.8), and we print the query from a callback.  It might be nice to have a user option to display the query directly from
 Results.html.  This might require some CSS adjustment for it to look reasonable in all browsers, especially if the query is long.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">2. When doing a Content Search, we highlight the matching text when the ticket is displayed.  This required adding a few lines in Ticket/Elements/ShowMessageStanza to wrap a <span> around the match and creating a CSS entry with a yellow
 background.  No doubt I am doing this in a very inefficient and inelegant way, but this does not seem to slow down the ticket display.      
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">3. I wrote a modified version of Search/Simple.html.  This is used as the action when one uses the "Search..." box, or if one chooses Simple Search from the menu. I did not want to touch RT::Search::Googleish, so there are some very ugly
 hacks to manipulate the query string before and after calling Googleish for some of the effects.  Very ugly, and a bit specific for our site. Key features:   
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">a) Content Search (instead of Subject) is on by default. [perhaps RT should do this in Build.html and Simple.html whenever the database is indexed].  
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">b) AND, OR, and Parentheses can be used between search terms. AND is assumed.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">c) Our users were not happy with the page displayed by the original Simple.html nor with the complexity of the full Search/Build.html.  So as a compromise, I added a few arbitrary items: 
<o:p></o:p></p>
<p class="MsoNormal">   a drop down box to pick a queue;  <o:p></o:p></p>
<p class="MsoNormal">   check boxes to choose inactive/active status;<o:p></o:p></p>
<p class="MsoNormal">   a text box with autocompletion to pick a requestor's email;<o:p></o:p></p>
<p class="MsoNormal">   check boxes to choose to search on Subject or Content.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">Regards,<o:p></o:p></p>
<p class="MsoNormal">Jim Berry<o:p></o:p></p>
</div>
</body>
</html>