72104973159629424d68d6b950548a7d15185a62 larrym Tue Sep 14 11:16:15 2010 -0700 add help links; code cleanup diff --git src/hg/hgTracks/searchTracks.c src/hg/hgTracks/searchTracks.c index 1cd32c4..8decf81 100644 --- src/hg/hgTracks/searchTracks.c +++ src/hg/hgTracks/searchTracks.c @@ -131,28 +131,19 @@ // Search the assembly's metaDb table for var; If name == NULL, we search every metadata field. // Search is via mysql, so it's case-insensitive. { -struct slName *retVal = NULL; char query[256]; -struct sqlResult *sr = NULL; -char **row = NULL; - +char *prefix = "select distinct obj from metaDb"; if(sameString(op, "contains")) if(name == NULL) - safef(query, sizeof(query), "select obj from metaDb where val like '%%%s%%'", val); + safef(query, sizeof(query), "%s where val like '%%%s%%'", prefix, val); else - safef(query, sizeof(query), "select obj from metaDb where var = '%s' and val like '%%%s%%'", name, val); + safef(query, sizeof(query), "%s where var = '%s' and val like '%%%s%%'", prefix, name, val); else if(name == NULL) - safef(query, sizeof(query), "select distinct obj from metaDb where val = '%s'", val); + safef(query, sizeof(query), "%s where val = '%s'", prefix, val); else - safef(query, sizeof(query), "select obj from metaDb where var = '%s' and val = '%s'", name, val); -sr = sqlGetResult(conn, query); -while ((row = sqlNextRow(sr)) != NULL) - { - slNameAddHead(&retVal, row[0]); - } -sqlFreeResult(&sr); -return retVal; + safef(query, sizeof(query), "%s where var = '%s' and val = '%s'", prefix, name, val); +return sqlQuickList(conn, query); } static int metaDbVars(struct sqlConnection *conn, char *** metaVars, char *** metaLabels) @@ -329,14 +320,16 @@ "</ul>\n" "<div id='simpleTab'>\n",metaDbExists?"ENCODE ":""); +hPrintf("<table><tr><td colspan='2'>"); hPrintf("<input type='text' name='hgt.simpleSearch' id='simpleSearch' value='%s' size='80' onkeyup='findTracksSearchButtonsEnable(true);'>\n", descSearch == NULL ? "" : descSearch); +hPrintf("</td></tr><tr><td>"); if (simpleSearch && descSearch) searchTermsExist = TRUE; -hPrintf("<BR>"); hPrintf("<input type='submit' name='%s' id='searchSubmit' value='Search' style='font-size:14px;'>\n", searchTracks); hPrintf("<input type='button' name='clear' value='Clear' class='clear' style='font-size:14px;' onclick='findTracksClear();'>\n"); hPrintf("<input type='submit' name='submit' value='Cancel' class='cancel' style='font-size:14px;'>\n"); +hPrintf("</td><td align='right'><a target='_blank' href='../goldenPath/help/trackSearch.html'>help</a></td></tr></table>\n"); hPrintf("</div>\n" "<div id='advancedTab'>\n" "<table>\n"); @@ -472,13 +465,13 @@ } } -hPrintf("</table>\n"); - +hPrintf("<tr><td colspan='5'>\n"); hPrintf("<input type='submit' name='%s' id='searchSubmit' value='Search' style='font-size:14px;'>\n", searchTracks); hPrintf("<input type='button' name='clear' value='Clear' class='clear' style='font-size:14px;' onclick='findTracksClear();'>\n"); hPrintf("<input type='submit' name='submit' value='Cancel' class='cancel' style='font-size:14px;'>\n"); +hPrintf("</td><td align='left'><a target='_blank' href='../goldenPath/help/trackSearch.html'>help</a></td></tr>\n"); +hPrintf("</table>\n"); hPrintf("</div>\n</div>\n"); - hPrintf("</form>\n"); if(descSearch != NULL && !strlen(descSearch)) @@ -492,17 +485,15 @@ char *val = nextWord(&tmp); struct slName *el, *descList = NULL; int i; - while (val != NULL) { slNameAddTail(&descList, val); + descWordCount++; val = nextWord(&tmp); } - descWordCount = slCount(descList); descWords = needMem(sizeof(char *) * descWordCount); for(i = 0, el = descList; el != NULL; i++, el = el->next) descWords[i] = strLower(el->name); - } if(doSearch)