$(document).ready(function(){
	if($.cookie('dateSelected') && $.cookie('hourSelected')){
		setDateSelected($.cookie('hourSelected'),$.cookie('dateSelected'),1);
	}
	else{
		$('div#proceedButton').hide();
	}
	drawCallendarConstruct("callendarContainerFirst",false,0); // rysowanie pierwszego kalendarza
	drawCallendarConstruct("callendarContainerSecond",true,1); // rysowanie drugiego kalendarza
});

//pobranie aktualnej daty
var now = new Date() 
var nowMonth = now.getMonth();
var nowYear  = now.getFullYear();
var nowDay  = now.getDate();

function drawCallendarConstruct(sHandleId,bSwitches,iMonthOffset){
	//metoda generująca wygląd szkieletu kalendarza, korzysta z zewnętrznych styli css
	//sHandleId - unikalny id dla div nadrzednego dla kalendarza - na potrzeby kilku kalendarzy na stronie
	//bSwitches - true/false - włączanie nawigacji dla kalendarza
	//iMonthOffset - przesuniećie miesiąca na następny o X - !!! Nie zabezpieczone przed przestapieniem roku - naprawic to !!!!
	var sCallendarConstructView = '<div class="callendarContainer">';
	sCallendarConstructView +='<table class="callendarNavig">';
	if(bSwitches == true){//rysowanie nawigacji
		sCallendarConstructView +='<tr><th class="cNavLeftYear"><a class="yearDown" onclick="callendarNavigChange(this,\'yearDown\',\''+sHandleId+'\'); return false;" href="#">&#60;</a></th><th class="cNavLeftMonth"><a class="monthDown"onclick="callendarNavigChange(this,\'monthDown\',\''+sHandleId+'\'); return false;" href="#">&#171;</a></th><th class="cNavCenter"></th><th class="cNavRightMonth"><a class="monthUp" onclick="callendarNavigChange(this,\'monthUp\',\''+sHandleId+'\'); return false;" href="#">&#187;</a></th><th class="cNavRightYear"><a class="yearUp" onclick="callendarNavigChange(this,\'yearUp\',\''+sHandleId+'\'); return false;" href="#">&#62;</a></th></tr>';
	}
	
	else{
		sCallendarConstructView +='<tr><th class="cNavLeftYear"></th><th class="cNavLeftMonth"></th><th class="cNavCenter"></th><th class="cNavRightMonth"></th><th class="cNavRightYear"></th></tr>';
	}
	sCallendarConstructView +='</table>';
	sCallendarConstructView +='<div class="dayMonthContainer"></div>';
	sCallendarConstructView +='</div>';
	$('#'+sHandleId).html(sCallendarConstructView);
	
	//div dla dni miesiaca
	//generowanie informacji o miesiacu i roku
	
	// sprawdzam jaka data jest wybrana przez usera. jezli brak daty, rysujemy kalendarz standardowo (1 kal - aktualny, 2 kal nastepny miesiac)
	if($.cookie('dateSelected')){
		var dateItem = $.cookie('dateSelected');
		var tempDate = dateItem.split("-");
		var tempYear = tempDate[0];
		var tempMonth = convertTwoPosition(parseInt(tempDate[1]-1));
	}
	if($.cookie('dateSelected') && iMonthOffset>0 && !(nowYear==tempYear && nowMonth==tempMonth)){
			setCallendarToSelectedDate(sHandleId,($.cookie('dateSelected')));
		}
		
		else{
			setCallendarToNowDate(sHandleId,iMonthOffset);
		}
}

function drawCallendarTitle(sHandleId,iTitleMonth, iTitleYear){
	var monthName = new Array("January", "February", "March", "April", "May", "June", "July","August","September","October","November","December");
	var callendarTitle=monthName[iTitleMonth]+ " " + iTitleYear;
	$('#'+sHandleId+' th.cNavCenter').html(callendarTitle);
}

var clickableNavig = true; //wylacza na czas zaaldowania z bazy mozliwosc zmiany miesiaca

