 
 //取得点击事件 
document.getElementById("root_sub").onclick = function(evt){ 
       evt = evt || window.event; 
       clickTree(evt);
       CheckEvent(evt);
}

  //树型展开与折叠  
  function   clickTree(e){  
      e.cancelBubble   =   true;  
      if(document.all)
      {
        var   elements   =   e.srcElement.children;  
      }
      else
      {
        var   elements   =   e.target.childNodes; 
      }
      if   (elements.length   >   0){  
          for   (var   i   =   0;   i   <   elements.length;   i++){  
              if   (elements[i].tagName !=undefined && elements[i].tagName.toLowerCase()   ==   "ul")
              {  
                  if   (elements[i].style.display   ==   "none")
                  {  
                      elements[i].style.display   =   ""; 
                      if(document.all)
                      {
                        e.srcElement.style.listStyleImage   =   "url(/Misc/Img/o.gif)";  
                      }
                      else
                      {
                        e.target.style.listStyleImage   =   "url(/Misc/Img/o.gif)";  
                      }
                  }   
                  else   
                  {  
                      elements[i].style.display   =   "none";  
                      if(document.all)
                      {
                        e.srcElement.style.listStyleImage   =   "url(/Misc/Img/s.gif)"; 
                      }
                      else
                      {
                        e.target.style.listStyleImage   =   "url(/Misc/Img/s.gif)"; 
                      }
                  }  
              }  
          }  
      }  
  }  
   
   //初始化树
  function   initialize(element){  
      if(document.all)
      {
          if(getChildCount(element)>0 )
          {
              if(element.tagName.toLowerCase()=="li")
              {
                element.style.listStyleImage = "url(/Misc/Img/o.gif)";
              }
              if(element.tagName.toLowerCase()=="ul"||element.tagName.toLowerCase()=="li")
              {
                  for(var i = 0;   i< element.children.length;i++)
                  { 
                      initialize(element.children[i]); 
                  } 
              }

          }   
          else 
          {  
             if(element.tagName.toLowerCase()   ==   "li")
              {
                element.style.listStyleImage   =   "url(/Misc/Img/p.gif)"; 
              }
          } 
      }
      else
      {
          if(getChildCountFirefox(element)>0)
          {
              if(element.tagName !=undefined && element.tagName.toLowerCase()=='li')
              {
                  element.style.listStyleImage = "url(/Misc/Img/o.gif)";
              }
              for(var i = 0;   i< element.childNodes.length;i++)
              { 
                  initialize(element.childNodes[i]); 
              } 

          }   
          else 
          {  
             if(element.tagName !=undefined && element.tagName.toLowerCase()=='li')
              {
                  element.style.listStyleImage = "url(/Misc/Img/p.gif)";
              }
          } 
      }
  }  
  
  initialize(document.getElementById("root_sub")); 
  
  //取得子节点数量
  function getChildCount(obj)
  {
      var count=0;
      for(var i=0;i<obj.children.length;i++)
      {
        if(obj.tagName.toLowerCase()=='li'&&obj.children[i].tagName.toLowerCase()=='ul')
        {
          count++;
        }
        else
        {
          if(obj.tagName.toLowerCase()=='ul'&&obj.children[i].tagName.toLowerCase()=='li')
          {
            count++;
          }
        }
      }
      return count;
  }
  
  //取得子节点数量(firefox)
  function getChildCountFirefox(obj)
  {
      var count=0;
      for(var i=0;i<obj.childNodes.length;i++)
      {
        if(obj.tagName.toLowerCase()=='li'&& obj.childNodes[i].tagName !=undefined && obj.childNodes[i].tagName.toLowerCase()=='ul')
        {
          count++;
        }
        else
        {
          if(obj.tagName.toLowerCase()=='ul'&& obj.childNodes[i].tagName !=undefined && obj.childNodes[i].tagName.toLowerCase()=='li')
          {
            count++;
          }
        }
      }
      return count;
  }

