/********** start common functions **********/



function objXML(url) {
  var xmlHTTP = (window.ActiveXObject) ? (new ActiveXObject("Microsoft.XMLHTTP")) : (new XMLHttpRequest());
  this.getXML = objXML_getXML;
  this.getHeaderInfo = objXML_getHEAD;
  this.checkStatus = objXML_checkStatus;
  this.resetHTTP = objXML_resetHTTP;
  this.getResponseXML = objXML_getResponseXML;
  this.mode = "XML"; //XML or HTML
  this.cachecontrol = "private";
  this.async = true;
  this.url = url;
  this.intCacheLevel = 100;
  this.cacheoverride = 0;  
  
   
  function objXML_getXML(url,doFunc) {
    if(!doFunc) doFunc = function() {};

    xmlHTTP.onreadystatechange = function() {
      if (xmlHTTP.readyState==4) {
        // if "OK"
        if (xmlHTTP.status==200) {
          doFunc();  
        }   
      }
    }
    
    var randNum = (this.cacheoverride > 0) ? this.cacheoverride : ((this.cachecontrol=="private") ? Math.round(Math.random()*this.intCacheLevel) : 1);
    (url.indexOf("?")>-1) ? url+="&rnd="+randNum : url+="?rnd="+randNum;
 
    xmlHTTP.open("GET",url,this.async);
    xmlHTTP.send(null);
    
  }

  function objXML_getResponseXML() {
    return xmlHTTP.responseXML;
  }
  
      
  function objXML_resetHTTP() {
    xmlHTTP = (window.ActiveXObject) ? (new ActiveXObject("Microsoft.XMLHTTP")) : (new XMLHttpRequest());
  }      
 
       
  function objXML_getHEAD(url,doFunc) {
    if(!doFunc) doFunc = function() {};
    xmlHTTP.onreadystatechange = doFunc;
    xmlHTTP.open("HEAD",url,this.async);
    xmlHTTP.send(null);

  }
    
  
  function objXML_checkStatus() {
    // if xmlhttp shows "loaded"
    if (xmlHTTP.readyState==4) {
      // if "OK"
      if (xmlHTTP.status==200) {
        return true;      
      } else {
        return false;
      }
    }
    return false;
  }
  

}

function WriteInnerHTML(id,str,bAppend) {
  if(document.getElementById(id)) {
    if(!bAppend) bAppend=false;
    document.getElementById(id).innerHTML = (bAppend)? document.getElementById(id).innerHTML+str:str;
  }
}
function WriteInnerHTMLExternal(id,str,bAppend) {
  if(id) {
    if(!bAppend) bAppend=false;
    id.innerHTML = (bAppend)? id.innerHTML+str:str;
  }
}

function GetDate(dte) {
  if(!dte) dte=new Date();
  return dte.getFullYear() + ((dte.getMonth()<10)?"0"+dte.getMonth():dte.getMonth()) + ((dte.getDate()<10)?"0"+dte.getDate():dte.getDate());
}



/********** end common functions **********/