PageSourceSearch

https://www.cm-macedodecavaleiros.pt/assets/wm-smile/javascripts/vendor/add_to_calendar-4eb19d952b.vendor.js

js cm-macedodecavaleiros.pt collected 2026-09-24 21:51:05 UTC 7,682 bytes, 2 lines download raw bytes

1(function(w,d){if(w.addtocalendar&&typeof w.addtocalendar.start=="function")return;w.addtocalendar||(w.addtocalendar={});var isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"},isFunc=function(e){return Object.prototype.toString.call(e)==="[object Function]"},ready=function(e){d.readyState==="complete"||d.readyState==="interactive"?setTimeout(e,0):d.addEventListener("DOMContentLoaded",e,!1)};addtocalendar.languages={de:"In den Kalender",en:"Add to Calendar",es:"A\xF1adir al Calendario",fr:"Ajouter au calendrier",hi:"\u0915\u0948\u0932\u0947\u0902\u0921\u0930 \u092E\u0947\u0902 \u091C\u094B\u0921\u093C\u0947\u0902",in:"Tambahkan ke Kalender",ja:"\u30AB\u30EC\u30F3\u30C0\u30FC\u306B\u8FFD\u52A0",ko:"\uCE98\uB9B0\uB354\uC5D0 \uCD94\uAC00",pt:"Adicionar ao calend\xE1rio",ru:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0432 \u043A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044C",uk:"\u0414\u043E\u0434\u0430\u0442\u0438 \u0432 \u043A\u0430\u043B\u0435\u043D\u0434\u0430\u0440",zh:"\u6DFB\u52A0\u5230\u65E5\u5386"},addtocalendar.calendar_urls={},addtocalendar.loadSettings=function(element){var settings={language:"auto","show-list-on":"click",calendars:["iCalendar","Google Calendar","Outlook","Outlook Online","Yahoo! Calendar"],secure:"auto","on-button-click":function(){},"on-calendar-click":function(){}};for(var option in settings){var pname="data-"+option,eattr=element.getAttribute(pname);if(eattr!=null){if(isArray(settings[option])){settings[option]=eattr.replace(/\s*,\s*/g,",").replace(/^\s+|\s+$/g,"").split(",");continue}if(isFunc(settings[option])){var fn=window[eattr];settings[option]=isFunc(fn)?fn:eval("(function(mouseEvent){"+eattr+"})");continue}settings[option]=element.getAttribute(pname)}}return settings};function parseEventDate(e){if(!e)return null;var a=String(e).trim(),t=a.match(/^(\d{4})-(\d{2})-(\d{2})[ T](\d{2}):(\d{2}):(\d{2})/);return t?{y:t[1],mo:t[2],d:t[3],h:t[4],mi:t[5],s:t[6]}:(t=a.match(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z?$/),t?{y:t[1],mo:t[2],d:t[3],h:t[4],mi:t[5],s:t[6]}:null)}function pad(e){return e<10?"0"+e:""+e}function formatUtc(e){return e.getUTCFullYear()+pad(e.getUTCMonth()+1)+pad(e.getUTCDate())+"T"+pad(e.getUTCHours())+pad(e.getUTCMinutes())+pad(e.getUTCSeconds())+"Z"}function icsLocal(e){return e?e.y+e.mo+e.d+"T"+e.h+e.mi+e.s:""}function toUtcZ(e,a){if(!e)return"";var t=Date.UTC(+e.y,+e.mo-1,+e.d,+e.h,+e.mi,+e.s);if(!a)return formatUtc(new Date(t));try{var n=new Intl.DateTimeFormat("en-US",{timeZone:a,hour12:!1,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}),r={};n.formatToParts(new Date(t)).forEach(function(c){r[c.type]=c.value});var o=Date.UTC(+r.year,+r.month-1,+r.day,+(r.hour==="24"?"00":r.hour),+r.minute,+r.second),l=o-t;return formatUtc(new Date(t-l))}catch{return formatUtc(new Date(t))}}function icsEscape(e){return e==null?"":String(e).replace(/\\/g,"\\\\").replace(/\r?\n/g,"\\n").replace(/,/g,"\\,").replace(/;/g,"\\;")}function decodeEntities(e){if(e==null)return"";var a=d.createElement("textarea");return a.innerHTML=e,a.value}function buildIcs(e){var a=toUtcZ(e.startParts,e.timezone),t=toUtcZ(e.endParts,e.timezone),n=formatUtc(new Date),r="wm-"+Math.random().toString(36).slice(2)+"-"+Date.now()+"@addtocalendar",o=["BEGIN:VCALENDAR","VERSION:2.0","PRODID:-//WireMaze//AddToCalendar//EN","CALSCALE:GREGORIAN","METHOD:PUBLISH","BEGIN:VEVENT","UID:"+r,"DTSTAMP:"+n,"DTSTART:"+a,"DTEND:"+t,"SUMMARY:"+icsEscape(e.title),"DESCRIPTION:"+icsEscape(e.description),"LOCATION:"+icsEscape(e.location)];return e.organizer&&o.push("ORGANIZER;CN="+icsEscape(e.organizer)+":MAILTO:noreply@invalid"),o.push("END:VEVENT","END:VCALENDAR"),o.join(`\r
2`)}function buildGoogleUrl(e){var a=icsLocal(e.startParts)+"/"+icsLocal(e.endParts),t=["action=TEMPLATE","text="+encodeURIComponent(e.title||""),"dates="+a,"details="+encodeURIComponent(e.description||""),"location="+encodeURIComponent(e.location||"")];return e.timezone&&t.push("ctz="+encodeURIComponent(e.timezone)),"https://calendar.google.com/calendar/render?"+t.join("&")}function isoFromUtcZ(e){return e.replace(/(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z/,"$1-$2-$3T$4:$5:$6Z")}function buildOutlookOnlineUrl(e){var a=["path=/calendar/action/compose","rru=ad
2devent","subject="+encodeURIComponent(e.title||""),"startdt="+encodeURIComponent(isoFromUtcZ(toUtcZ(e.startParts,e.timezone))),"enddt="+encodeURIComponent(isoFromUtcZ(toUtcZ(e.endParts,e.timezone))),"body="+encodeURIComponent(e.description||""),"location="+encodeURIComponent(e.location||"")];return"https://outlook.office.com/calendar/0/deeplink/compose?"+a.join("&")}function buildYahooUrl(e){var a=function(n){return n.replace(/Z$/,"")},t=["v=60","view=d","type=20","title="+encodeURIComponent(e.title||""),"st="+a(toUtcZ(e.startParts,e.timezone)),"et="+a(toUtcZ(e.endParts,e.timezone)),"desc="+encodeURIComponent(e.description||""),"in_loc="+encodeURIComponent(e.location||"")];return"https://calendar.yahoo.com/?"+t.join("&")}function buildIcsDataUrl(e){return"data:text/calendar;charset=utf-8,"+encodeURIComponent(buildIcs(e))}function readEvent(e){for(var a={title:"",description:"",location:"",organizer:"",timezone:"",startParts:null,endParts:null},t=e.getElementsByTagName("var"),n=0;n<t.length;n++){var r=t[n].className.replace(" rs_skip","").replace("atc_",""),o=t[n].innerHTML;switch(r){case"date_start":a.startParts=parseEventDate(o);break;case"date_end":a.endParts=parseEventDate(o);break;case"timezone":a.timezone=o;break;case"title":a.title=decodeEntities(o);break;case"description":a.description=decodeEntities(o);break;case"location":a.location=decodeEntities(o);break;case"organizer":a.organizer=decodeEntities(o);break}}return a}var providerKeys={iCalendar:"ical","Google Calendar":"google",Outlook:"outlook","Outlook Online":"outlookonline","Yahoo! Calendar":"yahoo"};function buildUrl(e,a){switch(e){case"google":return buildGoogleUrl(a);case"outlookonline":return buildOutlookOnlineUrl(a);case"yahoo":return buildYahooUrl(a);case"ical":case"outlook":return buildIcsDataUrl(a)}return"#"}addtocalendar.load=function(){ready(function(){for(var e=addtocalendar.languages,a=d.getElementsByClassName("addtocalendar"),t=0;t<a.length;t++){var n=a[t];if(n.className.split(" ").indexOf("addtocalendar")!==-1){var r=addtocalendar.loadSettings(n),o=r.calendars.length===1,l=n.id,c=e.en;if(r.language==="auto"){var s="no_lang";typeof navigator.language=="string"?s=navigator.language.substr(0,2):typeof navigator.browserLanguage=="string"&&(s=navigator.browserLanguage.substr(0,2)),e.hasOwnProperty(s)&&(c=e[s])}else e.hasOwnProperty(r.language)&&(c=e[r.language]);var p=n.querySelector("var.atc-body");p&&(c=p.innerHTML);var y=readEvent(n),U=l===""?"":l+"_link",u=d.createElement("ul");u.className="atcb-list";var E="",m="";for(var T in r.calendars){var f=r.calendars[T];if(providerKeys.hasOwnProperty(f)){var C=providerKeys[f],h=l===""?"":'id="'+l+"_"+C+'_link"',v=buildUrl(C,y);o?m=v:E+='<li class="atcb-item"><a '+h+' class="atcb-item-link" href="'+v+'" target="_blank">'+f+"</a></li>"}}u.innerHTML=E;var b=n.getElementsByClassName("atcb-link")[0],i;b==null?(i=d.createElement("a"),i.className="atcb-link",i.innerHTML=c,i.id=U,i.tabIndex=0,o&&(i.href=m,i.target="_blank"),n.appendChild(i),o||n.appendChild(u)):(i=b,o||i.parentNode.appendChild(u),i.tabIndex=0,i.id===""&&(i.id=U),o&&(i.href=m,i.target="_blank")),n.getElementsByClassName("atcb-link")[0].addEventListener("click",r["on-button-click"],!1);for(var k=n.getElementsByClassName("atcb-item-link"),g=0;g<k.length;g++)k[g].addEventListener("click",r["on-calendar-click"],!1)}}})},addtocalendar.load()})(window,document);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.