+function($){ "use strict"; $('.external-event').each(function(){ $(this).data('event', { title: $.trim($(this).text()), className: [$(this).data('class')] }); }); $('.external-event').draggable({ revert: true, revertDuration: 0 }); var cal = $('#fullcalendar').fullCalendar({ theme: true, editable: false, droppable: false, header: { left: 'prev, today, next', center: 'title' }, buttonText: { prev: '', next: '' }, events: [ { "category": "online", "title": "Online: 01 h 18 min", "start": "2024-10-20", "className": ["success"] }, { "category": "online", "title": "Online: 04 h 36 min", "start": "2024-10-21", "className": ["success"] }, { "category": "online", "title": "Online: 03 h 36 min", "start": "2024-10-24", "className": ["success"] }, { "category": "online", "title": "Online: 04 h 30 min", "start": "2024-10-25", "className": ["success"] }, { "category": "online", "title": "Online: 04 h 06 min", "start": "2024-10-29", "className": ["success"] }, { "category": "online", "title": "Online: 03 h 45 min", "start": "2024-10-30", "className": ["success"] }, { "category": "Score", "title": "Max score: 39", "start": "2024-10-20", "className": ["primary"] }, { "category": "Score", "title": "Max score: 35", "start": "2024-10-21", "className": ["primary"] }, { "category": "Score", "title": "Max score: 26", "start": "2024-10-24", "className": ["primary"] }, { "category": "Score", "title": "Max score: 23", "start": "2024-10-25", "className": ["primary"] }, { "category": "Score", "title": "Max score: 34", "start": "2024-10-29", "className": ["primary"] }, { "category": "Score", "title": "Max score: 36", "start": "2024-10-30", "className": ["primary"] }, { "category": "likes", "title": "New Likes: 510", "start": "2024-10-21", "className": ["purple"] }, { "category": "likes", "title": "New Likes: 223", "start": "2024-10-24", "className": ["purple"] }, { "category": "likes", "title": "New Likes: 229", "start": "2024-10-25", "className": ["purple"] }, { "category": "likes", "title": "New Likes: 238", "start": "2024-10-29", "className": ["purple"] }, { "category": "likes", "title": "New Likes: 288", "start": "2024-10-30", "className": ["purple"] } ], drop: function(date) { if ($('#drop-remove').is(':checked')) { $(this).remove(); } }, dayClick: function(date, jsEvent, view) { var modal = $('#new_event_modal'); modal.modal('show'); modal.find('#event_start').val(date.format()); } }); $.fn.windowCheck = function() { var ww = $(window).width(); if(ww > 768) { cal.fullCalendar('changeView', 'month'); } else if(ww < 768 && ww > 540) { cal.fullCalendar('changeView', 'basicWeek'); } else { cal.fullCalendar('changeView', 'basicDay'); } }; $(window).on('resize', function(e){ $().windowCheck(); }); $('.fc-prev-button').append(''); $('.fc-next-button').append(''); // add new event category $('#new_event_cat_form').on('submit', function(e){ e.preventDefault(); var name = $(this).find('#category_name').val(); var color = $(this).find('#category_color').val(); var category = $('
'); category.text(name); category.addClass(color); category.data('event', { title: name, className: [color] }); category.draggable({ revert: true, revertDuration: 0 }); $('#external-events').append(category); $('#new_event_cat_modal').modal('hide'); }); // add new event $('#new_event_form').on('submit', function(e){ e.preventDefault(); var title = $(this).find('#event_title').val(); var category = $(this).find('#event_category').val(); var start = $(this).find('#event_start').val(); cal.fullCalendar('addEventSource', [ { title: title, start: start, className: [category] } ]) $('#new_event_modal').modal('hide'); }); }(jQuery);