2be85c9badc07c275552f8af45543b8ae6fb7cc0
braney
  Sat Apr 8 15:53:11 2023 -0700
new merge recommended track set tech is (once again) under hg.conf
control

diff --git src/hg/hgTracks/recTrackSets.c src/hg/hgTracks/recTrackSets.c
index d16a431..02bbb89 100644
--- src/hg/hgTracks/recTrackSets.c
+++ src/hg/hgTracks/recTrackSets.c
@@ -129,35 +129,53 @@
 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);
 
+    if (mergeSession)
 #define rtsLoadSessionName  "rtsLoad"
         hPrintf("<li><a class='recTrackSetLink' href='./hgTracks?"
                     hgsOtherUserName "=%s"
                     "&" rtsLoadSessionName "=%s"
                     "&hgsid=%s"
                     "&position="        // JS fills in position
                     "'>" 
                 "%s</a>: <small>%s</small></li>",
                     recTrackSet->userName, recTrackSet->sessionName, cartSessionId(cart),
                     recTrackSet->label, recTrackSet->description);
+    else
+        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"
+                    "&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);
     }
 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");
 }