﻿function update_check_boxes(elementid) {
	var check_box = document.getElementById(elementid);
	alert(check_box);
	if (elementid.indexOf("Doesn't matter") != -1) {  // user has checked Doesn't matter box
		if (check_box.checked) {
			var root_name = elementid.slice(0,elementid.indexOf("Doesn't matter"));
			uncheck_all(root_name);
			check_box.checked = true;
		}
	}
	else { 
		if (check_box.checked) {  // user has checked a non-Doesn't matter box, so make sure Doesn't matter box is unchecked
      // quick hack to handle 2-digit checkbox indexes
      for(var i = 0; i < 2; i++) {
        var any_id = elementid.slice(0,elementid.length - 1 - i) + "Doesn't matter";
        var any_box = document.getElementById(any_id);
        if(any_box && any_box.checked)
          any_box.checked = false;
      }
		}
	}
}

function uncheck_all(root_name) {
	var frm = document.forms[0];
	var element_id = "";
	var root_name_length = root_name.length;	
	for(var i=0;i<frm.elements.length;i++) {
		if(frm.elements[i].type == "checkbox") {
			element_id = frm.elements[i].id;
			if(element_id.slice(0,root_name_length) == root_name)
				frm.elements[i].checked = false;
		}
	}
}

function check_all(root_name) {
	var frm = document.forms[0];
	var element_id = "";
	var root_name_length = root_name.length;
	for(var i=0;i<frm.elements.length;i++) {
		if(frm.elements[i].type == "checkbox") {
			element_id = frm.elements[i].id;
			if(element_id.slice(0,root_name_length) == root_name)
				frm.elements[i].checked = true;
		}
	}
}

function toggleSelectAll() {
	var select_all = document.getElementById("select_all");
	if (select_all.checked) {
		check_all("bulletins_");
		check_all("msgs_");
		check_all("ublock_");
	}
	else {
		uncheck_all("bulletins_");
		uncheck_all("msgs_");
		uncheck_all("ublock_");
	}
}




////////////////////////////////////////////////////////////
function getCheckBoxListItemsChecked(elementId) 
{
 //var elementRef = document.getElementById(elementId);
 var elementRef = elementId;
 var checkBoxArray = elementRef.getElementsByTagName('input');
 var checkedValues = '';

 for (var i=0; i<checkBoxArray.length; i++) 
 { 
  var checkBoxRef = checkBoxArray[i];

  if ( checkBoxRef.checked == true ) 
  {
   /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
   // AFAIK, you cannot get the value property of a ListItem in a CheckBoxList.
   // You can only get the Text property, which will be in an HTML label element.
   /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

   var labelArray = checkBoxRef.parentNode.getElementsByTagName('label');

   if ( labelArray.length > 0 )
   {
    if ( checkedValues.length > 0 )
     checkedValues += ', ';

    checkedValues += labelArray[0].innerHTML;
    
   }
  }
 }

 return checkedValues;
}



function readCheckBoxList() 
{
 var checkedItems = getCheckBoxListItemsChecked('<%= chklistAbtMaritialStatus.ClientID %>');
 alert('Items checked: ' + checkedItems);
}
function uncheckAll(chkBoxList)
{
    //alert(chkBoxList);
    var chkBoxCount= chkBoxList.getElementsByTagName("input");
    //alert(chkBoxCount);
    for(var j=1;j<chkBoxCount.length;j++) 
            {
                chkBoxCount[j].checked = false;                    
                //alert(j);
            }
    
}
function uncheckFirst(chkBoxList)
{
    //alert(chkBoxList);
    var chkBoxCount= chkBoxList.getElementsByTagName("input");
    //alert(chkBoxCount);
   chkBoxCount[0].checked = false; 
    
}
function CheckBoxListSelectNew(checkBoxID)
{
    //alert(checkBoxID);
    var chkBoxList = checkBoxID; //document.getElementById('<%= chklistAbtMaritialStatus.ClientID %>');                       
    
    var chkBoxCount= chkBoxList.getElementsByTagName("INPUT");   
          
    //var checkedItems = getCheckBoxListItemsChecked('<%= chklistAbtMaritialStatus.ClientID %>');
    var checkedItems = getCheckBoxListItemsChecked(checkBoxID);    
    //alert(checkedItems);
    if(checkedItems.indexOf("Doesn't matter")=="-1")                //---Doesn't matter not selected.
    {
               
        chkBoxCount[0].checked = false;
//        if(checkedItems=="")
//        {
//            chkBoxCount[0].checked = true;
//        }
    }
    else
    {    //alert("else"    )
        if(checkedItems.indexOf(",")!="-1")                     //-- Other options are also selected.
        {        
            
            for(var j=0;j<chkBoxCount.length;j++) 
            {
                chkBoxCount[j].checked = false;                    
            }            
        }
         //chkBoxCount[0].checked =true;
    }
}

function CheckBoxListSelect(checkBoxID)
{    

      alert(checkBoxID);
      
      
       
       //alert("run");
       var chkBoxList = document.getElementById('<%= chklistAbtMaritialStatus.ClientID %>');                       
       var chkBoxCount= chkBoxList.getElementsByTagName("INPUT");
       
       if(chkBoxCount[0].checked ==  true)
       {
            alert("1AA");
            
            var b = 0;  
            for(var k=1;k<chkBoxCount.length;k++)
            {
                if(chkBoxCount[k].checked == false)            
                {
                    b = 1;
                }
                else
                {
                    b = 0;
                    break;
                }
            }
            alert("b="+b);
            if(b==1)
            {
                chkBoxCount[0].checked = false;
            }
            else
            {
                chkBoxCount[0].checked = true;
                for(var m=1;m<chkBoxCount.length;m++) 
                {
                    
                    chkBoxCount[m].checked = false;
                }
            }
        
        }
        else
        {             
            alert("2");
            var a = 0;
            for(var i=1;i<chkBoxCount.length;i++) 
            {
                if(chkBoxCount[i].checked == false)
                {
                    a=1;
                }
                else
                {
                    a=0;
                    break;
                }                                
            }
            if(a==1)
            {
                for(var j=1;j<chkBoxCount.length;j++) 
                {
                    chkBoxCount[j].checked = false;
                    chkBoxCount[0].checked = true; 
                }
                
            }
            
        }
        
        return false; 
}