f621f87f73fd614e27adc747ba3ff044d2b4c4ad braney Sat Jan 26 08:15:56 2019 -0800 Be smarter about setting track visibilities on the URL, including dealing with super tracks, composites, and setting hub visibilities without hub_ decoration. Also, add ignoreCookies URL variable so folks can link to a default cart. #18544 diff --git src/hg/lib/cart.c src/hg/lib/cart.c index 3e430cb..4d5f22d 100644 --- src/hg/lib/cart.c +++ src/hg/lib/cart.c @@ -2241,31 +2241,34 @@ if (httpProxy) setenv("http_proxy", httpProxy, TRUE); char *httpsProxy = cfgOption("httpsProxy"); if (httpsProxy) setenv("https_proxy", httpsProxy, TRUE); char *ftpProxy = cfgOption("ftpProxy"); if (ftpProxy) setenv("ftp_proxy", ftpProxy, TRUE); char *noProxy = cfgOption("noProxy"); if (noProxy) setenv("no_proxy", noProxy, TRUE); char *logProxy = cfgOption("logProxy"); if (logProxy) setenv("log_proxy", logProxy, TRUE); -char *hguid = getCookieId(cookieName); +// if ignoreCookie is on the URL, don't check for cookies +char *hguid = NULL; +if (cgiOptionalString("ignoreCookie") == NULL) + hguid = getCookieId(cookieName); char *hgsid = getSessionId(); struct cart *cart = cartNew(hguid, hgsid, exclude, oldVars); cartExclude(cart, sessionVar); return cart; } struct cart *cartAndCookieWithHtml(char *cookieName, char **exclude, struct hash *oldVars, boolean doContentType) /* Load cart from cookie and session cgi variable. Write cookie * and optionally content-type part HTTP preamble to web page. Don't * write any HTML though. */ { // Note: early abort works fine but early warn does not htmlPushEarlyHandlers(); struct cart *cart = cartForSession(cookieName, exclude, oldVars);