aab4f66a2aca5293f3536cc1d1438b17d2b09dfd
tdreszer
Thu May 5 16:14:15 2011 -0700
A large set of tiny changes. These fix a lot of discrepencies with bgcolor and font color declarations which were tripping up docttype 4.01.
diff --git src/hg/hgc/t2g.c src/hg/hgc/t2g.c
index 36c83c4..1bcb315 100644
--- src/hg/hgc/t2g.c
+++ src/hg/hgc/t2g.c
@@ -1,176 +1,176 @@
/* t2g.c - display details of text2genome stuff */
#include "common.h"
#include "jksql.h"
#include "hdb.h"
#include "hgc.h"
#include "hgColors.h"
#include "trackDb.h"
#include "web.h"
#include "hash.h"
#include "obscure.h"
#define PMCURL "http://www.ncbi.nlm.nih.gov/pmc/articles/PMC"
void printPubmedLink(char* pmid)
{
printf("PubMed: %s
\n", pmid, pmid);
}
void printPmcLink(char* pmcId)
{
printf("PubMed Central: PMC%s
\n", PMCURL, pmcId, pmcId);
}
void printT2gLink(char* pmcId)
{
printf("Text2Genome: %s
\n", pmcId, pmcId);
}
void printLinks(char* pmid, char* pmcId)
{
printPubmedLink(pmid);
printPmcLink(pmcId);
printT2gLink(pmcId);
printf("
\n");
}
char* printArticleInfo(struct sqlConnection *conn, struct trackDb* tdb, char* item)
/* Header with information about paper, return documentId */
{
char query[512];
char* articleTable = hashMustFindVal(tdb->settingsHash, "articleTable");
safef(query, sizeof(query), "SELECT pmid, pmcId, title,authors, abstract FROM %s WHERE displayId='%s'", articleTable, item);
struct sqlResult *sr = sqlGetResult(conn, query);
char **row;
char *docId=0;
if ((row = sqlNextRow(sr)) != NULL)
{
printLinks(row[0], row[1]);
printf("%s\n", PMCURL, row[1], row[2]);
printf("
%s
\n", row[3]); printf("%s
\n", row[4]); docId = row[1]; } sqlFreeResult(&sr); return docId; } void printSeqInfo(struct sqlConnection* conn, struct trackDb* tdb, char* docId, char* item, char* seqName, int start) { /* print table of sequences */ /* get all sequences for paper identified by docId*/ char query[512]; char* sequenceTable = hashMustFindVal(tdb->settingsHash, "sequenceTable"); safef(query, sizeof(query), "SELECT concat_ws('|',seqId, sequence) FROM %s WHERE pmcId='%s'", sequenceTable, docId); struct slName *seqList = sqlQuickList(conn, query); /* get sequence-Ids for feature that was clicked on (item&startPos are unique) and put into hash */ // there must be an easier way to do this... // couldn't find a function that splits a string and converts it to a list safef(query, sizeof(query), "SELECT seqIds,'' FROM t2g WHERE name='%s' " "and chrom='%s' and chromStart=%d", item, seqName, start); char* seqIdsString = sqlQuickString(conn, query); char* seqIds[1024]; int partCount = chopString(seqIdsString, ",", seqIds, ArraySize(seqIds)); int i; struct hash *seqIdHash = NULL; seqIdHash = newHash(0); for (i=0; i