694d346d60e56635672936063845599da4159c9b tdreszer Fri Nov 5 15:06:16 2010 -0700 Fixed 1480 repoort of show stopper by Mary. mRNA checkboxes were not working. diff --git src/hg/lib/hui.c src/hg/lib/hui.c index a4cd58a..00d7072 100644 --- src/hg/lib/hui.c +++ src/hg/lib/hui.c @@ -158,53 +158,55 @@ char *metadataAsHtmlTable(char *db,struct trackDb *tdb,boolean showLongLabel,boolean showShortLabel, struct hash *trackHash) /* If metadata from metaDb exists, return string of html with table definition */ { const struct mdbObj *safeObj = metadataForTable(db,tdb,NULL); if (safeObj == NULL || safeObj->vars == NULL) return NULL; //struct dyString *dyTable = dyStringCreate("",tdb->table); struct dyString *dyTable = dyStringCreate("
"); if(showLongLabel) dyStringPrintf(dyTable,"",tdb->longLabel); if(showShortLabel) dyStringPrintf(dyTable,"",tdb->shortLabel); // Get the hash of mdb and cv term types +//#ifdef OMIT struct hash *cvTermTypes = mdbCvTermTypeHash(); +//#endif///def OMIT struct mdbObj *mdbObj = mdbObjClone(safeObj); // Important if we are going to remove vars! mdbObjRemoveVars(mdbObj,"composite project objType"); // Don't bother showing these (suggest: "composite project dataType view tableName") mdbObjReorderVars(mdbObj,"grant lab dataType cell treatment antibody protocol replicate view setType inputType",FALSE); // Bring to front mdbObjReorderVars(mdbObj,"subId submittedDataVersion dateSubmitted dateResubmitted dateUnrestricted dataVersion tableName fileName fileIndex",TRUE); // Send to back struct mdbVar *mdbVar; for (mdbVar=mdbObj->vars;mdbVar!=NULL;mdbVar=mdbVar->next) { if ((sameString(mdbVar->var,"fileName") || sameString(mdbVar->var,"fileIndex") ) && trackDbSettingClosestToHome(tdb,"wgEncode") != NULL) { dyStringPrintf(dyTable,""); } else { // If antibody and metadata contains input={sameValue} then just print input if(sameString(mdbVar->var,"antibody") && mdbObjContains(mdbObj,"input",mdbVar->val)) continue; - +//#ifdef OMIT if (cvTermTypes && differentString(mdbVar->var,"tableName")) // Don't bother with tableName { struct hash *cvTerm = hashFindVal(cvTermTypes,mdbVar->var); if (cvTerm != NULL) { if(SETTING_NOT_ON(hashFindVal(cvTerm,"hidden"))) // NULL is not on { char *label=hashFindVal(cvTerm,"label"); if (label == NULL) label = mdbVar->var; char *linkOfType = controlledVocabLink(NULL,"type",mdbVar->var,label,label,NULL); char *cvDefined=hashFindVal(cvTerm,"cvDefined"); if (cvDefined != NULL && differentWord(cvDefined,"no") && differentWord(cvDefined,"0")) { char *linkOfTerm = controlledVocabLink(NULL,"term",mdbVar->val,mdbVar->val,mdbVar->val,NULL); @@ -213,30 +215,31 @@ } else dyStringPrintf(dyTable,"",linkOfType,mdbVar->val); //{ // NOTE: Could just have a tool tip for these. //char *descr=cgiEncode(hashMustFindVal(cvTerm,"description")); //label = cgiEncode(label); //dyStringPrintf(dyTable,"",descr,label,mdbVar->val); //freeMem(descr); //freeMem(label); //} freeMem(linkOfType); continue; } } } +//#endif///def OMIT dyStringPrintf(dyTable,"",mdbVar->var,mdbVar->val); } } dyStringAppend(dyTable,"
%s
shortLabel:%s
%s:",mdbVar->var); dyStringAppend(dyTable,htmlStringForDownloadsLink(db, tdb, mdbVar->val, TRUE, trackHash)); dyStringAppend(dyTable,"
%s:%s
%s:%s
%s:%s
"); //mdbObjsFree(&mdbObj); // spill some memory return dyStringCannibalize(&dyTable); } boolean compositeMetadataToggle(char *db,struct trackDb *tdb,char *title, boolean embeddedInText,boolean showLongLabel, struct hash *trackHash) /* If metadata from metaTbl exists, create a link that will allow toggling it's display */ { const struct mdbObj *safeObj = metadataForTable(db,tdb,NULL); if(safeObj == NULL || safeObj->vars == NULL) return FALSE; @@ -1147,62 +1150,62 @@ indelEnabledByName(cart,tdb,tdb->track,basesPerPixel,retDoubleInsert,retQueryInsert,retPolyA); } static void indelShowOptionsWithName(struct cart *cart, struct trackDb *tdb,char *name) /* Make HTML inputs for indel display options if any are applicable. */ { if (indelAppropriate(tdb)) { boolean showDoubleInsert, showQueryInsert, showPolyA; char var[512]; indelEnabledByName(cart, tdb, name, 0.0, &showDoubleInsert, &showQueryInsert, &showPolyA); #ifdef BAM_CFG_UI_CHANGES printf("\n\n\n"); } printf("
Alignment Gap/Insertion Display Options"); printf(" Help on display options\n
", INDEL_HELP_PAGE); - safef(var, sizeof(var), "%s_%s", INDEL_DOUBLE_INSERT, name); + safef(var, sizeof(var), "%s.%s", name, INDEL_DOUBLE_INSERT); cgiMakeCheckBox(var, showDoubleInsert); printf("Draw double horizontal lines when both genome and query have " "an insertion
"); - safef(var, sizeof(var), "%s_%s", INDEL_QUERY_INSERT, name); + safef(var, sizeof(var), "%s.%s", name, INDEL_QUERY_INSERT); cgiMakeCheckBox(var, showQueryInsert); printf("Draw a vertical purple line for an insertion at the beginning or " "end of the
query, orange for insertion in the middle of the query
"); - safef(var, sizeof(var), "%s_%s", INDEL_POLY_A, name); + safef(var, sizeof(var), "%s.%s", name, INDEL_POLY_A); /* We can highlight valid polyA's only if we have query sequence -- * so indelPolyA code piggiebacks on baseColor code: */ if (baseColorGotSequence(tdb)) { cgiMakeCheckBox(var, showPolyA); printf("Draw a vertical green line where query has a polyA tail " "insertion
\n"); #else///ifndef BAM_CFG_UI_CHANGES printf("

Alignment Gap/Insertion Display Options
\n"); - safef(var, sizeof(var), "%s_%s", INDEL_DOUBLE_INSERT, name); + safef(var, sizeof(var), "%s.%s", name, INDEL_DOUBLE_INSERT); cgiMakeCheckBox(var, showDoubleInsert); printf("Draw double horizontal lines when both genome and query have " "an insertion " "
\n"); - safef(var, sizeof(var), "%s_%s", INDEL_QUERY_INSERT, name); + safef(var, sizeof(var), "%s.%s", name, INDEL_QUERY_INSERT); cgiMakeCheckBox(var, showQueryInsert); printf("Draw a vertical purple line for an insertion at the beginning or " "end of the query, orange for insertion in the middle of the query" "
\n"); - safef(var, sizeof(var), "%s_%s", INDEL_POLY_A, name); + safef(var, sizeof(var), "%s.%s", name, INDEL_POLY_A); /* We can highlight valid polyA's only if we have query sequence -- * so indelPolyA code piggiebacks on baseColor code: */ if (baseColorGotSequence(tdb)) { cgiMakeCheckBox(var, showPolyA); printf("Draw a vertical green line where query has a polyA tail " "insertion" "
\n"); } printf("Help on alignment gap/insertion display options" "
\n", INDEL_HELP_PAGE); #endif///ndef BAM_CFG_UI_CHANGES }