Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- get_eventnum = function(day:Date):Number
- {
- var num_events:Number = 0;
- var week_first_day:Number = day.getDate() - days[day.getDay()];
- var cur_week = new Date(day.getFullYear(), day.getMonth(), week_first_day);
- var week_date:Number = cur_week.getDate();
- var week_month:Number = cur_week.getMonth() + 1;
- var week_year:Number = cur_week.getFullYear();
- var ms__current_day:Number = day.getTime();
- var today_date:Number = day.getDate();
- var today_month:Number = day.getMonth() + 1;
- var today_year:Number = day.getFullYear();
- for (var i = 0; i < events.length; i++)
- {
- var event_date_from_arr:Array = events[i].date_from.split("-");
- var event_date_to_arr:Array = events[i].date_to.split("-");
- var event_date_from:Date;
- var event_date_to:Date;
- switch (events[i].reoccurrence)
- {
- case 0:
- event_date_from = new Date(Number(event_date_from_arr[0]), Number(event_date_from_arr[1]) - 1, Number(event_date_from_arr[2]), 0, 0, 0, 0);
- event_date_to = new Date(Number(event_date_to_arr[0]), Number(event_date_to_arr[1]) - 1, Number(event_date_to_arr[2]), 23, 59, 59, 0);
- break;
- case 1:
- var event_date_from_date:Number;
- var event_date_from_month:Number;
- var event_date_from_year:Number;
- if (today_date < Number(event_date_from_arr[2]) && (today_month <= Number(event_date_from_arr[1])) && (today_year <= Number(event_date_from_arr[0])))
- {
- event_date_from_date = Number(event_date_from_arr[2]);
- event_date_from_month = Number(event_date_from_arr[1]);
- event_date_from_year = Number(event_date_from_arr[0]);
- }
- else
- {
- event_date_from_date = today_date;
- event_date_from_month = today_month;
- event_date_from_year = today_year;
- }
- event_date_from = new Date(event_date_from_year, event_date_from_month - 1, event_date_from_date, 0, 0, 0, 0);
- event_date_to = new Date(event_date_from_year + (Number(event_date_to_arr[0]) - Number(event_date_from_arr[0])), event_date_from_month - 1 + (Number(event_date_to_arr[1]) - Number(event_date_from_arr[1])), event_date_from_date + (Number(event_date_to_arr[2]) - Number(event_date_from_arr[2])), 23, 59, 59, 0);
- break;
- case 2:
- var event_date_from_date:Number;
- var event_date_from_month:Number;
- var event_date_from_year:Number;
- var event_date_from_tmp:Date = new Date(Number(event_date_from_arr[0]), Number(event_date_from_arr[1]) - 1, Number(event_date_from_arr[2]), 0, 0, 0, 0);
- var event_day:Number = event_date_from_tmp.getDay();
- if ((today_date < Number(event_date_from_arr[2]) && (today_month <= Number(event_date_from_arr[1])) && (today_year <= Number(event_date_from_arr[0]))) || ((today_month < Number(event_date_from_arr[1])) && (today_year <= Number(event_date_from_arr[0]))) || (today_year < Number(event_date_from_arr[0])))
- {
- event_date_from_date = Number(event_date_from_arr[2]);
- event_date_from_month = Number(event_date_from_arr[1]);
- event_date_from_year = Number(event_date_from_arr[0]);
- }
- else
- {
- event_date_from_date = week_date + days[event_day];
- event_date_from_month = week_month;
- event_date_from_year = week_year;
- }
- event_date_from = new Date(event_date_from_year, event_date_from_month - 1, event_date_from_date, 0, 0, 0, 0);
- event_date_to = new Date(event_date_from_year + (Number(event_date_to_arr[0]) - Number(event_date_from_arr[0])), event_date_from_month - 1 + (Number(event_date_to_arr[1]) - Number(event_date_from_arr[1])), event_date_from_date + (Number(event_date_to_arr[2]) - Number(event_date_from_arr[2])), 23, 59, 59, 0);
- break;
- case 3:
- var event_date_from_date:Number;
- var event_date_from_month:Number;
- var event_date_from_year:Number;
- if ((today_month < Number(event_date_from_arr[1])) && (today_year <= Number(event_date_from_arr[0])))
- {
- event_date_from_date = Number(event_date_from_arr[2]);
- event_date_from_month = Number(event_date_from_arr[1]);
- event_date_from_year = Number(event_date_from_arr[0]);
- }
- else
- {
- event_date_from_date = Number(event_date_from_arr[2]);
- event_date_from_month = today_month;
- event_date_from_year = today_year;
- }
- event_date_from = new Date(event_date_from_year, event_date_from_month - 1, event_date_from_date, 0, 0, 0, 0);
- event_date_to = new Date(event_date_from_year + (Number(event_date_to_arr[0]) - Number(event_date_from_arr[0])), event_date_from_month - 1 + (Number(event_date_to_arr[1]) - Number(event_date_from_arr[1])), event_date_from_date + (Number(event_date_to_arr[2]) - Number(event_date_from_arr[2])), 23, 59, 59, 0);
- break;
- case 4:
- var event_date_from_date:Number;
- var event_date_from_month:Number;
- var event_date_from_year:Number;
- if (today_year < Number(event_date_from_arr[0]))
- {
- event_date_from_date = Number(event_date_from_arr[2]);
- event_date_from_month = Number(event_date_from_arr[1]);
- event_date_from_year = Number(event_date_from_arr[0]);
- }
- else
- {
- event_date_from_date = Number(event_date_from_arr[2]);
- event_date_from_month = Number(event_date_from_arr[1]);
- event_date_from_year = today_year;
- }
- event_date_from = new Date(event_date_from_year, event_date_from_month - 1, event_date_from_date, 0, 0, 0, 0);
- event_date_to = new Date(event_date_from_year + (Number(event_date_to_arr[0]) - Number(event_date_from_arr[0])), event_date_from_month - 1 + (Number(event_date_to_arr[1]) - Number(event_date_from_arr[1])), event_date_from_date + (Number(event_date_to_arr[2]) - Number(event_date_from_arr[2])), 23, 59, 59, 0);
- break;
- }
- var ms__event_date_from:Number = event_date_from.getTime();
- var ms__event_date_to:Number = event_date_to.getTime();
- if ((ms__current_day < ms__event_date_from) || (ms__current_day > ms__event_date_to))
- continue;
- num_events++;
- }
- return num_events;
- }
Add Comment
Please, Sign In to add comment