314f62455b39a4271649c732b6d55cd96f9bba82
chmalee
  Tue May 27 12:42:11 2025 -0700
Remove CDN links to shepherd and replace with local copies, refs #35464

diff --git src/hg/hgTables/mainPage.c src/hg/hgTables/mainPage.c
index cbb0498df4f..0ac69dd9726 100644
--- src/hg/hgTables/mainPage.c
+++ src/hg/hgTables/mainPage.c
@@ -450,32 +450,32 @@
     "   document.getElementById('%s').parentElement.style.display='';\n"
     "   document.getElementById('excelOutNote').style.display='';\n"
     "} else {\n"
     "   document.getElementById('%s').parentElement.style.display='none';\n"
     "   document.getElementById('excelOutNote').style.display='none';\n"
     "}\n"
     "}\n"
     "$(document).ready(checkForCsv);\n"
     , hgtaOutSep, hgtaOutSep);
 jsAddEventForId("change", "outputTypeDropdown", "checkForCsv");
 
 /*
  * Code to add in the interactive tutorial*/
 if (cfgOptionBooleanDefault("showTutorial", TRUE))
     {
-    puts("<script src=\"https://cdn.jsdelivr.net/npm/shepherd.js@11.0.1/dist/js/shepherd.min.js\"></script>");
-    puts("<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/shepherd.js@11.0.1/dist/css/shepherd.css\"/>");
+    jsIncludeFile("shepherd.min.js", NULL);
+    webIncludeResourceFile("shepherd.css");
     jsIncludeFile("jquery.js", NULL);
     jsIncludeFile("jquery-ui.js", NULL);
     webIncludeResourceFile("jquery-ui.css");
 
     jsIncludeFile("tutorialPopup.js", NULL);
     jsIncludeFile("tableBrowserTutorial.js",NULL);
     if (sameOk(cgiOptionalString("startTutorial"), "true"))
         {
         jsInline("var startTableBrowserOnLoad = true;");
         jsInline("tableBrowserTour.start();");
         }
     }