d57d2f80be605f3d71a7eb30ba4a65f8f6bce98c
tdreszer
  Wed Apr 20 15:42:40 2011 -0700
Removed a lot of ifdef'd out code.  We are not going to revive fileSearch as a tab on trackSearch (unfortunately)
diff --git src/hg/hgTracks/searchTracks.c src/hg/hgTracks/searchTracks.c
index 4df1ff0..83c8cd1 100644
--- src/hg/hgTracks/searchTracks.c
+++ src/hg/hgTracks/searchTracks.c
@@ -22,35 +22,30 @@
 #include "imageV2.h"
 
 
 #define TRACK_SEARCH_FORM        "trackSearch"
 #define SEARCH_RESULTS_FORM      "searchResults"
 #define TRACK_SEARCH_CURRENT_TAB "tsCurTab"
 #define TRACK_SEARCH_SIMPLE      "tsSimple"
 #define TRACK_SEARCH_ON_NAME     "tsName"
 #define TRACK_SEARCH_ON_TYPE     "tsType"
 #define TRACK_SEARCH_ON_GROUP    "tsGroup"
 #define TRACK_SEARCH_ON_DESCR    "tsDescr"
 #define TRACK_SEARCH_SORT        "tsSort"
 
 #define SUPPORT_QUOTES_IN_NAME_SEARCH
 
-//#define FILES_SEARCH
-#ifdef FILES_SEARCH
-    #define FILE_SEARCH_ON_FILETYPE "tsFileType"
-#endif///def FILES_SEARCH
-
 static int gCmpGroup(const void *va, const void *vb)
 /* Compare groups based on label. */
 {
 const struct group *a = *((struct group **)va);
 const struct group *b = *((struct group **)vb);
 return strcmp(a->label, b->label);
 }
 
 // Would like to do a radio button choice ofsorts
 enum sortBy
     {
     sbRelevance=0,
     sbAbc      =1,
     sbHierarchy=2,
     };
@@ -591,67 +586,57 @@
 
 webIncludeResourceFile("ui.dropdownchecklist.css");
 //jsIncludeFile("ui.core.js",NULL);   // NOTE: This appears to be not needed as long as jquery-ui.js comes before ui.dropdownchecklist.js
 jsIncludeFile("ui.dropdownchecklist.js",NULL);
 // This line is needed to get the multi-selects initialized
 hPrintf("<script type='text/javascript'>$(document).ready(function() { $('.filterBy').each( function(i) { $(this).dropdownchecklist({ firstItemChecksAll: true, noneIsAll: true });});});</script>\n");
 
 struct group *group;
 char *groups[128];
 char *labels[128];
 int numGroups = 1;
 groups[0] = ANYLABEL;
 labels[0] = ANYLABEL;
 char *nameSearch = cartOptionalString(cart, TRACK_SEARCH_ON_NAME);
 char *typeSearch = cartOptionalString(cart, TRACK_SEARCH_ON_TYPE);
-#ifdef FILES_SEARCH
-char *fileTypeSearch = cartOptionalString(cart, FILE_SEARCH_ON_FILETYPE);
-#endif///def FILES_SEARCH
 char *descSearch = NULL;
 char *groupSearch = cartOptionalString(cart, TRACK_SEARCH_ON_GROUP);
 boolean doSearch = sameString(cartOptionalString(cart, TRACK_SEARCH), "Search") || cartUsualInt(cart, TRACK_SEARCH_PAGER, -1) >= 0;
 struct sqlConnection *conn = hAllocConn(database);
 boolean metaDbExists = sqlTableExists(conn, "metaDb");
 int tracksFound = 0;
 struct trix *trix;
 char trixFile[HDB_MAX_PATH_STRING];
 char **descWords = NULL;
 int descWordCount = 0;
 boolean searchTermsExist = FALSE;
 int cols;
 char buf[512];
 
 enum searchTab selectedTab = simpleTab;
 char *currentTab = cartUsualString(cart, TRACK_SEARCH_CURRENT_TAB, "simpleTab");
 if(sameString(currentTab, "simpleTab"))
     {
     selectedTab = simpleTab;
     descSearch = cartOptionalString(cart, TRACK_SEARCH_SIMPLE);
     freez(&nameSearch);
     }
 else if(sameString(currentTab, "advancedTab"))
     {
     selectedTab = advancedTab;
     descSearch = cartOptionalString(cart, TRACK_SEARCH_ON_DESCR);
     }
