/*
*
*
* jQuery functions used for Cancer Network website
* by George @ Cube 2011
*
*
*/



//Datepicker
$(function(){
		$("#eventscalendar").datepicker({dateFormat: 'dd-mm-yy', onSelect: function(dateText,inst){ redirectMe(dateText,inst); }, onChangeMonthYear: function(year, month, inst) {PopulateCalendar();}});
		PopulateCalendar();
		deleteCookie('arrow');
});
var stopDatepickerCallback = false;
function redirectMe(dateText,inst){
	if(stopDatepickerCallback)
		document.location.href = '/events.php?date='+dateText;
	stopDatepickerCallback=true;
}



//Childs showing..
$(function(){
	//first level
	$('.cube_menu li ul li').each(function(){
		if($(this).hasClass('menuSelected')){
			$(this).show();
			$(this).parent().show();
			$(this).siblings().show();
		}
	});
	//second level
	$('.cube_menu li ul li ul li').each(function(){
		if($(this).hasClass('menuSelected')){
			$(this).parent().parent().show();
			$(this).parent().parent().siblings().show();
			$(this).parent().parent().siblings().show();			
		}
	});
});



//Zooming..
$(function(){
	$('.zoomUp').click(function(){
		var zoom = parseInt($(this).attr('zoom'));
		if(zoom>=150) return;
		$('#wrap').css('zoom',(zoom+(10*zoom)/100)+'%');
		$(this).attr('zoom',(zoom+(10*zoom)/100));
		$('.zoomDown').attr('zoom',(zoom+(10*zoom)/100));
		$('.zoomDown').fadeIn(200);
	});
	$('.zoomDown').click(function(){
		var zoom = parseInt($(this).attr('zoom'));
		if(zoom<=80) return;
		$('#wrap').css('zoom',(zoom-(10*zoom)/100)+'%');
		$(this).attr('zoom',(zoom-(10*zoom)/100));
		$('.zoomUp').attr('zoom',(zoom-(10*zoom)/100));
		$('.zoomUp').fadeIn(200);
	});
});



$('document').ready(function(){
	//add class to cubemenu onindex page
	$('#nav_areas div').each(function(){
		var tabnumber = $(this).attr('tabnumber');
		$('#tab'+tabnumber+' .cube_menu li a').each(function(){
			$(this).addClass('child');
			$(this).attr('tabnumber',tabnumber);
		});
	});
	
	$('#nav_areas').rollovernav();
	
	//$('#nav_areas.home td a').click(function(){$(this).saveArrowCookie();});
		
	if(getCookie('arrow')){
		var arrow = getCookie('arrow');
		$(arrow).show();
	}
	else{
		deleteCookie('arrow');
	}
});


$.fn.rollovernav = function(){
	$('#nav_areas .child').each(function(){
		$(this).hover(
			function(){
				var arrow = '.arrow'+$(this).attr('tabnumber');
				$(arrow).show();
			},
			function(){
				var arrow = '.arrow'+$(this).attr('tabnumber');
				if(getCookie('arrow')!=arrow)
					$(arrow).hide();
			});
			
		$(this).click(function(){
			var arrow = '.arrow'+$(this).attr('tabnumber');
			setCookie('arrow',arrow,2);
		});
		
	});
}






var interval=0;



/* Change datepicker bg cell depends of events */
function PopulateCalendar(){
	var monthlist = new Array();
	monthlist['January'] = 1;
	monthlist['February'] = 2;
	monthlist['March'] = 3;
	monthlist['April'] = 4;
	monthlist['May'] = 5;
	monthlist['June'] = 6;
	monthlist['July'] = 7;
	monthlist['August'] = 8;
	monthlist['September'] = 9;
	monthlist['October'] = 10;
	monthlist['November'] = 11;
	monthlist['December'] = 12;
	
	var status = $('#eventscalendar .ui-datepicker-calendar').attr('status')	
	
	if(status!="stop"){
		$('#eventscalendar td a.ui-state-default').each(function(){
			var elem = this;
			var day = parseInt($(this).text());
			var month = monthlist[$('.ui-datepicker-month').text()];
			var year = parseInt($('.ui-datepicker-year').text());
			
			loadXMLDoc("/CubeCore/m/PopulateCalendar?d="+day+"&m="+month+"&y="+year,function(data){
    			if(data)
	  				$(elem).css('background','#d9d9d9');
			});
		});
		$('#eventscalendar .ui-datepicker-calendar').attr('status','stop');
		clearInterval(interval);
	}
	else{
		interval = setTimeout("PopulateCalendar()",1);
	}
}



//Validate form
function validateForm(form,event){
	var status = false;
	var form = "#"+form;
	$(form+' input:text').each(function(){
		var name = $(this).attr('name');
		if($(this).val()==""){
				$(this).css('background','pink');
				status = false;
				
				return status;
		}
		else{
			$(this).css('background','none');
			status = true;
		}
	});
	
	return status;
}

//Check password
function checkPassword(event,elem){
	var pass = $(elem).val();
	loadXMLDoc("/CubeCore/m/CheckPassword?pass="+pass+"&event="+event,function(data){
    	if(data){
    		$('.status').fadeIn(400);
    	}
    	else{
    		$('.status').fadeOut(400);
    		$('#submit').attr('disabled','disabled');
    	}
	});
}

//Use password
function usePassword(event){
	var pass = $('input[name="password"]').val();
	var email = $('input[name="Email"]').val();
	
	loadXMLDoc("/CubeCore/m/UsePassword?pass="+pass+"&event="+event+"&email="+email,function(data){
    	if(data){
    		$('.status').fadeOut(400);
    		$('#submit').removeAttr('disabled');
    	}
    	else{
	    	$('#submit').attr('disabled','disabled');
	    	$('.status').fadeOut(400);
	    	alert('Wrong password or email address.\n\nYou need to use a general password or an one time only password generated for your email address.\n\nThank you.');
    	}
	});
}









/**
*
* Re-order date from yyy-mm-dd to dd-mm-yyyy format
* How it's working?
* Take all attributes format from <span> elements and rewrite text with the write values
*
* by George @ Cube 2011
*
**/
$(function(){
	$('span').filter(function() { return $(this).attr('format'); }).each(function() {
	  var attrname = $(this).attr('format');
	  if(attrname=='date') var newdate = ReorderDate(this);
	  
	  $(this).html(newdate);
	});
	
	
	//functions list
	function ReorderDate(elem){
		var date = $(elem).text();
		var array = date.split('-');
		var newdate = array[2]+'-'+array[1]+'-'+array[0];
		return newdate;
	}
});


