ca0f7a0fb08ea76beb615607c3170daf7b649e16
tdreszer
  Fri Mar 11 16:12:56 2011 -0800
Changed mdb API required this change.
diff --git src/hg/lib/searchTracks.c src/hg/lib/searchTracks.c
index c27d948..37e7ac4 100644
--- src/hg/lib/searchTracks.c
+++ src/hg/lib/searchTracks.c
@@ -150,32 +150,36 @@
                 var = "cell";
             else
                 {
                 safef(buf, sizeof(buf), "%s%d", METADATA_VALUE_PREFIX, ix + offset);
                 enum mdbCvSearchable searchBy = mdbCvSearchMethod(var);
                 if (searchBy == cvsSearchByMultiSelect)
                     {
                     // Multi-selects as comma delimited list of values
                     struct slName *vals = cartOptionalSlNameList(cart,buf);
                     if (vals)
                         {
                         val = slNameListToString(vals,','); // A comma delimited list of values
                         slNameFreeList(&vals);
                         }
                     }
-                else
+                else if (searchBy == cvsSearchBySingleSelect || searchBy == cvsSearchByFreeText)
                     val = cloneString(cartUsualString(cart, buf,ANYLABEL));
+                //else if (searchBy == cvsSearchByDateRange || searchBy == cvsSearchByIntegerRange)
+                //    {
+                //    // TO BE IMPLEMENTED
+                //    }
 
                 if (val != NULL && sameString(val, ANYLABEL))
                     val = NULL;
                 }
             }
         slPairAdd(&mdbSelectPairs,var,val); // val already cloned
         }
     if(delSearchSelect > 0)
         {
         safef(buf, sizeof(buf), "%s%d", METADATA_NAME_PREFIX, numMetadataSelects + 1);
         cartRemove(cart, buf);
         safef(buf, sizeof(buf), "%s%d", METADATA_VALUE_PREFIX, numMetadataSelects + 1);
         cartRemove(cart, buf);
         }
     }
@@ -222,47 +226,47 @@
     // Left side select of vars
     dropDownHtml = cgiMakeSingleSelectDropList(buf, mdbVars,mdbSelect->name, NULL,"mdbVar","style='font-size:.9em;' onchange='findTracksMdbVarChanged(this);'");
     if (dropDownHtml)
         {
         dyStringAppend(output,dropDownHtml);
         freeMem(dropDownHtml);
         }
 
     // Right side select of vals
     safef(buf, sizeof(buf), "%s%i", METADATA_VALUE_PREFIX, row);
     enum mdbCvSearchable searchBy = mdbCvSearchMethod(mdbSelect->name);
     if (searchBy == cvsSearchBySingleSelect || searchBy == cvsSearchByMultiSelect)
         {
         dyStringPrintf(output,"</td>\n<td align='right' id='isLike%i' style='width:10px; white-space:nowrap;'>is%s</td>\n<td nowrap id='%s' style='max-width:600px;'>\n",
                 row,(searchBy == cvsSearchByMultiSelect?" among":""),buf);
-        struct slPair *pairs = mdbValLabelSearch(conn, mdbSelect->name, MDB_VAL_STD_TRUNCATION, TRUE, FALSE); // Tables not files
+        struct slPair *pairs = mdbValLabelSearch(conn, mdbSelect->name, MDB_VAL_STD_TRUNCATION, FALSE, TRUE, FALSE); // not tags, yes tables, not files
         if (slCount(pairs) > 0)
             {
             char *dropDownHtml = cgiMakeSelectDropList((searchBy == cvsSearchByMultiSelect),
                     buf, pairs,mdbSelect->val, ANYLABEL,"mdbVal","style='min-width:200px; font-size:.9em;' onchange='findTracksMdbValChanged(this);'");
             if (dropDownHtml)
                 {
                 dyStringAppend(output,dropDownHtml);
                 freeMem(dropDownHtml);
                 }
             slPairFreeList(&pairs);
             }
         }
     else if (searchBy == cvsSearchByFreeText)
         {
         dyStringPrintf(output,"</td><td align='right' id='isLike%i' style='width:10px; white-space:nowrap;'>contains</td>\n<td nowrap id='%s' style='max-width:600px;'>\n",row,buf);
         dyStringPrintf(output,"<input type='text' name='%s' value='%s' class='mdbVal freeText' style='max-width:310px; width:310px; font-size:.9em;' onchange='findTracksMdbVarChanged(true);'>\n",
                 buf,(mdbSelect->val ? (char *)mdbSelect->val: ""));
         }
-    else if (searchBy == cvsSearchByDateRange || searchBy == cvsSearchByIntegerRange)
-        {
-        // TO BE IMPLEMENTED
-        }
+    //else if (searchBy == cvsSearchByDateRange || searchBy == cvsSearchByIntegerRange)
+    //    {
+    //    // TO BE IMPLEMENTED
+    //    }
     dyStringPrintf(output,"<span id='helpLink%i'>&nbsp;</span></td>\n", row);
     dyStringPrintf(output,"</tr>\n");
     }
 
     dyStringPrintf(output,"<tr><td colspan='%d' align='right' style='height:10px; max-height:10px;'>&nbsp;</td></tr>", cols);
 
 return dyStringCannibalize(&output);
 }