7725ca2289ef5444dee8e848c95507ef588e89bf
kate
  Thu Feb 12 13:22:32 2015 -0800
Renames to distinguish ENCODE cv from non-ENCODE table-based vocabularies. refs #14353

diff --git src/hg/lib/hui.c src/hg/lib/hui.c
index 28ba923..1c40f2c 100644
--- src/hg/lib/hui.c
+++ src/hg/lib/hui.c
@@ -151,31 +151,31 @@
 if (!trackHubDatabase(db) && hTableOrSplitExists(db, tdb->table))
     {
     char *tbOff = trackDbSetting(tdb, "tableBrowser");
     if (isNotEmpty(tbOff) && sameString(nextWord(&tbOff), "off"))
 	return FALSE;
     char *hint = " title='Open table schema in new window'";
     if (label == NULL)
         label = " View table schema";
     struct trackDb *topLevel = trackDbTopLevelSelfOrParent(tdb);
     printf(SCHEMA_LINKED, db, topLevel->grp, topLevel->track, tdb->table, hint, label);
     return TRUE;
     }
 return FALSE;
 }
 
-char *controlledVocabLink(char *file,char *term,char *value,char *title, char *label,char *suffix)
+char *wgEncodeVocabLink(char *file,char *term,char *value,char *title, char *label,char *suffix)
 // returns allocated string of HTML link to controlled vocabulary term
 {
 #define VOCAB_LINK_WITH_FILE "<A HREF='hgEncodeVocab?ra=%s&%s=\"%s\"' title='%s details' " \
                              "class='cv' TARGET=ucscVocab>%s</A>"
 #define VOCAB_LINK "<A HREF='hgEncodeVocab?%s=\"%s\"' title='%s details' class='cv' " \
                    "TARGET=ucscVocab>%s</A>"
 struct dyString *dyLink = NULL;
 char *encTerm = cgiEncode(term);
 char *encValue = cgiEncode(value);
 if (file != NULL)
     {
     char *encFile = cgiEncode(file);
     dyLink = dyStringCreate(VOCAB_LINK_WITH_FILE,encFile,encTerm,encValue,title,label);
     freeMem(encFile);
     }
@@ -231,36 +231,36 @@
                 dyStringAppend(dyTable,"<BR>");
             slNameFree(&file);
             }
         dyStringAppend(dyTable,"</td></tr>");
         }
     else
         {                                           // Don't bother with tableName
         if (cvTermTypes && differentString(mdbVar->var,MDB_VAR_TABLENAME))
             {
             struct hash *cvTerm = hashFindVal(cvTermTypes,mdbVar->var);
             if (cvTerm != NULL) // even if cvTerm isn't used,
                 {               // it proves that it exists and a link is desirable
                 if (!cvTermIsHidden(mdbVar->var))
                     {
                     char *label = (char *)cvLabel(NULL,mdbVar->var);
-                    char *linkOfType = controlledVocabLink(NULL,CV_TYPE,mdbVar->var,label,
+                    char *linkOfType = wgEncodeVocabLink(NULL,CV_TYPE,mdbVar->var,label,
                                                            label,NULL);
                     if (cvTermIsCvDefined(mdbVar->var))
                         {
                         label = (char *)cvLabel(mdbVar->var,mdbVar->val);
-                        char *linkOfTerm = controlledVocabLink(NULL,CV_TERM,mdbVar->val,label,
+                        char *linkOfTerm = wgEncodeVocabLink(NULL,CV_TERM,mdbVar->val,label,
                                                                label,NULL);
                         dyStringPrintf(dyTable,"<tr valign='bottom'><td align='right' nowrap>"
                                                "<i>%s:</i></td><td nowrap>%s</td></tr>",
                                                linkOfType,linkOfTerm);
                         freeMem(linkOfTerm);
                         }
                     else
                         dyStringPrintf(dyTable,"<tr valign='bottom'><td align='right' nowrap>"
                                                "<i>%s:</i></td><td nowrap>%s</td></tr>",
                                                linkOfType,mdbVar->val);
                     freeMem(linkOfType);
                     continue;
                     }
                 }
             }
@@ -6868,44 +6868,44 @@
     return cloneString(label); // No wrapping!
 
 char *words[15];
 int count,ix;
 boolean found=FALSE;
 if ((count = chopByWhite(cloneString(vocab), words,15)) <= 1)
     return cloneString(label);
 
 char *suffix=NULL;
 char *rootLabel = labelRoot(label,&suffix);
 
 for (ix=1;ix<count && !found;ix++)
     {
     if (sameString(vocabType,words[ix])) // controlledVocabulary setting matches tag
         {                               // so all labels are linked
-        char *link = controlledVocabLink(words[0],"term",words[ix],rootLabel,rootLabel,suffix);
+        char *link = wgEncodeVocabLink(words[0],"term",words[ix],rootLabel,rootLabel,suffix);
         return link;
         }
     else if (countChars(words[ix],'=') == 1 && childTdb != NULL)
             // The name of a trackDb setting follows and will be the controlled vocab term
         {
         strSwapChar(words[ix],'=',0);
         if (sameString(vocabType,words[ix]))  // tags match, but search for term
             {
             char * cvSetting = words[ix] + strlen(words[ix]) + 1;
             const char * cvTerm = metadataFindValue(childTdb,cvSetting);
             if (cvTerm != NULL)
                 {
-                char *link = controlledVocabLink(words[0],(sameWord(cvSetting,"antibody") ?
+                char *link = wgEncodeVocabLink(words[0],(sameWord(cvSetting,"antibody") ?
                                                                                 "target" : "term"),
                                                  (char *)cvTerm,(char *)cvTerm,rootLabel,suffix);
                 return link;
                 }
             }
         }
     }
 freeMem(words[0]);
 freeMem(rootLabel);
 return cloneString(label);
 }
 
 #ifdef BUTTONS_BY_CSS
 #define BUTTON_MAT "<span class='pmButton' onclick=\"matSetMatrixCheckBoxes(%s%s%s%s)\">%c</span>"
 #else///ifndef BUTTONS_BY_CSS