37e40ae31e02d615256bb9af43468ec2188afd24
braney
  Fri Feb 24 15:19:01 2023 -0800
make recommended track sets merge with current cart instead of
over-writing it.  This is under hg.conf control (mergeRecommended=on)

diff --git src/hg/hgTracks/recTrackSets.c src/hg/hgTracks/recTrackSets.c
index 80d2159..a786488 100644
--- src/hg/hgTracks/recTrackSets.c
+++ src/hg/hgTracks/recTrackSets.c
@@ -129,39 +129,45 @@
 if (recTrackSetsChangeDetectEnabled())
     jsInline("var recTrackSetsDetectChanges = true;");
 
 hPrintf("<div style='display:none;' id='recTrackSetsPopup' title='Recommended Track Sets'>\n");
 
 // TODO: Consider moving this to the tab file as a header section
 hPrintf("<p>These links provide track sets selected and pre-configured for "
             "specific user scenarios. They are designed to be useful at "
             "different genomic loci. Clicking a link below will create a browser "
             "window with these tracks visible, without changing the locus.</p>");
 
 hPrintf("<ul class='indent'>");
 for (recTrackSet = recTrackSets; recTrackSet != NULL; recTrackSet = recTrackSet->next)
     {
 // TODO: consider libifying hgSession.c:add/getSessionLink() and using that
+    boolean mergeSession = cfgOptionBooleanDefault("mergeRecommended", FALSE);
+    char *mergeSessionString = "";
+    if (mergeSession)
+        mergeSessionString = "&" hgsMergeCart "=on";
+
     hPrintf("<li><a class='recTrackSetLink' href='./hgTracks?"
                     // preserve these user settings 
                     "pix=%d&textSize=%s&textFont=%s&hgt.labelWidth=%d"
                     "&" hgsOtherUserName "=%s"
                     "&" hgsOtherUserSessionName "=%s"
                     "&" hgsOtherUserSessionLabel "=%s"
                     "&hgS_otherUserSessionDesc=%s"
                     "&" hgsDoOtherUser "=submit"
+                    "%s"
                     "&position="        // JS fills in position
                     "'>" 
                 "%s</a>: <small>%s</small></li>",
                     tl.picWidth, tl.textSize, tl.textFont, tl.leftLabelWidthChars,
                     recTrackSet->userName, recTrackSet->sessionName, 
-                    recTrackSet->label, recTrackSet->description, 
+                    recTrackSet->label, recTrackSet->description,  mergeSessionString,
                     recTrackSet->label, recTrackSet->description);
     }
 hPrintf("</ul>");
 
 hPrintf("<p>Return to <a href='./hgTracks?hgt.reset=on'>Default</a> browser tracks.</p>\n");
 hPrintf("<p><small><em>This tool is for research use only. For personal medical or "
                 "genetic advising, consult a qualified physician.</small></em></p>\n");
 hPrintf("</div>\n");
 }