function drawCallendarMonthAndYear(sHandleId,iMonth,iYear){

	//metoda generująca zawartość kalendarza dla wybranego roku i miesiąca 
	//month - miesiąc, jaki ma być wygenerowany
	//rok - rok, jaki ma być wygenerowany
	//calId - unikalny id kalendarza, obsługa kilku kalendarzy na stronie
	clickableNavig = false;
	var leapFeb;
	iMonth = parseInt(iMonth);
	iYear = parseInt(iYear);
	if(iYear%4==0){
		leapFeb = parseInt(29);
	}
	else leapFeb = 28;
	
	var countDayMonth = new Array(31,leapFeb,31,30,31,30,31,31,30,31,30,31);//ilosc dni w danym miesiacu
	
	//sprawdzanie dostepnych lub niedostepnych dni
	
	var aFullBooked = getBookedHourByMonth(iMonth,iYear);
	//var aFullBooked = Array('2009-12-01','2009-12-02','2009-12-03','2009-12-04','2009-12-05','2009-12-06', '2009-08-01','2009-08-02','2009-08-15');
	//var aDisabledDay = Array('2009-12-25','2009-12-26','2009-12-27','2009-12-28','2009-12-29','2009-12-11', '2009-09-14', '2009-10-01', '2009-10-01', '2009-10-01');
	var aDisabledDay = getDisabledDays(iMonth,iYear);
	//Napisac funkcje pobierające listę zabookowanych oraz wpełni zablokowanych dni
	
	
	//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	
	
	//sprawdzam 1 dzien miesiaca z danego roku
	var firstOfMonth = new Date (iYear, iMonth, 1);
	var startingPos = firstOfMonth.getDay();
	
	var dayName = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
	var viewCallendar = '<table class="datePicker">';
	viewCallendar += "<tr><th>"+dayName[0]+"</th><th>"+dayName[1]+"</th><th>"+dayName[2]+"</th><th>"+dayName[3]+"</th><th>"+dayName[4]+"</th><th>"+dayName[5]+"</th><th>"+dayName[6]+"</th></tr>";
	
	
	$('#'+sHandleId+' div.callendarContainer div.dayWeekTitle').html(viewCallendar);
	viewCallendar += '<tr>';
	for(iCleanDay = 1;iCleanDay<=startingPos;iCleanDay++){//ofset dla dni miesiaca
		viewCallendar += "<td>&nbsp;</td>";
	}
	
	for(iDay = 1;iDay <= countDayMonth[iMonth]; iDay++){
		weekDay = (iDay-1+startingPos)%7;
		
		if(iYear<nowYear){//blokowanie młodszych lat
			viewCallendar += '<td>' + iDay + '</td>';
		}
		
		else{
				if(iYear==nowYear && iMonth == nowMonth && iDay<nowDay){
					viewCallendar += '<td>' + iDay + '</td>';
				}
				else{
					sDateMaker = iYear+'-'+convertTwoPosition(parseInt(iMonth+1))+'-'+convertTwoPosition(parseInt(iDay));
					if(in_array(aDisabledDay,sDateMaker)){
						viewCallendar += '<td>' + iDay + '</td>';
					}
					else{
						if(in_array(aFullBooked,sDateMaker)){
							if($.cookie('dateSelected')!= iYear+'-'+parseInt(iMonth+1)+'-'+iDay)
							{
								viewCallendar += '<td class="fullBooked"><div class="bookedText">' + iDay + '<div class="bookedImage"><img src="images/index/full_booked.gif" alt="" /></div></div></td>';
								var selClass='';
							}
							else{
								var selClass='dateSelected';
								if(weekDay == 0){
									viewCallendar += '<td><div class="dayContainer"><a href="#" onclick="showPopup(this,\''+iYear+'-'+parseInt(iMonth+1)+'-'+iDay+'\',\'popSunday\',\''+sHandleId+'\'); return false;" id="'+iYear+"-"+parseInt(iMonth+1)+'-'+iDay+'" class="'+selClass+'">' + iDay + '</a><div class="popup hide"></div></div></td>';
								}
								else{
									if(weekDay == 6){
										viewCallendar += '<td><div class="dayContainer"><a href="#" onclick="showPopup(this,\''+iYear+'-'+parseInt(iMonth+1)+'-'+iDay+'\',\'popSaturday\',\''+sHandleId+'\'); return false;" id="'+iYear+"-"+parseInt(iMonth+1)+'-'+iDay+'" class="'+selClass+'">' + iDay + '</a><div class="popup hide"></div></div></td>';
									}
									
									else{
										var sCheckSpecialDay = iYear+'-'+parseInt(iMonth+1)+'-'+iDay;
										if(sCheckSpecialDay=='2010-5-31' || sCheckSpecialDay=='2010-5-31' ||sCheckSpecialDay=='2010-8-30'){
											viewCallendar += '<td><div class="dayContainer"><a href="#" onclick="showPopup(this,\''+iYear+'-'+parseInt(iMonth+1)+'-'+iDay+'\',\'popSunday\',\''+sHandleId+'\'); return false;" id="'+iYear+"-"+parseInt(iMonth+1)+'-'+iDay+'" class="'+selClass+'">' + iDay + '</a><div class="popup hide"></div></div></td>';
										}
										else{
											viewCallendar += '<td><div class="dayContainer"><a href="#" onclick="showPopup(this,\''+iYear+'-'+parseInt(iMonth+1)+'-'+iDay+'\',\'popWeekday\',\''+sHandleId+'\'); return false;" id="'+iYear+"-"+parseInt(iMonth+1)+'-'+iDay+'" class="'+selClass+'">' + iDay + '</a><div class="popup hide"></div></div></td>';
										}
									}
								}
							}
						}
						else{
							if($.cookie('dateSelected')== iYear+'-'+parseInt(iMonth+1)+'-'+iDay){
								var selClass='dateSelected';
							}
							else{
								var selClass='';
							}
							
							if(weekDay == 0){
								viewCallendar += '<td><div class="dayContainer"><a href="#" onclick="showPopup(this,\''+iYear+'-'+parseInt(iMonth+1)+'-'+iDay+'\',\'popSunday\',\''+sHandleId+'\'); return false;" id="'+iYear+"-"+parseInt(iMonth+1)+'-'+iDay+'" class="'+selClass+'">' + iDay + '</a><div class="popup hide"></div></div></td>';
							}
							else{
								if(weekDay == 6){
									viewCallendar += '<td><div class="dayContainer"><a href="#" onclick="showPopup(this,\''+iYear+'-'+parseInt(iMonth+1)+'-'+iDay+'\',\'popSaturday\',\''+sHandleId+'\'); return false;" id="'+iYear+"-"+parseInt(iMonth+1)+'-'+iDay+'" class="'+selClass+'">' + iDay + '</a><div class="popup hide"></div></div></td>';
								}
								
								else{
									var sCheckSpecialDay = iYear+'-'+parseInt(iMonth+1)+'-'+iDay;
									if(sCheckSpecialDay=='2010-5-31' || sCheckSpecialDay=='2010-5-3' ||sCheckSpecialDay=='2010-8-30'){
										viewCallendar += '<td><div class="dayContainer"><a href="#" onclick="showPopup(this,\''+iYear+'-'+parseInt(iMonth+1)+'-'+iDay+'\',\'popSunday\',\''+sHandleId+'\'); return false;" id="'+iYear+"-"+parseInt(iMonth+1)+'-'+iDay+'" class="'+selClass+'">' + iDay + '</a><div class="popup hide"></div></div></td>';
									}
									else{
										viewCallendar += '<td><div class="dayContainer"><a href="#" onclick="showPopup(this,\''+iYear+'-'+parseInt(iMonth+1)+'-'+iDay+'\',\'popWeekday\',\''+sHandleId+'\'); return false;" id="'+iYear+"-"+parseInt(iMonth+1)+'-'+iDay+'" class="'+selClass+'">' + iDay + '</a><div class="popup hide"></div></div></td>';
									}
								}
							}
						}
					}
				}
			}
		if((iDay+startingPos)%7==0) {viewCallendar = viewCallendar + "</tr>"};
	}
	viewCallendar += '</table>';
	$('#'+sHandleId+' .callendarContainer .dayMonthContainer').html(viewCallendar);
	clickableNavig = true;
}

