var customLink = "Custom Link";
function setExternalLinksTracks(serverName,pageName){
 	var linkContainer = window.document;
	if(linkContainer!=null){
    var elms = linkContainer.getElementsByTagName("A");
    for(var i = 0, maxI = elms.length; i < maxI; ++i) {
        var elm = elms[i];
        var isExternal = isExternalLink(elm.href,serverName);
        if (isExternal){
          var onclickFunc = elm.onclick;
          if (onclickFunc==null || 
          (""+onclickFunc).replace(/^\s+|\s+$/g, '')==""||
          (""+onclickFunc).replace(/^\s+|\s+$/g, '')=="undefined"){
            customLink = getCustomLinkName(pageName,elm.href);
            var str = "javascript:linkCode(this,\""+customLink.replace(/"([^"]*)"/g,"'$1'").replace('\"',"'")+"\")";
            var Func  = new Function(str);
            elm.onclick = Func;
          }
        }
      }
   }
}

function isExternalLink(link,serverName){
  var isExt = false;
  if (link!=null && link.replace(/^\s+|\s+$/g, '')!=''){
    var myStr = new String(link);
    var trimedLink = myStr.replace(/^\s+|\s+$/g, '').toLowerCase();
    var onSite = (trimedLink.indexOf((serverName).toLowerCase())!=-1)
     ||(trimedLink.indexOf(("/").toLowerCase())==0)
     ||(trimedLink.indexOf(("#").toLowerCase())==0);
     
     if (trimedLink.indexOf("javascript")== 0){
       onSite = onSite || !checkJavascriptLink(trimedLink,serverName.toLowerCase());
     }

    isExt = !onSite;
  }
  return isExt;
}

function checkJavascriptLink(trimLink,serverName){
  var retBool = false;
  try{
    if (trimLink.indexOf("javascript:open")== 0){
      var bracketPart = trimLink.split("(")[1];
      var url = bracketPart.split(",")[0];
      url = url.replace('\"'," ").replace("'"," ").replace(/^\s+|\s+$/g, '');
      if (url.indexOf("/")!=0||url==''){
         retBool = true;
      }
    }
  } catch(err){}
  return retBool;
}


function getCustomLinkName(pageName,href){
  var retStr = "";
  if ((pageName!="") && (pageName.replace(/^\s+|\s+$/g, '')!="")){
   newName = processPageName(pageName);
   retStr = newName+":";
  }
  var processedHref = ProcessHref(href);
  retStr +=processedHref;
  return retStr;
}


function processPageName(pageName){
 var retName = pageName;
 var splitName = pageName.split(":");
 if (splitName.length>2){
  retName = splitName[splitName.length-1];
 }
 return retName;
}

function ProcessHref(href){
  var ret = href;
  try {
     var strHref = href.replace(/^\s+|\s+$/g, '');
     strHref = strHref.toLowerCase();
     if (strHref.indexOf("javascript")==0){
        var bracketPart = strHref.split("(")[1];
        var url = bracketPart.split(",")[0];
        url = url.split(")")[0];
        ret = url.replace("'","").replace("'","").replace("\"","").replace("\"","");
     }
  }catch(err){
     ret = href;
  }
  return ret;
  
}