﻿// JScript File
  function checkMail(strControl){	
    var email;
    email = document.getElementById(strControl).value;
    var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;	
    if(email !="")
    {
        if (filter.test(email)) {	
    	    return true;
    	    }
    	    document.getElementById(strControl).focus();
    	    alert("Nhập email không hợp lệ !");
    	    return false;
    }
    return true;
 }   	
    	
function CheckGridCheck(GridName,CtlCheckName)
{
    
	var i;
	var count;
	var NoItemCheck;	
	count = document.getElementById(GridName).rows.length;		
	
	NoItemCheck = true;		
	if (count >1 )
	{
	  for (i = 3; i <= document.getElementById(GridName).rows.length  ; i++)
		{	
		
		if (document.getElementById(GridName + "_ctl" + (i>=10?i:("0" + i)) + "_" + CtlCheckName).checked == true)
			{	
			    
				NoItemCheck = false;
				break;
			}
		}				
	}
	
	if (NoItemCheck)
	{
	    alert('Bạn phải chọn ít nhất một dòng dữ liệu !');
		return false;
	}
	else 
		return confirm("Bạn chắc muốn xóa ?");
}

function CheckGridCheck(GridName,CtlCheckName,from)
{
    
	var i;
	var count;
	var NoItemCheck;	
	count = document.getElementById(GridName).rows.length;		
	
	NoItemCheck = true;		
	if (count >1 )
	{
	  for (i = from; i <= document.getElementById(GridName).rows.length  ; i++)
		{	
		
		if (document.getElementById(GridName + "_ctl" + (i>=10?i:("0" + i)) + "_" + CtlCheckName).checked == true)
			{	
			    
				NoItemCheck = false;
				break;
			}
		}				
	}
	
	if (NoItemCheck)
	{
	    alert('Bạn phải chọn ít nhất một dòng dữ liệu !');
		return false;
	}
	else 
		return confirm("Bạn chắc muốn xóa ?");
}

function CheckAllGrid(GridName,CtrlCheckName,CtrlChildName)
{
   	var i;
	var count;
	var NoItemCheck;	
	NoItemCheck = document.getElementById(CtrlCheckName.id).checked;	
    var str = CtrlCheckName.id;
    str = str.split(GridName)[0] + GridName;
	
	count = document.getElementById(str).rows.length;	
	if (count >1 )
	{
	  for (i = 3; i <= document.getElementById(str).rows.length  ; i++)
		{	
    		document.getElementById(str + "_ctl" + (i>=10?i:("0" + i)) + "_" + CtrlChildName).checked = NoItemCheck;
		}				
	}
	 str = str.split(GridName)[0] + "txtValue";
    if(NoItemCheck)
        {
            document.getElementById(str).value = "ALL";
        }
        else
        {
           document.getElementById(str).value = "";
        }
}
function InputDeleteValue(GridName,chkID,Value)
{
	var i;
	var count;
	var NoItemCheck;
	
	NoItemCheck = document.getElementById(chkID).checked;
	Value = 	Value.replace(".00","");
	Value = 	Value.replace(",","");
	var str = chkID.split(GridName)[0] + "txtValue";
	
	if(document.getElementById(str).value =="ALL")
	    document.getElementById(str).value = "";
    if(NoItemCheck == false)
        document.getElementById(str).value = document.getElementById(str).value.replace("[" + Value +"]!","");
    else
    {
        document.getElementById(str).value = document.getElementById(str).value.replace("[" + Value +"]!","");
        document.getElementById(str).value = document.getElementById(str).value + "[" +Value + "]!";
    }

}

