$(document).ready(function(){
	$("#requestchat").submit(function() {
		if( validate() )
		{
			submitRequest();
		}
		return false;
    });

	$("#leaveMessage").submit(function() {
		if( validate_leave() )
		{
			submitLeave();
		}
		return false;
    });
	
});

function submitRequest()
{
	$.post("ajax.do.php", { func: "requestChat", id: $("#id").val(), uo_id: $("#uo_id").val(), name: $("#requestname").val(), email: $("#requestemail").val(), department: $("#requestdepartment").val() },
			  function(data){
				  //$("#requestchat").showhtml(data);
				  //alert(data);
				afterSubmit(data);
			  }, "json");
}

function afterSubmit(res)
{
	$("#loading").hide();
	if( res.success == '0' )
	{
		$("#requestchat").show();
		errormessage	= "<ul>";
		for(i=0; i<res.errcode.length; i++ )
		{
			errormessage	+= '<li>' + res.errcode[i] + '</li>';
		}
		errormessage	+= "</ul>";
		$("#status").html(errormessage).show().fadeOut(10000);
	}
	else
	{
		$("#loading").show();
		$("#output").html('wait while redirecting');
		window.location = "chat.php?chatId="+res.chatId+"&us_di="+$("#uo_id").val();
	}
}


function validate()
{
	postname	= $("#requestname").val();
	postemail	= $("#requestemail").val();
	
	if (postname.length < 3 ) {
		error	= 'Name field is at least 3 characters.';
		showError('name', error);
		return false;
	}
	else if (!isValidEmail(postemail))
	{
		error	= 'Your email is invalid.';
		showError('email', error);
		return false;
	}
	$("#loading").show();
	$("#requestchat").hide();
	
	return true;
}

function showError(fieldname, message)
{
	$("input[name='"+ fieldname +"']").css({ backgroundColor:"yellow", fontWeight:"bolder" });
	$("#status").html(message).show().fadeOut(5000);
}

function isValidEmail(email){
    var RegExp = /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/
    if(RegExp.test(email)){
        return true;
    }else{
        return false;
    }
}


function submitLeave()
{
	$.post("ajax.do.php", { func: "leavemessage", id: $("#id").val(), u_id: $("#u_id").val(), name: $("#leavename").val(), email: $("#leaveemail").val(), hp: $("#leavehp").val(), subject: $("#leavesubject").val(), message: $("#leavemessage").val(), department: $("#leavedepartment").val() },
			  function(data){
				afterSubmitLeave(data);
			  }, "json");
}

function afterSubmitLeave(res)
{
	$("#loading").hide();
	if( res.success == '0' )
	{
		$("#leaveMessage").show();
		errormessage	= "<ul>";
		for(i=0; i<res.errcode.length; i++ )
		{
			errormessage	+= '<li>' + res.errcode[i] + '</li>';
		}
		errormessage	+= "</ul>";
		$("#status").html(errormessage).show().fadeOut(10000);
	}
	else
	{
		$("#loading").show();
		$("#output").html('wait while redirecting');
		//window.location = "leave.php?chatId="+res.chatId;
		window.location = "leave.php?chatId="+res.chatId+"&usdi="+$("#u_id").val();
	}
}


function validate_leave()
{
	postname_leave		= $("#leavename").val();
	postemail_leave		= $("#leaveemail").val();
	posthp_leave		= $("#leavehp").val();
	postsubject_leave	= $("#leavesubject").val();
	postmessage_leave	= $("#leavemessage").val();
	
	if (postname_leave.length < 3 ) {
		error	= 'Name field is at least 3 characters.';
		showError('name', error);
		return false;
	}
	else if (!isValidEmail(postemail_leave))
	{
		error	= 'Your email is invalid.';
		showError('email', error);
		return false;
	}
	else if (posthp_leave.length < 3)
	{
		error	= 'Your hp is invalid.';
		showError('hp', error);
		return false;
	}
	else if (postsubject_leave.length < 3)
	{
		error	= 'Your subject is invalid.';
		showError('subject', error);
		return false;
	}
	else if (postmessage_leave.length < 3)
	{
		error	= 'Your message is invalid.';
		showError('message', error);
		return false;
	}
	
	$("#loading").show();
	$("#leavemessage").hide();
	
	return true;
}

