src/hg/hgc/hgc.c 1.1615

1.1615 2010/04/22 22:33:20 markd
Don't put xeno refseq link up to aligned organism browser if it doesn't have refseq enabled.
Index: src/hg/hgc/hgc.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/hgc/hgc.c,v
retrieving revision 1.1614
retrieving revision 1.1615
diff -b -B -U 4 -r1.1614 -r1.1615
--- src/hg/hgc/hgc.c	21 Apr 2010 19:32:43 -0000	1.1614
+++ src/hg/hgc/hgc.c	22 Apr 2010 22:33:20 -0000	1.1615
@@ -9478,8 +9478,30 @@
     }
 return ver;
 }
 
+static void prRefGeneXenoInfo(struct sqlConnection *conn, struct refLink *rl)
+/* print xeno refseq info, including linking to the browser, if any  */
+{
+char query[256];
+safef(query, sizeof(query), "select organism.name from gbCdnaInfo,organism "
+      "where (gbCdnaInfo.acc = '%s') and (organism.id = gbCdnaInfo.organism)",
+      rl->mrnaAcc);
+char *org = sqlQuickString(conn, query);
+if (org == NULL)
+    org = cloneString("unknown");
+printf("<B>Organism:</B> %s<BR>", org);
+char *xenoDb = hDbForSciName(org);
+if ((xenoDb != NULL) && hDbIsActive(xenoDb) && hTableExists(xenoDb, "refSeqAli"))
+    {
+    printf("<B>UCSC browser: </B> \n");
+    linkToOtherBrowserSearch(xenoDb, rl->mrnaAcc);
+    printf("%s on %s (%s)</B> \n", rl->mrnaAcc, hOrganism(xenoDb), xenoDb);
+    printf("</A><BR>");
+    }
+freeMem(org);
+}
+
 void prRefGeneInfo(struct sqlConnection *conn, char *rnaName,
                    char *sqlRnaName, struct refLink *rl, boolean isXeno)
 /* print basic details information and links for a RefGene */
 {
@@ -9524,27 +9546,9 @@
     printf("<BR>\n");
     }
 
 if (isXeno || isNewChimp(database))
-    {
-    char *org;
-    safef(query, sizeof(query), "select organism.name from gbCdnaInfo,organism "
-          "where (gbCdnaInfo.acc = '%s') and (organism.id = gbCdnaInfo.organism)",
-          rl->mrnaAcc);
-    org = sqlQuickString(conn, query);
-    if (org == NULL)
-        org = cloneString("unknown");
-    printf("<B>Organism:</B> %s<BR>", org);
-    char *xenoDb = hDbForSciName(org);
-    if (xenoDb != NULL)
-	{
-	printf("<B>UCSC browser: </B> \n");
-	linkToOtherBrowserSearch(xenoDb, rl->mrnaAcc);
-	printf("%s on %s</B> \n",rl->mrnaAcc, xenoDb);
-	printf("</A><BR>");
-	}
-    freeMem(org);
-    }
+    prRefGeneXenoInfo(conn, rl);
 else
     printCcdsForSrcDb(conn, rl->mrnaAcc);
 
 cdsCmpl = getRefSeqCdsCompleteness(conn, sqlRnaName);