﻿// JScript File
/*=========================================================
                Checkbox - radio                
*=========================================================*/    

//checkAllBox: tên của check box all , childCheckboxName: tên của các check box con cần check all
function CheckAll4CheckBox( checkAllBox, childCheckboxName )
{
    var actVar = checkAllBox.checked ;

  for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        
        if ( e.type=='checkbox'&& e.name.indexOf(childCheckboxName) != -1)
            e.checked= actVar ;
    }
}//function

//childCheckboxName: tên của các check box con, parentCheckboxName: tên của check box checkAll
function UnCheckAll4CheckBox(childCheckboxName,parentCheckboxName)
{
    var allchecked = true; 
    for(i=0;i< document.aspnetForm.length;i++)
    { 
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox' && e.name.indexOf(childCheckboxName) != -1 ) 
        { 
            if ( e.checked == false)// nếu có bất kỳ thằng con nào uncheck thì cũng uncheck thằng cha 
            {
                allchecked = false;
                break;
            }
        } 
    } 
    for(i=0;i< document.aspnetForm.length;i++) 
    { 
        e = document.aspnetForm.elements[i];
        // nếu check box con check hết thì sẽ check thằng cha. Và có bất cứ check box con nào uncheck thì cũng uncheck thằng cha
        if ( e.type=='checkbox' && e.name.indexOf(parentCheckboxName) != -1)
        { 
	        e.checked= allchecked ;
	        break;
        }
    } 
}//function

//checkAllBox: tên của check box all , childCheckboxName: tên của các check box con cần check all
function CheckAll4CheckBox1( checkAllBox, childCheckboxName )
{
    var actVar = checkAllBox.checked ;
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        
        if ( e.type=='checkbox'&& e.id.indexOf(childCheckboxName) != -1)
            e.checked= actVar ;
    }
}//function
//childCheckboxName: tên của các check box con, parentCheckboxName: tên của check box checkAll BY NAME
function UnCheckAll4CheckBox1(childCheckboxName,parentCheckboxName)
{
    var allchecked = true; 
    for(i=0;i< document.aspnetForm.length;i++)
    { 
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox' && e.id.indexOf(childCheckboxName) != -1 ) 
        { 
            if ( e.checked == false)// nếu có bất kỳ thằng con nào uncheck thì cũng uncheck thằng cha 
            {
                allchecked = false;
                break;
            }
        } 
    } 
    for(i=0;i< document.aspnetForm.length;i++) 
    { 
        e = document.aspnetForm.elements[i];
        // nếu check box con check hết thì sẽ check thằng cha. Và có bất cứ check box con nào uncheck thì cũng uncheck thằng cha
        if ( e.type=='checkbox' && e.id.indexOf(parentCheckboxName) != -1)
        { 
	        e.checked= allchecked ;
	        break;
        }
    } 
}//function

//checkAllBox: tên của check box all , childCheckboxName: tên của các check box con cần check all
function CheckAllAndDisabled4CheckBox( checkAllBox, childCheckboxName )
{
    var actVar = checkAllBox.checked ;
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox'&& e.name.indexOf(childCheckboxName) != -1)
        {        
            e.checked= actVar ;
            e.disabled= actVar ;
        }
    }
}//function

// chỉ check 1 radio trong một mảng radio
function checkRadio(currentRadioObj,RadioName)
{
    try
    {
         for(i=0;i< document.aspnetForm.length;i++)
        {
            e = document.aspnetForm.elements[i];
            if ( e.type=='radio' && e.checked && e.name.indexOf(RadioName) != -1)
            {
                e.checked = false;
            }
        }
        currentRadioObj.checked = true;
    
    }catch(err){alert(err);}
	    
}//function
    
// kiểm tra xem checkBoxList có check box con nào được chọn hay không    
function IsChecked_CheckBoxList(CheckboxListName)
{
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox'&& e.name.indexOf(CheckboxListName) != -1 && e.checked == true)
            return true;// có bất cứ cái nào được chọn thì return true
    }
    return false;
}
// kiểm tra xem RadioButtonList có RadioButton con nào được chọn hay không    
function IsChecked_RadioButtonList(RadioButtonName)
{
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        if ( e.type=='radio'&& e.name.indexOf(RadioButtonName) != -1 && e.checked == true)
            return true;// có bất cứ cái nào được chọn thì return true
    }
    return false;
}

