47e0208dfc2fc4eba1994d81c1276f8092e6ce2d tdreszer Thu Mar 24 13:54:35 2011 -0700 Renamed a bunch of mdbCv APIs to cv APIs. diff --git src/hg/lib/fileUi.c src/hg/lib/fileUi.c index 7ba9ba5..88fa70c 100644 --- src/hg/lib/fileUi.c +++ src/hg/lib/fileUi.c @@ -369,31 +369,31 @@ dyStringPrintf(dyCommon,"%s=%s ",commonTerms[tIx],val); } return dyStringCannibalize(&dyCommon); } return NULL; } #define FILTER_THE_FILES #ifdef FILTER_THE_FILES static char *labelWithVocabLink(char *var,char *title,struct slPair *valsAndLabels,boolean tagsNotVals) /* If the parentTdb has a controlledVocabulary setting and the vocabType is found, then label will be wrapped with the link to all relevent terms. Return string is cloned. */ { // Determine if the var is cvDefined. If not, simple link boolean cvDefined = FALSE; -struct hash *cvTypesOfTerms = (struct hash *)mdbCvTermTypeHash(); +struct hash *cvTypesOfTerms = (struct hash *)cvTermTypeHash(); if (cvTypesOfTerms != NULL) { struct hash *cvTermDef = hashFindVal(cvTypesOfTerms,var); if (cvTermDef) cvDefined = SETTING_IS_ON(hashFindVal(cvTermDef,"cvDefined")); } struct dyString *dyLink = dyStringNew(256); if (!cvDefined) dyStringPrintf(dyLink,"%s", var,title,title); else { dyStringPrintf(dyLink,"%s",title,title); } return dyStringCannibalize(&dyLink); } static int filterBoxesForFilesList(char *db,struct mdbObj *mdbObjs,sortOrder_t *sortOrder) { // Will create filterBoxes for each sortOrder field. Returns count of filterBoxes made int count = 0; if (sortOrder != NULL) { struct dyString *dyFilters = dyStringNew(256); int sIx=0; for(sIx = 0;sIxcount;sIx++) { char *var = sortOrder->column[sIx]; - enum mdbCvSearchable searchBy = mdbCvSearchMethod(var); - //if (searchBy == cvsSearchByDateRange || searchBy == cvsSearchByIntegerRange) // dates and numbers probably not good for filtering. FIXME: Should cvsNotSearchable be filterable?? - if (searchBy != cvsSearchBySingleSelect && searchBy != cvsSearchByMultiSelect) + enum cvSearchable searchBy = cvSearchMethod(var); + //if (searchBy == cvSearchByDateRange || searchBy == cvSearchByIntegerRange) // dates and numbers probably not good for filtering. FIXME: Should cvsNotSearchable be filterable?? + if (searchBy != cvSearchBySingleSelect && searchBy != cvSearchByMultiSelect) continue; // Only single selects and multi-select make good candidates for filtering struct sqlConnection *conn = hAllocConn(db); struct slPair *valsAndLabels = mdbValLabelSearch(conn, var, MDB_VAL_STD_TRUNCATION, FALSE, TRUE, TRUE); // tags, yes tables AND files hFreeConn(&conn); // Need to verify that each val exists in an object for these files struct slPair *relevantVals = NULL; while(valsAndLabels != NULL) { struct slPair *oneVal = slPopHead(&valsAndLabels); if(mdbObjsContainAltleastOneMatchingVar(mdbObjs,var,mdbPairVal(oneVal))) { eraseNonAlphaNum(mdbPairVal(oneVal)); // Have to squeeze out uglies from val to ensure filter by class works slAddHead(&relevantVals,oneVal); } @@ -607,32 +607,32 @@ char *align = (sameString("labVersion",sortOrder->column[ix]) || sameString("softwareVersion",sortOrder->column[ix]) ? " align='left'":" align='center'"); if (sameString("fileSize",sortOrder->column[ix])) { char niceNumber[128]; sprintWithGreekByte(niceNumber, sizeof(niceNumber), oneFile->fileSize); field = oneFile->sortFields[sortOrder->order[ix] - 1]; printf("%s",field,niceNumber); } else { field = oneFile->sortFields[sortOrder->order[ix] - 1]; char class[128]; class[0] = '\0'; if (filterable) { - enum mdbCvSearchable searchBy = mdbCvSearchMethod(sortOrder->column[ix]); - if (searchBy == cvsSearchBySingleSelect || searchBy == cvsSearchByMultiSelect) + enum cvSearchable searchBy = cvSearchMethod(sortOrder->column[ix]); + if (searchBy == cvSearchBySingleSelect || searchBy == cvSearchByMultiSelect) { char *cleanClass = cloneString(field?field:"None"); // FIXME: Only none if none is a fliter choice. eraseNonAlphaNum(cleanClass); safef(class,sizeof class," class='%s %s'",sortOrder->column[ix],cleanClass); } } if (sameString("dateUnrestricted",sortOrder->column[ix]) && field && dateIsOld(field,"%F")) printf("%s",align,class,field); else printf("%s",align,class,field?field:"  "); if (!sameString("fileType",sortOrder->column[ix])) mdbObjRemoveVars(oneFile->mdb,sortOrder->column[ix]); // Remove this from mdb now so that it isn't displayed in "extras' } }