-#ifdef FILES_SEARCH
-else if(sameString(currentTab, "filesTab"))
-    {
-    selectedTab = filesTab;
-    descSearch = cartOptionalString(cart, TRACK_SEARCH_ON_DESCR);
-    }
-#endif///def FILES_SEARCH
 
 #ifdef SUPPORT_QUOTES_IN_NAME_SEARCH
 if(descSearch && selectedTab == simpleTab) // TODO: could support quotes in simple tab by detecting quotes and choosing to use doesNameMatch() || doesDescriptionMatch()
     stripChar(descSearch, '"');
 #else///ifndef SUPPORT_QUOTES_IN_NAME_SEARCH
 if(descSearch)
     stripChar(descSearch, '"');
 #endif///ndef SUPPORT_QUOTES_IN_NAME_SEARCH
 trackList = getTrackList(&groupList, -2); // global
 makeGlobalTrackHash(trackList);
 
 // NOTE: This is necessary when container cfg by '*' results in vis changes
 // This will handle composite/view override when subtrack specific vis exists, AND superTrack reshaping.
 parentChildCartCleanup(trackList,cart,oldVars); // Subtrack settings must be removed when composite/view settings are updated
 
@@ -679,33 +664,30 @@
 cartSaveSession(cart);  // Creates hidden var of hgsid to avoid bad voodoo
 safef(buf, sizeof(buf), "%lu", clock1());
 cgiMakeHiddenVar("hgt_", buf);  // timestamps page to avoid browser cache
 
 
 hPrintf("<input type='hidden' name='db' value='%s'>\n", database);
 hPrintf("<input type='hidden' name='%s' id='currentTab' value='%s'>\n", TRACK_SEARCH_CURRENT_TAB, currentTab);
 hPrintf("<input type='hidden' name='%s' value=''>\n",TRACK_SEARCH_DEL_ROW);
 hPrintf("<input type='hidden' name='%s' value=''>\n",TRACK_SEARCH_ADD_ROW);
 hPrintf("<input type='hidden' name='%s' value=''>\n",TRACK_SEARCH_PAGER);
 
 hPrintf("<div id='tabs' style='display:none; %s'>\n"
         "<ul>\n"
         "<li><a href='#simpleTab'><B style='font-size:.9em;font-family: arial, Geneva, Helvetica, san-serif;'>Search</B></a></li>\n"
         "<li><a href='#advancedTab'><B style='font-size:.9em;font-family: arial, Geneva, Helvetica, san-serif;'>Advanced</B></a></li>\n"
-#ifdef FILES_SEARCH
-        "<li><a href='#filesTab'><B style='font-size:.9em;font-family: arial, Geneva, Helvetica, san-serif;'>Files</B></a></li>\n"
-#endif///def FILES_SEARCH
         "</ul>\n"
         "<div id='simpleTab' style='max-width:inherit;'>\n",cgiBrowser()==btIE?"width:1060px;":"max-width:inherit;");
 
 hPrintf("<table id='simpleTable' style='width:100%%; font-size:.9em;'><tr><td colspan='2'>");
 hPrintf("<input type='text' name='%s' id='simpleSearch' class='submitOnEnter' value='%s' style='max-width:1000px; width:100%%;' onkeyup='findTracksSearchButtonsEnable(true);'>\n",
         TRACK_SEARCH_SIMPLE,descSearch == NULL ? "" : descSearch);
 if (selectedTab==simpleTab && descSearch)
     searchTermsExist = TRUE;
 
 hPrintf("</td></tr><td style='max-height:4px;'></td></tr></table>");
 //hPrintf("</td></tr></table>");
 hPrintf("<input type='submit' name='%s' id='searchSubmit' value='search' style='font-size:.8em;'>\n", TRACK_SEARCH);
 hPrintf("<input type='button' name='clear' value='clear' class='clear' style='font-size:.8em;' onclick='findTracksClear();'>\n");
 hPrintf("<input type='submit' name='submit' value='cancel' class='cancel' style='font-size:.8em;'>\n");
 hPrintf("</div>\n");
