function printEvents() {
	$('body').toggleClass('print-events');
	window.print();
	$('body').toggleClass('print-events');
}
function printCalendar() {
	$('body').toggleClass('shedule');
	window.print();
	$('body').toggleClass('shedule');
}


function update_s_code (id) {
alert('You called correctly function update_s_code("' + id + ');"');


switch (id) {
	case 'submit_reservation':
		//Submit button under Online Reservations popup - ALL INSTANCES
		var s=s_gi(s_account);
	    s.linkTrackVars='events,eVar12'; 
	    s.linkTrackEvents='event6,scOpen';
	    s.events='event6,scOpen';
	    s.eVar12='Hotel Sorella CityCentre';
	    (s.tl(this,'o','Booking Initiated') );
	    break;
	case 'citycentre':
    //Citycentre.com link under CITYCENTRE popup - ALL INSTANCES
		var s=s_gi(s_account);
        s.linkTrackVars='events,eVar12'; 
        s.linkTrackEvents='event7';
        s.events='event7';
        s.eVar12='CityCentre';
        (s.tl(this,'e','Website Referral') );
        break;
	case 'promotion1':
    //Homepage promotion #1 (left, currently "Grand Opening Package")     
        var s=s_gi(s_account);
        s.linkTrackVars='eVar1'; 
        s.eVar1='Homepage Promo 1';
        (s.tl(this,'o','Special Promo Button') ); 
        break;
	case 'promotion2':
    //Homepage promotion #2 (center, currently "Pre-Opening Group Exclusive")
        var s=s_gi(s_account);
        s.linkTrackVars='eVar1'; 
        s.eVar1='Homepage Promo 2';
        (s.tl(this,'o','Special Promo Button') );
        break;
	case 'promotion3':
    //Homepage promotion #3 (right, currently "The Night is Yours with Monnalisa")
        var s=s_gi(s_account);
        s.linkTrackVars='eVar1'; 
        s.eVar1='Homepage Promo 3';
        (s.tl(this,'o','Special Promo Button') );
        break;
    default: alert('Please contact the suppoort to update_s_code("' + id + ');"')    
	}
}



var log = true;
var src = 'images/photos/gallery/';
var smpref = 'sm';
var phpref = 'ph';

function getData(url, cat){

	var result = $.getJSON(url, function(data){

		var imgs = [];

		$.each(data[cat], function(i, val) {
			imgs.push(val);
		});

		initImgs(imgs);

	});


}
/*image gal*/
function initImgs(imgs){

	var div = $("<div/>");

	for(var i=0; i< imgs.length; i++){
		div.append('<a href="'+src+phpref+imgs[i]+'"><img src='+src+smpref+imgs[i]+' alt=""></a>');
	}
	$.when(
		div.galleria({
			data_source: div,
			transitionSpeed: 300,
			queue: false,
			preload: 3,
			imageCrop: true,
			imagePan: true,
			width:900,
			height: 500
		})
	).then(function(){
		$.fancybox({
			padding: 0,
			autoDimensions: false,
			centerOnScroll: true,
			titleShow: false,
			width: 900,
			height: 500,
			overlayColor: '#222',
			content: div,
			onClosed: function(){
				div.empty();
			}
		});

	});
	
}




