ab1496587c1d1f6319181eac3d7739f18bd88010
kate
  Wed Nov 25 11:46:27 2015 -0800
If not tissues are selected, select all. refs #15645

diff --git src/hg/lib/gtexUi.c src/hg/lib/gtexUi.c
index a050fa0..588f91c 100644
--- src/hg/lib/gtexUi.c
+++ src/hg/lib/gtexUi.c
@@ -66,59 +66,65 @@
 static void makeAllTissueCheckboxes(char *name, struct gtexTissue *tissues, struct slName *checked)
 {
 struct hash *checkHash = hashNew(0);
 struct slName *sel;
 for (sel = checked; sel != NULL; sel = sel->next)
     hashAdd(checkHash, sel->name, sel->name);
 puts("<TABLE BORDERWIDTH=0><TR>");
 struct tissueSelect *tsel;
 struct gtexTissue *tis;
 struct tissueSelect *allTissues = NULL;
 for (tis = tissues; tis != NULL; tis = tis->next)
     {
     AllocVar(tsel);
     tsel->name = tis->name;
     tsel->label = makeTissueLabel(tis);
+    if (hashNumEntries(checkHash) == 0)
+        tsel->checked = TRUE;
+    else
         tsel->checked = (hashLookup(checkHash, tis->name) != NULL);
     slAddHead(&allTissues, tsel);
     }
 slReverse(&allTissues);
 makeGroupCheckboxes(name, NULL, allTissues);
 puts("</TR></TABLE>");
 char buf[512];
 safef(buf, sizeof(buf), "%s%s", cgiMultListShadowPrefix(), name);
 cgiMakeHiddenVar(buf, "0");
 }
 
 static void makeGroupedTissueCheckboxes(char *name, struct gtexTissue *tissues, struct slName *checked)
 {
 struct hash *checkHash = hashNew(0);
 struct slName *sel;
 for (sel = checked; sel != NULL; sel = sel->next)
     hashAdd(checkHash, sel->name, sel->name);
 puts("<TABLE BORDERWIDTH=0><TR>");
 struct tissueSelect *brainTissues = NULL;
 struct tissueSelect *digestiveTissues = NULL;
 struct tissueSelect *reproductiveTissues = NULL;
 struct tissueSelect *otherTissues = NULL;
 struct tissueSelect *tsel;
 struct gtexTissue *tis;
 for (tis = tissues; tis != NULL; tis = tis->next)
     {
     AllocVar(tsel);
     tsel->name = tis->name;
     tsel->label = makeTissueLabel(tis);
+    if (hashNumEntries(checkHash) == 0)
+        tsel->checked = TRUE;
+    else
         tsel->checked = (hashLookup(checkHash, tis->name) != NULL);
     if (startsWith("brain", tis->name))
         slAddHead(&brainTissues, tsel);
     else if (sameString(tis->name, "uterus") || sameString(tis->name, "testis") ||
             sameString(tis->name, "vagina") || sameString(tis->name, "prostate") ||
             sameString(tis->name, "ovary") ||
             sameString(tis->name, "breastMamTissue") || sameString(tis->name, "ectocervix") ||
             sameString(tis->name, "endocervix") || sameString(tis->name, "fallopianTube"))
                 slAddHead(&reproductiveTissues, tsel);
     else if (startsWith("esophagus", tis->name) || startsWith("colon", tis->name) ||
             sameString(tis->name, "stomach") || sameString("smallIntestine", tis->name))
                 slAddHead(&digestiveTissues, tsel);
     else
         slAddHead(&otherTissues, tsel);
 }