0df5f6317fd6e0033a31aaf56b928f574823075c
chmalee
  Wed Jun 3 11:06:54 2026 -0700
Recommended track sets now can load from a file in htdocs/data/recTrackSets/db/sessionName. The settings are overlayed onto the current cart and no reload of the page is required anymore, refs #37281

diff --git src/hg/inc/cart.h src/hg/inc/cart.h
index 4792672542d..733a43e2603 100644
--- src/hg/inc/cart.h
+++ src/hg/inc/cart.h
@@ -53,30 +53,37 @@
 static char buf[PATH_LEN]; // something rather big
 safef(buf, sizeof(buf), "%s_%s", var, db);
 return buf;
 }
 
 boolean cartTablesOk(struct sqlConnection *conn);
 /* Return TRUE if cart tables are accessible (otherwise, the connection
  * doesn't do us any good). */
 
 void cartParseOverHash(struct cart *cart, char *contents);
 /* Parse cgi-style contents into a hash table.  This will *not*
  * replace existing members of hash that have same name, so we can
  * support multi-select form inputs (same var name can have multiple
  * values which will be in separate hashEl's). */
 
+void cartParseOverHashExt(struct cart *cart, char *contents, boolean merge);
+/* Parse cgi-style contents into a hash table.  If merge is FALSE, this will *not*
+ * replace existing members of hash that have same name, so we can
+ * support multi-select form inputs (same var name can have multiple
+ * values which will be in separate hashEl's). If merge is TRUE, we
+ * replace existing values with new values */
+
 struct cart *cartNew(char *userId, char *sessionId,
 	char **exclude, struct hash *oldVars);
 /* Load up cart from user & session id's.  Exclude is a null-terminated list of
  * strings to not include. oldVars is an optional hash to put in values
  * that were just overwritten by cgi-variables. */
 
 struct cart *cartOfNothing();
 /* Create a new, empty, cart with no real connection to the database. */
 
 struct cart *cartFromHash(struct hash *hash);
 /* Create a cart from hash */
 
 struct cart *cartFromCgiOnly(char *userId, char *sessionId,
 	char **exclude, struct hash *oldVars);
 /* Create a new cart that contains only CGI variables, nothing from the