var xmlhttp;


function hasClass(ele,cls) { if(!ele) {return false}; return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));} 

function addClass(ele,cls) {	if (!this.hasClass(ele,cls)) ele.className += " "+cls;} 
function removeClass(ele,cls) {	if (hasClass(ele,cls)) { var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');		ele.className=ele.className.replace(reg,' ');	}}

function addClassById(id,cls) { var ele = document.getElementById(id); addClass(ele,cls); }
function removeClassById(id,cls) { var ele = document.getElementById(id); removeClass(ele,cls); }

function getElementsByClassName2(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function getElementsByClassName(node, tag, searchClass) {
        var classElements = new Array();
        if ( node == null )
                node = document;
        if ( tag == null )
                tag = '*';
        var els = node.getElementsByTagName(tag);
        var elsLen = els.length;
        var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
        for (i = 0, j = 0; i < elsLen; i++) {
                if ( pattern.test(els[i].className) ) {
                        classElements[j] = els[i];
                        j++;
                }
        }
        return classElements;
}


function isDisplayed(parent) {  
var body = document.body  

  while(parent!= body) {   
    if(parent.style.display == "none" || parent.style.visibility == "hidden" || hasClass(parent, 'hide'))    
      return false;
    parent = parent.parentNode;  
  }
  
  return true;
}



function addEventListener(obj, type, func, bcapture) {
  if (obj.addEventListener){
    obj.addEventListener(type, func, bcapture); 
  } else if (obj.attachEvent){
    obj.attachEvent('on'+type, func);
  }
}


function loadXMLDoc(url)
{
  xmlhttp=null;
  // code for Mozilla, etc.            
  if (window.XMLHttpRequest)
  {
    xmlhttp=new XMLHttpRequest();
  }
  // code for IE
  else if (window.ActiveXObject)              
  {
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (xmlhttp!=null)
  {
    xmlhttp.open("GET",url,false);
    xmlhttp.send(null);
  }
}  


function loadSelect(targetObj,data, bIncludeBlank)
{
  if(!targetObj || !data)
  {
    return;
  }

     var seloptions=targetObj.getElementsByTagName("option");
     for (i=seloptions.length-1; i>=0; i--)
     {
        targetObj.removeChild(seloptions[i]);
     }// end for i

  
  if(bIncludeBlank) {
    var option = document.createElement('option');
    option.value = "";
    targetObj.appendChild(option);
  }

  iStart = 0;
  for(var k=iStart;k<data.length;k++)
  {

    var options=data[k];
    var option=document.createElement('option');
    option.value=options.firstChild.nodeValue;
    option.appendChild(document.createTextNode(options.firstChild.nodeValue));
    targetObj.appendChild(option);
    option=null;
    options=null;
  }

  return;
}

function cc(theID, theClass)
{
      whichID=document.getElementById(theID);                  
      if(whichID)
        whichID.className=theClass;
      else
        alert(theID);
}  


function setOption(oSelect, sValue) {
  for(i=0; i<oSelect.length; i++) {
    if(oSelect.options[i].value == sValue) {
      oSelect[i].selected = true;
      return true;
    }
  }
  return false;
}

function toggleChecked(id, bUnselect) {
var oCheck = document.getElementById(id);
var oCheckText = document.getElementById(id+"_text");

if(bUnselect) {
  oCheck.checked = false;
}

  if(oCheck.checked) {
    oCheckText.className = "checked";          
  } else {
    oCheckText.className = "unchecked";     
  }
}

function getCounties(targetid, stateid)
{
 var oC = document.getElementById(targetid);

 loadXMLDoc("https://www.simplefilings.com/getcounties.php?s="+stateid);
 var docElem=xmlhttp.responseXML.getElementsByTagName('county');
 loadSelect(oC,docElem, true);

}

function toggle_sameas(thisid, otherid, checkid) {
  var oOID = document.getElementById(otherid);
  var oTID = document.getElementById(thisid);
  if(oOID.value != oTID.value)
  {
    toggleChecked(checkid, true);
  }
}

function log_click(clickdestination,sessionID,event_type,linkid)
{
  if(typeof BrowserDetect != 'undefined'){
    var browser = BrowserDetect.browser + ' ' + BrowserDetect.version;
  } else {
    var browser = '';
  }
  if(linkid == null) {
	linkid = 0;
  }

        var rand_num=Math.floor(Math.random()*10000);
        if (!event_type)
        {
                event_type = "";
        }
        log_click_img       = new Image();
        log_click_img.src   = '/taxid/scripts/ad_log.cgi?R=' +
                        escape(document.location) + '&U=' + browser + '&s=' + sessionID +
                        '&c=' + escape(clickdestination)+ '&k=' + event_type +
                        '&rn=' + rand_num + '&l=' + linkid;
}

function link_click(clickdestination,sessionID,event_type,linkid,dest_url)
{
	//document.write(dest_url);
  log_click(clickdestination,sessionID,event_type,linkid);
  if(linkid == 3)
    window.open(dest_url);
  else
    window.location = dest_url;
}

function link_click_video(clickdestination,sessionID,event_type,linkid,dest_url)
{
  	log_click(clickdestination,sessionID,event_type,linkid);
}

function openEINVideo()
{
	window.open('http://www.simplefilings.com/walkthrough/ein/einWalkthrough.html','Demo','width=542,height=450,status=no,toolbar=no,scrollbars=no,resizable=no');
} 
function openDBAVideo()
{
	window.open('http://www.simplefilings.com/walkthrough/dba/dbaWalkthrough.html','Demo','width=542,height=450,status=no,toolbar=no,scrollbars=no,resizable=no');
}










