mcjs.min.js
6.12 KB
(()=>{(function(e){"use strict";if(e(function(){u();var a=document.querySelectorAll(".mc-main");a&&a.forEach(n=>{n.classList.remove("mcjs")})}),my_calendar.mini==="true"&&(e(".mini .calendar-events").hide(),e(document).on("click",".mini .has-events .trigger",function(a){a.preventDefault();var n=e(this).parents(".has-events").children(".calendar-events");n.toggle(),e(".mini .has-events").children(".trigger").removeClass("active-toggle"),e(".mini .has-events").children().not(".mc-date-container").not(n).hide(),e(this).addClass("active-toggle"),a.stopImmediatePropagation()}),e(document).on("click",".calendar-events .close",function(a){a.preventDefault(),e(this).closest(".mini .has-events").children(".trigger").removeClass("active-toggle"),e(this).closest("div.calendar-events").toggle(),a.stopImmediatePropagation()})),my_calendar.list==="true"&&my_calendar.links==="false"&&(e("li .list-event").hide(),e("li.current-day .list-event").show(),e("li.current-day .event-date .mc-text-button").attr("aria-expanded",!0),e(document).on("click",".event-date button",function(a){a.preventDefault(),console.log(e(this).closest(".mc-events").find(".mc-event")),e(this).closest(".mc-events").find(".mc-event").toggle();var n=e(this).closest(".mc-events").find(".mc-event").is(":visible");return n?e(this).attr("aria-expanded","true"):e(this).attr("aria-expanded","false"),a.stopImmediatePropagation(),!1})),my_calendar.grid==="true"||my_calendar.list==="true"&&my_calendar.links==="true"){var y=my_calendar.grid==="true"?".calendar-event":".list-event",h=my_calendar.links==="true"&&my_calendar.grid==="true"?".mc-events":y;e(h+" .single-details").hide(),e(document).on("click",h+" .event-title .open",function(a){var n=e(this).parents(".mc-event").children(".details").is(":visible"),s=e(this).attr("aria-controls"),r=e("#"+s);n?e(this).attr("aria-expanded","false"):e(this).attr("aria-expanded","true"),a.preventDefault();var c=e(this).parents(".mc-event").children();e(this).closest(".mc-main").toggleClass("grid-open"),r.toggle();var l=c.find("a, object, :input, iframe, [tabindex]"),d=l.last();return d.attr("data-action","shiftback"),e(h).children(".single-details").not(c).hide(),a.stopImmediatePropagation(),!1}),e(document).on("click",".calendar-event .close",function(a){a.preventDefault(),e(this).parents(".mc-event").find("a.open").attr("aria-expanded","false"),e(this).closest(".mc-main").removeClass("grid-open"),e(this).closest(".mc-event").find(".event-title a").trigger("focus"),e(this).closest("div.single-details").toggle(),a.stopImmediatePropagation()}),e(document).on("keydown",function(a){var n=a.keyCode?a.keyCode:a.which;n==27&&(e(".mc-main ").removeClass("grid-open"),e(".calendar-event div.single-details").hide(),e(".mini .calendar-events").hide())}),e(document).on("keydown",".mc-event a, .mc-event object, .mc-event :input, .mc-event iframe, .mc-event [tabindex]",function(a){var n=a.keyCode?a.keyCode:a.which,s=e(":focus").attr("data-action");!a.shiftKey&&n==9&&s=="shiftback"&&(a.preventDefault(),e(".mc-toggle.close").trigger("focus")),a.shiftKey&&n==9&&s=="shiftforward"&&(a.preventDefault(),e("[data-action=shiftback]").trigger("focus"))})}my_calendar.ajax==="true"&&e(document).on("click",".my-calendar-header a:not(.mc-print a, .mc-export a), .my-calendar-footer a:not(.mc-print a, .mc-export a), .my-calendar-header input[type=submit], .my-calendar-footer input[type=submit]",function(a){a.preventDefault();var n=e(this).attr("id"),s=e(this).closest(".mc-main"),r=s.attr("id"),c="",l="",d="",v="",f="",p="",o="";if(this.nodeName==="INPUT"){var i=e(this).parents("form");if(i.hasClass("mc-date-switcher"))var c=i.find("select[name=month]").val(),l=i.find("select[name=dy]").val(),d=i.find("select[name=yr]").val();if(i.hasClass("mc-categories-switcher"))var v=i.find("select[name=mcat]").val();if(i.hasClass("mc-locations-switcher"))var f=i.find("select[name=loc]").val();if(i.hasClass("mc-access-switcher"))var p=i.find("select[name=access]").val();var o=s.find("input[name=mcs]").val(),m=e(this).attr("data-href")}else var m=e(this).attr("href");let t;try{t=new URL(m),t.searchParams.delete("embed"),t.searchParams.delete("source"),this.nodeName==="INPUT"&&(c!==""&&(t.searchParams.delete("month"),t.searchParams.delete("dy"),t.searchParams.delete("yr"),t.searchParams.append("month",parseInt(c)),typeof l<"u"&&t.searchParams.append("dy",parseInt(l)),t.searchParams.append("yr",parseInt(d))),v!==""&&(t.searchParams.delete("mcat"),t.searchParams.append("mcat",v)),f!==""&&(t.searchParams.delete("loc"),t.searchParams.delete("ltype"),t.searchParams.append("ltype","name"),t.searchParams.append("loc",f)),p!==""&&(t.searchParams.delete("access"),t.searchParams.append("access",parseInt(p))),t.searchParams.delete("mcs"),o!==""&&typeof o<"u"&&t.searchParams.append("mcs",encodeURIComponent(o)),m=t.toString()),window.history.pushState({},"",t)}catch(P){t=!1}var _=s.height();e("#"+r).html('<div class="mc-loading"></div><div class="loading" style="height:'+_+'px"><span class="screen-reader-text">Loading...</span></div>'),e("#"+r).load(m+" #"+r+" > *",function(P,k,g){k=="error"&&e("#"+r).html(g.status+" "+g.statusText),typeof my_calendar<"u"&&my_calendar.list=="true"&&(my_calendar.links==="false"?(e("li.mc-events").find(".mc-events").hide(),e("li.current-day").children().show()):e("li.mc-events .single-details").hide()),typeof my_calendar<"u"&&my_calendar.grid=="true"&&e(".calendar-event").children().not(".event-title").hide(),typeof my_calendar<"u"&&my_calendar.mini=="true"&&e(".mini .has-events").children().not(".mc-date-container").hide(),e("#"+n).trigger("focus");var b=e("#mc_head_"+r).text();wp.a11y.speak(b),u()})});function u(){var a=e(".mc-user-time");a.each(function(){var n=e(this).text(),s=e(this).attr("data-label"),r='<span class="mc-local-time-time">'+new Date(n).toLocaleTimeString().replace(":00 "," ")+"</span>",c='<span class="mc-local-time-date">'+new Date(n).toLocaleDateString()+"</span>";e(this).html('<span class="mc-local-time-label">'+s+"</span> "+c+'<span class="sep">, </span>'+r).attr("data-time",n)})}e(".mc-main a[target=_blank]").append(' <span class="dashicons dashicons-external" aria-hidden="true"></span><span class="screen-reader-text"> '+my_calendar.newWindow+"</span>")})(jQuery);})();