// Proper e-mail check script
function emailCheck( emailFormField, showerror ) {

	var txt=emailFormField.value;  
	var error = "";
	
	var emailRe = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.(\w{2}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/
	var phoneRe = /^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,5})|(\(?\d{2,6}\)?))(-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/
                  
	if (!(emailRe.test(txt))) { 
		   error = "Please enter a valid email address.\n";
	}
	
	var illegalChars= /[\(\)\<\>\,\;\:\\\/\"\[\]]/
	if (txt.match(illegalChars)) {
	   error += "The email address contains illegal characters.\n";
	}
	
	if( error.length > 0 ) {
		if(showerror) {
		    emailFormField.focus();
			alert(error);	
		}
		return false;
	}
	return true;  
}




$(function() {	
	
	if ($('#fx img').length > 1) {
		$('#fx').nivoSlider({
			effect: 'fade',
			slices: 1,
			animSpeed: 150,
			pauseTime: 5000,
			startSlide: 0,
			directionNav: true,
			directionNavHide: false,
			controlNav: true,
			controlNavThumbs: false,
			keyboardNav: false,
			pauseOnHover: true,
			manualAdvance: false,
			captionOpacity: 0.95
		});
	} else {		
		var title = $('#fx img').attr('title');

		if (typeof title !== 'undefined' && title !== false && title != '') {
			$('#fx').append($('<div class="nivo-caption"></div>').html(processCaptionText(title)));
			$('#fx img').removeAttr('title');
		}
	}

	// $('div#fx').innerfade({'onStartedProcessing': onStartedProcessing,'onFinishedProcessing': onFinishedProcessing});
	$("#ping").after($('<input>').attr({'name':'pong','value':$("#ping").val(),'class':'hide'}));
	
	$("a.gal").bind('click', function(event){
		event.preventDefault();
			var categ = $(this).attr('rev');
				getData('assets/gallery/gallery.json', categ);
	});				
		
	if(jQuery.browser.msie && jQuery.browser.version<7) {
		$('.main-menu li').hover( 
			function () { $(this).addClass('hover'); }, 
			function () { $(this).removeClass('hover'); }
		);
	}  

	Date.format = 'mm/dd/yyyy';
	Date.firstDayOfWeek = 0;	
	
	$('.date-pick').datePicker();
	
	// $('#checkin,#checkout').attr('readonly', 'readonly');
	
	$('#checkin').click(function() {
		$('.booknow-form').hide();
		$('.calendar-in').show();
		$('.book-title').html('Check-in Date');
	});
						
	$('#checkout').click(function() {
		$('.booknow-form').hide();
		$('.calendar-out').show();
		$('.book-title').html('Check-out Date');
	});
						
	$('.calendar-in, .calendar-out').datePicker({
    	createButton: false,
showYearNavigation: false,
        inline: true
	}).bind('click', function() {
		updateSelects(this, $(this).dpGetSelected()[0]);
		return false;
		}).bind('dateSelected', function(e, selectedDate, $td, state) {
			updateSelects(this, selectedDate);
			$(this).hide();
			$('.booknow-form').show();
			$('.book-title').html('Online Reservations');
		});
	var today = new Date();
	$('#checkin').val(today.asString());
	$('#checkout').val(today.addDays(1).asString());
	
    $('.calendar-in').dpDisplay().hide();
	$('.calendar-out').dpSetStartDate(today.addDays(-1).asString()).dpDisplay().hide();
	var updateSelects = function (e, selectedDate){
    	if(!selectedDate) return true;
		var t = new Date(selectedDate);
		
		if ($(e).hasClass('calendar-in')) {
			$('#checkin').val(t.asString());
			var dt = new Date(t);
            var edate = new Date($('#checkout').val());
                                
			$('.calendar-out').dpClose().dpSetStartDate(dt.addDays(1).asString());
                                
			// set end date +2 days by default, if needed
			if(dt-edate>=0) {
            	$('#checkout').val(t.addDays(1).asString());
                $('.calendar-out').dpSetSelected(t.asString()); 
            }
            $('.calendar-out').dpDisplay().hide();
                                
		} else if ($(e).hasClass('calendar-out')) {
			$('#checkout').val(t.asString());
		} 
	}
	
						

	$("#ajaxloading").ajaxStart(function(){
		$(this).show();
    }).ajaxComplete(function(){
		$(this).hide();
	});
	
	var showEventsPerMonth = function(mo,yr) {
		if(ajaxevents == undefined) return;
		if($("#jqCalendarResults1").length == 0) return;
		var txt = '';
		var sevents = new Array();
		var showitems = new Array();
					
		$.ajax({
			type: 'POST',
            url: calpath+"ajax.php",
            data: {m:mo, y:yr},
            cache: true,
            async: true,
            success: function(events){
            	$("#jqCalendarResults1").html(events);
            }
		});
		return;
				    
		jQuery.each(ajaxevents, function(index, item){
			d = index;
			// for (var d in ajaxevents) {
			if(d.substring(0,2) == mo && d.substring(6,10) == yr) {
				var xk = item;
				// var xk = ajaxevents[d];
				
				// for(i=0;i<item.length ;i++) {
 				for(i=0;i< ajaxevents[d].length;i++) {
					if(!sevents[xk[i]]) {
				    	sevents[xk[i]] = 1;
				        showitems.push(ajaxitems[xk[i]]);
				    }
			    }
			}
		});
				
		var lnd = 0;
		jQuery.each(showitems, function(index, item){	d = index;					
		// for (var d in showitems) {
			var itm = item; //
			// var itm =showitems[d];
			// if (itm != "undefined" && itm.title != "undefined") {
			if (lnd <= 3) {	
				txt+='<li><a title="'+itm.title+'" href="?id='+itm.id+'&width=544&height=320&TB_iframe=true" onclick="tb_show(this.title,this.href,null);return false;" class="thickbox"><span>'+itm.start_date+'</span>: '+itm.title+'</a></li>';
			}
			//}
			//if(lnd>3) break;
			lnd++; 
			// }
		});
				
		if($('#jqCalendarResults').length) {
			if(txt.length == 0) {
				$('#jqCalendarResults').html('');
			} else {
				$('#jqCalendarResults').html('<ul>'+txt+'</ul>');
			}
		}
				
	} // END OF SHOW EVENTS PER MONTH

  	$('#jqCalendar').datePicker({
		inline:true,
		showYearNavigation:false,
		renderCallback:function($td, thisDate, month, year){
	  		if(typeof(ajaxevents)!='undefined') {
				var now = new Date();
				if(ajaxevents[thisDate.asString()]) {
					if($td.hasClass('current-month')) {
			  			$td.addClass('hasevents');
			  			$td.attr('title', 'Show events on '+thisDate.asString());
					}
			  	}
			}
		}
	}).bind('dpMonthChanged', function(e, month, year){
  		var mo = (month+1);
		if((mo+'').length == 1) mo='0'+mo;
		var yr = year+'';
	  	showEventsPerMonth(mo,yr);
	}).bind('dateSelected', function(e, selectedDate, $td){
  		var selDate = selectedDate.asString();
		var selMonth = selectedDate.getMonth()+1;
		var selYear = selectedDate.getFullYear();
		document.location.href=calpath+'?m='+selMonth+'&y='+selYear+'#cal';
	}).dpClose().dpDisplay();
					
	var date = new Date();
	var month = date.getMonth()+1;
	month = (month > 9 ? month : "0"+month);
	year = date.getFullYear();
	// showEventsPerMonth(month, year);
});
