1
0
mirror of https://codeberg.org/nobody/LocalCDN.git synced 2025-02-20 22:00:45 +01:00
2020-02-27 13:45:29 +01:00

38 lines
12 KiB
JavaScript

/*
* Copyright 2010 Small Batch, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
;(function(window,document,undefined){
function h(a){return function(){return this[a]}}var k;function m(a,b){var c=arguments.length>2?Array.prototype.slice.call(arguments,2):[];return function(){c.push.apply(c,arguments);return b.apply(a,c)}};function o(a,b){this.v=a;this.a=b}o.prototype.createElement=function(a,b,c){a=this.v.createElement(a);if(b)for(var d in b)if(b.hasOwnProperty(d))if(d=="style"&&this.a.getName()=="MSIE")a.style.cssText=b[d];else a.setAttribute(d,b[d]);c&&a.appendChild(this.v.createTextNode(c));return a};function p(a,b,c){a=a.v.getElementsByTagName(b)[0];if(!a)a=document.documentElement;if(a&&a.lastChild){a.insertBefore(c,a.lastChild);return true}return false}
function q(a,b){function c(){document.body?b():setTimeout(c,0)}c()}function r(a,b){if(b.parentNode){b.parentNode.removeChild(b);return true}return false}function s(a,b){return a.createElement("link",{rel:"stylesheet",href:b})}function t(a,b,c){a=b.className.split(/\s+/);for(var d=0,e=a.length;d<e;d++)if(a[d]==c)return;a.push(c);b.className=a.join(" ").replace(/^\s+/,"")}
function u(a,b,c){a=b.className.split(/\s+/);for(var d=[],e=0,f=a.length;e<f;e++)a[e]!=c&&d.push(a[e]);b.className=d.join(" ").replace(/^\s+/,"").replace(/\s+$/,"")};function v(a,b,c,d,e,f,g,j){this.ga=a;this.la=b;this.X=c;this.W=d;this.ja=e;this.ia=f;this.V=g;this.ma=j}k=v.prototype;k.getName=h("ga");k.ca=h("la");k.$=h("X");k.aa=h("W");k.L=h("ja");k.ba=h("ia");k.Z=h("V");k.p=h("ma");function w(a,b){this.a=a;this.m=b}var x=new v("Unknown","Unknown","Unknown","Unknown","Unknown","Unknown",undefined,false);w.prototype.parse=function(){return this.a.indexOf("MSIE")!=-1?y(this):this.a.indexOf("Opera")!=-1?z(this):this.a.indexOf("AppleWebKit")!=-1?A(this):this.a.indexOf("Gecko")!=-1?B(this):x};
function C(a){var b=D(a,a.a,/(iPod|iPad|iPhone|Android)/,1);if(b!="")return b;a=D(a,a.a,/(Linux|Mac_PowerPC|Macintosh|Windows)/,1);if(a!=""){if(a=="Mac_PowerPC")a="Macintosh";return a}return"Unknown"}function E(a){var b=D(a,a.a,/(OS X|Windows NT|Android) ([^;]+)/,2);if(b)return b;if(b=D(a,a.a,/(iPhone )?OS ([\d_]+)/,2))return b;if(a=D(a,a.a,/Linux ([i\d]+)/,1))return a;return"Unknown"}
function y(a){var b=D(a,a.a,/(MSIE [\d\w\.]+)/,1);if(b!=""){var c=b.split(" ");b=c[0];c=c[1];return new v(b,c,b,c,C(a),E(a),F(a,a.m),G(a,c)>=6)}return new v("MSIE","Unknown","MSIE","Unknown",C(a),E(a),F(a,a.m),false)}
function z(a){var b="Unknown",c="Unknown",d=D(a,a.a,/(Presto\/[\d\w\.]+)/,1);if(d!=""){c=d.split("/");b=c[0];c=c[1]}else{if(a.a.indexOf("Gecko")!=-1)b="Gecko";d=D(a,a.a,/rv:([^\)]+)/,1);if(d!="")c=d}if(a.a.indexOf("Version/")!=-1){d=D(a,a.a,/Version\/([\d\.]+)/,1);if(d!="")return new v("Opera",d,b,c,C(a),E(a),F(a,a.m),G(a,d)>=10)}d=D(a,a.a,/Opera[\/ ]([\d\.]+)/,1);if(d!="")return new v("Opera",d,b,c,C(a),E(a),F(a,a.m),G(a,d)>=10);return new v("Opera","Unknown",b,c,C(a),E(a),F(a,a.m),false)}
function A(a){var b=C(a),c=E(a),d=D(a,a.a,/AppleWebKit\/([\d\.\+]+)/,1);if(d=="")d="Unknown";var e="Unknown";if(a.a.indexOf("Chrome")!=-1)e="Chrome";else if(a.a.indexOf("Safari")!=-1)e="Safari";var f="Unknown";if(a.a.indexOf("Version/")!=-1)f=D(a,a.a,/Version\/([\d\.\w]+)/,1);else if(e=="Chrome")f=D(a,a.a,/Chrome\/([\d\.]+)/,1);var g=D(a,d,/\d+\.(\d+)/,1);return new v(e,f,"AppleWebKit",d,b,c,F(a,a.m),G(a,d)>=526||G(a,d)>=525&&parseInt(g,10)>=13)}
function B(a){var b="Unknown",c="Unknown",d=false;if(a.a.indexOf("Firefox")!=-1){b="Firefox";var e=D(a,a.a,/Firefox\/([\d\w\.]+)/,1);if(e!=""){d=D(a,e,/\d+\.(\d+)/,1);c=e;d=e!=""&&G(a,e)>=3&&parseInt(d,10)>=5}}else if(a.a.indexOf("Mozilla")!=-1)b="Mozilla";e=D(a,a.a,/rv:([^\)]+)/,1);if(e=="")e="Unknown";else if(!d){d=G(a,e);var f=parseInt(D(a,e,/\d+\.(\d+)/,1),10),g=parseInt(D(a,e,/\d+\.\d+\.(\d+)/,1),10);d=d>1||d==1&&f>9||d==1&&f==9&&g>=2||e.match(/1\.9\.1b[123]/)!=null||e.match(/1\.9\.1\.[\d\.]+/)!=
null}return new v(b,c,"Gecko",e,C(a),E(a),F(a,a.m),d)}function G(a,b){a=D(a,b,/(\d+)/,1);if(a!="")return parseInt(a,10);return-1}function D(a,b,c,d){if((a=b.match(c))&&a[d])return a[d];return""}function F(a,b){if(b.documentMode)return b.documentMode};function aa(a,b,c,d){this.c=a;this.f=b;this.G=c;this.j=d||ba;this.g=new H("-")}var ba="wf";function I(a){t(a.c,a.f,a.g.d(a.j,"loading"));J(a,"loading")}function K(a,b,c){u(a.c,a.f,a.g.d(a.j,b,c,"loading"));t(a.c,a.f,a.g.d(a.j,b,c,"active"));J(a,"fontactive",b,c)}function L(a){u(a.c,a.f,a.g.d(a.j,"loading"));t(a.c,a.f,a.g.d(a.j,"inactive"));J(a,"inactive")}function ca(a){u(a.c,a.f,a.g.d(a.j,"loading"));t(a.c,a.f,a.g.d(a.j,"active"));J(a,"active")}function J(a,b,c,d){a.G[b]&&a.G[b](c,d)};function da(){this.P={}}function ea(a,b){var c=[];for(var d in b)if(b.hasOwnProperty(d)){var e=a.P[d];e&&c.push(e(b[d]))}return c};function M(a,b,c,d,e){this.c=a;this.n=b;this.w=c;this.q=d;this.M=e;this.H=0;this.D=this.O=false;this.fa=new N;this.s=new O}
M.prototype.watch=function(a,b,c){for(var d=a.length,e=0;e<d;e++){var f=a[e];b[f]||(b[f]=["n4"]);this.H+=b[f].length}if(c)this.O=c;for(e=0;e<d;e++){f=a[e];c=b[f];for(var g=0,j=c.length;g<j;g++){var i=c[g],l=P(this,"_,arial,helvetica",i),R=this.w.z(l);r(this.c,l);l=f;var n=this.n;t(n.c,n.f,n.g.d(n.j,l,i,"loading"));J(n,"fontloading",l,i);n=P(this,this.fa.quote(l),i);if(R!=this.w.z(n)){r(this.c,n);K(this.n,l,i);this.D=true;Q(this)}else S(this,this.M(),R,n,l,i)}}};
function Q(a){if(--a.H==0&&a.O)a.D?ca(a.n):L(a.n)}M.prototype.U=function(a,b,c,d,e){if(b!=this.w.z(c)){r(this.c,c);K(this.n,d,e);this.D=true;Q(this)}else if(this.M()-a<5E3)S(this,a,b,c,d,e);else{r(this.c,c);a=this.n;u(a.c,a.f,a.g.d(a.j,d,e,"loading"));t(a.c,a.f,a.g.d(a.j,d,e,"inactive"));J(a,"fontinactive",d,e);Q(this)}};function S(a,b,c,d,e,f){a.q(function(g,j){return function(){j.call(g,b,c,d,e,f)}}(a,a.U),50)}
function P(a,b,c){c=a.s.expand(c);b=a.c.createElement("span",{style:"position:absolute;top:-999px;font-size:300px;font-family:"+b+",_,arial,helvetica;"+c},"Mm");p(a.c,"body",b);return b};function T(a,b,c,d,e){this.c=a;this.J=b;this.f=c;this.q=d;this.a=e;this.B=this.C=0}T.prototype.o=function(a,b){this.J.P[a]=b};T.prototype.load=function(a){var b=new aa(this.c,this.f,a);this.a.p()?fa(this,b,a):L(b)};T.prototype.da=function(a,b,c,d){if(d)a.load(m(this,this.ha,b,c));else{a=--this.C==0;this.B--;if(a)this.B==0?L(b):I(b);c.watch([],{},a)}};T.prototype.ha=function(a,b,c,d){var e=--this.C==0;e&&I(a);this.q(m(this,function(f,g,j,i){f.watch(g,j||{},i)},b,c,d,e))};
function fa(a,b,c){c=ea(a.J,c);a.B=a.C=c.length;for(var d=new M(a.c,b,{z:function(j){return j.offsetWidth}},a.q,function(){return(new Date).getTime()}),e=0,f=c.length;e<f;e++){var g=c[e];g.u(a.a,m(a,a.da,g,b,d))}};function H(a){this.ea=a||ga}var ga="-";H.prototype.d=function(){for(var a=[],b=0;b<arguments.length;b++)a.push(arguments[b].replace(/[\W_]+/g,"").toLowerCase());return a.join(this.ea)};function N(){this.R='"'}N.prototype.quote=function(a){var b=[];a=a.split(/,\s*/);for(var c=0;c<a.length;c++){var d=a[c].replace(/['"]/g,"");d.indexOf(" ")==-1?b.push(d):b.push(this.R+d+this.R)}return b.join(",")};function O(){this.t=ha;this.k=ia}var ha=["font-style","font-weight"],ia={"font-style":[["n","normal"],["i","italic"],["o","oblique"]],"font-weight":[["1","100"],["2","200"],["3","300"],["4","400"],["5","500"],["6","600"],["7","700"],["8","800"],["9","900"],["4","normal"],["7","bold"]]};function U(a,b,c){this.N=a;this.ka=b;this.k=c}U.prototype.compact=function(a,b){for(var c=0;c<this.k.length;c++)if(b==this.k[c][1]){a[this.N]=this.k[c][0];return}};
U.prototype.expand=function(a,b){for(var c=0;c<this.k.length;c++)if(b==this.k[c][0]){a[this.N]=this.ka+":"+this.k[c][1];return}};O.prototype.compact=function(a){var b=["n","4"];a=a.split(";");for(var c=0,d=a.length;c<d;c++){var e=a[c].replace(/\s+/g,"").split(":");if(e.length==2){var f=e[1];a:{e=e[0];for(var g=0;g<this.t.length;g++)if(e==this.t[g]){e=new U(g,e,this.k[e]);break a}e=null}e&&e.compact(b,f)}}return b.join("")};
O.prototype.expand=function(a){if(a.length!=2)return null;for(var b=[null,null],c=0,d=this.t.length;c<d;c++){var e=this.t[c],f=a.substr(c,1);(new U(c,e,this.k[e])).expand(b,f)}return b[0]&&b[1]?b.join(";")+";":null};window.WebFont=function(){var a=(new w(navigator.userAgent,document)).parse();return new T(new o(document,a),new da,document.documentElement,function(b,c){setTimeout(b,c)},a)}();window.WebFont.load=window.WebFont.load;window.WebFont.addModule=window.WebFont.o;v.prototype.getName=v.prototype.getName;v.prototype.getVersion=v.prototype.ca;v.prototype.getEngine=v.prototype.$;v.prototype.getEngineVersion=v.prototype.aa;v.prototype.getPlatform=v.prototype.L;v.prototype.getPlatformVersion=v.prototype.ba;
v.prototype.getDocumentMode=v.prototype.Z;v.prototype.isSupportingWebFont=v.prototype.p;function V(a,b){this.c=a;this.e=b}var ja={regular:"n4",bold:"n7",italic:"i4",bolditalic:"i7",r:"n4",b:"n7",i:"i4",bi:"i7"};V.prototype.u=function(a,b){return b(a.p())};
V.prototype.load=function(a){p(this.c,"head",s(this.c,("https:"==document.location.protocol?"https:":"http:")+"//webfonts.fontslive.com/css/"+this.e.key+".css"));var b;b=this.e.families;var c,d,e;c=[];d={};for(var f=0,g=b.length;f<g;f++){e=void 0;var j=void 0;j=void 0;j=b[f].split(":");e=j[0];j=j[1]?ka(this,j[1]):["n4"];e={I:e,F:j};c.push(e.I);d[e.I]=e.F}b={Y:c,F:d};a(b.Y,b.F)};
function ka(a,b){a=b.split(",");b=[];for(var c=0,d=a.length;c<d;c++){var e=a[c];if(e){var f=ja[e];b.push(f?f:e)}}return b}window.WebFont.o("ascender",function(a){var b=(new w(navigator.userAgent,document)).parse();return new V(new o(document,b),a)});function W(a){this.T=a?a:("https:"==window.location.protocol?"https:":"http:")+la;this.h=null}var la="//fonts.googleapis.com/css";W.prototype.d=function(){if(!this.h)throw new Error("No fonts to load !");for(var a=this.h.length,b=[],c=0;c<a;c++)b.push(this.h[c].replace(/ /g,"+"));return this.T+"?family="+b.join("%7C")};function X(a){this.h=a;this.Q=[];this.S={};this.s=new O}var ma={ultralight:"n2",light:"n3",regular:"n4",bold:"n7",italic:"i4",bolditalic:"i7",ul:"n2",l:"n3",r:"n4",b:"n7",i:"i4",bi:"i7"};
X.prototype.parse=function(){for(var a=this.h.length,b=0;b<a;b++){var c=this.h[b].split(":"),d=c[0],e=null;if(c.length==2){var f=[];c=c[1].split(",");for(var g=c.length,j=0;j<g;j++){var i;i=c[j];if(i.match(/^[\w ]+$/)){var l=ma[i];if(l)i=l;else{l=i.match(/^(\d*)(\w*)$/);i=l[1];l=l[2];i=(i=this.s.expand([l?l:"n",i?i.substr(0,1):"4"].join("")))?this.s.compact(i):null}}else i="";i&&f.push(i)}if(f.length>0)e=f}else e=["n4"];this.Q.push(d);this.S[d]=e}};function Y(a,b,c){this.a=a;this.c=b;this.e=c}Y.prototype.u=function(a,b){a.L().match(/iPad|iPod|iPhone/)!=null&&b(false);return b(a.p())};Y.prototype.load=function(a){var b=new W(this.e.api),c=this.e.families,d=this.c,e=this.a.getName()=="MSIE"&&this.e.blocking!=true;b.h=c;e?q(d,function(){p(d,"head",s(d,b.d()))}):p(d,"head",s(d,b.d()));c=new X(c);c.parse();a(c.Q,c.S)};window.WebFont.o("google",function(a){var b=(new w(navigator.userAgent,document)).parse();return new Y(b,new o(document,b),a)});function Z(a,b){this.c=a;this.e=b}Z.prototype.load=function(a){for(var b=this.e.urls||[],c=this.e.families||[],d=0,e=b.length;d<e;d++)p(this.c,"head",s(this.c,b[d]));a(c)};Z.prototype.u=function(a,b){return b(a.p())};window.WebFont.o("custom",function(a){var b=(new w(navigator.userAgent,document)).parse();return new Z(new o(document,b),a)});function $(a,b,c){this.A=a;this.c=b;this.e=c;this.h=[];this.K={}}$.prototype.u=function(a,b){var c=this.e.id,d=this.e,e=this;if(c){this.A.__webfonttypekitmodule__||(this.A.__webfonttypekitmodule__={});this.A.__webfonttypekitmodule__[c]=function(f){f(a,d,function(g,j,i){e.h=j;e.K=i;b(g)})};p(this.c,"head",this.c.createElement("script",{src:(this.e.api||"http://use.typekit.com")+"/"+c+".js"}))}else b(true)};$.prototype.load=function(a){a(this.h,this.K)};
window.WebFont.o("typekit",function(a){var b=(new w(navigator.userAgent,document)).parse();return new $(window,new o(document,b),a)});window.WebFontConfig&&window.WebFont.load(window.WebFontConfig);
})(this,document);