// JavaScript Document

window.addEvents({
	'domready': function() {	
		nav.init();
		procedures.init();
		styles.addStripes();
		contact.init();
		
	}
});

function swapNav(e) {
	var server = "http://www.drgeorgepoletes.com"
	var path = server  + "/images/"; 
	var overstate = path + e.id + "_over.png";
	//alert(e.src);
	if(e.src == overstate){
		e.src = path + e.id + ".png";
	} else {
		e.src = overstate;
	}
	
}

cookiez = {
	set: function (bool){
		var co = Cookie.write('isMute', bool, {domain: 'drgeorgepoletes.com', path: '/'});
		return Cookie.read('isMute');
	},
	read: function (name)
	{
		return Cookie.read('isMute');
	}
}

function goHome() {
	window.location = "/";
}

nav = {
	init:  function ()
	{
		$('nav') ? this.addEvents() : null;
	},
	addEvents: function ()
	{
		var navItems = $('nav').getElements('img.nav_image');
		navItems.each(function(item,index) {
			var up = item.src;
			var pre = item.src.substring(0, up.length-4);
			item.addEvents({
				mouseenter: function () {
					item.src = pre + "_over.png";
				},
				mouseout: function () {
					item.src = up;	
				}
			});
						
		});
	}
}

styles = {
	addStripes: function ()
	{
		$$('ul.striped li').each(function(el,i) {
			var _class = i % 2 ? 'even' : 'odd'; el.addClass(_class);
		})
	}
}

procedures = {
	param: {sex: '', area: '', type: ''},
	defaultParam: {sex: '', area: '', type: ''},
	firstTime: true,
	clickedLI: '',
	init: function ()
	{
		$('procedure_group') ? this.addEvents() : null;
	},
	addEvents: function ()
	{
		var owner = this;
		$('surgical').addEvents({
			click: function ()
			{
				//owner.param.type = 'surgical';
				owner.fetchList({type: 'surgical'})
				$('cosmetic').src = "/images/button_cosmetic_grey.gif"
				$('surgical').src = "/images/button_surgical_purp.gif"
			}
		});
		$('cosmetic').addEvents({
			click: function ()
			{
				owner.fetchList({type: 'cosmetic'});
				
				$('cosmetic').src = "/images/button_cosmetic_purp.gif"
				$('surgical').src = "/images/button_surgical_grey.gif"
			}
		});
		$('button_clear').addEvents({
			click: function ()
			{
				owner.param = {sex: '', area: '', type: ''};
				$("c_area").innerHTML = "all procedures";
				
				$('procedure_group').getElement('.desc').morph({'opacity': 0});
				var time = setTimeout(function () {
					$('procedure_group').getElement('.desc').innerHTML = "";
				}, 500);
				owner.fetchList({type: '', sex: '', area: ''});
			}
		});
		$('button_top').addEvents({
			click: function ()
			{
				var myFx = new Fx.Scroll(window).toElement('middle');
			}
		});
		this.fetchList({type: 'surgical', sex: '', area: ''});
	},
	setSex: function (theSex) {
		this.param.area = '';
		this.fetchList({sex: theSex, area: ''})
	},
	setArea: function (theArea) {
		this.fetchList({sex:'', area: theArea})
		$("c_area").innerHTML = theArea;
		var myFx = new Fx.Scroll(window).toElement('left');
		this.firstTime = false;
	},
	fetchList: function (obj)
	{
		if(obj.sex) this.param.sex = obj.sex;
		if(obj.area) this.param.area = obj.area;
		if(obj.type) this.param.type = obj.type;

		var query = "sex="+this.param.sex+"&area="+this.param.area+"&type="+this.param.type;
		$('procedure_group').getElement('.lists').morph({'opacity': 0});
		var req = new Request({method: 'post', url: '/mods/fetchProcedures.php', onSuccess:this.returnHandler}).send(query);
	},
	returnHandler: function (req)
	{
		var time = setTimeout(function () {
			$('procedure_group').getElement('.lists').innerHTML = req;
			procedures.addListEvents();
			$('procedure_group').getElement('.lists').morph({'opacity': 1});
		}, 500);
	},
	fetchDesc: function (targ)
	{
		var query = "id="+targ;
		$('procedure_group').getElement('.desc').morph({'opacity': 0});
		var req = new Request({method: 'post', url: '/mods/fetchProceduresDesc.php', onSuccess:this.returnDesc}).send(query);
	},
	returnDesc: function (req)
	{
		var time = setTimeout(function () {
			$('procedure_group').getElement('.desc').innerHTML = req;
			$('procedure_group').getElement('.desc').morph({'opacity': 1});
			styles.addStripes();
			var tips = new Tips('.preview', {className: 'tool-tip'});
			
			tips.addEvent('show', function(tip){
				var tip_cont = tip.getElement('.tip-title');    
				var name = tip_cont.innerHTML;
				tip_cont.innerHTML = "<img src='/images/beforeafter/"+name+".png' />";
			});
		}, 500);
		
	},
	addListEvents: function ()
	{
		var listitems = $('procedure_group').getElements('ul li');
		listitems.each(function(item, index) {
			var normColor = item.getStyle('backgroundColor');
			var owner = this;
			item.addEvents({
				mouseenter: function ()
				{
					item.morph({'background-color': '#82dd7d'});
				},
				mouseleave: function ()
				{
					item.morph({'background-color': normColor});
				},
				click: function ()
				{
					procedures.fetchDesc(this.id);
				}
			})
		});
	},
	swapButton: function ()
	{
			
	}
}

contact = {
	init: function ()
	{
		$('contact_form') ? this.addEvents() : null;
	},
	addEvents: function ()
	{
		var owner = this;
		$('contact_form').addEvents({
			submit: function ()
			{
				var error = false;
				if($('email').value != $('vemail').value){
					$('vemail').addClass('invalid');
					error = true;
				}else{
					$('vemail').removeClass('invalid');
					$('vemail').addClass('valid');
				}
				
				var req = $("contact_form").getElements('.required');
				req.each(function(item, index){
					if(item.value == ""){
						item.addClass('invalid');
						error = true;
					}else if(item.value != ""){
						item.removeClass('invalid');
						item.addClass('valid');
					}
				});
				if(!error){
					$('contact_form').set('send', {url: 'sendEmail.php', method: 'post', onSuccess: contact.responseHandler()});
					$('contact_form').send(); //Sends the form.
				}
			}
		});
	},
	responseHandler: function(response)
	{
		$('contact_form').morph({'opacity': 0, 'height': 0});
		$('thanks').setStyles({'opactiy': 0, 'display': 'block', 'height': 0});
		$('thanks').morph({'opcaity': 1, 'height': 30})
	}
}