function setCallendarToNowDate(sHandleId,iMonthOffset){
	//aktualne ustawienia daty
	//jeżeli miesiąc + offset bedzie wiekszy od 11, rok zwiekaszmy o 1 oraz miesiac liczymy od nowa + roznica - 1 (by zaczac od 0 - styczen)
	var iMonthFixed, iYearFixed;
	
	if((parseInt(nowMonth)+parseInt(iMonthOffset))>11){
		iMonthFixed = (parseInt(nowMonth)+parseInt(iMonthOffset)) - 12;
		iYearFixed = parseInt(nowYear)+1; 
	}
	else{
		iMonthFixed = nowMonth + iMonthOffset;
		iYearFixed = nowYear;
	}
	
	sStartMonth = iMonthFixed;
	sStartYear = iYearFixed;
	drawCallendarTitle(sHandleId,iMonthFixed, iYearFixed);
	drawCallendarMonthAndYear(sHandleId,iMonthFixed, iYearFixed);
	$('#callendarContainerSecond a.yearDown').hide();
	$('#callendarContainerSecond a.monthDown').hide();
}

function setCallendarToSelectedDate(sHandleId,iDate){
	//aktualne ustawienia daty
	//jeżeli miesiąc + offset bedzie wiekszy od 11, rok zwiekaszmy o 1 oraz miesiac liczymy od nowa + roznica - 1 (by zaczac od 0 - styczen)
	
	aDateSlice = iDate.split('-');
	sStartMonth = parseInt(aDateSlice[1]-1);
	sStartYear = parseInt(aDateSlice[0]);
	
	if(nowYear==sStartYear && nowMonth==sStartMonth){
		$('#callendarContainerSecond a.yearDown').hide();
		$('#callendarContainerSecond a.monthDown').hide();
	}
	
	else{
		if(nowYear==sStartYear){
			$('#callendarContainerSecond a.yearDown').hide();
		}
		else{
			$('#callendarContainerSecond a.yearDown').show();
		}
		$('#callendarContainerSecond a.monthDown').show();
	}
	
	drawCallendarTitle(sHandleId,sStartMonth, sStartYear);
	drawCallendarMonthAndYear(sHandleId,sStartMonth, sStartYear);
	
}