@@ -767,103 +749,30 @@
     if (output)
         {
         puts(output);
         freeMem(output);
         }
     slPairFreeList(&mdbVars);
     }
 
 hPrintf("</table>\n");
 hPrintf("<input type='submit' name='%s' id='searchSubmit' value='search' style='font-size:.8em;'>\n", TRACK_SEARCH);
 hPrintf("<input type='button' name='clear' value='clear' class='clear' style='font-size:.8em;' onclick='findTracksClear();'>\n");
 hPrintf("<input type='submit' name='submit' value='cancel' class='cancel' style='font-size:.8em;'>\n");
 //hPrintf("<a target='_blank' href='../goldenPath/help/trackSearch.html'>help</a>\n");
 hPrintf("</div>\n");
 
-#ifdef FILES_SEARCH
-// Files tab
-hPrintf("<div id='filesTab' style='width:inherit;'>\n"
-        "<table id='filesTable' cellSpacing=0 style='width:inherit; font-size:.9em;'>\n");
-cols = 8;
-
-//// Track Name contains
-//hPrintf("<tr><td colspan=3></td>");
-//hPrintf("<td nowrap><b style='max-width:100px;'>Track&nbsp;Name:</b></td>");
-//hPrintf("<td align='right'>contains</td>\n");
-//hPrintf("<td colspan='%d'>", cols - 4);
-//hPrintf("<input type='text' name='%s' id='nameSearch' class='submitOnEnter' value='%s' onkeyup='findTracksSearchButtonsEnable(true);' style='min-width:326px; font-size:.9em;'>",
-//        TRACK_SEARCH_ON_NAME, nameSearch == NULL ? "" : nameSearch);
-//hPrintf("</td></tr>\n");
-//
-//// Description contains
-//hPrintf("<tr><td colspan=2></td><td align='right'>and&nbsp;</td>");
-//hPrintf("<td><b style='max-width:100px;'>Description:</b></td>");
-//hPrintf("<td align='right'>contains</td>\n");
-//hPrintf("<td colspan='%d'>", cols - 4);
-//hPrintf("<input type='text' name='%s' id='descSearch' value='%s' class='submitOnEnter' onkeyup='findTracksSearchButtonsEnable(true);' style='max-width:536px; width:536px; font-size:.9em;'>",
-//        TRACK_SEARCH_ON_DESCR, descSearch == NULL ? "" : descSearch);
-//hPrintf("</td></tr>\n");
-//if (selectedTab==fileTab && descSearch)
-//    searchTermsExist = TRUE;
-//
-//hPrintf("<tr><td colspan=2></td><td align='right'>and&nbsp;</td>\n");
-//hPrintf("<td><b style='max-width:100px;'>Group:</b></td>");
-//hPrintf("<td align='right'>is</td>\n");
-//hPrintf("<td colspan='%d'>", cols - 4);
-//cgiMakeDropListFull(TRACK_SEARCH_ON_GROUP, labels, groups, numGroups, groupSearch, "class='groupSearch' style='min-width:40%; font-size:.9em;'");
-//hPrintf("</td></tr>\n");
-//if (selectedTab==fileTab && groupSearch)
-//    searchTermsExist = TRUE;
-
-// Track Type is (drop down)
-hPrintf("<tr><td colspan=2></td><td align='right'>&nbsp;</td>\n");
-//hPrintf("<tr><td colspan=2></td><td align='right'>and&nbsp;</td>\n"); // Bring back "and" if using "Track Name,Description or Group
-hPrintf("<td nowrap><b style='max-width:100px;'>Data Format:</b></td>");
-hPrintf("<td align='right'>is</td>\n");
-hPrintf("<td colspan='%d'>", cols - 4);
-char *dropDownHtml = fileFormatSelectHtml(FILE_SEARCH_ON_FILETYPE,fileTypeSearch,"style='min-width:40%; font-size:.9em;'");
-if (dropDownHtml)
-    {
-    puts(dropDownHtml);
-    freeMem(dropDownHtml);
-    }
-hPrintf("</td></tr>\n");
-if (selectedTab==filesTab && fileTypeSearch)
-    searchTermsExist = TRUE;
-
-// mdb selects
-if(metaDbExists)
-    {
-    struct slPair *mdbVars = mdbVarsSearchable(conn,TRUE,FALSE); // Tables but not file only objects
-    mdbSelects = mdbSelectPairs(cart,selectedTab, mdbVars);
-    char *output = mdbSelectsHtmlRows(conn,mdbSelects,mdbVars,colsFALSE);  // not a fileSearch
-    if (output)
-        {
-        puts(output);
-        freeMem(output);
-        }
-    slPairFreeList(&mdbVars);
-    }
-
-hPrintf("</table>\n");
-hPrintf("<input type='submit' name='%s' id='searchSubmit' value='search' style='font-size:.8em;'>\n", TRACK_SEARCH);
-hPrintf("<input type='button' name='clear' value='clear' class='clear' style='font-size:.8em;' onclick='findTracksClear();'>\n");
-hPrintf("<input type='submit' name='submit' value='cancel' class='cancel' style='font-size:.8em;'>\n");
-//hPrintf("<a target='_blank' href='../goldenPath/help/trackSearch.html'>help</a>\n");
-hPrintf("</div>\n");
-
-#endif///def FILES_SEARCH
 hPrintf("</div>\n");
 
 hPrintf("</form>\n");
 hPrintf("</div>"); // Restricts to max-width:1000px;
 
 if (measureTiming)
     uglyTime("Rendered tabs");
 
 if(descSearch != NULL && !strlen(descSearch))
     descSearch = NULL;
 if(groupSearch != NULL && sameString(groupSearch, ANYLABEL))
     groupSearch = NULL;
 if(typeSearch != NULL && sameString(typeSearch, ANYLABEL))
     typeSearch = NULL;
 
