package twentyseventeen import ( "fmt" "github.com/fthvgb1/wp-go/app/pkg/constraints" "github.com/fthvgb1/wp-go/app/theme/wp" "github.com/fthvgb1/wp-go/app/theme/wp/scriptloader" "github.com/fthvgb1/wp-go/app/wpconfig" "github.com/fthvgb1/wp-go/helper" "github.com/fthvgb1/wp-go/helper/maps" "github.com/fthvgb1/wp-go/helper/number" str "github.com/fthvgb1/wp-go/helper/strings" ) func pushScripts(h *wp.Handle) { scriptloader.EnqueueStyle("twentyseventeen-style", scriptloader.GetStylesheetUri(), nil, "20230328", "") scriptloader.EnqueueStyles("twentyseventeen-block-style", "/assets/css/blocks.css", []string{"twentyseventeen-style"}, "20220912", "") if "dark" == wpconfig.GetThemeModsVal(ThemeName, "colorscheme", "light") { scriptloader.EnqueueStyles("twentyseventeen-colors-dark", "/assets/css/colors-dark.css", []string{"twentyseventeen-style"}, "20191025", "") } scriptloader.AddData("twentyseventeen-ie8", "conditional", "lt IE 9") scriptloader.EnqueueScripts("html5", "/assets/js/html5.js", nil, "20161020", false) scriptloader.AddData("html5", "conditional", "lt IE 9") scriptloader.EnqueueScripts("twentyseventeen-skip-link-focus-fix", "/assets/js/skip-link-focus-fix.js", nil, "20161114", true) l10n := map[string]any{ "quote": svg(h, map[string]string{"icon": "quote-right"}), } scriptloader.EnqueueScripts("twentyseventeen-global", "/assets/js/global.js", []string{"jquery"}, "20211130", true) scriptloader.EnqueueScripts("jquery-scrollto", "/assets/js/jquery.scrollTo.js", []string{"jquery"}, "2.1.3", true) scriptloader.EnqueueScripts("comment-reply", "", nil, "", false) //todo menu top scriptloader.AddStaticLocalize("twentyseventeen-skip-link-focus-fix", "twentyseventeenScreenReaderText", l10n) scriptloader.AddStaticLocalize("wp-custom-header", "_wpCustomHeaderSettings", map[string]any{ "mimeType": `video/mp4`, "posterUrl": `/wp-content/uploads/2023/01/cropped-wallhaven-9dm7dd-1.png`, "videoUrl": `/wp-content/uploads/2023/06/BloodMoon_GettyRM_495644264_1080_HD_ZH-CN.mp4`, "width": `2000`, "height": `1199`, "minWidth": `900`, "minHeight": `500`, "l10n": map[string]any{ "pause": `暂停背景视频`, "play": `播放背景视频`, "pauseSpeak": `视频已暂停。`, "playSpeak": `视频正在播放。`, }, }) h.PushCacheGroupHeadScript(constraints.AllScene, "{theme}.head", 30, func(h *wp.Handle) string { head := headScript if "dark" == wpconfig.GetThemeModsVal(ThemeName, "colorscheme", "light") { head = fmt.Sprintf("%s\n%s", headScript, ` `) } return head }) h.PushGroupFooterScript(constraints.AllScene, "{theme}.footer", 20.005, footerScript) } var headScript = ` ` var footerScript = ` ` func svg(h *wp.Handle, m map[string]string) string { if !maps.IsExists(m, "icon") { return "" } ariaHidden := ` aria-hidden="true"` ariaLabelledby := "" uniqueId := "" if m["title"] != "" { ariaHidden = "" id := helper.GetContextVal(h.C, "svg", 0) uniqueId = number.IntToString(id) id++ h.C.Set("svg", id) ariaLabelledby = str.Join(" aria-labelledby=\"title-", uniqueId, "\"") if m["desc"] != "" { ariaLabelledby = str.Join(" aria-labelledby=\"title-", uniqueId, " desc-", uniqueId, "\"") } } s := str.NewBuilder() s.WriteString("") if m["title"] != "" { s.WriteString(``, m["title"], "") if m["desc"] != "" { s.WriteString(``, m["desc"], ``) } } s.WriteString(` `) if m["fallback"] != "" { s.WriteString(``) } s.WriteString(``) return s.String() }