var yCounter = 0;
var mCounter = 0;
var sStartMonth;
var sStartYear;

iYearYear = sStartYear+yCounter;
iYearMonth = sStartMonth+mCounter;

function callendarNavigChange(name,action,sHandleId){

	if(clickableNavig == false){
		return;
	}
	
	if(action=='yearUp'){
		++yCounter;
	}
	if(action=='yearDown'){
		--yCounter;
	}
	
	if(action=='monthUp'){
		++mCounter;
	}
	if(action=='monthDown'){
		--mCounter;
	}
	
	iYearYear = sStartYear+yCounter;
	iYearMonth = sStartMonth+mCounter;
	
	if(iYearMonth<0){
		iYearYear=iYearYear-1;
		yCounter = yCounter-1;
		iYearMonth=11;
		
		mCounter = 11 - sStartMonth;
	}
	
	if(iYearMonth>11){
		iYearYear=iYearYear+1;
		yCounter = yCounter+1;
		iYearMonth = 0;
		mCounter = -sStartMonth;
	}
	
	
	if(parseInt(iYearYear)>parseInt(nowYear)){
		$('#callendarContainerSecond a.monthDown').show();
		$('#callendarContainerSecond a.yearDown').show();
	}
	
	if(parseInt(iYearMonth)>parseInt(nowMonth)){
		$('#callendarContainerSecond a.monthDown').show();
		$('#callendarContainerSecond a.yearDown').show();
	}
	
	if(parseInt(iYearYear)<=parseInt(nowYear)){
		$('#callendarContainerSecond a.yearDown').hide();
	}
	
	if((parseInt(iYearYear)<=parseInt(nowYear)) && (parseInt(iYearMonth)<=parseInt(nowMonth+1))){
		$('#callendarContainerSecond a.yearDown').hide();
		$('#callendarContainerSecond a.monthDown').hide();
		sStartMonth = nowMonth;
		mCounter = 1;
		iYearMonth = sStartMonth+mCounter;
	}
	
	
	drawCallendarTitle(sHandleId,iYearMonth,iYearYear);
	drawCallendarMonthAndYear(sHandleId,iYearMonth, iYearYear);
}

