jQuery(function()
{
	
    jQuery(':input[name=order]').val('Book');
    jQuery(':input[name=order]').click(function(){
        jQuery(this).val('Please wait...');
    });

	var selector = jQuery("#addressList");
	
	function changer(id){
	    var hidDet = jQuery("#det"+id);
	    jQuery("#phone").val(hidDet.children(".phoneHide").html());
	    jQuery("#mobile").val( hidDet.children(".mobileHide").html());
	    jQuery("#streetName").val( hidDet.children(".streetHide").html());
	};
	
	
	selector.change(function(){ changer(selector.val())});
	if(jQuery("#filled").val() != 1) 
	    changer(1);
	
	    
	if(jQuery("#member").attr('checked') != true)
	    jQuery("#slideDownCreditCard5").hide();    
	
	//troggle
	jQuery("#nowOrder").click(function(){jQuery("#slideDownCreditCard3").slideUp(300); });
	jQuery("#laterOrder").click(function(){jQuery("#slideDownCreditCard3").slideDown(300);});
	
	jQuery("#paymentCash").click(function(){jQuery("#slideDownCreditCard2").slideUp(500); });
	jQuery("#paymentCard").click(function(){jQuery("#slideDownCreditCard2").slideDown(500);});
	
	jQuery("#member").click(function(){jQuery("#slideDownCreditCard5").slideToggle(500); });
	
	
	jQuery(".normal").hover(function(event){
	jQuery(this).addClass('highlight');
	},function(event){
	jQuery(this).removeClass('highlight');
	}
	);
	
	function timeChanger(dayNum){
		/*Emad Messiha. this function gets called at load of the order form
		 * and each time a date is selected.
		 * code is added (marked '//o') to remove time options that are
		 * less than the current time
		 * */
	var timeDiv = jQuery("#"+dayNum+"content");
	//alert(timeDiv.html());
	var date = new Date();//o
	var dateValue = jQuery("#date1")[0].value;//o --date value with format= d/m/Y
	var todayValue = GetTwoDigitDay(date)+'/'+GetTwoDigitMonth(date)+'/'+date.getUTCFullYear();//o
	var nowValue = GetNow(date);//o get time now in format hhmm (h:hour,m:min)
	var timeField = jQuery("#time");
	var selec = '';
	timeField.empty();
	timeField.append('<option>Time:</option>');
	timeDiv.children().each(function (){
	if( jQuery(this).attr('selected') == 'selected') 
	selec = 'selected = "selected"';
	 if(dateValue==todayValue)//o check if chosen date is today
	 {//o if yes, check if the time item being added
		 //to the options is after "now". if yes include it
		 //else do nothing
		 if(jQuery(this).attr('value') > nowValue)
		 {
			 timeField.append('<option value="'+ jQuery(this).attr('value') +'"' + selec +'>'+ jQuery(this).html()+'</option>');
			 selec = '';
		 }
	 }
	 else{
		 timeField.append('<option value="'+ jQuery(this).attr('value') +'"' + selec +'>'+ jQuery(this).html()+'</option>');
		 selec = '';
	 }
	});
	
	}
	
	timeChanger(jQuery("#date1 option:selected").attr('id'));
	
	var dateField = jQuery("#date1");
	dateField.change( function(event){
		var selectedId = jQuery("#date1 option:selected").attr('id');
		timeChanger(selectedId);
	});
	//creating calendar
	var myCal1 = new Calendar({ date1: 'd/m/Y' }, {tweak: { x: 6, y: 0 }}); 
	//attaching event to calendar
	myCal1.calendar.onclick = function(event){
		var selectedId = jQuery("#date1 option:selected").attr('id');
		timeChanger(selectedId);
	};

    jQuery("#mobile_phone input").focus(function(){
        if(!parseFloat(jQuery(this).val())) {
        	jQuery(this).val('0');
        	jQuery(this).css({"color": "#000000"});
        	setCaretToEnd(this);//this line is to set the cursor position to be at the end (bug was in IE)
        }
            
    });

    jQuery("#land_phone input").keypress(function (e) {
        if (e.which == 8) {
            if(jQuery(this).val().length < 3)
                return false;
        }
    });

    jQuery("#mobile_phone input").keypress(function (e) {
        if (e.which == 8) {
            if(jQuery(this).val().length < 2)
                return false;
        }
    });


    jQuery('#landline').click(function(){
        jQuery('#land_phone').slideToggle(500);
    });
    
    
    //Emad Messiha - setting street number
    var stn = document.getElementById('streetNumb');
    var stnDiv = document.getElementById('stnum1');
    if(stnDiv){
    	stn.value = stnDiv.innerHTML;
    }
    //setting also landline number to '02' if it was '2'
    var landline = document.getElementById('phone');
    if(landline.value == '2'){landline.value=='02';}
    
    
    
    //remove street number message (because street name & number need to be one message)
    var phpError = document.getElementById('streetNumb_php_error');
    var clientError = document.getElementById('streetNumb_error');
    var errLabel = document.getElementById('streetName_error');
    if(phpError){errLabel.innerHTML = phpError.innerHTML; clientError.style.display='none';}
    //do the same with Expiry
    phpError = document.getElementById('ccExpiry2_php_error');
    clientError = document.getElementById('ccExpiry2_error');
    errLabel = document.getElementById('ccExpiry1_error');
    if(phpError){errLabel.innerHTML = phpError.innerHTML; clientError.style.display='none';}
    
    
    //jQuery('#scrollTop').click(function(){//this is to fix scroll top
    //	jQuery.scrollTo(jQuery(this).attr('href'), 1000, {easing: 'easeOutExpo'});
    //	return false;
    //});

});

jQuery(function(event)
{
    if (!jQuery('#nowOrder').size())
    {
        jQuery('#laterOrder').click();
    }
});
//o Emad Messiha - function added to get two digit month from date object (01-12)
function GetTwoDigitMonth(dateValue){
	var M = "" + (dateValue.getUTCMonth()+1); 
    var MM = "0" + M; 
    MM = MM.substring(MM.length-2, MM.length);
    return MM;
}
//o Emad Messiha - function added to get the current time "now" in the format HHMM (H:Hour,M:Min)
//example 5:30 pm = 1730
function GetNow(date){
	var h = date.getUTCHours() + 11;//to get australia's time
	var hh = "0"+h;
	hh = hh.substring(hh.length-2,hh.length);
	var m = date.getUTCMinutes();
	var mm = "0"+m;
	mm = mm.substring(mm.length-2,mm.length);
	var returnNow= hh+mm;
	return returnNow;
}
//o Emad Messiha - function added to get two digit day from date object (01-31)
function GetTwoDigitDay(dateValue){
	var D = "" + (dateValue.getUTCDate()); 
    var DD = "0" + D; 
    DD = DD.substring(DD.length-2, DD.length);
    return DD;
}

function setSelectionRange(input, selectionStart, selectionEnd) {
	  if (input.setSelectionRange) {
	    input.focus();
	    input.setSelectionRange(selectionStart, selectionEnd);
	  }
	  else if (input.createTextRange) {
	    var range = input.createTextRange();
	    range.collapse(true);
	    range.moveEnd('character', selectionEnd);
	    range.moveStart('character', selectionStart);
	    range.select();
	  }
	}
function setCaretToEnd (input) {//Emad Messiha - function to set cursor position
	setSelectionRange(input, input.value.length, input.value.length);
}