YAHOO.namespace('bp.calendar');

YAHOO.bp.calendar = function() {
	var $D = YAHOO.util.Dom;
	var $E = YAHOO.util.Event;
	var $ = $D.get;

	var theCal;
	var strSelected;
	var bSelectEvent = false;
	
		
	return {
		init : function(e, obj) {
			var dateToday = new Date(); 
			var strToday = (dateToday.getMonth() + 1) + '/' + dateToday.getDate() + '/' + dateToday.getFullYear();

			// My Schedule...
			var oSchedule = $('dataSchedule');
			var strDates = '';
			
			if (oSchedule)
			{
				sSchedule = oSchedule.innerHTML;

				var allPairings = oSchedule.innerHTML.split('|');
//				var allPairings = sSchedule.split('|');

				// ["13377 3 14 05 2007", "13377 3 24 05 2007", "13377 3 31 05 2007"]
				for (var i = 0; i < allPairings.length; i++)
				{ 
					var aPairing = allPairings[i];
					var dataPairing = aPairing.split(' ');
					
					if (dataPairing.length == 5)
					{
						var aDate = new Date (dataPairing[4], dataPairing[3] - 1, dataPairing[2]);

						for (var aDay = 0; aDay < dataPairing[1]; aDay++)
						{
							if (strDates != '')
								strDates += ',';
								
							strDates += (aDate.getMonth() + 1) + '/' + aDate.getDate() + '/' + aDate.getFullYear();
							
							aDate.setDate (aDate.getDate() + 1); 
						}
					}
				} 
			}

			strSelected = strDates;
			
			theCal = new YAHOO.widget.Calendar("bp-calendar",
											   "bp-caltainer",
											   { mindate: strToday, 
											   	 selected: strDates } );
			theCal.selectEvent.subscribe(this.dateSelected, theCal, this);
   			theCal.render();
			
			var oInfo = $('bp-calinfo');
		
			if (oInfo) 
				$D.setStyle (oInfo, 'display', 'block');
			
		},
		dateSelected : function(type, args, obj){
			if  (bSelectEvent)
				return;
				
			bSelectEvent = true;
			
			var dateStr = args[0].toString();
			var dateParts = dateStr.split(',');

			theCal.select(strSelected);
			theCal.render();

			dateStr = dateParts[0] + '-' + dateParts[1] + '-' + dateParts[2];
			YAHOO.bp.popup.showPopup ('?_action=N4&_date=' + dateStr);
			
			bSelectEvent = false;
		}
	};
}();

YAHOO.util.Event.onContentReady('dataSchedule', YAHOO.bp.calendar.init, YAHOO.bp.calendar, true);

