| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 |
- /******/ (function() { // webpackBootstrap
- var __webpack_exports__ = {};
- /*!***************************************************!*\
- !*** ./resources/js/pages/calendars-full.init.js ***!
- \***************************************************/
- /*
- Template Name: Skote - Admin & Dashboard Template
- Author: Themesbrand
- Website: https://themesbrand.com/
- Contact: themesbrand@gmail.com
- File: Apex Chart init js
- */
- !function ($) {
- "use strict";
- var CalendarPage = function CalendarPage() {};
- CalendarPage.prototype.init = function () {
- var addEvent = $("#event-modal");
- var modalTitle = $("#modal-title");
- var formEvent = $("#form-event");
- var selectedEvent = null;
- var newEventData = null;
- var forms = document.getElementsByClassName('needs-validation');
- var selectedEvent = null;
- var newEventData = null;
- var eventObject = null;
- /* initialize the calendar */
- var date = new Date();
- var d = date.getDate();
- var m = date.getMonth();
- var y = date.getFullYear();
- var Draggable = FullCalendarInteraction.Draggable;
- var externalEventContainerEl = document.getElementById('external-events'); // init dragable
- new Draggable(externalEventContainerEl, {
- itemSelector: '.external-event',
- eventData: function eventData(eventEl) {
- return {
- title: eventEl.innerText,
- className: $(eventEl).data('class')
- };
- }
- });
- var defaultEvents = [{
- title: 'All Day Event',
- start: new Date(y, m, 1)
- }, {
- title: 'Long Event',
- start: new Date(y, m, d - 5),
- end: new Date(y, m, d - 2),
- className: 'bg-warning'
- }, {
- id: 999,
- title: 'Repeating Event',
- start: new Date(y, m, d - 3, 16, 0),
- allDay: false,
- className: 'bg-info'
- }, {
- id: 999,
- title: 'Repeating Event',
- start: new Date(y, m, d + 4, 16, 0),
- allDay: false,
- className: 'bg-primary'
- }, {
- title: 'Meeting',
- start: new Date(y, m, d, 10, 30),
- allDay: false,
- className: 'bg-success'
- }, {
- title: 'Lunch',
- start: new Date(y, m, d, 12, 0),
- end: new Date(y, m, d, 14, 0),
- allDay: false,
- className: 'bg-danger'
- }, {
- title: 'Birthday Party',
- start: new Date(y, m, d + 1, 19, 0),
- end: new Date(y, m, d + 1, 22, 30),
- allDay: false,
- className: 'bg-success'
- }, {
- title: 'Click for Google',
- start: new Date(y, m, 28),
- end: new Date(y, m, 29),
- url: 'http://google.com/',
- className: 'bg-dark'
- }];
- var draggableEl = document.getElementById('external-events');
- var calendarEl = document.getElementById('calendar');
- function addNewEvent(info) {
- addEvent.modal('show');
- formEvent.removeClass("was-validated");
- formEvent[0].reset();
- $("#event-title").val();
- $('#event-category').val();
- modalTitle.text('Add Event');
- newEventData = info;
- }
- var calendar = new FullCalendar.Calendar(calendarEl, {
- plugins: ['bootstrap', 'interaction', 'dayGrid', 'timeGrid'],
- editable: true,
- droppable: true,
- selectable: true,
- defaultView: 'dayGridMonth',
- themeSystem: 'bootstrap',
- header: {
- left: 'prev,next today',
- center: 'title',
- right: 'dayGridMonth,timeGridWeek,timeGridDay,listMonth'
- },
- eventClick: function eventClick(info) {
- addEvent.modal('show');
- formEvent[0].reset();
- selectedEvent = info.event;
- $("#event-title").val(selectedEvent.title);
- $('#event-category').val(selectedEvent.classNames[0]);
- newEventData = null;
- modalTitle.text('Edit Event');
- newEventData = null;
- },
- dateClick: function dateClick(info) {
- addNewEvent(info);
- },
- events: defaultEvents
- });
- calendar.render();
- /*Add new event*/
- // Form to add new event
- $(formEvent).on('submit', function (ev) {
- ev.preventDefault();
- var inputs = $('#form-event :input');
- var updatedTitle = $("#event-title").val();
- var updatedCategory = $('#event-category').val(); // validation
- if (forms[0].checkValidity() === false) {
- event.preventDefault();
- event.stopPropagation();
- forms[0].classList.add('was-validated');
- } else {
- if (selectedEvent) {
- selectedEvent.setProp("title", updatedTitle);
- selectedEvent.setProp("classNames", [updatedCategory]);
- } else {
- var newEvent = {
- title: updatedTitle,
- start: newEventData.date,
- allDay: newEventData.allDay,
- className: updatedCategory
- };
- calendar.addEvent(newEvent);
- }
- addEvent.modal('hide');
- }
- });
- $("#btn-delete-event").on('click', function (e) {
- if (selectedEvent) {
- selectedEvent.remove();
- selectedEvent = null;
- addEvent.modal('hide');
- }
- });
- $("#btn-new-event").on('click', function (e) {
- addNewEvent({
- date: new Date(),
- allDay: true
- });
- });
- }, //init
- $.CalendarPage = new CalendarPage(), $.CalendarPage.Constructor = CalendarPage;
- }(window.jQuery), //initializing
- function ($) {
- "use strict";
- $.CalendarPage.init();
- }(window.jQuery);
- /******/ })()
- ;
|