
//         por diego nunes - dnunes.com
//  (cc) Conteúdo sob licença Creative Commons
//http://creativecommons.org/licenses/by-sa/2.0/


function adEvento(tO, tE, tF, tPs) { //AdEvento 3.1 -- <str|arr tObject(s)>, <str tEvent>, <func tFunction> [, arr tParams]
  if (tO instanceof Array) { for (n=tO.length; n>0; ) { if (!adEvento(tO[--n], tE, tF, tPs)) return false; } return true; }
  var tnF=(tPs) ? function(e) { tF.apply(tO, Array(e).concat(tPs)); } : tF;
  if (tO.attachEvent) { tO.attachEvent('on'+tE, tnF); return true; }
  if (tO.addEventListener) { tO.addEventListener(tE, tnF, true); return true; }
  /* alert('Erro!'); */ return false;
}
function gFETN(tTN, tFs, isER) { //getFilteredElements[by]TagName -- [str] TagName, [arr] theFilters, [bool] isERFilter
  var tEs, i, n, ii, nn, tF, tER, tR=new Array(); tEs=document.getElementsByTagName(tTN);
  if (!tFs) { return (tEs.length) ? tEs : false; }
  for (n=tEs.length, i=0; i<n; i++) { passed=1;
    for (nn=tFs.length, ii=0; ii<nn; ii++) { tF=tFs[ii].split('=');
      if (isER) { tER=new RegExp(tF[1], 'g'); if (!tER.test(tEs[i][tF[0]])) { passed=0; } }
      else { if (tEs[i][tF[0]] != tF[1]) passed=0; }
    } if (passed) tR[tR.length]=tEs[i]; // compatível com IE 5.1
  } return (tR.length) ? tR : false;
}
function getSrc(e) { /* event */ return (e.target) ? e.target : (window.event && event.srcElement) ? event.srcElement : false; }
function poin(e) { try { e.preventDefault(); } catch(e) { try { event.returnValue=false; } catch(e) { } } return false; }

var linked=0;
function linksout() { if (linked) { return false; } linked=1; //Hack pro Opera
  if (top.location.href!=self.location) { top.location.href=self.location.href; return true; }

  var tOs, n, i, tLI, tRUL, tROpts;
  //Links _blank
  tOs=gFETN('a', ['className=^(.* )?blank( .*)?$'], 1);
  for (n=tOs.length, i=0; i<n; i++) tOs[i].target='_blank';

  //Links popup
  tOs=gFETN('a', ['className=^(.* )?popup(_[0-9]+_[0-9]+)?( .*)?$'], 1); var tCNp;
  for (n=tOs.length, i=0; i<n; i++) {
    tCNp=tOs[i].className.replace(/^(.* )?(popup(_[0-9]+_[0-9]+)?)( .*)?$/, '$2').split('_');
    tOs[i].tW=tCNp[1]; tOs[i].tH=tCNp[2]; adEvento(tOs[i], 'click', openAsPop);
  }

  return true;
}
function openAsPop(e, tEF) { var tE, nA; tE=tEF?tEF:getSrc(e); if (window.event) e=event;
  if (!e.altKey && !e.shiftKey && !e.ctrlKey) {
    window.open(tE.href, '_blank', 'width='+ tE.tW +', height='+ tE.tH +', status=0, scrollbars=1, left=0, top=0');
    return poin(e);
  } return true;
}

adEvento(window, 'load', linksout);