//generowanie popupu z godzinami
function showPopup(item,itemId,dayType,callId){
	var monthName = new Array("January", "February", "March", "April", "May", "June", "July","August","September","October","November","December");
	$('div.popup').fadeOut("fast");
	$('div.dayContainer').removeClass('zIndexHigh');
	$('div.dayContainer').addClass('zIndexLow');
	$('div#'+callId+' a#'+itemId).parent().addClass('zIndexHigh'); 
	
	var viewPopupSelHour = '';
	viewPopupSelHour +='<div class="close"><a class="closeThisPopup" href="#"onclick="closePopup();return false;"><img src="images/index/close.gif" alt="" /></a></div>';
	
	 var dateSplit=itemId.split("-");
	 var yearSplit = dateSplit[0];
	 var monthSplit = dateSplit[1];
	 var daySplit = dateSplit[2];
	 
	 viewPopupSelHour +='<h3>'+daySplit+ " "+ monthName[parseInt(monthSplit-1)] +" "+yearSplit+'</h3>';
	
	if(dayType=='popWeekday'){
		var iHourStart = 0;
		var iHourEnd = aWeekDaysHours.length-1;
		var aDayArray = aWeekDaysHours;
	}
	
	if(dayType=='popSaturday'){
		var iHourStart = 0;
		var iHourEnd = aSaturdayDaysHours.length-1;
		var aDayArray = aSaturdayDaysHours;
	}

	if(dayType=='popSunday'){
		var iHourStart = 0;
		var iHourEnd = aSundayDaysHours.length-1;
		var aDayArray = aSundayDaysHours;
	}
	
	viewPopupSelHour+='<table class="popupHourList">';
	
	var aHourChecked = getbBookedHourByDay(itemId);
	for(iI=iHourStart;iI<=iHourEnd;iI++){
		if(in_array(aHourChecked,aDayArray[iI])){
			viewPopupSelHour +='<tr>';
			viewPopupSelHour +='<td class="hour">'+aDayArray[iI]+'</td>';
			viewPopupSelHour +='<td class="separate">-</td>';
			if(($.cookie('dateSelected')== itemId) && ($.cookie('hourSelected')==aDayArray[iI])){
				viewPopupSelHour +='<td class="link"><span class="hourSelected">Chosen by you</span></td>';
			}
			else{
				viewPopupSelHour +='<td class="link">Booked</td>';
			}
			viewPopupSelHour +='</tr>';
		}
		else{
			
			viewPopupSelHour +='<tr>';
			viewPopupSelHour +='<td class="hour">'+aDayArray[iI].replace(":",".")+'</td>';
			viewPopupSelHour +='<td class="separate">-</td>';
			if(($.cookie('dateSelected')== itemId) && ($.cookie('hourSelected')==aDayArray[iI])){
				viewPopupSelHour +='<td class="link"><span class="hourSelected">Chosen by you</span></td>';
			}
			else{
				var hTemp = now.getHours();
				var mTemp = now.getMinutes();
				var tempSplit = aDayArray[iI].split(':');
				var selDate = yearSplit+'-'+convertTwoPosition(monthSplit)+'-'+convertTwoPosition(daySplit);
				var nowDate = nowYear+'-'+convertTwoPosition(parseInt(nowMonth+1))+'-'+convertTwoPosition(nowDay);
				
				var selDateTime = new Date(nowYear, nowMonth, nowDay, tempSplit[0], tempSplit[1]);
				if(selDate==nowDate){
					if(selDateTime<$.datemaker('+30m')){
						viewPopupSelHour +='<td class="link">Booked</td>';
					}
					else{
							viewPopupSelHour +='<td class="link"><a class="clickBooked" href="#" onclick="setDateSelected(\''+aDayArray[iI]+'\',\''+itemId+'\',\'0\');return false;">Please click to book'+'</a></td>';
					}
				}
				else{
					viewPopupSelHour +='<td class="link"><a class="clickBooked" href="#" onclick="setDateSelected(\''+aDayArray[iI]+'\',\''+itemId+'\',\'0\');return false;">Please click to book'+'</a></td>';
				}
			}
			
			viewPopupSelHour +='</tr>';
		}
	}
	
	viewPopupSelHour+='</table>';
	$('div#'+callId+' a#'+itemId+' + div.popup').html(viewPopupSelHour);
	$('div#'+callId+' a#'+itemId+' + div.popup').fadeIn("fast");
	
}