//勾选
function CheckEvent(e)
        {
            var obj = e.srcElement || e.target;
                        
            if(obj.tagName != "INPUT" || obj.type != "checkbox")
            {
                return;
            }            
            
            var eventNode = GetNode(obj);
            SettingChild(eventNode, obj.checked);
            SettingParent(obj);
        }
        
        function GetNode(obj)
        {
            var chkId  = obj.getAttribute("ID");
            
            var nodeId ="ul"+chkId.substring(3);

            return document.getElementById(nodeId);
        }
        
        function SettingChild(parentNode, checkState)
        {
            if(parentNode != null)
            {  
                for(var i = 0;i < parentNode.childNodes.length; i++)
                {                
                    if(parentNode.childNodes[i].tagName == "INPUT" && parentNode.childNodes[i].type == "checkbox")
                    {
                        parentNode.childNodes[i].checked = checkState;
                    }
                    
                    SettingChild(parentNode.childNodes[i], checkState);
                }
            }
        }
    
        function SettingParent(childNode)
        {
            if(childNode == null) 
            { 
                return; 
            }
            
            var objParent = childNode.parentNode;
            
            if(objParent == null || objParent == "undefined")
            {
                return;
            }
            
            while(objParent && objParent.tagName != "UL")
            {
                objParent = objParent.parentNode;
            }
            if(objParent == "undefined" || objParent == null||objParent.id=="")
            {
                return;
            }
            
            var parentId   = objParent.id;            
            var parentNode = document.getElementById(parentId);

            childIds = '';
            
            GetChilds(parentNode);
            
            childIds = childIds.substring(0, childIds.length - 1);
            
            var arrayChild = childIds.split(",");
            var checkState = false;
            
            for(var i in arrayChild)
            {                
                if(document.getElementById(arrayChild[i]).checked)
                {
                    checkState = true;
                }
            }
            
            parentId = parentId.replace("ul","chk");
            
            var parentObj = document.getElementById(parentId);
            
            if(parentObj == null)
            {
                return;
            }
            
            parentObj.checked = checkState;
            
            SettingParent(parentObj);
        }
        
        var childIds = '';
        
        function GetChilds(parentNode)
        {
            if (parentNode == null)
            {
                return;
            }
                        
            for(var i = 0; i < parentNode.childNodes.length; i++)
            {                
                if(parentNode.childNodes[i].tagName == "INPUT" && parentNode.childNodes[i].type == "checkbox")
                {
                    childIds = parentNode.childNodes[i].id + "," + childIds;
                }
                
                GetChilds(parentNode.childNodes[i]);
            }
        }


var tempTop=0;
document.onmouseover = function(evt){ 
       evt = evt || window.event;    
       tempTop=evt.clientY;
       tempLeft=evt.clientX;  
}

function displaySubscribes()
{
    var obj=document.getElementById('emailid');
    obj.style.display='block';
    if(tempTop)
    {
        obj.style.top=tempTop+document.documentElement.scrollTop+"px";
        document.getElementById("hid_top").value=obj.style.top;
        obj.style.left=tempLeft+document.documentElement.scrollLeft-200+"px";
        document.getElementById("hid_left").value=obj.style.left;
    }
    else
    {
        obj.style.top=document.getElementById("hid_top").value;
        obj.style.left=document.getElementById("hid_left").value
    }
}
function verify()
{
    var obj=document.getElementById("txt_subEmail");
    if(obj.value=="")
    {
        document.getElementById("vMsg").innerHTML="请输入Eamil地址";
        return false;
    }
    
    if(!checkemail(obj.value))
    {
        document.getElementById("vMsg").innerHTML="Email格式不正确!";
        return false;
    }
    var chk_subs=document.getElementsByName("chk_sub");
    
    var Txt_Email;
    var Categorys;
    for(var i=0;i<chk_subs.length;i++)
    {
        if(chk_subs[i].checked)
        {
            Categorys+="|"+chk_subs[i].value;
        }
    }
    
    SubmitSubscribes(obj.value,Categorys);
    return false;
}
function checkemail(email)
	{
		if(email.length==0)
		{return true;}
		var pn_0=email.indexOf("@");
		var pn_1=email.indexOf(".",pn_0);
		var pn_2=email.length;
		if(pn_0<1||pn_1<pn_0+2||pn_1+2>pn_2)
		{return false;}
		else
		{return true;}
}

//ajax提交数据
function SubmitSubscribes(Txt_Email,Categorys)
{
    var obj=document.getElementById('emailid');
    $.ajax
    ({
        type     : 'POST',
        url      : '../../../AjaxService/Subscribes.ashx',
        dataType : 'text',
        async    : false,
        data     : "Txt_Email="+Txt_Email+"&Categorys="+Categorys,
        success  : function(msg)
        {
            alert(msg.split("|")[1]);
            if(msg.split("|")[0]=="True")
            {
                obj.style.display="none";
                document.getElementById("vMsg").innerHTML=msg.split("|")[1];
                document.getElementById('Button_subscribes').disabled="disabled";
            }
        }
    });
}
