fa5814468fee9631cc8c9fb992e0c520bc0929a1
tdreszer
  Fri Jan 14 09:57:59 2011 -0800
dateUnrestricted should be grey not hidden, when file is already ripened.
diff --git src/hg/lib/fileUi.c src/hg/lib/fileUi.c
index dfae66a..f5b00d4 100644
--- src/hg/lib/fileUi.c
+++ src/hg/lib/fileUi.c
@@ -493,32 +493,33 @@
     // Each of the pulled out mdb vars
     if (sortOrder)
         {
         for(ix=0;ix<sortOrder->count;ix++)
             {
             if (sameString("fileSize",sortOrder->column[ix]))
                 {
                 char niceNumber[128];
                 sprintWithGreekByte(niceNumber, sizeof(niceNumber), oneFile->fileSize);
                 field = oneFile->sortFields[sortOrder->order[ix] - 1];
                 printf("<TD abbr='%s' align='right' nowrap>%s</td>",field,niceNumber);
                 }
             else
                 {
                 field = oneFile->sortFields[sortOrder->order[ix] - 1];
-                if (sameString("dateUnrestricted",sortOrder->column[ix]) && dateIsOld(field,"%F"))
-                    field = NULL;
+                if (sameString("dateUnrestricted",sortOrder->column[ix]) && field && dateIsOld(field,"%F"))
+                    printf("<TD align='center' nowrap style='color: #BBBBBB;'>%s</td>",field);
+                else
                 printf("<TD align='center' nowrap>%s</td>",field?field:" &nbsp;");
                 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'
                 }
             }
         }
 #ifndef INCLUDE_FILENAMES
     else
 #endif///ndef INCLUDE_FILENAMES
         { // fileName
         printf("<TD nowrap>%s",oneFile->fileName);
         //// FIXME: " The "..." encapsulation could be rebuilt so it could be called here
         //printf("&nbsp;<A HREF='#a_meta_%s' onclick='return metadataShowHide(\"%s\",true,true);' title='Show metadata details...'>...</A>",
         //    oneFile->mdb->obj,oneFile->mdb->obj);
         //printf("<DIV id='div_%s_meta' style='display:none;'></div></td>",oneFile->mdb->obj);
@@ -686,59 +687,68 @@
 columnCount++;
 #endif///defn INCLUDE_FILENAMES
 printf("<TH align='left' nowrap>Additional Details</TH>\n");
 columnCount++;
 printf("</TR></THEAD>\n");
 
 // Now the files...
 printf("<TBODY>\n");
 for(oneFile = fileList;oneFile!= NULL;oneFile=oneFile->next)
     {
     char *field = NULL;
 
     printf("<TR valign='top'>");   // TODO: BUILD IN THE CLASSES TO ALLOW FILTERBOXES TO WORK!!!
 
     // Download button
-    printf("<TD>");
+    printf("<TD align='left' nowrap>");
     field = mdbObjFindValue(oneFile->mdb,"composite");
     assert(field != NULL);
     printf("<A HREF='http://%s/goldenPath/%s/%s/%s/%s' title='Download %s ...' TARGET=ucscDownloads>",
                 hDownloadsServer(),db,ENCODE_DCC_DOWNLOADS, field?field:" &nbsp;", oneFile->fileName, oneFile->fileName);
     printf("<input type='button' value='Download'>");
     printf("</a>");
+//#define SHOW_FOLDER_FRO_COMPOSITE_DOWNLOADS
+#ifdef SHOW_FOLDER_FRO_COMPOSITE_DOWNLOADS
     field = mdbObjFindValue(oneFile->mdb,"composite");
     if (field)
         {
         // TODO Look up trackDb.fileSortOrder.  If found, then offer "folder" icon with link to page
+            // Instead, always offer hgFileUi link and have hgFileUi figure out what to do
+        printf("&nbsp;<A href='../cgi-bin/hgFileUi?db=%s&g=%s' title='Navigate to downloads page for %s set...'><IMG SRC='../images/folderWrench.png'></a>&nbsp;", db,field,field);
         }
+#endif///def SHOW_FOLDER_FRO_COMPOSITE_DOWNLOADS
     puts("</TD>");
 
     // Each of the pulled out mdb vars
     for(onePair=varValPairs; onePair != NULL; onePair=onePair->next)
         {
         field = mdbObjFindValue(oneFile->mdb,onePair->name);
         printf("<TD align='center' nowrap>%s</td>",field?field:" &nbsp;");
         mdbObjRemoveVars(oneFile->mdb,onePair->name); // Remove this from mdb now so that it isn't displayed in "extras'
         }
     char niceNumber[128];
     sprintWithGreekByte(niceNumber, sizeof(niceNumber), oneFile->fileSize);
     printf("<TD align='right' nowrap>%s</td>",niceNumber);
     printf("<TD align='center' nowrap>%s</td>",oneFile->fileType?oneFile->fileType:" &nbsp;");
     field = mdbObjFindValue(oneFile->mdb,"dateSubmitted");
     printf("<TD align='center' nowrap>%s</td>",field?field:" &nbsp;");
     field = mdbObjFindValue(oneFile->mdb,"dateUnrestricted");
-    printf("<TD align='center' nowrap>%s</td>",field?dateIsOld(field,"%F")?" &nbsp;":field:" &nbsp;");
+    //printf("<TD align='center' nowrap>%s</td>",field?dateIsOld(field,"%F")?" &nbsp;":field:" &nbsp;");
+    if(field)
+        printf("<TD align='center' nowrap%s>%s</td>",dateIsOld(field,"%F")?" style='color: #BBBBBB;'":"",field);
+    else
+        printf("<TD align='center' nowrap> &nbsp;</td>");
 #ifdef INCLUDE_FILENAMES
     printf("<TD align='left' nowrap>%s</td>",oneFile->fileName);
 #endif///def INCLUDE_FILENAMES
 
     // Extras  grant=Bernstein; lab=Broad; dataType=ChipSeq; setType=exp; control=std;
     mdbObjRemoveVars(oneFile->mdb,"dateSubmitted dateUnrestricted fileName fileIndex composite project dccInternalNotes"); // Remove this from mdb now so that it isn't displayed in "extras'
     mdbObjReorderVars(oneFile->mdb,"grant lab dataType cell treatment antibody protocol replicate view",FALSE); // Bring to front
     mdbObjReorderVars(oneFile->mdb,"subId submittedDataVersion dateResubmitted dataVersion setType inputType controlId tableName",TRUE); // Send to back
     field = mdbObjVarValPairsAsLine(oneFile->mdb,TRUE);
     printf("<TD nowrap>%s</td>",field?field:" &nbsp;");
 
     printf("</TR>\n");
     }
 
 printf("</TBODY><TFOOT class='bgLevel1'>\n");