function setDateSelected(sHour,itemId,siteReload){
	
	if(siteReload !=1){
		if($.cookie('disableBooked')){
			var sInfo = 'It is possible to choose dates every '+$.cookie('disableBooked')+' minutes ';
			displayDialog('Booked information.',sInfo);
			return false;
		}
		
		checkSelectedHour(sHour,itemId);
		if(bSelHour){
			var sInfo = 'You cannot choose this date. She already stayed booked! ';
			displayDialog('Booked information.',sInfo);
			return false;
		}	
		
	}
	var monthName = new Array("January", "February", "March", "April", "May", "June", "July","August","September","October","November","December");
	//tutaj zrobic wpisywanie do tymczasowego pliku  - tak aby klient mogl w jakies 15 minut sie zabookować
	var aDateSplit = itemId.split("-");
	var iMonthId = aDateSplit[1];
	var sPrepareToBooked = '';
	var tSelDate = new Date(aDateSplit[0],aDateSplit[1],aDateSplit[2],0,0,0);
	var daySuff = tSelDate.format("S");
	sPrepareToBooked +='You have selected - '+ aDateSplit[2] +daySuff+' '+ monthName[iMonthId-1]+' '+ aDateSplit[0] + '  @ '+ sHour.replace(':','.') +' hrs';
	$('div#yourDateSelected').html(sPrepareToBooked);
	$('div.popup').fadeOut("fast");
	$('a').removeClass('dateSelected');
	$('#'+itemId).addClass('dateSelected');
	
	if(siteReload !=1){
		var sInfo = 'You have 10 minutes for clicking on the button "Book". After this time, you must re-elect the date. Remember. It is possible to choose the date every 10 minutes! ';//dialog zle chodzi pod ie8. pomyslec co z tym fantem zrobic!!!
//		displayDialog('Booked information.',sInfo);
		//setCookies(sHour,itemId,'+10m');
		$.cookie('dateSelected',itemId,{ expires: $.datemaker('+10m') });
		$.cookie('hourSelected',sHour,{ expires: $.datemaker('+10m') });
		$.cookie('disableBooked','10',{ expires: $.datemaker('+10m') });
		setChosed(itemId,sHour);
		drawCallendarConstruct("callendarContainerFirst",false,0); 
		drawCallendarConstruct("callendarContainerSecond",true,1);
	}
	$('div#dateBox').fadeIn();
	
	$('div#proceedButton').show();
}

var bSelHour = false;
function checkSelectedHour(sHourSel,sDaySel){

//sprawdza czy wybrana godzian nei została zabookowana lub tymczasowo wybrana przez kogos innego
	var sLink = baseHref+"index/index/checkselectedhour";
	$.ajax({
		async: false,
	    type: "POST",
	    url: sLink,
	    data: {day_selected: sDaySel,hour_selected: sHourSel},
	    dataType: "json",
	    success: function(json){
		    if(json!=null){
		    	bSelHour = true;
		    }
		    else{
		    	bSelHour = false;
		    }
	    }
	});
	
}

var bBookedHour = false;
function checkBookedHour(sHourSel,sDaySel){

//sprawdza czy wybrana godzian nei została zabookowana lub tymczasowo wybrana przez kogos innego
	var sLink = baseHref+"index/index/checkbookedhour";
	$.ajax({
		async: false,
	    type: "POST",
	    url: sLink,
	    data: {day_selected: sDaySel,hour_selected: sHourSel},
	    dataType: "json",
	    success: function(json){
		    if(json!=null){
		    	bBookedHour = true;
		    }
		    else{
		    	bBookedHour = false;
		    }
		}
	});
	
}

function setChosed(sDaySel,sHourSel){
	var sLink = baseHref+"index/index/setchosed";
	$.ajax({
		async: false,
	    type: "POST",
	    url: sLink,
	    data: {day_selected: sDaySel,hour_selected: sHourSel},
	    dataType: "json",
	    success: function(json){}
	});
	
}

function setBooked(sDaySel,sHourSel){
	var sLink = baseHref+"index/index/setbooked";
	$.ajax({
		async: false,
	    type: "POST",
	    url: sLink,
	    data: {day_selected: sDaySel,hour_selected: sHourSel},
	    dataType: "json",
	    success: function(json){
	    }
	});
	
}

function setAtpayed(sDaySel,sHourSel){
	var sLink = baseHref+"index/index/setatpayed";
	$.ajax({
            async: false,
	    type: "POST",
	    url: sLink,
	    data: {day_selected: sDaySel,hour_selected: sHourSel},
	    dataType: "json",
	    success: function(json){
	    }
	});
	
}

var hourList = Array();
function getbBookedHourByDay(itemId){
	var sLink = baseHref+"index/index/getbookedhourbyday";
	$.ajax({
		async: false,
	    type: "POST",
	    url: sLink,
	    data: {day_selected: itemId},
	    dataType: "json",
	    success: function(json){
	    	if(json){
	    		var hour; //pojedyncza godzina
	    		var hourSlpit;
		    	hourList = Array();
		    	
		    	for (var i = 0; i < json.length; i++) {
		    		hour = json[i].time;
		    		hourSplit = hour.split(':');
		    		hourList[i] = hourSplit[0]+':'+hourSplit[1];
		    	}
		    }
	    	else{
	    		hourList = Array();
	    	}
	    }
	});
	
	return hourList;	
}