//Kiem tra kieu so >= 0
function checkInput(ctrlID)
{
    var field = document.getElementById(ctrlID);
    if(field == null)
        {    
            return true;
        }
        
	if (field.value == "")
	{
	    field.focus();
        return false;	
        
    }
    return true;
}
function checkNumeric(ctrlID)
{	
var field = document.getElementById(ctrlID);
    if(field == null)
        {    
            return true;
        }

	if (field.value == "")
	{
        return false;	
    }
	var re;   
	re = /,/g;
	var value = field.value.replace(re,'');
	if (isNaN(value))
	{
		field.value = "";
		alert("Nhập số không hợp lệ !");
		field.focus();
		return false;
	}
	// Test yeu cau 1 so cho phai lon hon 0
	if (value < 0)
	{		
		field.value = "";
		alert("Nhập số không hợp lệ !");
		field.focus();
		return false;
	}
	FormatNumericWithSeparate(field);
	return true;
}
function ValidNumeric(ctrlID)
{	

    if(checkNumeric(ctrlID) ==true)  
	    return true;
	 else
	 {
	    var field = document.getElementById(ctrlID);
        if(field == null)
            return true;
         else
            field.focus();
        return false;
	 }
	    
}
function FormatNumericWithSeparate(field)
{
	var DecimalNumber = 1;
	var DecimalChar = ".";
	var SeperateChar = ",";
	var ValueString = parseFloat(field.value.replace(/,/g,'')).toString();
	//var ValueString = field.value;
	var ValueStringAfterDecimal = "";
	var ValueStringNew = "";	
	//if (field.value < 0)
	if (ValueString < 0)
	{
		ValueString = ValueString.substring(1, ValueString.length); //Bo dau tru				
	}		
	if (ValueString.indexOf(DecimalChar) != -1)
	{
		ValueStringAfterDecimal = ValueString.substring(ValueString.indexOf(DecimalChar), ValueString.indexOf(DecimalChar) + 2 + DecimalNumber) // Tinh luon dau cham
		//alert(ValueStringAfterDecimal);
		ValueString = ValueString.substring(0, ValueString.indexOf(DecimalChar))
	}

	if (ValueStringAfterDecimal.indexOf(SeperateChar) != -1)
	{
		field.value = "";
		field.focus();		
		return false;
	}	
	ValueString = ValueString.replace(/,/g,'');
	ValueStringNew = "";
	while (ValueString.length >3)
	{
		ValueStringNew = SeperateChar + ValueString.substring(ValueString.length - 3, ValueString.length) + ValueStringNew;
		ValueString = ValueString.substring(0, ValueString.length - 3);
	}
	if (DecimalNumber != 0)
		ValueStringNew = ValueString + ValueStringNew + ValueStringAfterDecimal;
	else
		ValueStringNew = ValueString + ValueStringNew;	
	//if (field.value < 0) 
	if (parseFloat(field.value.replace(/,/g,'')) < 0) 	
		ValueStringNew = "-" + ValueStringNew;
	
	field.value = ValueStringNew;
}

function CheckDate(ctrlID)
{
var field = document.getElementById(ctrlID);
 if(field == null)
        {    
            return true;
        }
var checkstr = "0123456789";
var DateField = field;
var Datevalue = "";
var DateTemp = "";
var seperator = "/";
var day;
var month;
var year;
var leap = 0;
var err = 0;
var i;
   err = 0;
   DateValue = DateField.value;
   if (DateValue =="")	return false;
   /* Delete all chars except 0..9 */
   for (i = 0; i < DateValue.length; i++) {
	  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
	     DateTemp = DateTemp + DateValue.substr(i,1);
	  }
   }
   DateValue = DateTemp;
   /* Always change date to 8 digits - string*/
   /* if year is entered as 2-digit / always assume 20xx */
   if (DateValue.length == 6) {
      DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }  
   
   if (DateValue.length != 8) {
      err = 19;}
   /* year is wrong if year = 0000 */
   year = DateValue.substr(4,4);
   if (year == 0) {
      err = 20;
   }
   /* Validation of month*/
   day = DateValue.substr(0,2);
   month = DateValue.substr(2,2);   
   if ((month < 1) || (month > 12)) {
      err = 21;
   }
   /* Validation of day*/
   
   if (day < 1) {
     err = 22;
   }
   
 
   /* Validation leap-year / february / day */
   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
      leap = 1;
   }
   if ((month == 2) && (leap == 1) && (day > 29)) {
      err = 23;
   }
   if ((month == 2) && (leap != 1) && (day > 28)) {
      err = 24;
   }
   /* Validation of other months */
   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
      err = 25;
   }
   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
      err = 26;
   }
   /* if 00 ist entered, no error, deleting the entry */
   if ((day == 0) && (month == 0) && (year == 00)) {
      err = 0; day = ""; month = ""; year = ""; seperator = "";
   }
   /* if no error, write the completed date to Input-Field (e.g. 13.12.2001) */
   
   if (err == 0) {
      DateField.value = day + seperator + month + seperator + year;
      if (DateField.value == "")  	
      {
		alert("Ngày không đúng định dạng!");
		DateField.value = "";
		DateField.focus();	
      }      
   }
   /* Error-message if err != 0 */
   else {
		DateField.value = "";
		DateField.focus();
		alert("Ngày không đúng định dạng!");      
   }
}