$(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: '#7b7b7b', color: '#202020', border: {width: 1,	radius: 0, color: '#393939'},padding: 6, textAlign: 'left', name: 'cream'}
			});
			
			$(labelname).qtip({
				content: {text: $(ttname).html()}, show: { effect: {type: 'fade', length:100 }},position: {target: 'mouse',adjust: {mouse:true}},
				style: {background: '#7b7b7b', color: '#202020', border: {width: 1,	radius: 0, color: '#393939'},padding: 6, textAlign: 'left', name: 'cream'}
			});
		}	
	});

	$('form[class!=form]').submit(function(){
		var submitstatus = true;
		fname = $(this).attr("name");
		$(this).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');				
				$(this).qtip({
					content: {text: $(ttname).html()}, show: { effect: {type: 'fade', length:100 }},position: {target: 'mouse',adjust: {mouse:true}},
					style: {background: '#7b7b7b', color: '#202020', border: {width: 1,	radius: 0, color: '#393939'},padding: 6, textAlign: 'left', name: 'cream'}
				});
				
				$(labelname).qtip({
					content: {text: $(ttname).html()}, show: { effect: {type: 'fade', length:100 }},position: {target: 'mouse',adjust: {mouse:true}},
					style: {background: '#7b7b7b', color: '#202020', border: {width: 1,	radius: 0, color: '#393939'},padding: 6, textAlign: 'left', name: 'cream'}
				});
				submitstatus = false;
			}	
		});
		
		//return submitstatus;
		if(submitstatus)
		{
			var callfunctionsuccess = fname+"_postafter(rtext)";
			var atdcr = eval(fname+"_postbefore()");
			atdcr = atdcr.split("::");
			if(atdcr[2].substr(2) == "true")
				formclear = true;
			else
				formclear = false;
			
			var pattern = /ajax.php$/;				
			if(atdcr[3].substr(2) == "true" || !pattern.test(atdcr[0].substr(2)))
			{
				obj = eval("document."+fname);
				obj.action = atdcr[0].substr(2);
				obj.method = atdcr[1].substr(2);
				obj.submit();
				return true;
			}
			$(this).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 = "There are some errors in the fields with alert icons below. Place your mouse over the fields to see more details about the errors.";
			$("#warning").removeClass("hidden positive negative preloader").addClass('information');
			$("#warning").html(msg);
		}
		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');
			}
		});
	});
});