// pobranie zablokowanych dni przez adminsitracje w panelu administracyjnym
var dayDisabled = Array();
function getDisabledDays(iMonth,iYear){
	var sLink = baseHref+"index/index/getdisableddays";
	$.ajax({
		async: false,
		type: "POST",
	    url: sLink,
	    data: {month_selected: iMonth+1, year_selected: iYear},
	    dataType: "json",
	    success: function(json){
	    	if(json){
	    		var day; //pojedynczy dzien
		    	dayDisabled = Array();
		    	for (var i = 0; i < json.length; i++) {
		    		day = json[i].disabled_date;
		    		dayDisabled[i] = day; 
		    	}
	    	}
		   
	    	else{
	    		dayDisabled = Array();
	    	}
	    }
	});
	
	return dayDisabled;	
}

//pobiera tymczasowo zabookowane godziny

//pobiera wszystkie zabookowane godziny z kazdego dnai danego miesiąca 
var fullBookedDay = Array();
function getBookedHourByMonth(iMonth,iYear){
	var sLink = baseHref+"index/index/getbookedhourbymohth";
	$.ajax({
		async: false,
		type: "POST",
	    url: sLink,
	    data: {month_selected: iMonth+1, year_selected: iYear},
	    dataType: "json",
	    success: function(json){
	    	if(json){
	    		var aInner = Array();
	    		var hourToSplit;
	    		for (key in json) {
	    			var aInner = json[key];
	    			var aKeyToSPlit = key.split("-");
	    			var iBookedCounter = 0;
	    			for(innerKey in aInner){
	    				var checkFreeTerm = false;
	    				var tempDate = new Date (aKeyToSPlit[0], parseInt(aKeyToSPlit[1]-1), aKeyToSPlit[2]);
	    				var tempDayOfWeek = tempDate.getDay();
	    				var hourToSPlit = aInner[innerKey].split(":");
	    				var aDayArray = Array();
	    				if((tempDayOfWeek == 0)){
	    					var iStartCounter = 0;
	    					var iEndCounter = aSundayDaysHours.length-1;
	    					var aDayArray = aSundayDaysHours;
	    				
	    				} 
	    				if((tempDayOfWeek == 6)){
	    					var iStartCounter = 0;
	    					var iEndCounter = aSaturdayDaysHours.length-1;;
	    					var iHourStart = 0;
    					} 
	    				
	    				if((tempDayOfWeek != 6) && (tempDayOfWeek != 0)){
	    					var iStartCounter = 0;
	    					var iEndCounter = aWeekDaysHours.length-1;
	    					var aDayArray = aWeekDaysHours;
	    				}
	    				
	    				var countStep = parseInt(iEndCounter+1) // sprawdza, liczbe godzin wyswietlanych w popupie
	    				
	    				for (var i = iStartCounter; i<= iEndCounter;i++){
	    					if((aDayArray[i]) == (hourToSPlit[0]+':'+hourToSPlit[1])){
	    						iBookedCounter++;// sumuje ilosc zabookowanych dla danej daty
	    					}
	    				}
	    				
	    				if(iBookedCounter == countStep){
	    					fullBookedDay.unshift(key);
	    				}
	    			}
	    			
	    		}
	    	}
	    	else{
	    		fullBookedDay = Array();
	    	}
	    }
	});
	
	return fullBookedDay;	
}
//funkcje pomocnicze

function in_array(aArray,sItemToSearch) {

	if(aArray.length>0){
		sItemToSearch = sItemToSearch +'';
		for(i=0;i<aArray.length;i++){
			 if(aArray[i]==sItemToSearch){
				 return true;
			 }
		}
	}
	return false;
}

function convertTwoPosition(itemToConvert){
	if(parseInt(itemToConvert)>0 && parseInt(itemToConvert)<=9){
		return  '0'+itemToConvert;
	}
	else{
		return itemToConvert;
	}
	
}

function closePopup(){
	$('div.popup').fadeOut("fast");
}

