6a8e756b47341a5584f5c3fca4031401fe507020
lrnassar
  Mon Aug 24 11:21:22 2026 -0700
Updating GeneCards links to their new URL format per their request, also fixes dead cardsearch.pl links on RefSeq and denovoDb click pages. refs #38171

diff --git src/hg/hgc/gencodeClick.c src/hg/hgc/gencodeClick.c
index b1bb04279ab..76b9d147a16 100644
--- src/hg/hgc/gencodeClick.c
+++ src/hg/hgc/gencodeClick.c
@@ -51,31 +51,31 @@
 static char *ensemblH37TranscriptIdUrl = "http://grch37.ensembl.org/%s/Transcript/Summary?db=core;t=%s";
 static char *ensemblH37GeneIdUrl = "http://grch37.ensembl.org/%s/Gene/Summary?db=core;t=%s";
 static char *ensemblH37ProteinIdUrl = "http://grch37.ensembl.org/%s/Transcript/ProteinSummary?db=core;t=%s";
 static char *ensemblH37SupportingEvidUrl = "http://grch37.ensembl.org/%s/Transcript/SupportingEvidence?db=core;t=%s";
 
 static char *gencodeBiotypesUrl = "http://www.gencodegenes.org/pages/biotypes.html";
 static char *gencodeTagsUrl = "http://www.gencodegenes.org/pages/tags.html";
 
 static char *yalePseudoUrl = "http://tables.pseudogene.org/%s";
 static char *apprisHomeUrl = "https://appris.bioinfo.cnio.es/#/";
 static char *apprisGeneUrl = "https://appris.bioinfo.cnio.es/#/database/id/%s/%s?sc=ensembl";
 
 // species-specific
 static char *hgncByIdUrl = "https://www.genenames.org/data/gene-symbol-report/#!/hgnc_id/%s";
 static char *hgncBySymUrl = " https://www.genenames.org/data/gene-symbol-report/#!/symbol/%s";
-static char *geneCardsUrl = "http://www.genecards.org/cgi-bin/carddisp.pl?gene=%s";
+static char *geneCardsUrl = "https://www.genecards.org/card/%s";
 static char *mgiBySymUrl = "http://www.informatics.jax.org/quicksearch/summary?queryType=exactPhrase&query=%s";
 static char *mgiByIdUrl = "http://www.informatics.jax.org/accession/%s";
 
 static char* UNKNOWN = "unknown";
 
 static char *gencodeSourceDb(struct trackDb *tdb)
 /* return the assembly the gencode tables actually live in: the quickLiftDb
  * when the track is quickLifted, otherwise the current database. */
 {
 char *liftDb = trackDbSetting(tdb, "quickLiftDb");
 return (liftDb != NULL) ? liftDb : database;
 }
 
 static void liftAnnoPos(struct trackDb *tdb, char *chrom, int start, int end,
                         char **retChrom, int *retStart, int *retEnd)