');
}
}
// Set onClick handler for clicking a date
curr_date.click({events: events, month: months[month], day:day}, date_click);
row.append(curr_date);
}
}
// Append the last row and set the current year
calendar_days.append(row);
$(".year").text(year);
}
// Get the number of days in a given month/year
function days_in_month(month, year) {
var monthStart = new Date(year, month, 1);
var monthEnd = new Date(year, month + 1, 1);
return (monthEnd - monthStart) / (1000 * 60 * 60 * 24);
}
// Event handler for when a date is clicked
function date_click(event) {
var $container = $("html,body");
var $scrollTo = $('.events-container');
// $container.animate({scrollTop: $scrollTo.offset().top - $container.offset().top + $container.scrollTop(), scrollLeft: 0},3000);
$container.animate({scrollTop: $scrollTo.offset().top, scrollLeft: 0},500);
$(".events-container").show(250);
$(".active-date").removeClass("active-date");
$(this).addClass("active-date");
//show_events(event.data.events, event.data.month, event.data.day);
};
// Event handler for when a month is clicked
function month_click(event) {
$(".events-container").show(250);
$("#dialog").hide(250);
var date = event.data.date;
$(".active-month").removeClass("active-month");
$(this).addClass("active-month");
var new_month = $(".month").index(this);
var year = date.getFullYear();
date.setMonth(new_month);
fetch_more_events(year, new_month, event);
init_calendar(date);
}
// Event handler for when the year right-button is clicked
function next_year(event) {
$("#dialog").hide(250);
var date = event.data.date;
var new_year = date.getFullYear()+1;
$("year").html(new_year);
date.setFullYear(new_year);
var new_year = date.getFullYear();
var new_month = date.getMonth()+1;
fetch_more_events(new_year, new_month, event);
init_calendar(date);
}
// Event handler for when the year left-button is clicked
function prev_year(event) {
$("#dialog").hide(250);
var date = event.data.date;
var new_year = date.getFullYear()-1;
$("year").html(new_year);
date.setFullYear(new_year);
var new_year = date.getFullYear();
var new_month = date.getMonth()+1;
fetch_more_events(new_year, new_month, event);
init_calendar(date);
}
// Event handler for clicking the new event button
function new_event(event) {
// if a date isn't selected then do nothing
if($(".active-date").length===0)
return;
// remove red error input on click
$("input").click(function(){
$(this).removeClass("error-input");
})
// empty inputs and hide events
$("#dialog input[type=text]").val('');
$("#dialog input[type=number]").val('');
$(".events-container").hide(250);
$("#dialog").show(250);
// Event handler for cancel button
$("#cancel-button").click(function() {
$("#name").removeClass("error-input");
$("#count").removeClass("error-input");
$("#dialog").hide(250);
$(".events-container").show(250);
});
// Event handler for ok button
$("#ok-button").unbind().click({date: event.data.date}, function() {
var date = event.data.date;
var name = $("#name").val().trim();
var count = parseInt($("#count").val().trim());
var day = parseInt($(".active-date").html());
// Basic form validation
if(name.length === 0) {
$("#name").addClass("error-input");
}
else if(isNaN(count)) {
$("#count").addClass("error-input");
}
else {
$("#dialog").hide(250);
console.log("new event");
/*new_event_json(name, count, date, day);*/
date.setDate(day);
init_calendar(date);
}
});
}
// Display all events of the selected date in card views
function show_events(events, month, day) {
// Clear the dates container
$(".events-container").empty();
$(".events-container").show(250);
console.log(event_data["events"]);
// If there are no events for this date, notify the user
if(events.length===0) {
var event_card = "
There are no events planned for "+month+" "+day+".
";
$(".events-container").append(event_card);
}
else {
// Go through and add each event as a card to the events container
for(var i=0; i
Minutes");
}
}
}
}
else if(events[i]['minutes_format'] == "Text")
{
var minutes = events[i]['minutes_text'];
}
if(events[i]['agenda_format'] == "Pdf")
{
var agendaspdffiles = events[i]['agenda_pdf'];
if(agendaspdffiles)
{
var agendasfilescount = agendaspdffiles.length;
for (var agcount = 0; agcount < agendasfilescount; agcount++)
{
agenda = agenda.concat(" Agendas ");
}
}
}
else if(events[i]['agenda_format'] == "Text")
{
var agenda = events[i]['agenda_text'];
}
else if(events[i]['agenda_format'] == "None")
{
var agenda = "No Agendas Set";
}
}
}
}
// Checks if a specific date has any events
function check_events(day, month, year) {
var events = [];
for(var i=0; i