function clickSubmitBooked(){
	if($.cookie('dateSelected')!='' && $.cookie('hourSelected')!=''){
		bBookedHour = false;
		checkBookedHour($.cookie('hourSelected'),$.cookie('dateSelected'));
		
		if(bBookedHour){
			var sInfo = 'You cannot choose this date. She already stayed booked! ';//dialog zle chodzi pod ie8. pomyslec co z tym fantem zrobic!!!
			displayDialog('Booked information.',sInfo);
			return false;
		}
		
		var monthName = new Array("January", "February", "March", "April", "May", "June", "July","August","September","October","November","December");
		//tutaj zrobic wpisywanie do tymczasowego pliku  - tak aby klient mogl w jakies 15 minut sie zabookować
		var aDateSplit = $.cookie('dateSelected').split("-");
		var iMonthId = aDateSplit[1];
		var sPrepareToBooked = '';
		sPrepareToBooked += aDateSplit[2] +'nd '+ monthName[iMonthId-1]+' '+ aDateSplit[0] + '  @ '+ convertTwoPosition($.cookie('hourSelected')) +'.00 hrs';
		
		// sprawdzić, czy dzien zablokowany, czy zabookowane godziny czy tymczasowo przez kogos innego (zastanowic czy to ma jakis sens)
		$("input#dateBookedContainer").attr("value", $.cookie('dateSelected'));
	    $("input#hourBookedContainer").attr("value", $.cookie('hourSelected'));
	    $("input#dateDescription").attr("value", sPrepareToBooked);
	    $.cookie('dateSelected',$.cookie('dateSelected'),{ expires: $.datemaker('+15m') });
		$.cookie('hourSelected',$.cookie('hourSelected'),{ expires: $.datemaker('+15m') });
	    setBooked($.cookie('dateSelected'),$.cookie('hourSelected'));
	    $.cookie('booked_adder','true',{ expires: $.datemaker('+120m') });
	    $("#bookForm").submit();
	    
	}
	else{
		var sInfo = 'the time passed. Please re-elect the date. ';//dialog zle chodzi pod ie8. pomyslec co z tym fantem zrobic!!!
		displayDialog('Booked information.',sInfo);
		
		$('div#yourDateSelected').html('');
		$('div#proceedButton').hide();
		//$("input#dateBookedContainer").attr("value", $.cookie(''));
	   // $("input#hourBookedContainer").attr("value", $.cookie(''));
	    drawCallendarConstruct("callendarContainerFirst",false,0); // rysowanie pierwszego kalendarza
		drawCallendarConstruct("callendarContainerSecond",true,1); // rysowanie drugiego kalendarza
		$('#callendarContainerSecond a.yearDown').hide();
		$('#callendarContainerSecond a.monthDown').hide();
		
	}
	
	
}

function clickSubmitForm(){
	if($.cookie('dateSelected') && $.cookie('hourSelected')){
		bBookedHour = false;
		checkBookedHour($.cookie('hourSelected'),$.cookie('dateSelected'),'');
		if(bBookedHour){
			var sInfo = 'You cannot choose this date. She already stayed booked! ';
			displayDialog('Booked information.',sInfo);
			return false;
		}
		else{
			$("#dataForm").submit();
		}
	}
	else{
		var sInfo = 'The time passed. Please back and re-elect the date. ';
		displayDialog('Booked information.',sInfo);
	}
	
	
}

function clickConfirmForm(){
	if($.cookie('dateSelected') && $.cookie('hourSelected')){
		bBookedHour = false;
		checkBookedHour($.cookie('hourSelected'),$.cookie('dateSelected'),'');
		if(bBookedHour==true){
			var sInfo = 'You cannot choose this date. She already stayed booked! ';
			displayDialog('Booked information.',sInfo);
			return false;
		}
		else{
			setAtpayed($.cookie('dateSelected'),$.cookie('hourSelected'));
			$('#backToForm').hide(); 
			$("form#payform").submit();
		}
	}
	else{
		var sInfo = 'The time passed. Please back and re-elect the date. ';
		displayDialog('Booked information.',sInfo);
	}
}

function displayDialog(sTitle,sInfo){
	var dialogHTML = '<div id="dialog">';
	dialogHTML+='<h3>'+sTitle+'</h3>';
	dialogHTML += '<p>';
	dialogHTML += sInfo + '</p>';
	dialogHTML += '<p><a href="#" class="doneDialog" onclick="closeDialog(); return false;">OK</a></p>';
	dialogHTML +='</div>';
	$('div#dialogContainer').html(dialogHTML);
	$('div#dialogContainer').removeClass('dNone');
	$('div#dialogBg').fadeOut("dNone");
	$('div.dayContainer').removeClass('zIndexHigh');
	$('div.dayContainer').addClass('zIndexLow');
	$('div.popup').fadeOut("fast");
	$('div#dialogContainer').addClass('zIndexHigh');
	$('div#dialogBg').fadeIn("fast");
	$('div#dialogContainer').fadeIn("fast");

}

function closeDialog(){
	$('div#dialogBg').fadeOut("fast");
	$('div#dialogContainer').fadeOut("fast");
	$('div#dialogContainer').addClass('dNone');
	$('div#dialogBg').fadeOut("dNone");
	
}

