$(document).ready(function(){
	// On mouse over show some help
	$('form .validate').blur(function(){
		var labelname = "#lb_"+$(this).attr('name');
		var ttname = "#tt_" + $(this).attr("name");
		fname = $(this).parents('form').attr("name");
		if (performCheck_ind(fname,eval(fname+'_rules'),$(this).attr('name')))
		{
			$(labelname).removeClass('invalid');
			$(labelname).addClass('valid');		
			
			$(this).qtip("disable");
			$(labelname).qtip("disable");
		}else{
			$(labelname).addClass('invalid');
			$(labelname).removeClass('valid');			
			
			$(this).qtip({
				content: {text: $(ttname).html()}, show: { effect: {type: 'fade', length:100 }},position: {target: 'mouse',adjust: {mouse:true}},
				style: {background: '#e7f7ff', color: '#333333', border: {width: 0,	radius: 2, color: '#a5d3eb'},padding: 6, textAlign: 'left', tip: {corner: true, size: {x: 10, y : 8}}, name: 'cream'}			});
			
			$(labelname).qtip({
				content: {text: $(ttname).html()}, show: { effect: {type: 'fade', length:100 }},position: {target: 'mouse',adjust: {mouse:true}},
				style: {background: '#e7f7ff', color: '#333333', border: {width: 0,	radius: 2, color: '#a5d3eb'},padding: 6, textAlign: 'left', tip: {corner: true, size: {x: 10, y : 8}}, name: 'cream'}
			});
		}	
	});

	$('form[class=validate]').submit(function(){		
		submitThisForm(this);
		// !!! Important !!! 
		// always return false to prevent standard browser submit and page navigation 
		return false; 
    });
	
	$('form #reset').click(function(){
		var frmobj = $(this).parents('form');
		frmobj.find('.validate').each(function (){
			var labelname = "#lb_" + $(this).attr('name');
			if($(labelname).hasClass('invalid'))
			{
			   $(labelname).removeClass('invalid');
				$(this).qtip("disable");
				$(labelname).qtip("disable");
			}
			if($(labelname).hasClass('valid'))
			{
			   $(labelname).removeClass('valid');
			}
		});
	});
});


function submitThisForm(frmObj)
{
	var submitstatus = true;
	fname = $(frmObj).attr("name");
	$(frmObj).find('.validate').each(function (){
		var labelname = "#lb_" + $(this).attr('name');
		var ttname = "#tt_" + $(this).attr("name");
		 
		if (performCheck_ind(fname,eval(fname+'_rules'),$(this).attr('name')))
		{	
			$(labelname).removeClass('invalid');
			$(labelname).addClass('valid');
			//$(this).qtip("disable");
			//$(labelname).qtip("disable");
		}else{
			$(labelname).addClass('invalid');
			$(labelname).removeClass('valid');
			$(this).qtip({
				content: {text: $(ttname).html()}, show: { effect: {type: 'fade', length:100 }},position: {target: 'mouse',adjust: {mouse:true}},
				style: {background: '#e7f7ff', color: '#333333', border: {width: 0,	radius: 2, color: '#a5d3eb'},padding: 6, textAlign: 'left', tip: {corner: true, size: {x: 10, y : 8}}, name: 'cream'}
			});
			
			$(labelname).qtip({
				content: {text: $(ttname).html()}, show: { effect: {type: 'fade', length:100 }},position: {target: 'mouse',adjust: {mouse:true}},
				style: {background: '#e7f7ff', color: '#333333', border: {width: 0,	radius: 2, color: '#a5d3eb'},padding: 6, textAlign: 'left', tip: {corner: true, size: {x: 10, y : 8}}, name: 'cream'}
			});
			submitstatus = false;
		}	
	});
	
	//return submitstatus;
	if(submitstatus)
	{
		//var frmmsgholder = '#'+fname+'_msgholder';
		var callfunctionsuccess = fname+"_postafter(rtext)";
		var atdcr = eval(fname+"_postbefore()");
		atdcr = atdcr.split("::");
		if(atdcr[2].substr(2) == "true")
			formclear = true;
		else
			formclear = false;

		if(atdcr[3].substr(2) == "true")
		{
			obj = eval("document."+fname);
			obj.action = atdcr[0].substr(2);
			obj.method = atdcr[1].substr(2);
			obj.submit();
			return true;
		}
		
		$(frmObj).ajaxSubmit(
		{ 
			beforeSubmit:  function(){$('#warning').html('Please wait!');$("#warning").removeClass("hidden positive negative information").addClass('preloader');},
			success:       function(rtext){if(rtext.substr(0,3) == 'ERR'){var msghoderclass = "negative";}else if(rtext.substr(0,3) == 'SUC'){var msghoderclass = "positive";}else{var msghoderclass = "information";}$("#warning").removeClass("hidden positive negative information preloader").addClass(msghoderclass);eval(callfunctionsuccess);$('#warning').highlightFade({final:""});},  // post-submit callback 
			url:       atdcr[0].substr(2),         // override for form's 'action' attribute 
			type:      atdcr[1].substr(2),        // 'get' or 'post', override for form's 'method' attribute 
			dataType:  null,        // 'xml', 'script', or 'json' (expected server response type) 
			clearForm: formclear        // clear all form fields after successful submit 
		}); 
	}
	else
	{			
		msg = "Please correct the errors in the fields marked with Alert icons below.<br>Place your mouse over the fields to see more details.";
		$("#warning").removeClass("hidden positive negative preloader").addClass('information');
		$("#warning").html(msg);
	}
}