1var monthNames = [ "Jan", "Feb", "Mar", "Apr", "May", "Jun","Jul", "Aug", "Sept", "Oct", "Nov", "Dec" ]; 2var monthNamesFull = [ "January", "February", "March", "April", "May", "June","July", "August", "September", "October", "November", "December" ]; 3var daysNames = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; 4 5$(document).ready(function () { 6 7 render_calendar(); 8 9 // Add a new source 10 $('#calendar').fullCalendar('addEventSource', 11 { 12 url: '/cms/site_pages/get_calendar_source/x/x/0', 13 type: 'POST', 14 data: 15 { 16 start: new Date($('#calendar').fullCalendar('getView').visStart).getTime(), 17 end: new Date($('#calendar').fullCalendar('getView').visEnd).getTime() 18 }, 19 allDayDefault: false 20 21 }); 22 23 $('.progress .progress-bar').css("width", 24 function() { 25 return $(this).attr("aria-valuenow") + "%"; 26 } 27 ); 28 29 $('.carousel').each(function() { 30 31 var slideshow = $(this).find('.carouselInner'); 32 var caption = $(this).find('.carouselCaption'); 33 var next = $(this).find('.carouselNext'); 34 var prev = $(this).find('.carouselPrev'); 35 36 slideshow.cycle({ 37 speed: 600, 38 manualSpeed: 100, 39 slides: "> div", 40 autoHeight: "600:400", 41 caption: caption, 42 next: next, 43 prev: prev, 44 captionTemplate:"{{cycleTitle}}" 45 }); 46 47 }); 48 49 $(document).on('click', ".sidr-class-dropdown-toggle", function(event) { 50 event.preventDefault(); 51 console.log($(this).siblings(".sidr-class-dropdown-menu").find('li:first-child a').attr('href')); 52 window.location.href = $(this).siblings(".sidr-class-dropdown-menu").find('li:first-child a').attr('href'); 53 }); 54 55 $(".toggle-sidenav").click(function () { 56 $(".sidenav").slideToggle(); 57 $(this).text(function(_, oldText) { 58 return oldText === 'Show Menu' ? 'Hide Menu' : 'Show Menu'; 59 }); 60 }); 61 62 var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent); 63 if(isSafari == true) { 64 var str = $('.pdfobject-container').html(); 65 if(typeof str != 'undefined') { 66 var res = str.replace("<embed", "<iframe"); 67 $('.pdfobject-container').html(res); 68 } 69 } 70 71 // Adds our disclaimer to the bottom of the contact form 72 73 $('.contact form#contactform').append('<p style="font-size:13px;margin-top:15px">Information submitted through this contact form is processed by eSchools and passed directly to the school. This data is held by and subject to, the schoolâs privacy policy. See the eSchools\' Privacy Policy <a target="_blank" href="https://www.eschools.co.uk/policies">here.</a></p>'); 74 75 // Adds nofollow to all downloads 76 77}); 78 79if (typeof addDays != 'function') { 80 function addDays(date, days) { 81 var date = new Date(date); 82 date.setDate(date.getDate() + days); 83 return date; 84 } 85} 86 87function render_calendar() { 88 if (screen.width < 767){$("#calendar").addClass("calendar-sm").removeClass("calendar-lg")} 89 var calDaysFormat = ($("#calendar").hasClass("calendar-lg")) ? ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] : ['S', 'M', 'T', 'W', 'T', 'F', 'S']; 90 var headerright = ($("#calendar").hasClass("calendar-lg")) ? '' : 'prev next'; 91 var headerleft = ($("#calendar").hasClass("calendar-lg")) ? 'prev next title' : 'title'; 92 var calendar_sm = $("#calendar").hasClass("calendar-sm"); 93 94 $('#calendar').fullCalendar({ 95 editable: false, 96 header: { 97 left: headerleft, 98 center: '', 99 right: headerright 100 }, 101 buttonText: { 102 prev: '', 103 next: '' 104 }, 105 timeFormat: 'h(:mm)tt', 106 dayNamesShort: calDaysFormat, 107 firstDay: 1, 108 viewRender: function (view, element) { 109 110 if($(window).width() < 1020) { 111 $(".fc-day-header").each( function() { 112 $(this).text($(this).text().slice(0,1)) 113 }) 114 } 115 116 }, 117 eventRender: function(event, element, view) { 118 119 event.editable = false;
120 121 if(calendar_sm){ 122 123 var eventStart = [event.start.getFullYear()+"-"+('0' + eventMonth(event.start)).slice(-2)+"-"+('0' + event.start.getDate()).slice(-2), daysNames[event.start.getDay()]+' '+event.start.getDate()+get_nth_suffix(event.start.getDate())+' '+monthNamesFull[event.start.getMonth()]]; 124 125 var add_i = 1; 126 while($("td[data-date="+eventStart[0]+"]").length == 0) 127 { 128 //add one day to eventStart; 129 const nextDay = addDays(event.start, add_i); 130 eventStart = [nextDay.getFullYear()+"-"+('0' + eventMonth(nextDay)).slice(-2)+"-"+('0' + nextDay.getDate()).slice(-2), daysNames[nextDay.getDay()]+' '+nextDay.getDate()+get_nth_suffix(nextDay.getDate())+' '+monthNamesFull[nextDay.getMonth()]]; 131 add_i++; 132 } 133 134 var end = event.end || event.start; // FIXES A FULLCALENDAR BUG WHEN END DATE IS THE SAME AS THE START DATE 135 136 var eventEnd = [end.getFullYear()+"-"+('0' + eventMonth(end)).slice(-2)+"-"+('0' + end.getDate()).slice(-2), daysNames[end.getDay()]+' '+end.getDate()+get_nth_suffix(end.getDate())+' '+monthNamesFull[end.getMonth()]]; 137 $("td[data-date="+eventStart[0]+"]").addClass("eventDate").find(".fc-day-number").filter(function( index ) { 138 139 var totalDayDuration = (Math.floor(new Date(eventEnd[0])) - Math.floor(new Date(eventStart[0]))) / 86400000; 140 141 142 // //GENERATE MODALS 143 generateModals(this, event.id, eventStart[0]); 144 145 for (var i=0;i<totalDayDuration;i++) { 146 var newDate = new Date(Math.floor(new Date(eventStart[0])) + (86400000*(i+1))); 147 newDate = newDate.getFullYear()+"-"+('0' + eventMonth(newDate)).slice(-2)+"-"+('0' + newDate.getDate()).slice(-2); 148 $("td[data-date="+newDate+"]").addClass("eventDate").find(".fc-day-number").filter(function( index ) { 149 generateModals(this, event.id, newDate); 150 }); 151 } 152 153 154 155 }); 156 157 element.remove(); // REMOVE THE DEFAULT DISPLAY FOR FULLCALENDAR 158 } 159 160 161 }, 162 eventAfterAllRender: function(view) { 163 164 $(".calendar-items .news-item:gt(1)").remove(); 165 166 }, 167 eventClick: function(calevent) { 168 if(!calendar_sm) { 169 $("#calendar_modal").load('/cms/site_pages/get_event_by_id/' + calevent.id, function () { 170 $("#calendar_modal").modal('show'); 171 }); 172 } 173 }, 174 windowResize: function(view) { 175 176 if($(window).width() < 1020) { 177 $(".fc-day-header").each( function() { 178 $(this).text($(this).text().slice(0,1)) 179 }) 180 } 181 182 } 183 }); 184 185 function eventMonth(x) { 186 return parseInt(x.getMonth(),10)+1; 187 } 188 189 function generateModals(x, y, z) { 190 if($( "a", x ).length === 0) { // IF NO PREVIOUS EVENTS SET ON THIS DATE 191 $(x).wrapInner("<a href='/cms/site_pages/get_event_by_date/"+z+"' data-toggle='modal' data-target='#calendar_modal'></a>"); // WRAP DATE NUMBER WITH ANCHOR FOR MODAL 192 } 193 } 194 195 function get_nth_suffix(date) { 196 switch (date) { 197 case 1: 198 case 21: 199 case 31: 200 return 'st'; 201 case 2: 202 case 22: 203 return 'nd'; 204 case 3: 205 case 23: 206 return 'rd'; 207 default: 208 return 'th'; 209 } 210 } 211 212 $('#calendar_modal').on('hidden.bs.modal', function (e) { 213 $(this).removeData('bs.modal'); 214 $(this).html(''); 215 }) 216 217}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.