981ef07d25e4560559dae28d3e316913569944d7
tdreszer
  Fri Jul 6 17:51:06 2012 -0700
Next batch of many checkins as dictated by Jim.  Formatting space after if and limiting lines to 100 chars.  Changes limited to lines last touched by tdreszer (git blame) so as not to ruin history.  None of these changes should affect executables in any way.
diff --git src/hg/inc/cv.h src/hg/inc/cv.h
index 2038d00..fbac981 100644
--- src/hg/inc/cv.h
+++ src/hg/inc/cv.h
@@ -1,163 +1,163 @@
 // cv.c stands for Controlled Vocabullary and this file contains the
 // library API prototypes for reading and making sense of the contents of cv.ra.
 
 #ifndef CV_H
 #define CV_H
 
 #include "jksql.h"
 #define CV_FILE_NAME            "cv.ra"
 
 // CV Common settings
 #define CV_TERM                 "term"
 #define CV_TYPE                 "type"
 #define CV_LABEL                "label"
 #define CV_TAG                  "tag"
 #define CV_TARGET               "target"
 #define CV_TITLE                "title"
 #define CV_DESCRIPTION          "description"
 
 // CV Less common settings
 #define CV_GEO                  "geo"
 #define CV_LINEAGE              "lineage"
 #define CV_ORDER_URL            "orderUrl"
 #define CV_ORGANISM             "organism"
 #define CV_PROTOCOL             "protocol"
 #define CV_SEX                  "sex"
 #define CV_TERM_ID              "termId"
 #define CV_TERM_URL             "termUrl"
 #define CV_TIER                 "tier"
 #define CV_TISSUE               "tissue"
 #define CV_VENDOR_ID            "vendorId"
 #define CV_VENDOR_NAME          "vendorName"
 #define CV_KARYOTYPE            "karyotype"
 #define CV_ANTIBODY_DESCRIPTION  "antibodyDescription"
 #define CV_TARGET_DESCRIPTION    "targetDescription"
 #define CV_TARGET_ID             "targetId"
 #define CV_TARGET_URL            "targetURL"
 #define CV_DATA_GROUP            "dataGroup"
 
 // Type of Terms defines
 #define CV_TOT                  "typeOfTerm"
 #define CV_TOT_HIDDEN           "hidden"
 #define CV_TOT_CV_DEFINED       "cvDefined"
 #define CV_TOT_PRIORITY         "priority"
 #define CV_TOT_SEARCHABLE       "searchable"
 
 // Validation Rules
 #define CV_VALIDATE                 "validate"
 #define CV_VALIDATE_CV              "cv"
 #define CV_VALIDATE_CV_OR_NONE      "cv or None"
 #define CV_VALIDATE_CV_OR_CONTROL   "cv or control"
 #define CV_VALIDATE_DATE            "date"
 #define CV_VALIDATE_EXISTS          "exists"
 #define CV_VALIDATE_FLOAT           "float"
 #define CV_VALIDATE_INT             "integer"
 #define CV_VALIDATE_LIST            "list:"
 #define CV_VALIDATE_REGEX           "regex:"
 #define CV_VALIDATE_NONE            "none"
 
 // CV TERMS (NOTE: UGLY Terms in cv.ra are hidden inside cv.c APIS)
 #define CV_TERM_GRANT           "grant"
 #define CV_TERM_LAB             "lab"
 #define CV_TERM_CELL            "cell"
 #define CV_TERM_ANTIBODY        "antibody"
 #define CV_TERM_CONTROL         "control"
 #define CV_TERM_DATA_TYPE       "dataType"
 #define CV_TERM_LOCALIZATION    "localization"
 #define CV_TERM_VIEW            "view"
 #define CV_TERM_SEQ_PLATFORM    "seqPlatform"
 
 #define CV_LABEL_EMPTY_IS_NONE  "None"
 
 void cvTermJson(struct dyString *json, char *type, struct hash *termHash);
 /* Print out CV term in JSON format. Currently just supports dataType, cellType, antibody
  * and antibody types */
 
 void cvFileDeclare(const char *filePath);
 // Declare an altername cv.ra file to use
 // (The cv.ra file is normally discovered based upon CGI/Tool and envirnment)
 
 const char *cvFile();
 // return default location of cv.ra
 
 const char *cvTypeNormalized(const char *sloppyTerm);
 // returns the proper term to use when requesting a typeOfTerm
 
 const char *cvTermNormalized(const char *sloppyTerm);
 // returns the proper term to use when requesting a cvTerm hash
 
 const struct hash *cvTermHash(const char *term);
 // returns a hash of hashes of a term which should be defined in cv.ra
 // NOTE: in static memory: DO NOT FREE
 
 const struct hash *cvOneTermHash(const char *type,const char *term);
 // returns a hash for a single term of a given type
 // NOTE: in static memory: DO NOT FREE
 
 const struct hash *cvTermTypeHash();
 // returns a hash of hashes of mdb and controlled vocabulary (cv) term types
 // Those terms should contain label,descrition,searchable,cvDefined,hidden
 // NOTE: in static memory: DO NOT FREE
 
 struct slPair *cvWhiteList(boolean searchTracks, boolean cvLinks);
 // returns the official mdb/controlled vocabulary terms that have been whitelisted for certain uses.
 
 enum cvSearchable
 // metadata Variavble are only certain declared types
     {
     cvNotSearchable        =0,  // Txt is default
-    cvSearchByMultiSelect  =1,  // Search by drop down multi-select of supplied list (NOT YET IMPLEMENTED)
+    cvSearchByMultiSelect  =1,  // Search by drop down multi-select of supplied list
     cvSearchBySingleSelect =2,  // Search by drop down single-select of supplied list
     cvSearchByFreeText     =3,  // Search by free text field
     cvSearchByWildList     =4,  // Search by comma delimited list (accepts '%' wildcard)
     cvSearchByDateRange    =4,  // Search by discovered date range (NOT YET IMPLEMENTED)
     cvSearchByIntegerRange =5   // Search by discovered integer range (NOT YET IMPLEMENTED)
     };
 
 enum cvSearchable cvSearchMethod(const char *term);
 // returns whether the term is searchable
 
 const char *cvValidationRule(const char *term);
 // returns validation rule, trimmed of comment
 
 enum cvDataType
 // CV term may be recognizable as int or float
     {
     cvIndeterminant        =0,  // Indeterminant, likely string
     cvString               =1,  // Just about all terms are strings
     cvInteger              =2,  // Some are known integers
     cvFloat                =3,  // Floats are possible
     cvDate                 =4,  // Dates are expected as YYYY-MM-DD
     };
 
 enum cvDataType cvDataType(const char *term);
 // returns the dataType if it can be determined
 
 boolean cvValidateTerm(const char *term,const char *val,char *reason,int len);
 // returns TRUE if term is valid.  Can pass in a reason buffer of len to get reason.
 
 const char *cvLabel(const char *type,const char *term);
 // returns cv label if term found or else just term
 // If type not supplied, must be a typeOfTerm definition
 
 const char *cvTag(const char *type,const char *term);
 // returns cv Tag if term found or else NULL
 
 boolean cvTermIsHidden(const char *term);
 // returns TRUE if term is defined as hidden in cv.ra
 
 boolean cvTermIsCvDefined(const char *term);
 // returns TRUE if the terms values are defined in the cv.ra
 // For example anitobody is cv defined but expId isn't
 
 boolean cvTermIsEmpty(const char *term,const char *val);
 // returns TRUE if term has validation of "cv or None" and the val is None
 
 char *cvLabNormalize(const char *sloppyTerm);
 /* CV inconsistency work-arounds.  Return lab name trimmed of parenthesized trailing
  * info (a few ENCODE labs have this in metaDb and/or in CV term --
  * PI name embedded in parens in the CV term).  Also fixes other problems until
  * cleaned up in CV, metaDb and user processes.  Caller must free mem. */
 
 #endif /* CV_H */