d060b70a11099fb693b769c781796b6b577715fb angie Fri Nov 1 12:47:25 2024 -0700 If sessionDataDir is in hg.conf, make a new UI option to request that the Auspice JSON output files don't expire after two days, using sessionDataDir/hgPhyloPlace/ for storage. diff --git src/hg/hgPhyloPlace/hgPhyloPlace.c src/hg/hgPhyloPlace/hgPhyloPlace.c index b8a242d..242ea18 100644 --- src/hg/hgPhyloPlace/hgPhyloPlace.c +++ src/hg/hgPhyloPlace/hgPhyloPlace.c @@ -267,30 +267,38 @@ char *phyloPlaceTree = cartOptionalString(cart, "phyloPlaceTree"); cgiMakeDropListWithVals("phyloPlaceTree", treeChoices->descriptions, treeChoices->protobufFiles, treeChoices->count, phyloPlaceTree); } puts("
"); printf("Number of samples per subtree showing sample placement: "); int subtreeSize = cartUsualInt(cart, "subtreeSize", 50); struct dyString *dy = dyStringCreate("Number of samples in subtree showing neighborhood of " "placement (max: %d", MAX_SUBTREE_SIZE); if (microbeTraceHost() != NULL) dyStringPrintf(dy, "; max for MicrobeTrace: %d)", MAX_MICROBETRACE_SUBTREE_SIZE); else dyStringAppend(dy, ")"); cgiMakeIntVarWithLimits("subtreeSize", subtreeSize, dy->string, 5, 10, MAX_SUBTREE_SIZE); puts("
"); +char *sessionDataDir = cfgOption("sessionDataDir"); +if (isNotEmpty(sessionDataDir)) + { + puts("Prevent subtree Auspice JSON files from expiring after two days: "); + boolean subtreePersist = cartUsualBoolean(cart, "subtreePersist", FALSE); + cgiMakeCheckBox("subtreePersist", subtreePersist); + puts("
"); + } cgiMakeOnClickSubmitButton(CHECK_FILE_OR_PASTE_INPUT_JS(seqFileVar, pastedIdVar), "submit", "Upload"); char *exampleFile = phyloPlaceOrgSettingPath(org, "exampleFile"); if (isNotEmpty(exampleFile)) { puts(" "); cgiMakeOnClickSubmitButton("{ loadingImage.run(); return true; }", "exampleButton", "Upload Example File"); if (sameString(org, "wuhCor1")) { puts(" "); puts("More example files"); } } puts("
");