//CheckboxName: tên của các check box cần disable, flag: true(ẩn) or false(hiện)
function disable4CheckBox(CheckboxName, flag )
{
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox'&& e.name.indexOf(CheckboxName) != -1)
            e.disabled= flag;
    }
}//function

//CheckboxName: tên của các check box cần disable, flag: true(ẩn) or false(hiện)
function disable4CheckBox2(CheckboxName, flag )
{
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox'&& e.name.indexOf(CheckboxName) != -1 && e.checked == false)
            e.disabled= flag;
    }
}//function

//checkboxName: tên của các check box cần check, flag: true or false
function check4CheckBox( checkboxName, flag )
{
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox'&& e.name.indexOf(checkboxName) != -1)
            e.checked= flag ;
    }
}//function
// lấy value của các checkbox được check, chuoiTach: chuỗi cộng theo để nhận dạng
function getValue4CheckedCheckBox( checkboxName , chuoiTach)
{
    var val='';
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox'&& e.name.indexOf(checkboxName) != -1 && e.checked)
        {
            if(val=='')
                val +=e.value;
            else
                val += chuoiTach +e.value;
        }
    }
    return val;
}//function
// set value cho các checkbox, value: các giá trị, chuoiTach: chuỗi cộng theo để nhận dạng
function setValue4CheckBox( checkboxName , value, chuoiTach)
{
    var arrValue=value.split(chuoiTach);
    if(arrValue.length>0)
    {
        for(i=0;i< document.aspnetForm.length;i++)
        {
            e = document.aspnetForm.elements[i];
            if ( e.type=='checkbox'&& e.name.indexOf(checkboxName) != -1)
            {
                for(j=0;j< arrValue.length;j++)
                {
                    if(e.value == arrValue[j])
                    {
                        //alert(e.value +'-'+ arrValue[j]);
                        e.checked= true;
                        break;
                    }
                }//for j
            }//if
        }//for i
    }
}//function
// lấy value của các checkbox được check, chuoiTach: chuỗi cộng theo để nhận dạng
function getValue4DropDownList( dropDownListName , chuoiTach)
{
    var val='';
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        // 
        if (e.type=='select-one'&& e.name.indexOf(dropDownListName) != -1 && e.value!='0')
        {
            if(val=='')
                val +=e.value;
            else
                val += chuoiTach +e.value;
        }
    }
    return val;
}//function
function countNumberOfSelectedCheckBox( checkboxName )
{
    var count = 0;
    for(i=0;i< document.aspnetForm.length;i++)
    {
        e = document.aspnetForm.elements[i];
        if ( e.type=='checkbox'&& e.name.indexOf(checkboxName) != -1 && e.checked)
        {
            count++;
        }
    }
    return count;
}//function
//checkboxName: tên của các check box
function checkNumberOfSelectedCheckBox(checkboxName, currentCheckboxObj)
{
    
//    if ( currentCheckboxObj.checked == true)
//    {
//        count = countNumberOfSelectedCheckBox(checkboxName);
//        if(count>3)
//        {
//            currentCheckboxObj.checked = false;
//            return false;
//        }   
//    }
    
        count = countNumberOfSelectedCheckBox(checkboxName);
        if(count>=3)
        {
            if(count>3)
                currentCheckboxObj.checked = false;
            disable4CheckBox2(checkboxName, true );//ẩn
            return false;
        }
        else
        {
            disable4CheckBox2(checkboxName, false);//hiện
            return true;
        }
    
}//function
/*=================================================================================
// hiển thị số luợng ký tự trong các ô nhập liệu
===================================================================================*/          
//field: control ô nhập liệu, countfield: ô hiển thị ký tự, maxlimit: số ký tự tối đa
function textCounter(field, countfield, maxlimit) 
{
    //alert(field.value);
    if (field.value.length > maxlimit) // if too long...trim it!
        field.value = field.value.substring(0, maxlimit);
    // otherwise, update 'characters left' counter
    else 
        countfield.value = maxlimit - field.value.length;
}    
/*=========================================================
                
*=========================================================*/    

