1f88a89d5bb7bada7c52ad89f910c6796d1340ed
braney
  Tue Jun 2 12:26:10 2026 -0700
Add note on quickLifted CCDS pages explaining the data is from the source assembly, refs #36125

When a user clicks the CCDS link on a quickLifted gene track, the CCDS page
necessarily loads from the source assembly (hg38), since CCDS tables exist
only there.  Mark the click with a one-shot quickLiftCcds CGI var carrying
the destination assembly, and on the CCDS page print a note explaining that
the CCDS gene model and coordinates shown are from the source assembly, not
the destination assembly the user was browsing.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c
index 3a4f2acbfe0..475400b7526 100644
--- src/hg/hgc/hgc.c
+++ src/hg/hgc/hgc.c
@@ -28578,30 +28578,30 @@
  * This is used to show alignments by hashing the organism associated with the
  * track to the database name where the chromInfo is stored. For example, the
  * mousBlat track in the human browser would hash to the mm2 database. */
 {
 orgDbHash = hashNew(8);
 }
 
 void cartDoMiddle(struct cart *theCart)
 /* Save cart and do main middle handler. */
 {
 initOrgDbHash();
 cart = theCart;
 doMiddle();
 }
 
-char *excludeVars[] = {"Submit", "submit", "g", "i", "aliTable", "addp", "pred", NULL};
+char *excludeVars[] = {"Submit", "submit", "g", "i", "aliTable", "addp", "pred", "quickLiftCcds", NULL};
 
 int main(int argc, char *argv[])
 {
 long enteredMainTime = clock1000();
 /* 0, 0, == use default 10 second for warning, 20 second for immediate exit */
 issueBotWarning = earlyBotCheck(enteredMainTime, "hgc", delayFraction, 0, 0, "html");
 pushCarefulMemHandler(LIMIT_2or6GB);
 cgiSpoof(&argc,argv);
 cartEmptyShell(cartDoMiddle, hUserCookie(), excludeVars, NULL);
 cgiExitTime("hgc", enteredMainTime);
 return 0;
 }