//helper
function parseHtml( str ){
	var test = str.match(/([[#]+)(\w.[^#\"]+)([#\]]+)/g);
	//debuglog(test);
	var templabel, temp, cleared;
	if( test != null){	
		for( var i=0; i<test.length; i++){
			templabel = test[i];
			cleared = test[i];
			cleared = cleared.replace(/([[#]+)(\w.[^\"\[#\"]+)([#\]]+)/g, "$2");
			// var labels = {...}
			if( typeof labels[cleared] != 'undefined'){
				temp = labels[cleared];
				str = str.replace( templabel, temp );
			}
			else{
				str = str.replace( templabel, cleared );
			}
		}	
	}
	else{
		//alert(test);
	}
	return str;
}
function validateApplyForm(){
	/*
		*/
	
	//console.log('validate');
	
}

function showCareerRequest(formData, jqForm, options){
			
			//console.log(formData);
		}

function showCareerResponse(responseText, statusText, xhr, $form){
			$("#apply2Career").parent().parent().fadeOut(400,function(){
				$("#apply2Career").attr('id','apply2CareerOld');
				var parsed = parseHtml(responseText);
				$("#apply2CareerOld").parent().parent().after(parsed);
				$("#apply_success").parent().parent().hide(0);
				$("#apply_success").parent().parent().fadeIn(400, function(){
					$("#apply2CareerOld").remove();
				});
				$("#apply2CareerOld").remove();
			});
			//alert(1);
			//console.log(responseText);
		}
 //Random number
jQuery.extend({
	random: function(X) {
	    return Math.floor(X * (Math.random() % 1));
	},
	randomBetween: function(MinV, MaxV) {
	  return MinV + jQuery.random(MaxV - MinV + 1);
	}
});

$(document).ready(function(){
	$(".jqButton").button();
	$("#refresh_register").live('click',function(ev){
		ev.preventDefault();
		$("#human_code").val('').removeClass('invalid');
		//$("span:contains(' sum ')").remove();
		var filename = '/check.php?'+$.randomBetween(1000, 9999);
		var myparams = 'regen_code:1';
		var $newimage = '';
		var params = $.evalJSON('{'+myparams+'}');
		
		$.ajax({
			'url': filename,
			'type': "POST",
			'async': false,
			'data': params,
			'success': function(returned_data){
				
				$("#human_code_image").fadeOut(1000, function(){
					$(this).attr('src', '').attr('src', '/genCode.php?file=' + Math.floor(Math.random() * 10001)).fadeIn(1000, function(){
					
					});
				});
			}
		});
				
	});
	
	$("#product_tabs").tabs();	
			
	$(".lightbox").fancybox({	});	

	var careerOptions = {
				beforeSubmit:  showCareerRequest,  // pre-submit callback
		    	success:       showCareerResponse,
				dataType: 'html',
				iframe:true
			};
			
	$('#apply2Career').validate({
		rules:{
			contact_name: {
				required:true
			},
			contact_file: {
				required:true
			},
			contact_email: {
				required:true,
				email:true
			},
			human_code:{
				required:true,
				remote:{
					url: "/check.php",
	                    type: "post",
	                    data: {
	                        human_code: function() {
	                            return $("#human_code").val();
	                        },
	                        target:'captcha',
	                        validate: '1'
	                    }
				}
			}
		},
		messages:{
			contact_name: {
				required:labels.contact_err_name_mandatory
			},
			contact_file: {
				required:labels.contact_err_file_mandatory
			},
			contact_email: {
				required:labels.contact_err_email_mandatory,
				email:labels.contact_err_email_invalid
			},
			human_code:{
				required:labels.contact_err_human_checker,
				remote:labels.contact_err_human_checker
			}
		},
		submitHandler: function(form) {
                $('#apply2Career').ajaxSubmit(careerOptions);
        },
        onfocusout: false,
        onkeyup: false,
        onkeypress: false,
        onsubmit: true,
        success: "",
        errorClass: "invalid",
        errorElement: "p",
        errorPlacement: function(error, element) {
            //debuglog($("label[for*='"+element.attr('name')+"']").get(0));
            var label = $("[name*='"+element.attr('name')+"']").get(0);
			
            $(label).after(error);
//			console.log(element.attr('name'));
			if(element.attr('name')=='human_code'){
				$("#refresh_register").trigger('click');
				
			}
			
        },
        debug:false
	});
	
	 
	$('#contactForm').validate({
		rules:{
			contact_name: {
				required:true
			},
			contact_message: {
				required:true
			},
			contact_email: {
				required:true,
				email:true
			}
		},
		messages:{
			contact_name: {
				required:labels.contact_err_name_mandatory
			},
			contact_message: {
				required:labels.contact_err_message_mandatory
			},
			
			contact_email: {
				required:labels.contact_err_email_mandatory,
				email:labels.contact_err_email_invalid
			}
		},
		submitHandler: function(form) {
                $('#contactForm').submit();
        },
        onfocusout: false,
        onkeyup: false,
        onkeypress: false,
        onsubmit: true,
        success: "",
        errorClass: "invalid",
        errorElement: "p",
        errorPlacement: function(error, element) {
            //debuglog($("label[for*='"+element.attr('name')+"']").get(0));
            var label = $("[name*='"+element.attr('name')+"']").get(0);
			
            $(label).after(error);
        },
        debug:false
	});
	/*
	$('#contactForm')
	.bind('formIsValid', function(event, form) {
	    //do whatever when the form is valid
	    //form - the form that is valid (jQuery Object)
			
			
			$('#contactForm').submit();
		return false;
	})
	.bind('formIsInvalid', function(event, form) {
	    //do whatever when the form is valid
	    //form - the form that is valid (jQuery Object)
		//alert(1);
		return false;
	})
	.ketchup({
		validateEvents: 'blur submit'
	}, {
	  '#contact_name':'required',
	  '#contact_email':'required, email',
	  '#contact_message':'required',
	  '#human_code':'captcha'

	});-*/

});

