d48f39fe56017d31ed77b0d389542ada8ff6277a angie Tue Apr 26 14:07:58 2016 -0700 Add geneSymbol to the JSON results so it can be used in place of the verbose item value. diff --git src/hg/hgSuggest/hgSuggest.c src/hg/hgSuggest/hgSuggest.c index e6114ee..681aa89 100644 --- src/hg/hgSuggest/hgSuggest.c +++ src/hg/hgSuggest/hgSuggest.c @@ -73,25 +73,31 @@ sqlSafef(query, sizeof(query), "select x.geneSymbol, k.chrom, kg.txStart, kg.txEnd, x.kgID, x.description " "from knownCanonical k, knownGene kg, kgXref x where k.transcript = x.kgID and k.transcript = kg.name " "and x.geneSymbol LIKE '%s%%' order by x.geneSymbol, k.chrom, kg.txStart", prefix); else sqlSafef(query, sizeof(query), "select r.name2, r.chrom, r.txStart, r.txEnd, r.name, d.name " "from %s r, %s g, %s d where r.name2 LIKE '%s%%' and g.acc = r.name " "and g.description = d.id order by r.name2, r.chrom, r.txStart", table, gbCdnaInfoTable, descriptionTable, prefix); } sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { // ignore funny chroms (e.g. _hap chroms. See redmine #4257. if(!strchr(row[1], '_')) { count++; - dyStringPrintf(str, "%s{\"value\": \"%s (%s)\", \"id\": \"%s:%d-%s\", \"internalId\": \"%s\"}", count == 1 ? "" : ",\n", - row[0], jsonStringEscape(row[5]), row[1], atoi(row[2])+1, row[3], jsonStringEscape(row[4])); + dyStringPrintf(str, "%s{\"value\": \"%s (%s)\", " + "\"id\": \"%s:%d-%s\", " + "\"geneSymbol\": \"%s\", " + "\"internalId\": \"%s\"}", + count == 1 ? "" : ",\n", row[0], jsonStringEscape(row[5]), + row[1], atoi(row[2])+1, row[3], + jsonStringEscape(row[0]), + jsonStringEscape(row[4])); } } dyStringPrintf(str, "\n]\n"); puts(dyStringContents(str)); cgiExitTime("hgSuggest", enteredMainTime); return 0; }