bd0dd070091799dd2d4b78c2279a1342d1b7c7ba
chinhli
  Wed Apr 9 12:15:19 2014 -0700
UCSC GB Track #11226Change the geneReviews tables of hg19 and hg18 to match NCBI.

diff --git src/hg/hgc/geneReviewsClick.c src/hg/hgc/geneReviewsClick.c
index e94f53f..8b36a90 100644
--- src/hg/hgc/geneReviewsClick.c
+++ src/hg/hgc/geneReviewsClick.c
@@ -17,92 +17,96 @@
  printf("<BR>");
  printTrackHtml(tdb);
  hFreeConn(&conn);
 }
 
 void prGeneReviews(struct sqlConnection *conn, char *itemName)
 /* print GeneReviews associated to this item
    Note: this print function has been replaced by addGeneReviewToBed.pl
          which print the same information to the field 5 of bigBed file
 */
 {
 struct sqlResult *sr;
 char **row;
 char query[512];
 int i;
-char *clickMsg = "Click Short name link to find the GeneReviews article, Click the Disease name link to find all GeneReviews articles which contain the disease name.";
+char *clickMsg = "Click GR short name or NCBI Book id link to find the GeneReviews article.";
+char *spacer = "           ";
 boolean firstTime = TRUE;
 
-if (!sqlTableExists(conn, "geneReviewsRefGene")) return;
+if (!sqlTableExists(conn, "geneReviewsGeneGRshortNBKidGRtitle")) return;
+
+
+sqlSafef(query, sizeof(query), "select  grShort, NBKid, grTitle from geneReviewsGeneGRshortNBKidGRtitle where geneSymbol='%s'", itemName);
 
-sqlSafef(query, sizeof(query), "select  grShort, diseaseID, diseaseName from geneReviewsRefGene where geneSymbol='%s'", itemName);
 sr = sqlGetResult(conn, query);
 while ((row = sqlNextRow(sr)) != NULL)
     {
         char *grShort = *row++;
-        char *diseaseID = *row++;
-        char *diseaseName = *row++;
+        char *NBKid  = *row++;
+        char *grTitle = *row++;
 
 
         if (firstTime)
         {
-          printf("<BR><B> GeneReview(s) available for %s:</B> (%s)<BR>",itemName,clickMsg);
+          printf("<BR><B> GeneReviews available for %s:</B> (%s)<BR>",itemName,clickMsg);
           firstTime = FALSE;
           printf("<PRE><TT>");
               // #123456789-123456789-123456789-123456789-123456789-123456789-
-          printf("Short name         Disease ID     Disease name<BR>");
+          printf("GR short name       NCBI Book id      Disease name<BR>");
 
           printf("------------------------------------------------------------");
           printf("--------------------<BR>");
         }
         printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/books/n/gene/%s\" TARGET=_blank><B>%s</B></A>", grShort, grShort);
         if (strlen(grShort) <= 20) {
           for (i = 0; i <  20-strlen(grShort); i ++ )
              {
                 printf("%s", " " );
              }
            }
-         printf("%-10s    ", diseaseID);
-        printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/books/?term=%s+AND+gene{[book]\" TARGET=_blank><B>%s</B></A><BR>", diseaseName, diseaseName);
+        printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/books/%s\" TARGET=_blank><B>%s</B></A>%s%s<BR>", NBKid, NBKid, spacer, grTitle);
     }  /* end while */
  printf("</TT></PRE>");
  sqlFreeResult(&sr);
 } /* end of prGeneReviews */
 
 void prGRShortRefGene(char *itemName)
 /* print GeneReviews short label associated to this refGene item */
 {
 struct sqlConnection *conn  = hAllocConn(database);
 struct sqlResult *sr;
 char **row;
 char query[512];
 boolean firstTime = TRUE;
 
-if (!sqlTableExists(conn, "geneReviewsRefGene")) return;
+if (!sqlTableExists(conn, "geneReviewsGeneGRshortNBKidGRtitle")) return;
+
+sqlSafef(query, sizeof(query), "select grShort, NBKid, grTitle from geneReviewsGeneGRshortNBKidGRtitle where geneSymbol='%s'", itemName);
 
-sqlSafef(query, sizeof(query), "select grShort, diseaseName from geneReviewsRefGene where geneSymbol='%s'", itemName);
 sr = sqlGetResult(conn, query);
 while ((row = sqlNextRow(sr)) != NULL)
     {
         char *grShort = *row++;
-        char *diseaseName = *row++;
+	char *NBKid = *row++;
+        char *grTitle = *row++;
         if (firstTime)
         {
-          printf("<B>Related GeneReview(s) and GeneTests disease(s): </B>");
+          printf("<B>Related GeneReviews disease(s): </B>");
           firstTime = FALSE;
        printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/books/n/gene/%s\" TARGET=_blank><B>%s</B></A>", grShort, grShort);
         printf(" (");
-       printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/sites/GeneTests/review/disease/%s?db=genetests&search_param=contains\" TARGET=_blank>%s</A>", diseaseName, diseaseName);
+       printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/books/%s\" TARGET=_blank>%s</A>", NBKid, grTitle);
        printf(")");
         } else {
           printf(", ");
        printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/books/n/gene/%s\" TARGET=_blank><B>%s</B></A>", grShort, grShort);
        printf(" (");
-       printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/sites/GeneTests/review/disease/%s?db=genetests&search_param=contains\" TARGET=_blank>%s</A>", diseaseName, diseaseName);
+       printf("<A HREF=\"http://www.ncbi.nlm.nih.gov/books/%s\" TARGET=_blank>%s</A>", NBKid, grTitle);
        printf(")");
         }
      }
      printf("<BR>");
      sqlFreeResult(&sr);
 } /* end of prGRShortRefGene */