diff --git a/packages/plugin/src/Elements/Event.php b/packages/plugin/src/Elements/Event.php index 4e0300e..cd344bd 100644 --- a/packages/plugin/src/Elements/Event.php +++ b/packages/plugin/src/Elements/Event.php @@ -1534,11 +1534,11 @@ public function setFieldValuesFromRequest(string $paramNamespace = ''): void $processedAnyFields = false; foreach ($this->fieldLayoutFields(true) as $field) { // Have we already processed this field? - if (isset($processedFields[$field->id])) { + if (isset($processedFields[$field->handle])) { continue; } - $processedFields[$field->id] = true; + $processedFields[$field->handle] = true; $processedAnyFields = true; // Do we have any post data for this field? diff --git a/packages/plugin/src/Models/CalendarModel.php b/packages/plugin/src/Models/CalendarModel.php index d4faaad..d3b3c6d 100644 --- a/packages/plugin/src/Models/CalendarModel.php +++ b/packages/plugin/src/Models/CalendarModel.php @@ -146,7 +146,7 @@ public function getIcsTimezone(): string public function getDescriptionFieldHandles(): array { - $fieldList = [Calendar::t('None')]; + $fieldList = []; if ($this->getFieldLayout()) { foreach ($this->getFieldLayout()->getCustomFields() as $field) { $fieldList[$field->handle] = $field->name; diff --git a/packages/plugin/src/Resources/js/scripts/calendars/edit.js b/packages/plugin/src/Resources/js/scripts/calendars/edit.js deleted file mode 100644 index b9cad24..0000000 --- a/packages/plugin/src/Resources/js/scripts/calendars/edit.js +++ /dev/null @@ -1 +0,0 @@ -!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}({2:function(e,t){$((function(){var e=$(".layoutdesigner").find(".fld-tabs"),t=$("#descriptionFieldHandle"),n=$("#locationFieldHandle"),r=null;setInterval((function(){var o=[],a=$(".fld-tab .fld-element[data-id]",e);if(a.length!==r){a.each((function(){var e=parseInt($(this).data("id"));-1===o.indexOf(e)&&customFieldData[e]&&o.push(e)})),r=a.length;var l=t.val(),i=n.val();t.find("option:gt(0)").remove(),n.find("option:gt(0)").remove();for(var u=0;u").html(f).attr("value",d),p=c.clone();d===l&&c.attr("selected","selected"),t.append(c),d===i&&p.attr("selected","selected"),n.append(p)}}}),1e3)}))}}); \ No newline at end of file diff --git a/packages/plugin/src/Resources/js/scripts/calendars/index.js b/packages/plugin/src/Resources/js/scripts/calendars/index.js index 762e396..cefb5ff 100644 --- a/packages/plugin/src/Resources/js/scripts/calendars/index.js +++ b/packages/plugin/src/Resources/js/scripts/calendars/index.js @@ -1 +1 @@ -!function(r){var e={};function a(n){if(e[n])return e[n].exports;var t=e[n]={i:n,l:!1,exports:{}};return r[n].call(t.exports,t,t.exports,a),t.l=!0,t.exports}a.m=r,a.c=e,a.d=function(r,e,n){a.o(r,e)||Object.defineProperty(r,e,{enumerable:!0,get:n})},a.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},a.t=function(r,e){if(1&e&&(r=a(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var t in r)a.d(n,t,function(e){return r[e]}.bind(null,t));return n},a.n=function(r){var e=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(e,"a",e),e},a.o=function(r,e){return Object.prototype.hasOwnProperty.call(r,e)},a.p="",a(a.s=3)}({3:function(r,e){function a(r,e,a){return e in r?Object.defineProperty(r,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):r[e]=a,r}$((function(){$("a.enable-ics[data-calendar-id]").on({click:function(){if(!confirm(Craft.t("calendar","Are you sure you want to enable ICS sharing for this calendar?")))return!1;var r=a({calendar_id:$(this).data("calendar-id")},Craft.csrfTokenName,Craft.csrfTokenValue);Craft.postActionRequest("calendar/calendars/enable-ics-sharing",r,(function(r){r.errors?Craft.cp.displayError(r.errors.join(". ")):window.location.reload()}))}}),$("a.copy-ics-link[data-link]").on({click:function(){var r=$(this).data("link"),e=Craft.t("calendar","{ctrl}C to copy.",{ctrl:navigator.appVersion.indexOf("Mac")?"⌘":"Ctrl-"});prompt(e,r)}}),$("a.disable-ics[data-calendar-id]").on({click:function(){if(!confirm(Craft.t("calendar","Are you sure you want to disable ICS sharing for this calendar?")))return!1;var r=a({calendar_id:$(this).data("calendar-id")},Craft.csrfTokenName,Craft.csrfTokenValue);Craft.postActionRequest("calendar/calendars/disable-ics-sharing",r,(function(r){r.errors?Craft.cp.displayError(r.errors.join(". ")):window.location.reload()}))}}),$("a.icon.clone[data-id]").on({click:function(){var r,e=$(this).data("id");$.ajax({url:Craft.getCpUrl("calendar/calendars/duplicate"),type:"post",dataType:"json",data:(r={},a(r,Craft.csrfTokenName,Craft.csrfTokenValue),a(r,"id",e),r),success:function(){window.location.reload()},error:function(r){var e=r.responseJSON;Craft.cp.displayError(e.error)}})}})}))}}); \ No newline at end of file +!function(r){var e={};function a(n){if(e[n])return e[n].exports;var t=e[n]={i:n,l:!1,exports:{}};return r[n].call(t.exports,t,t.exports,a),t.l=!0,t.exports}a.m=r,a.c=e,a.d=function(r,e,n){a.o(r,e)||Object.defineProperty(r,e,{enumerable:!0,get:n})},a.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},a.t=function(r,e){if(1&e&&(r=a(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var t in r)a.d(n,t,function(e){return r[e]}.bind(null,t));return n},a.n=function(r){var e=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(e,"a",e),e},a.o=function(r,e){return Object.prototype.hasOwnProperty.call(r,e)},a.p="",a(a.s=2)}({2:function(r,e){function a(r,e,a){return e in r?Object.defineProperty(r,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):r[e]=a,r}$((function(){$("a.enable-ics[data-calendar-id]").on({click:function(){if(!confirm(Craft.t("calendar","Are you sure you want to enable ICS sharing for this calendar?")))return!1;var r=a({calendar_id:$(this).data("calendar-id")},Craft.csrfTokenName,Craft.csrfTokenValue);Craft.postActionRequest("calendar/calendars/enable-ics-sharing",r,(function(r){r.errors?Craft.cp.displayError(r.errors.join(". ")):window.location.reload()}))}}),$("a.copy-ics-link[data-link]").on({click:function(){var r=$(this).data("link"),e=Craft.t("calendar","{ctrl}C to copy.",{ctrl:navigator.appVersion.indexOf("Mac")?"⌘":"Ctrl-"});prompt(e,r)}}),$("a.disable-ics[data-calendar-id]").on({click:function(){if(!confirm(Craft.t("calendar","Are you sure you want to disable ICS sharing for this calendar?")))return!1;var r=a({calendar_id:$(this).data("calendar-id")},Craft.csrfTokenName,Craft.csrfTokenValue);Craft.postActionRequest("calendar/calendars/disable-ics-sharing",r,(function(r){r.errors?Craft.cp.displayError(r.errors.join(". ")):window.location.reload()}))}}),$("a.icon.clone[data-id]").on({click:function(){var r,e=$(this).data("id");$.ajax({url:Craft.getCpUrl("calendar/calendars/duplicate"),type:"post",dataType:"json",data:(r={},a(r,Craft.csrfTokenName,Craft.csrfTokenValue),a(r,"id",e),r),success:function(){window.location.reload()},error:function(r){var e=r.responseJSON;Craft.cp.displayError(e.error)}})}})}))}}); \ No newline at end of file diff --git a/packages/plugin/src/Resources/js/scripts/calendars/main.js b/packages/plugin/src/Resources/js/scripts/calendars/main.js index c5c70da..db973a9 100644 --- a/packages/plugin/src/Resources/js/scripts/calendars/main.js +++ b/packages/plugin/src/Resources/js/scripts/calendars/main.js @@ -1 +1 @@ -!function(e){var t={};function a(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,a),r.l=!0,r.exports}a.m=e,a.c=t,a.d=function(e,t,n){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)a.d(n,r,function(t){return e[t]}.bind(null,r));return n},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a(a.s=4)}([function(e,t,a){"use strict";a.r(t),a.d(t,"renderEvent",(function(){return d})),a.d(t,"today",(function(){return c})),a.d(t,"renderDay",(function(){return s})),a.d(t,"renderView",(function(){return u})),a.d(t,"eventRepositioned",(function(){return f})),a.d(t,"eventDateChange",(function(){return p})),a.d(t,"eventDurationChange",(function(){return v})),a.d(t,"eventClick",(function(){return m})),a.d(t,"getDayViewLink",(function(){return h})),a.d(t,"getEvents",(function(){return y})),a.d(t,"closeAllQTips",(function(){return g})),a.d(t,"enableQTips",(function(){return C})),a.d(t,"getSpinner",(function(){return b}));var n=a(1);function r(e){return function(e){if(Array.isArray(e))return i(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(e);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return i(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=new Array(t);a").addClass("fc-color-icon").css("background-color",e.backgroundColor).css("border-color",e.borderColor);$(".fc-content",t).prepend(a)}e.enabled||t.addClass("fc-event-disabled"),t.addClass("fc-color-"+e.textColor);var r=l.data(),i=r.timeFormat,o=r.isMultiSite;Object(n.buildEventPopup)(e,t,i,void 0!==o)}},c=new moment,s=function(e,t){var a=t.parents(".fc-bg:first").siblings(".fc-content-skeleton").find("thead > tr > td:eq("+t.index()+")"),n=h(e),r=$("").attr("href",n).html(a.html());a.html(r)},u=function(e,t){var a=t.parents("#solspace-calendar"),n=new moment(a.data("current-day"));"agendaWeek"===e.name&&$(".fc-day-header.fc-widget-header",t).each((function(){var e=$(this).html(),t=e.split(" ");e=t[0]+" "+t[1]+"";var a=new moment($(this).data("date")),r=h(a),i=$("").attr("href",r).html(e);n.format("YYYYMMDD")===a.format("YYYYMMDD")&&i.addClass("fc-title-today"),$(this).html(i)}));$(".fc-localeButton-button",l).addClass("menubtn btn"),"agendaDay"===e.name&&$("thead.fc-head",t).remove()},f=function(e,t,a,n){var r,i,l;$.ajax({url:Craft.getCpUrl("calendar/events/api/modify-"+e),type:"post",dataType:"json",data:(r={eventId:t.id,siteId:t.site.id,isAllDay:t.allDay,startDate:t.start.toISOString(),endDate:t.end?t.end.toISOString():null,deltaSeconds:a.as("seconds")},i=Craft.csrfTokenName,l=Craft.csrfTokenValue,i in r?Object.defineProperty(r,i,{value:l,enumerable:!0,configurable:!0,writable:!0}):r[i]=l,r),success:function(e){e.error?n():t.repeats&&$calendar.fullCalendar("refetchEvents")},error:function(){n()}})},p=function(e,t,a){f("date",e,t,a)},v=function(e,t,a){f("duration",e,t,a)},m=function(e){window.location.href=Craft.getCpUrl("calendar/events/"+e.id+"/"+e.site.handle)},h=function(e){if(e.isValid()){var t=e.format("YYYY"),a=e.format("MM"),n=e.format("DD");return Craft.getCpUrl("calendar/view/day/"+t+"/"+a+"/"+n)}return""},y=function(e,t,a,n){b().fadeIn("fast");var i=$("ul.calendar-list"),l="*";i.length&&(l=$("input:checked",i).map((function(){return $(this).val()})).get().join());var o=$("#solspace-calendar").data().currentSiteId,d=$("form.calendar-filters"),c=[].concat(r(d.serializeArray()),[{name:"rangeStart",value:e.toISOString()},{name:"rangeEnd",value:t.toISOString()},{name:"calendars",value:l},{name:"siteId",value:o},{name:[Craft.csrfTokenName],value:Craft.csrfTokenValue}]);$.ajax({url:Craft.getCpUrl("calendar/month"),data:$.param(c),type:"post",dataType:"json",success:function(e){for(var t=0;t
").qtip({content:{text:$("#event-creator"),title:Craft.t("calendar","New Event")},position:{my:"center",at:"center",target:$(window)},show:{ready:!0,modal:{on:!0,blur:!0}},hide:!1,style:{classes:"qtip-bootstrap dialogue",width:500},events:{render:function(a,r){var l=r.elements.content,o=i.data().currentSiteId;$("ul.errors",l).empty();var c=e.utc().format("HHmmss"),s=t.utc().format("HHmmss"),u=!1;c===s&&"000000"===s&&(t.subtract(1,"seconds"),u=!0);var f=d(e.toDate()),p=d(t.toDate()),v=$("#event-creator"),m=$('input[name="startDate[date]"]',v),h=$('input[name="startDate[time]"]',v),y=$('input[name="endDate[date]"]',v),g=$('input[name="endDate[time]"]',v);v.addClass("shown"),m.datepicker("setDate",f),y.datepicker("setDate",p),h.timepicker("setTime",f),g.timepicker("setTime",p);var C=$("input[name=allDay]"),b=C.parents(".lightswitch:first");$("input",b).val(u?1:""),u?(b.data("lightswitch").turnOn(),$(".timewrapper",v).hide()):(b.data("lightswitch").turnOff(),$(".timewrapper",v).show()),setTimeout((function(){$("input[name=title]:first",l).val("").focus().bind("keypress",(function(e){13===(e.which?e.which:e.keyCode)&&$("button.submit",l).trigger("click")}))}),100);var w=h.timepicker("option","timeFormat").replace("h","hh").replace("H","HH").replace("G","H").replace("g","h").replace("A","a").replace("i","mm");$("button.submit",l).unbind("click").click((function(e){var t=$(this),a=$("input[name=title]",l).val(),i=$("select[name=calendarId]",l).val(),d=moment(m.datepicker("getDate")),c=moment(h.val().replace(/(a|p)\.(m)\./gi,"$1$2"),w),s=moment(y.datepicker("getDate")),u=moment(g.val().replace(/(a|p)\.(m)\./gi,"$1$2"),w);t.prop("disabled",!0).addClass("disabled"),t.text(Craft.t("app","Saving...")),$.ajax({url:Craft.getCpUrl("calendar/events/api/create"),type:"post",dataType:"json",data:n({siteId:o,startDate:d.format("YYYY-MM-DD")+" "+c.format("HH:mm:ss"),endDate:s.format("YYYY-MM-DD")+" "+u.format("HH:mm:ss"),allDay:C.val(),event:{title:a,calendarId:i}},Craft.csrfTokenName,Craft.csrfTokenValue),success:function(t){if(t.error)$("ul.errors",l).empty().append($("
  • ",{text:t.error}));else if(t.event){var a=t.event;a.allDay&&(a.end=moment(a.end).add(2,"s").utc().format()),$("*[data-calendar-instance]").fullCalendar("renderEvent",a),$("*[data-calendar-instance]").fullCalendar("unselect"),r.hide(e)}},error:function(e){var t=e.responseJSON;Craft.cp.displayNotification("error",t.error)},complete:function(){t.prop("disabled",!1).removeClass("disabled"),t.text(Craft.t("app","Save"))}})})),$("button.delete",l).unbind("click").click((function(){r.hide()}))},hide:function(e,t){$("#event-creator").removeClass("shown").insertAfter($("#solspace-calendar")),$("*[data-calendar-instance]").fullCalendar("unselect"),r=!1,t.destroy()}}}))},o=function(e,t,a){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(e.calendar){var i=$("
    ",{class:"buttons"}),l=$("
    "),o=$("
    ",{class:"calendar-data",html:' '+e.calendar.name}),d=moment(e.start),c=moment(e.end),s="dddd, MMMM D, YYYY";e.allDay?c.subtract(1,"days"):s=s+" [at] "+a;var u=$("
    ",{class:"event-date-range separator",html:'
    "+d.format(s)+'
    "+c.format(s)+"
    "}),f="";e.repeats&&(f=$("
    ",{class:"event-repeats separator",html:'
    '})),e.editable&&(i.append($("
    ",{class:"btn small submit",href:Craft.getCpUrl("calendar/events/"+e.id+(r?"/"+e.site.handle:"")),text:Craft.t("calendar","Edit")})),i.append($("",{class:"btn small delete-event",href:Craft.getCpUrl("calendar/events/api/delete"),text:Craft.t("calendar","Delete"),data:{id:e.id}})),e.repeats&&i.append($("",{class:"btn small delete-event-occurrence",href:Craft.getCpUrl("calendar/events/api/delete-occurrence"),text:Craft.t("calendar","Delete occurrence"),data:{id:e.id,date:e.start.toISOString()}}))),t.qtip({content:{title:e.title,button:!0,text:l.add(o).add(u).add(f).add(i)},style:{classes:"qtip-bootstrap qtip-event",tip:{width:30,height:15}},position:{my:"right center",at:"left center",adjust:{method:"shift flip"}},show:{solo:!0,delay:500},hide:{fixed:!0,delay:300},events:{show:function(t){window.qTipsEnabled||t.preventDefault(),e.repeats&&$.ajax({cache:!1,url:Craft.getCpUrl("calendar/events/api/first-occurrence-date"),type:"post",dataType:"json",data:n({eventId:e.id},Craft.csrfTokenName,Craft.csrfTokenValue),success:function(e){e.success&&e.event&&e.event.hasOwnProperty("readableRepeatRule")&&$(".event-repeats").html(" "+e.event.readableRepeatRule)}})},render:function(t,a){$("a.delete-event-occurrence",a.elements.content).click((function(){var e=$(this).attr("href"),t=$(this).data("id"),r=$(this).data("date");return confirm(Craft.t("calendar","Are you sure?"))&&$.ajax({url:e,type:"post",dataType:"json",data:n({eventId:t,date:r},Craft.csrfTokenName,Craft.csrfTokenValue),success:function(e){if(!e.error)return $("*[data-calendar-instance]").fullCalendar("refetchEvents"),void a.destroy();console.warn(e.error)}}),!1})),$("a.delete-event",a.elements.content).click((function(){var t=$(this).attr("href"),r=$(this).data("id");return confirm(Craft.t("calendar","Are you sure you want to delete this event?"))&&$.ajax({url:t,type:"post",dataType:"json",data:n({eventId:r},Craft.csrfTokenName,Craft.csrfTokenValue),success:function(t){if(!t.error)return $("*[data-calendar-instance]").fullCalendar("removeEvents",e.id),void a.destroy();console.warn(t.error)}}),!1}))}}})}},d=function(e){return new Date(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds())}},,,function(e,t,a){"use strict";a.r(t);var n=a(0),r=a(1);function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var a=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==a)return;var n,r,i=[],l=!0,o=!1;try{for(a=a.call(e);!(l=(n=a.next()).done)&&(i.push(n.value),!t||i.length!==t);l=!0);}catch(e){o=!0,r=e}finally{try{l||null==a.return||a.return()}finally{if(o)throw r}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(e);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return l(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=new Array(t);a",{class:"menu"}).insertAfter(e.currentTarget),r=$("
    '),o=$("#solspace-calendar-spinner")),o}},function(e,t,a){"use strict";function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}a.r(t),a.d(t,"showEventCreator",(function(){return l})),a.d(t,"buildEventPopup",(function(){return o})),a.d(t,"createDateAsUTC",(function(){return d}));var r=!1,i=$("#solspace-calendar"),l=function(e,t){r||(r=!0,$("
    ").qtip({content:{text:$("#event-creator"),title:Craft.t("calendar","New Event")},position:{my:"center",at:"center",target:$(window)},show:{ready:!0,modal:{on:!0,blur:!0}},hide:!1,style:{classes:"qtip-bootstrap dialogue",width:500},events:{render:function(a,r){var l=r.elements.content,o=i.data().currentSiteId;$("ul.errors",l).empty();var c=e.utc().format("HHmmss"),s=t.utc().format("HHmmss"),u=!1;c===s&&"000000"===s&&(t.subtract(1,"seconds"),u=!0);var f=d(e.toDate()),p=d(t.toDate()),v=$("#event-creator"),m=$('input[name="startDate[date]"]',v),h=$('input[name="startDate[time]"]',v),y=$('input[name="endDate[date]"]',v),g=$('input[name="endDate[time]"]',v);v.addClass("shown"),m.datepicker("setDate",f),y.datepicker("setDate",p),h.timepicker("setTime",f),g.timepicker("setTime",p);var C=$("input[name=allDay]"),b=C.parents(".lightswitch:first");$("input",b).val(u?1:""),u?(b.data("lightswitch").turnOn(),$(".timewrapper",v).hide()):(b.data("lightswitch").turnOff(),$(".timewrapper",v).show()),setTimeout((function(){$("input[name=title]:first",l).val("").focus().bind("keypress",(function(e){13===(e.which?e.which:e.keyCode)&&$("button.submit",l).trigger("click")}))}),100);var w=h.timepicker("option","timeFormat").replace("h","hh").replace("H","HH").replace("G","H").replace("g","h").replace("A","a").replace("i","mm");$("button.submit",l).unbind("click").click((function(e){var t=$(this),a=$("input[name=title]",l).val(),i=$("select[name=calendarId]",l).val(),d=moment(m.datepicker("getDate")),c=moment(h.val().replace(/(a|p)\.(m)\./gi,"$1$2"),w),s=moment(y.datepicker("getDate")),u=moment(g.val().replace(/(a|p)\.(m)\./gi,"$1$2"),w);t.prop("disabled",!0).addClass("disabled"),t.text(Craft.t("app","Saving...")),$.ajax({url:Craft.getCpUrl("calendar/events/api/create"),type:"post",dataType:"json",data:n({siteId:o,startDate:d.format("YYYY-MM-DD")+" "+c.format("HH:mm:ss"),endDate:s.format("YYYY-MM-DD")+" "+u.format("HH:mm:ss"),allDay:C.val(),event:{title:a,calendarId:i}},Craft.csrfTokenName,Craft.csrfTokenValue),success:function(t){if(t.error)$("ul.errors",l).empty().append($("
  • ",{text:t.error}));else if(t.event){var a=t.event;a.allDay&&(a.end=moment(a.end).add(2,"s").utc().format()),$("*[data-calendar-instance]").fullCalendar("renderEvent",a),$("*[data-calendar-instance]").fullCalendar("unselect"),r.hide(e)}},error:function(e){var t=e.responseJSON;Craft.cp.displayNotification("error",t.error)},complete:function(){t.prop("disabled",!1).removeClass("disabled"),t.text(Craft.t("app","Save"))}})})),$("button.delete",l).unbind("click").click((function(){r.hide()}))},hide:function(e,t){$("#event-creator").removeClass("shown").insertAfter($("#solspace-calendar")),$("*[data-calendar-instance]").fullCalendar("unselect"),r=!1,t.destroy()}}}))},o=function(e,t,a){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(e.calendar){var i=$("
    ",{class:"buttons"}),l=$("
    "),o=$("
    ",{class:"calendar-data",html:' '+e.calendar.name}),d=moment(e.start),c=moment(e.end),s="dddd, MMMM D, YYYY";e.allDay?c.subtract(1,"days"):s=s+" [at] "+a;var u=$("
    ",{class:"event-date-range separator",html:'
    "+d.format(s)+'
    "+c.format(s)+"
    "}),f="";e.repeats&&(f=$("
    ",{class:"event-repeats separator",html:'
    '})),e.editable&&(i.append($("
    ",{class:"btn small submit",href:Craft.getCpUrl("calendar/events/"+e.id+(r?"/"+e.site.handle:"")),text:Craft.t("calendar","Edit")})),i.append($("",{class:"btn small delete-event",href:Craft.getCpUrl("calendar/events/api/delete"),text:Craft.t("calendar","Delete"),data:{id:e.id}})),e.repeats&&i.append($("",{class:"btn small delete-event-occurrence",href:Craft.getCpUrl("calendar/events/api/delete-occurrence"),text:Craft.t("calendar","Delete occurrence"),data:{id:e.id,date:e.start.toISOString()}}))),t.qtip({content:{title:e.title,button:!0,text:l.add(o).add(u).add(f).add(i)},style:{classes:"qtip-bootstrap qtip-event",tip:{width:30,height:15}},position:{my:"right center",at:"left center",adjust:{method:"shift flip"}},show:{solo:!0,delay:500},hide:{fixed:!0,delay:300},events:{show:function(t){window.qTipsEnabled||t.preventDefault(),e.repeats&&$.ajax({cache:!1,url:Craft.getCpUrl("calendar/events/api/first-occurrence-date"),type:"post",dataType:"json",data:n({eventId:e.id},Craft.csrfTokenName,Craft.csrfTokenValue),success:function(e){e.success&&e.event&&e.event.hasOwnProperty("readableRepeatRule")&&$(".event-repeats").html(" "+e.event.readableRepeatRule)}})},render:function(t,a){$("a.delete-event-occurrence",a.elements.content).click((function(){var e=$(this).attr("href"),t=$(this).data("id"),r=$(this).data("date");return confirm(Craft.t("calendar","Are you sure?"))&&$.ajax({url:e,type:"post",dataType:"json",data:n({eventId:t,date:r},Craft.csrfTokenName,Craft.csrfTokenValue),success:function(e){if(!e.error)return $("*[data-calendar-instance]").fullCalendar("refetchEvents"),void a.destroy();console.warn(e.error)}}),!1})),$("a.delete-event",a.elements.content).click((function(){var t=$(this).attr("href"),r=$(this).data("id");return confirm(Craft.t("calendar","Are you sure you want to delete this event?"))&&$.ajax({url:t,type:"post",dataType:"json",data:n({eventId:r},Craft.csrfTokenName,Craft.csrfTokenValue),success:function(t){if(!t.error)return $("*[data-calendar-instance]").fullCalendar("removeEvents",e.id),void a.destroy();console.warn(t.error)}}),!1}))}}})}},d=function(e){return new Date(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds())}},,function(e,t,a){"use strict";a.r(t);var n=a(0),r=a(1);function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var a=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==a)return;var n,r,i=[],l=!0,o=!1;try{for(a=a.call(e);!(l=(n=a.next()).done)&&(i.push(n.value),!t||i.length!==t);l=!0);}catch(e){o=!0,r=e}finally{try{l||null==a.return||a.return()}finally{if(o)throw r}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(e);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return l(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=new Array(t);a",{class:"menu"}).insertAfter(e.currentTarget),r=$("