/*
bootstrap_calendar by bic.cat (http://bic.cat) & xero (http://xero.nu)
https://github.com/xero/bootstrap_calendar
released open source under the Apache License
*/
$.fn.calendar = function(options) {
var args = $.extend({}, $.fn.calendar.defaults, options);
this.each(function(){
var calendar;
var lblDaysMonth;
var lblTextMonth = $('
');
var calendar_id = "cal_" + Math.floor(Math.random()*99999).toString(36);
var events = args.events;
var days;
if ( typeof args.days != "undefined" )
days = args.days;
else
days = ["S", "M", "T", "W", "T", "F", "S"];
var months;
if ( typeof args.months != "undefined" )
months = args.months;
else
months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var selectedMonths;
if ( typeof args.selectedMonths != "undefined" )
selectedMonths = args.selectedMonths;
else
selectedMonths = months;
var selectedMonthsNumbers;
if (typeof args.selectedMonthsNumbers != "undefined")
selectedMonthsNumbers = args.selectedMonthsNumbers;
else
selectedMonthsNumbers = ["01","02","03","04","05","06","07","08","09","10","11","12"];
var startDate;
if (typeof args.startDate != "undefined")
startDate = args.startDate;
else
startDate = "04";
var startMonth;
if (typeof args.startMonth != "undefined")
startMonth = args.startMonth;
else
startMonth = "04";
var startYear;
if (typeof args.startYear != "undefined")
startYear = args.startYear;
else
startYear = "2013";
var show_days;
if ( typeof args.show_days != "undefined" )
show_days = args.show_days;
else
show_days = true;
var popover_options;
if ( args.popover_options != "undefined" )
popover_options = args.popover_options;
else
popover_options = {placement: 'top'};
var tooltip_options;
if ( typeof args.tooltip_options != "undefined" )
tooltip_options = args.tooltip_options;
else
tooltip_options = {placement: 'top'};
var req_ajax;
if ( typeof args.req_ajax != "undefined" )
req_ajax = args.req_ajax;
else
req_ajax = false;
var elem = $(this);
showCalendar();
/*** functions ***/
//display
function showCalendar(){
//days of month label
lblDaysMonth = $('
');
list_week();
//date calculation object
var dateObj = new Date();
//check for date input
//var dateText = elem.val();
var dateText = startDate+"/"+startMonth+"/"+startYear;
if (dateText!= ""){
if (validateDate(dateText)){
var dateTextArray = dateText.split("/");
//two digit years
if(dateTextArray[2].length == 2){
if (dateTextArray[2].charAt(0)=="0"){
dateTextArray[2] = dateTextArray[2].substring(1);
}
dateTextArray[2] = parseInt(dateTextArray[2]);
if (dateTextArray[2] < 50)
dateTextArray[2] += 2000;
}
dateObj = new Date(dateTextArray[2], dateTextArray[1]-1, dateTextArray[0])
}
}
//current month & year
var month = dateObj.getMonth();
var year = dateObj.getFullYear();
showDaysOfMonth(month, year);
//next/previous month controls
/*
var btnNextMonth = $('