/*****************************************************************/
/*  For Utility JavaScript Functions                             */
/*  This file gets called in the Tamko skin html template files  */
/*****************************************************************/


var isIE=window.attachEvent?true:false;
addEvent(window,'load',linktracker_init);
 
if(typeof(XMLHttpRequest)!='undefined'){
 var getXMLHttpObj = function(){
   return new XMLHttpRequest(); 
  }
 } else {
  var getXMLHttpObj = function(){
   var activeXObjects = ['Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.5.0','Msxml2.XMLHTTP.4.0','Msxml2.XMLHTTP.3.0','Msxml2.XMLHTTP','Microsoft.XMLHTTP'];
   for(var i=0; i<activeXObjects.length; i++){
   try{
    return new ActiveXObject(activeXObjects[i]);
   }catch(err){}   
  }    
 }
}
 
function addEvent(el, evType, fn, useCapture){
 usecapture = false;
  if (el.addEventListener){
    el.addEventListener(evType, fn, useCapture);
    return true;
  } else if (el.attachEvent){
    var r = el.attachEvent("on"+evType, fn);
    return r;
  } else {
    //alert("Handler could not be attached");
  }
}
 
function linktracker_init(){
 var els=document.getElementsByTagName('a');
 for(var i=0;i<els.length;i++){
  var href=els[i].href + "|" + els[i].innerHTML;
  //alert(href)
  addEvent(els[i],'click',linktracker_record);
 }
 els=document.getElementsByTagName('input');
 for(var i=0;i<els.length;i++){
  var href=els[i].type + "|" + els[i].innerHTML;
  //alert(href)
  addEvent(els[i],'click',linktracker_record);  
  els[i].setAttribute("autocomplete","OFF");
 }
}
 
function linktracker_record(event){
 event=event?event:(window.event?window.event:"");  
 
 var isImg = isIE?window.event.srcElement.tagName == 'IMG':event.currentTarget.tagName == 'IMG'?true:false;
 
 if (!isIE) {
  if (event.currentTarget.hasChildNodes){
   var children = event.currentTarget.childNodes;
   var tagNAME = event.currentTarget.tagName;
   //alert(tagNAME);
   if (children.length >= 0) {
    for (x=0;x <= children.length -1 ;x++){
     if (event.currentTarget.childNodes[x].tagName) {
      isImg = true;
      var imgChild = x;
      break;
     }
     
    }
   }
  }
 }
 
 var isInput = isIE?window.event.srcElement.tagName == 'INPUT':event.currentTarget.tagName == 'INPUT'?true:false;
 
 var imgSrc = isImg?isIE?window.event.srcElement.getAttribute('src'):event.currentTarget.childNodes[imgChild].getAttribute('src'):'notanimage';
 
 //var b= isImg?isIE?window.event.srcElement.parentNode:event.currentTarget.parentNode:isIE?window.event.srcElement:event.currentTarget; 
 
 var b= isIE?window.event.srcElement:event.currentTarget
  
 var tagNm = isIE?window.event.srcElement.getAttribute("tagname"):event.currentTarget.tagName;
 var tagId = isIE?window.event.srcElement.getAttribute("id"):event.currentTarget.id;
 var tagCn = isIE?window.event.srcElement.getAttribute("classname"):event.currentTarget.className;
 var tagHr = isIE?window.event.srcElement.getAttribute("href"):event.currentTarget.href;
 //alert(tagNm);
 if (tagNm == "A"){
  if (isIE){
   var aText = window.event.srcElement.innerHTML
  }else{
   var aText = event.currentTarget.innerHTML;
  }
 }
 
 var strHTTP = "/utils/writelog.aspx?";
 if (isInput) {
  var url =  strHTTP +"currentPage="+location.href+
      "&tag="+tagNm+
      "&type="+b.getAttribute('type')+
      "&name="+b.getAttribute('name')+
      "&id="+tagId+
      "&classname="+tagCn;
  if (b.getAttribute("src") != null) {
   url = url + "src="+b.getAttribute("src");
  }
 } else {
  var url =  strHTTP +"currentPage="+location.href+
      "&tag="+tagNm+
      "&href="+tagHr+
      "&id="+tagId+
      "&classname="+tagCn+
      "&innerHTML="+aText;
  if (imgSrc != "notanimage") {
   url = url + "&imgSrc="+imgSrc
  }
 } 
 
// alert(url)
 var r = new getXMLHttpObj();
 
 try {
  netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
 } catch (e) {
  //alert("Permission UniversalBrowserRead denied.");
 }
 
 if(r){
  //alert(r);
  r.open('GET', url,false);
  r.onreadystatechange = function (){
      if(r.readyState!=4) { 
    //alert('error'+r.readyState)
    return;
   }else{   
    var xmlDoc = r.responseText;  
 //   alert(xmlDoc); 
 //   document.getElementById('oXMLOut').innerHTML = tempStr
   }
  }
  r.send(null);
//  alert('r '+url);
//  document.getElementById('oXMLOut').innerHTML = url;
 }
}
