document.addEventListener("DOMContentLoaded", function () { var timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone; /*var slotMin = new Date("2021-09-13:14:00Z") var slotMax = new Date("2021-09-13:23:30Z") if(slotMax.getHours()')}`, // content: `${info.event.title}
`, allowHTML: true, }); } else{ var tooltip = tippy(info.el, { content: `${info.event.title}
${info.event.extendedProps.speaker.nombre}
${info.event.extendedProps.description}`, allowHTML: true, }); } }, eventSources: [ {url: "/api/eventos/cursos", color: "#755baf"}, {url: "/api/eventos/plenarias", color: "#578e44"}, {url: "/api/eventos/semiplenarias", color: "#3383cb"}, {url: "/api/eventos/publicas", color: "#a57b00"}, {url: "/api/eventos/premiados", color: "darkred"}, { url: "/api/eventos/sesiones/", color: "gray", display:'list-item', eventDidMount:function(info){ console.log(info) }}, {url: "/api/eventos/genero", color: "#812c64"}, { events: function (info, success, fail) { let asamblea = { title: "Asamblea UMALCA", start: "2021-09-13T19:00-0300", end: "2019-09-13T20:00-0300", url: 'https://us02web.zoom.us/j/88195214460', speaker: { nombre: "Representantes de cada una de las sociedades que integran UMALCA", }, description: "Estatutariamente, la asamblea reúne a los representantes de cada una de las sociedades que integran UMALCA. Las autoridades de los distintos comités (ejecutivo, científico, etc) están presentes para dar cuentas de lo actuado. No está abierta al público en general.", color: "black", }; success([asamblea]); }, }, ], headerToolbar: { center: "timeGridAll,timeGridThree,timeGridOne,listView", }, eventTimeFormat: { hour: "numeric", minute: "2-digit", meridiem: false, }, timeZone: "America/Montevideo", locale: "es", initialView: "timeGridAll", initialDate: "2021-09-13", validRange: { start: "2021-09-13", end: "2021-09-18", }, nowIndicator: true, now: "2021-09-12", slotMinTime: "11:00:00", slotMaxTime: "21:00:00", slotDuration: "00:15", allDaySlot: false, slotLabelFormat: { hour: "numeric", minute: "2-digit", omitZeroMinute: false, meridiem: "short", }, eventTimeFormat: { hour: "numeric", minute: "2-digit", omitZeroMinute: false, meridiem: "short", }, eventDisplay: "block", views: { timeGridAll: { type: "timeGrid", duration: { days: 5 }, buttonText: "Todos los dias", }, timeGridThree: { type: "timeGrid", duration: { days: 2 }, buttonText: "2 dias", }, timeGridOne: { type: "timeGrid", duration: { days: 1 }, buttonText: "1 dia", }, dayGridD: { type: "dayGridDay", }, dayGridW: { type: "dayGridWeek", duration: { days: 2 }, }, listView: { type: "listWeek", buttonText: "Lista", duration: { days: 2 }, }, }, }); calendar.render(); timeZoneSelectorEl.addEventListener("change", function () { console.log(calendar.getOption('slotMinTime')) calendar.setOption("timeZone", this.value); switch (this.value) { case "America/Montevideo": calendar.setOption("locale", "es"); calendar.setOption("slotMinTime", "11:00:00"); calendar.setOption("slotMaxTime", "21:00:00"); calendar.setOption("initialDate", "2021-09-13"); calendar.setOption("validRange", { start: "2021-09-13", end: "2021-09-18", }); calendar.changeView("timeGridAll"); break; case "UTC": calendar.setOption("locale", "en"); calendar.setOption("slotMinTime", "14:00:00"); calendar.setOption("slotMaxTime", "23:59:00"); calendar.setOption("initialDate", "2021-09-13"); calendar.setOption("validRange", { start: "2021-09-13", end: "2021-09-18", }); calendar.changeView("timeGridAll"); break; default: calendar.setOption("locale",'en') let initial = moment("2021-09-13T14:00Z"); let final = moment("2021-09-17T23:30Z"); let offset = initial.utcOffset(); calendar.setOption("initialDate", initial.format("Y-MM-DD")); if(offset>0 && offset < 600){ //calendar.setOption("slotMinTime", "initial.format("H:mm")"); calendar.setOption("slotMinTime", "00:00"); //calendar.setOption("slotMaxTime", {days:1,hours:offset/60}); calendar.setOption("slotMaxTime", "24:00"); calendar.changeView("listView"); } //let currentOffset = moment().utcOffset(); //initial.add(currentOffset, "minutes"); //calendar.setOption('slotMinTime', initial.utc().format('H:mm')) //calendar.setOption("slotMaxTime", {days:1,hours:currentOffset/60}); else{ calendar.setOption("slotMaxTime",final.format("H:mm")); calendar.setOption("slotMinTime", initial.format("H:mm")); } calendar.setOption("validRange", { start: initial.format("Y-MM-DD"), end:final.add(1,'d').format("Y-MM-DD") }); } }); });