if(!SAPO.Widget||typeof(SAPO.Widget)=='undefined'){SAPO.namespace('Widget');}
SAPO.Widget.Thumbs=function(options)
{if(SAPO.Exception&&typeof(SAPO.Exception)!='undefined'){this.exception=new SAPO.Exception('SAPO::Widget.Thumbs');}else{this.exception=false;}
if(options!='undefined'){this.init(options);}else{this.init({});}};SAPO.Widget.Thumbs.prototype={init:function(options)
{options=SAPO.extendObj({url:false,targetUrl:false,mail:false,ondemand:false,type:'thumbnail',instance:false,savetxt:'Guardar',timeout:"10",longdelay:"5",shortdelay:"1",notop:"0",size:0,divid:false},arguments[0]||{});try{this.options=options;}catch(e){if(this.exception){this.exception.log(e);}}
if(window.location.protocol=='https:'){this.protocol='https://ssl.sapo.pt/';}else{this.protocol='http://';}
if(options.instance===false){this.instance=Math.round(10000*Math.random());var cmd='pdf'+this.instance+'=this';eval(cmd);}
this.type=options.type;this.req=0;this.limitReq=100;this.stoReq=false;this.errorReq=0;this.limitErrorReq=10;this.stoErrorReq=false;this.rand=Math.round(10000*Math.random());this.jsonName='json'+this.rand;this.urlJSON=false;this.urlObject=false;this.u=options.targetUrl?options.targetUrl:options.url;this.notop=options.notop;this.timeout=options.timeout;this.longdelay=options.longdelay;this.shortdelay=options.shortdelay;if(options.url.length>0&&options.type=='pdf'){this.mail=options.mail;var html='
';html+='
';html+='
';html+='
';if(options.divid){document.getElementById(options.divid).innerHTML=html;}
else
{document.write(html);}
this.hiddenelement=document.getElementById('hiddenelement'+this.rand);this.element=document.getElementById('element'+this.rand);if(options.ondemand){this.element.innerHTML='Gerar PDF';return;}}
if(options.url.length>0&&options.type=='thumbnail'){this.dimensions={0:[68,50],1:[111,82],2:[150,112],3:[200,150],4:[250,187],5:[300,225],6:[400,300],7:[768,576]};this.w=this.dimensions[options.size][0];this.h=this.dimensions[options.size][1];this.f=options.size;html='';html+='
';html+='
';html+='
';if(options.divid){document.getElementById(options.divid).innerHTML=html;}
else
{document.write(html);}}
this.hiddenelement=document.getElementById('hiddenelement'+this.rand);this.element=document.getElementById('element'+this.rand);this.renderObject();},sendMail:function(urlObject,url,id)
{mail=document.getElementById('mail'+id).value;form=document.getElementById('mf'+id);msg=document.getElementById('msg'+id);form.style.display='none';if(SAPO.Utility.Validator.mail(mail)===false){msg.innerHTML='E-mail inválido';msg.style.display='inline';return false;}
mailscript=document.createElement('SCRIPT');mailscript.type='text/javascript';mailscript.charset='utf-8';mailscript.src=this.protocol+'webthumbs.sapo.pt/mailjson?mail='+mail+'&url='+encodeURIComponent(url)+'&referer='+encodeURIComponent(document.URL);document.getElementsByTagName('HEAD')[0].appendChild(mailscript);msg.innerHTML='PDF enviado por mail';msg.style.display='inline';return false;},renderObject:function()
{this.setUrl();this.createScriptTag();this.deb=true;},setUrl:function()
{if(!this.u.match(/^http:\/\/|^https:\/\//i)){this.u='http://'+this.u;}
if(this.type=='pdf'){this.urlJSON=this.protocol+'webthumbs.sapo.pt/pdfjson?url='+encodeURIComponent(this.u)+'&jsonTag='+this.jsonName+'&rand='+Math.round(10000*Math.random());}
if(this.type=='thumbnail'){this.urlJSON=this.protocol+'webthumbs.sapo.pt/json?size='+this.f+'&url='+encodeURIComponent(this.u)+'&jsonTag='+this.jsonName+'&rand='+Math.round(10000*Math.random());if(this.notop==="1"){this.urlJSON+='¬op=1';}}
this.urlJSON+='&timeout='+this.timeout;this.urlJSON+='&longdelay='+this.longdelay;this.urlJSON+='&shortdelay='+this.shortdelay;},createScriptTag:function()
{this.script=document.createElement('SCRIPT');this.script.type='text/javascript';this.script.charset='utf-8';this.script.src=this.urlJSON;document.getElementsByTagName('HEAD')[0].appendChild(this.script);switch(this.type){case"pdf":this.getPDF();break;case"thumbnail":this.getImage();break;}},getPDF:function()
{try{if(this.req';}},onLoading:function()
{switch(this.type){case"pdf":this.element.innerHTML='A gerar PDF';break;case"thumbnail":var load='';this.element.innerHTML=load;break;}},onComplete:function(urlObject,url,failover)
{switch(this.type){case"pdf":if(this.mail){this.hiddenelement.innerHTML=''+this.options.savetxt+'';}
else
{this.hiddenelement.innerHTML=''+this.options.savetxt+'';}
break;case"thumbnail":var link=document.createElement("a");link.setAttribute('href',this.u);link.setAttribute('target','_new');var scriptElement=document.createElement("img");scriptElement.src=urlObject.replace(/http\:\/\//,this.protocol);scriptElement.width=this.w;scriptElement.height=this.h;scriptElement.style.position='relative';scriptElement.style.left='0px';scriptElement.style.top='0px';if(failover===0){scriptElement.style.border='1px dotted #000000';}
else
{scriptElement.style.border='1px dotted #FFFF00';}
link.appendChild(scriptElement);this.hiddenelement.appendChild(link);break;}
this.switchDivs();},onFail:function(url)
{this.hiddenelement.innerHTML='Ocorreu um erro';this.switchDivs();},switchDivs:function(){this.hiddenelement.style.display='inline';this.element.parentNode.replaceChild(this.hiddenelement,this.element);}};