function formatDate(responseDate) { var monthNames = [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" ]; var date = new Date(responseDate); var day = date.getDate(); var monthIndex = date.getMonth(); var year = date.getFullYear(); return day + ' ' + monthNames[monthIndex] + ' ' + year; } function getMonth(responseDate) { var monthNames = [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" ]; var date = new Date(responseDate); var day = date.getDate(); var monthIndex = date.getMonth(); var year = date.getFullYear(); return monthNames[monthIndex]; } function formateDay(responseDate) { var monthNames = [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" ]; var date = new Date(responseDate); var day = date.getDate(); var monthIndex = date.getMonth(); var year = date.getFullYear(); return day + ''; } function formatTime(start_time) { if (start_time.length > 0) { return start_time; } else { return "All Day"; } } function calculateDate(start_date, start_time, end_date, end_time) { var s_date = new Date(start_date); var e_date = new Date(end_date); if (s_date.getTime() === e_date.getTime()) { return formatDate(start_date) + ", " + formatTime(start_time); } else { return formatDate(start_date) + ", " + formatTime(start_time) + " - " + formatTime(end_date) + ", " + formatTime(end_time); } } function sortEvents(eventArray) { eventArray.sort(function(a, b) { if (new Date(a.start_date).getTime() < new Date(b.start_date).getTime()) { return 1; } if (new Date(a.start_date).getTime() > new Date(b.start_date).getTime()) { return -1; } // a must be equal to b return 0; }); return eventArray; } function loadCalendarEvents(school_id, limit,title_color="#424242",date_color="#9E9E9E",description_color="#424242",card_background_color="white") { var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var response = JSON.parse(this.responseText); for (var i = 0; i < response.data.calendar.length; i++) { sortEvents(response.data.calendar); var headline = response.data.calendar[i].title; var start_date = response.data.calendar[i].start_date; var start_time = response.data.calendar[i].start_time; var end_date = response.data.calendar[i].end_date; var end_time = response.data.calendar[i].end_time; var com_uniqueschoolapp_ie_calendar_image_container_div = document.createElement('div'); com_uniqueschoolapp_ie_calendar_image_container_div.setAttribute("id", "com_uniqueschoolapp_ie_calendar_image_container_div"); var com_uniqueschoolapp_ie_calendar_icon_container = document.createElement('div'); com_uniqueschoolapp_ie_calendar_icon_container.setAttribute("id", "com_uniqueschoolapp_ie_calendar_icon_container"); var image_view = document.createElement('img'); image_view.setAttribute("src", "http://www.uniqueschoolapp.ie/PolymerWebSite/images/calendar_image.png"); image_view.setAttribute("id", "com_uniqueschoolapp_ie_calendar_image_view"); com_uniqueschoolapp_ie_calendar_icon_container.appendChild(image_view); var com_uniqueschoolapp_ie_month_text = document.createElement('div'); com_uniqueschoolapp_ie_month_text.setAttribute("id", "com_uniqueschoolapp_ie_month_text"); com_uniqueschoolapp_ie_month_text.innerHTML=getMonth(start_date); com_uniqueschoolapp_ie_calendar_icon_container.appendChild(com_uniqueschoolapp_ie_month_text); var com_uniqueschoolapp_ie_date_text = document.createElement('div'); com_uniqueschoolapp_ie_date_text.setAttribute("id", "com_uniqueschoolapp_ie_date_text"); com_uniqueschoolapp_ie_date_text.innerHTML=formateDay(start_date); com_uniqueschoolapp_ie_calendar_icon_container.appendChild(com_uniqueschoolapp_ie_date_text); com_uniqueschoolapp_ie_calendar_image_container_div.appendChild(com_uniqueschoolapp_ie_calendar_icon_container); var div_headline = document.createElement('div'); div_headline.setAttribute("id", "com_uniqueschoolapp_ie_calendar_caption"); div_headline.style.color=title_color; div_headline.innerHTML = headline; var com_uniqueschoolapp_ie_calendar_subtitle = document.createElement('div'); com_uniqueschoolapp_ie_calendar_subtitle.setAttribute("id", "com_uniqueschoolapp_ie_calendar_subtitle"); com_uniqueschoolapp_ie_calendar_subtitle.style.color=date_color; com_uniqueschoolapp_ie_calendar_subtitle.innerHTML = calculateDate(start_date, start_time, end_date, end_time); var com_uniqueschoolapp_ie_calendar_text_container = document.createElement('div'); com_uniqueschoolapp_ie_calendar_text_container.setAttribute("id", "com_uniqueschoolapp_ie_calendar_text_container"); com_uniqueschoolapp_ie_calendar_text_container.appendChild(div_headline); com_uniqueschoolapp_ie_calendar_text_container.appendChild(com_uniqueschoolapp_ie_calendar_subtitle); var com_uniqueschoolapp_ie_calendar_row = document.createElement('div'); com_uniqueschoolapp_ie_calendar_row.setAttribute("id", "com_uniqueschoolapp_ie_calendar_row"); com_uniqueschoolapp_ie_calendar_row.style.backgroundColor=card_background_color; com_uniqueschoolapp_ie_calendar_row.appendChild(com_uniqueschoolapp_ie_calendar_image_container_div); com_uniqueschoolapp_ie_calendar_row.appendChild(com_uniqueschoolapp_ie_calendar_text_container); var com_uniqueschoolapp_ie_calendar_container = document.getElementById("com_uniqueschoolapp_ie_calendar_container"); com_uniqueschoolapp_ie_calendar_container.appendChild(com_uniqueschoolapp_ie_calendar_row); } } }; xhttp.open("GET", "https://api.uniqueschoolapp.ie/feeds/calendar?idschool=" + school_id + "&limit=" + limit, true); xhttp.send(); }