@@ -883,34 +792,30 @@
     for(i = 0, el = descList; el != NULL; i++, el = el->next)
         descWords[i] = strLower(el->name);
     }
 
 if (doSearch && selectedTab==simpleTab && descWordCount <= 0)
     doSearch = FALSE;
 
 if(doSearch)
     {
     // Now search
     struct slRef *tracks = NULL;
     if(selectedTab==simpleTab)
         tracks = simpleSearchForTracksstruct(trix,descWords,descWordCount);
     else if(selectedTab==advancedTab)
         tracks = advancedSearchForTracks(conn,groupList,descWords,descWordCount,nameSearch,typeSearch,descSearch,groupSearch,mdbSelects);
-#ifdef FILES_SEARCH
-    else if(selectedTab==filesTab && mdbSelects != NULL)
-        fileSearchResults(database, conn, mdbSelects, fileTypeSearch);
-#endif///def FILES_SEARCH
 
     if (measureTiming)
         uglyTime("Searched for tracks");
 
     // Sort and Print results
     if(selectedTab!=filesTab)
         {
         enum sortBy sortBy = cartUsualInt(cart,TRACK_SEARCH_SORT,sbRelevance);
         tracksFound = slCount(tracks);
         if(tracksFound > 1)
             findTracksSort(&tracks,sortBy);
 
         displayFoundTracks(cart,tracks,tracksFound,sortBy);
 
         if (measureTiming)