function ord (string) {
    // Returns the codepoint value of a character  
    // 
    // version: 1009.2513
    // discuss at: http://phpjs.org/functions/ord
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   bugfixed by: Onno Marsman
    // +   improved by: Brett Zamir (http://brett-zamir.me)
    // *     example 1: ord('K');
    // *     returns 1: 75
    // *     example 2: ord('\uD800\uDC00'); // surrogate pair to create a single Unicode character
    // *     returns 2: 65536
    var str = string + '';
    
    var code = str.charCodeAt(0);
    if (0xD800 <= code && code <= 0xDBFF) { // High surrogate (could change last hex to 0xDB7F to treat high private surrogates as single characters)
        var hi = code;
        if (str.length === 1) {
            return code; // This is just a high surrogate with no following low surrogate, so we return its value;
                                    // we could also throw an error as it is not a complete character, but someone may want to know
        }
        var low = str.charCodeAt(1);
        if (!low) {
            
        }
        return ((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000;
    }
    if (0xDC00 <= code && code <= 0xDFFF) { // Low surrogate
        return code; // This is just a low surrogate with no preceding high surrogate, so we return its value;
                                // we could also throw an error as it is not a complete character, but someone may want to know
    }
    return code;
}
// Hàm chuẩn hóa dạng enter
function chuanhoa2(input)
{
	var str = input;
	var check=0;
	// Chuẩn hóa đầu chuỗi
		for (var i = 0 ; i<str.length-1 ; i++)
		{
			if (ord(str.charAt(i))!=13 && ord(str.charAt(i))!=10)
			{
				str = str.substring(i,str.length);
				check = 1;
				break;
			}
		}
		if (check==0) 
			str = "";
		else
			check = 0;
	
	// Chuẩn hóa cuối chuỗi
		if (str!="")
		for (var i = str.length-1 ; i>0 ; i--)
		{
			if (ord(str.charAt(i))!=13 && ord(str.charAt(i))!=10)
			{
				str = str.substring(0,i+1);
				break;
			}
		}
	// Chuẩn hóa giữa chuỗi
		for (var i=0 ; i<str.length ; i++)
		{
			if (ord(str.charAt(i))==13 || ord(str.charAt(i))==10)
				for (var j=i+1 ; j<str.length ; j++)
				{
					if(ord(str.charAt(j))!=13 && ord(str.charAt(j))!=10)
					{
						str = str.substring(0,i+1) + str.substring(j,str.length);
						break;
					}
				}
		}
		return str;
}
// Check form add comment
function onsub()
{	
	var kt = 0;
	var mau = "QqWwEÉÈẺẼẸÊẾỀỂỄỆeéèẻẽẹêếềểễệrRTtYÝỲỶỸỴyýỳỷỹỵUÚÙỦŨỤuúùủũụIÍÌỈĨỊiíìỉĩịOÓÒỎÕỌoóòỏõọÔỐỒỔỖỘôốồổỗộPpAÁÀẢÃẠaáàảãạsSDĐdđFfGggHhJjKkLlzZxXCcvVbBnNmMƯỨỪỬỮỰưứừửữựƠỚỜỞỠỢơớờởõợĂẮẴẲẶăắẳẵặÂẤẦẨẪẬâấầẩẫậ0123456789ỡằ ";
	var mau2 = "0123456789mnbvcxzlkjhgfdsapoiuytrewq_QWERTYUIOPLKJHGFDSAZXCVBNM.@";
	// Check họ và tên rỗng
	if (chuanhoa(document.comment.name.value)=="")
	{
		alert("Bạn chưa nhập họ và tên");
		document.comment.name.focus();
		kt = 1;
		exit();
	}
	// Check ký tự trong họ và tên
	else
	{
		document.comment.name.value = chuanhoa(document.comment.name.value);
		var ThuMuc = document.comment.name.value;
			for(var i=0;i<ThuMuc.length;i++)
				{
					if(mau.indexOf(ThuMuc.charAt(i))==-1)
						{						
							alert("Ký tự ["+ ThuMuc.charAt(i)+"] không cho phép\n Bạn chỉ có thể dùng ký tự có dấu và dấu cách");
							document.comment.name="";
							kt = 1;				
							break;
						}
				}
		if (kt==1) exit();
	}
	
	// Check email cấu trúc cơ bản
	if (document.comment.email.value=="" || document.comment.email.value.indexOf('@')==-1 || document.comment.email.value.indexOf('@')==0 || document.comment.email.value.indexOf('@')==document.comment.email.value.length-1 || document.comment.email.value.charAt(document.comment.email.value.indexOf('@')-1)=="." || document.comment.email.value.charAt(document.comment.email.value.indexOf('@')+1)=="." || (document.comment.email.value).charAt((document.comment.email.value).length-1)=="." || (document.comment.email.value).charAt((document.comment.email.value).length-1)=='_' || (document.comment.email.value).charAt(0)=='.' || (document.comment.email.value).indexOf('.')==-1 || (document.comment.email.value).lastIndexOf('.')<(document.comment.email.value).indexOf('@') || (document.comment.email.value).indexOf('@')!=(document.comment.email.value).lastIndexOf('@'))
	{
		alert("Nhập email không hợp lệ, vui lòng kiểm tra lại ..");
		document.comment.email.focus();
		kt = 1;
		exit();
	}
	// Check email cấu trúc năng cao
	else
	{
		// Các dấu chấm liền nhau
		var temp = document.comment.email.value;
		for (var i=0 ; i<temp.length ; i++)
		{
			if (temp.charAt(i)=='.')
				if (temp.charAt(i+1)=='.')
				{
					alert("Nhập email không hợp lệ, vui lòng kiểm tra lại ..");
					document.comment.email.focus();
					kt = 1;
					exit();
				}
		}
		// Sử dụng ký tự không cho phép
		var ThuMuc = document.comment.email.value;
			for(var i=0;i<ThuMuc.length;i++)
				{
					if(mau2.indexOf(ThuMuc.charAt(i))==-1)
						{						
							alert("Email chỉ cho phép dùng ký tự a-z A-Z @ _ và dấu chấm\nKý tự ["+ThuMuc.charAt(i)+"] không cho phép dùng");
							document.comment.email.focus();
							kt = 1;				
							exit();
						}
				}
		if (kt==1) exit();		
	}
	
	// Check nội dung
	document.comment.noidung.value = (document.comment.noidung.value).replace(/'/,"''");
	document.comment.noidung.value = chuanhoa(document.comment.noidung.value);
	document.comment.noidung.value = chuanhoa2(document.comment.noidung.value);
	var ThuMuc = document.comment.noidung.value;
	if (ThuMuc == "" )
		{
			alert("Bạn chưa nhập nội dung");
			document.comment.noidung.focus();
			kt = 1;
			exit();		
		}
	else
		{
			for (var i=0 ; i<ThuMuc.length ; i++)
			{
				if (ord(ThuMuc.charAt(i))==10)
				{
					ThuMuc = ThuMuc.substring(0,i)+"<br>"+ThuMuc.substring(i+1,ThuMuc.length)
				}
			}
			document.comment.noidung.value = ThuMuc;
		}
	// Nếu không có vấn đề thì subnit
	if (kt==0)	document.comment.submit();
}

