PageSourceSearch

https://media.ubiklibri.it/ux/lib/js/widgets.js?v=20260303

js ubiklibri.it collected 2026-10-02 06:34:17 UTC 491,229 bytes, 3,716 lines download raw bytes

1var f=function(){var F=function(input,parent){if(!input)return;this.input=input;if(typeof input==="string")try{this.items=(parent?parent:document).querySelectorAll(input)}catch(err){this.items=[input]}else if(Array.isArray(input))this.items=input;else if(typeof input==="object")this.items=[input];Object.defineProperty(this,"item",{get:function(){return this.items[0]}})};F.prototype.prototype=function(){return F.prototype};var _f=function(input,parent){return new F(input,parent)};return _f}();
2(function(){f().prototype().each=function(callback){if(!callback||typeof callback!=="function"||!this.items)return;for(var i=0;i<this.items.length;i++)callback(this.items[i],i);return this};f().prototype().closest=function(selector){return f(this.item.closest(selector))};f().prototype().find=function(selector){return f(selector,this.items[0])};f().prototype().html=function(html){var result=this;this.each(function(item){if(html===undefined)result=item.innerHTML;else item.innerHTML=html});return result};
3f().prototype().text=function(html){var result=this;this.each(function(item){if(html===undefined)result=item.innerText;else item.innerText=html});return result};f().prototype().id=function(){return"id_"+Math.random().toString(36).substr(2,9)}})();
4(function(){f().prototype().addClass=function(className){this.each(function(item){item.offsetHeight;item.classList.add(className)});return this};f().prototype().removeClass=function(className){this.each(function(item){item.offsetHeight;item.classList.remove(className)});return this};f().prototype().toggleClass=function(className){this.each(function(item){item.offsetHeight;item.classList.toggle(className)});return this};f().prototype().hasClass=function(className){return this.item.classList.contains(className)}})();
5(function(){var colors={"blue":"rgb(0, 122, 255)","green":"rgb(52, 199, 89)","indigo":"rgb(88, 86, 214)","orange":"rgb(255, 149, 0)","pink":"rgb(255, 45, 85)","purple":"rgb(175, 82, 222)","red":"rgb(255, 59, 48)","teal":"rgb(90, 200, 250)","yellow":"rgb(255, 204, 0)","gray-5":"rgb(0, 0, 0)","gray-4":"rgb(28, 28, 30)","gray-3":"rgb(44, 44, 46)","gray-2":"rgb(58, 58, 60)","gray-1":"rgb(72, 72, 74)","gray0":"rgb(99, 99, 102)","gray1":"rgb(142, 142, 147)","gray2":"rgb(174, 174, 178)","gray3":"rgb(199, 199, 204)",
6    "gray4":"rgb(209, 209, 214)","gray5":"rgb(229, 229, 234)","gray6":"rgb(242, 242, 247)","gray7":"rgb(255, 255, 255)","darkBlue":"rgb(10, 132, 255)","darkGreen":"rgb(48, 209, 88)","darkIndigo":"rgb(94, 92, 230)","darkOrange":"rgb(255, 159, 10)","darkPink":"rgb(255, 55, 95)","darkPurple":"rgb(191, 90, 242)","darkRed":"rgb(255, 69, 58)","darkTeal":"rgb(100, 210, 255)","darkYellow":"rgb(255, 214, 10)","darkGray-5":"rgb(255, 255, 255)","darkGray-4":"rgb(242, 242, 247)","darkGray-3":"rgb(229, 229, 234)",
7  "darkGray-2":"rgb(209, 209, 214)","darkGray-1":"rgb(199, 199, 204)","darkGray0":"rgb(174, 174, 178)","darkGray1":"rgb(142, 142, 147)","darkGray2":"rgb(99, 99, 102)","darkGray3":"rgb(72, 72, 74)","darkGray4":"rgb(58, 58, 60)","darkGray5":"rgb(44, 44, 46)","darkGray6":"rgb(28, 28, 30)","darkGray7":"rgb(0, 0, 0)"};f().prototype().color=function(name,isDark){if(isDark===true)name="dark"+name.charAt(0).toUpperCase()+name.slice(1);return colors[name]};f().prototype().colors=function(){return colors};f().prototype().isDark=
8function(){if(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches)return true;else return false}})();
9(function(){function fcolor(color,elmnt){if(!(this instanceof fcolor))return new fcolor(color,elmnt);if(typeof color=="object")return color;this.attachValues(toColorObject(color));if(elmnt)elmnt.style.backgroundColor=this.toRgbString()}fcolor.prototype={toRgbString:function(){return"rgb("+this.red+", "+this.green+", "+this.blue+")"},toRgbaString:function(){return"rgba("+this.red+", "+this.green+", "+this.blue+", "+this.opacity+")"},toHwbString:function(){return"hwb("+this.hue+", "+Math.round(this.whiteness*
10      100)+"%, "+Math.round(this.blackness*100)+"%)"},toHwbStringDecimal:function(){return"hwb("+this.hue+", "+this.whiteness+", "+this.blackness+")"},toHwbaString:function(){return"hwba("+this.hue+", "+Math.round(this.whiteness*100)+"%, "+Math.round(this.blackness*100)+"%, "+this.opacity+")"},toHslString:function(){return"hsl("+this.hue+", "+Math.round(this.sat*100)+"%, "+Math.round(this.lightness*100)+"%)"}
10,toHslStringDecimal:function(){return"hsl("+this.hue+", "+this.sat+", "+this.lightness+")"},toHslaString:function(){return"hsla("+
11    this.hue+", "+Math.round(this.sat*100)+"%, "+Math.round(this.lightness*100)+"%, "+this.opacity+")"},toCmykString:function(){return"cmyk("+Math.round(this.cyan*100)+"%, "+Math.round(this.magenta*100)+"%, "+Math.round(this.yellow*100)+"%, "+Math.round(this.black*100)+"%)"},toCmykStringDecimal:function(){return"cmyk("+this.cyan+", "+this.magenta+", "+this.yellow+", "+this.black+")"},toNcolString:function(){return this.ncol+", "+Math.round(this.whiteness*100)+"%, "+Math.round(this.blackness*100)+"%"},
12    toNcolStringDecimal:function(){return this.ncol+", "+this.whiteness+", "+this.blackness},toNcolaString:function(){return this.ncol+", "+Math.round(this.whiteness*100)+"%, "+Math.round(this.blackness*100)+"%, "+this.opacity},toName:function(){var r,g,b,colorhexs=getColorArr("hexs");for(i=0;i<colorhexs.length;i++){r=parseInt(colorhexs[i].substr(0,2),16);g=parseInt(colorhexs[i].substr(2,2),16);b=parseInt(colorhexs[i].substr(4,2),16);if(this.red==r&&this.green==g&&this.blue==b)return getColorArr("names")[i]}return""},
13    toHexString:function(){var r=toHex(this.red);var g=toHex(this.green);var b=toHex(this.blue);return"#"+r+g+b},toRgb:function(){return{r:this.red,g:this.green,b:this.blue,a:this.opacity}},toHsl:function(){return{h:this.hue,s:this.sat,l:this.lightness,a:this.opacity}},toHwb:function(){return{h:this.hue,w:this.whiteness,b:this.blackness,a:this.opacity}},toCmyk:function(){return{c:this.cyan,m:this.magenta,y:this.yellow,k:this.black,a:this.opacity}},toNcol:function(){return{ncol:this.ncol,w:this.whiteness,
14      b:this.blackness,a:this.opacity}},isDark:function(n){var m=n||128;return(this.red*299+this.green*587+this.blue*114)/1E3<m},saturate:function(n){var x,rgb,color;x=n/100||.1;this.sat+=x;if(this.sat>1)this.sat=1;rgb=hslToRgb(this.hue,this.sat,this.lightness);color=colorObject(rgb,this.opacity,this.hue,this.sat);this.attachValues(color)},desaturate:function(n){var x,rgb,color;x=n/100||.1;this.sat-=x;if(this.sat<0)this.sat=0;rgb=hslToRgb(this.hue,this.sat,this.lightness);color=colorObject(rgb,this.opacity,
15    this.hue,this.sat);this.attachValues(color)},lighter:function(n){var x,rgb,color;x=n/100||.1;this.lightness+=x;if(this.lightness>1)this.lightness=1;rgb=hslToRgb(this.hue,this.sat,this.lightness);color=colorObject(rgb,this.opacity,this.hue,this.sat);this.attachValues(color)},darker:function(n){var x,rgb,color;x=n/100||.1;this.lightness-=x;if(this.lightness<0)this.lightness=0;rgb=hslToRgb(this.hue,this.sat,this.lightness);color=colorObject(rgb,this.opacity,this.hue,this.sat);this.attachValues(color)},
16    attachValues:function(color){this.red=color.red;this.green=color.green;this.blue=color.blue;this.hue=color.hue;this.sat=color.sat;this.lightness=color.lightness;this.whiteness=color.whiteness;this.blackness=color.blackness;this.cyan=color.cyan;this.magenta=color.magenta;this.yellow=color.yellow;this.black=color.black;this.ncol=color.ncol;this.opacity=color.opacity;this.valid=color.valid}};function toColorObject(c){var x,y,typ,arr=[],arrlength,i,opacity,match,a,hue,sat,rgb,colornames=[],colorhexs=
17    [];c=ftrim(c.toLowerCase());x=c.substr(0,1).toUpperCase();y=c.substr(1);a=1;if((x=="R"||x=="Y"||x=="G"||x=="C"||x=="B"||x=="M"||x=="W")&&!isNaN(y))if(c.length==6&&c.indexOf(",")==-1);else c="ncol("+c+")";if(c.length!=3&&c.length!=6&&!isNaN(c))c="ncol("+c+")";if(c.indexOf(",")>0&&c.indexOf("(")==-1)c="ncol("+c+")";if(c.substr(0,3)=="rgb"||c.substr(0,3)=="hsl"||c.substr(0,3)=="hwb"||c.substr(0,4)=="ncol"||c.substr(0,4)=="cmyk"){if(c.substr(0,4)=="ncol"){if(c.split(",").length==4&&c.indexOf("ncola")==
18        -1)c=c.replace("ncol","ncola");typ="ncol";c=c.substr(4)}else if(c.substr(0,4)=="cmyk"){typ="cmyk";c=c.substr(4)}else{typ=c.substr(0,3);c=c.substr(3)}arrlength=3;opacity=false;if(c.substr(0,1).toLowerCase()=="a"){arrlength=4;opacity=true;c=c.substr(1)}else if(typ=="cmyk"){arrlength=4;if(c.split(",").length==5){arrlength=5;opacity=true}}c=c.replace("(","");c=c.replace(")","");arr=c.split(",");if(typ=="rgb"){if(arr.length!=arrlength)return emptyObject();for(i=0;i<arrlength;i++){if(arr[i]==""||arr[i]==
19          " ")arr[i]="0";if(arr[i].indexOf("%")>-1){arr[i]=arr[i].replace("%","");arr[i]=Number(arr[i]/100);if(i<3)arr[i]=Math.round(arr[i]*255)}if(isNaN(arr[i]))return emptyObject();if(parseInt(arr[i])>255)arr[i]=255;if(i<3)arr[i]=parseInt(arr[i]);if(i==3&&Number(arr[i])>1)arr[i]=1}rgb={r:arr[0],g:arr[1],b:arr[2]};if(opacity==true)a=Number(arr[3])}if(typ=="hsl"||typ=="hwb"||typ=="ncol"){while(arr.length<arrlength)arr.push("0");if(typ=="hsl"||typ=="hwb")if(parseInt(arr[0])>=360)arr[0]=0;for(i=1;i<arrlength;i++){if(arr[i].indexOf("%")>
20          -1){arr[i]=arr[i].replace("%","");arr[i]=Number(arr[i]);if(isNaN(arr[i]))return emptyObject();arr[i]=arr[i]/100}else arr[i]=Number(arr[i]);if(Number(arr[i])>1)arr[i]=1;
20if(Number(arr[i])<0)arr[i]=0}if(typ=="hsl"){rgb=hslToRgb(arr[0],arr[1],arr[2]);hue=Number(arr[0]);sat=Number(arr[1])}if(typ=="hwb")rgb=hwbToRgb(arr[0],arr[1],arr[2]);if(typ=="ncol")rgb=ncolToRgb(arr[0],arr[1],arr[2]);if(opacity==true)a=Number(arr[3])}if(typ=="cmyk"){while(arr.length<arrlength)arr.push("0");for(i=0;i<arrlength;i++){if(arr[i].indexOf("%")>
21          -1){arr[i]=arr[i].replace("%","");arr[i]=Number(arr[i]);if(isNaN(arr[i]))return emptyObject();arr[i]=arr[i]/100}else arr[i]=Number(arr[i]);if(Number(arr[i])>1)arr[i]=1;if(Number(arr[i])<0)arr[i]=0}rgb=cmykToRgb(arr[0],arr[1],arr[2],arr[3]);if(opacity==true)a=Number(arr[4])}}else if(c.substr(0,3)=="ncs")rgb=ncsToRgb(c);else{match=false;colornames=getColorArr("names");for(i=0;i<colornames.length;i++)if(c.toLowerCase()==colornames[i].toLowerCase()){colorhexs=getColorArr("hexs");match=true;rgb={r:parseInt(colorhexs[i].substr(0,
22    2),16),g:parseInt(colorhexs[i].substr(2,2),16),b:parseInt(colorhexs[i].substr(4,2),16)};break}if(match==false){c=c.replace("#","");if(c.length==3)c=c.substr(0,1)+c.substr(0,1)+c.substr(1,1)+c.substr(1,1)+c.substr(2,1)+c.substr(2,1);for(i=0;i<c.length;i++)if(!isHex(c.substr(i,1)))return emptyObject();arr[0]=parseInt(c.substr(0,2),16);arr[1]=parseInt(c.substr(2,2),16);arr[2]=parseInt(c.substr(4,2),16);for(i=0;i<3;i++)if(isNaN(arr[i]))return emptyObject();rgb={r:arr[0],g:arr[1],b:arr[2]}}}return colorObject(rgb,
23    a,hue,sat)}function colorObject(rgb,a,h,s){var hsl,hwb,cmyk,ncol,color,hue,sat;if(!rgb)return emptyObject();if(a===null)a=1;hsl=rgbToHsl(rgb.r,rgb.g,rgb.b);hwb=rgbToHwb(rgb.r,rgb.g,rgb.b);cmyk=rgbToCmyk(rgb.r,rgb.g,rgb.b);hue=h||hsl.h;sat=s||hsl.s;ncol=hueToNcol(hue);color={red:rgb.r,green:rgb.g,blue:rgb.b,hue:hue,sat:sat,lightness:hsl.l,whiteness:hwb.w,blackness:hwb.b,cyan:cmyk.c,magenta:cmyk.m,yellow:cmyk.y,black:cmyk.k,ncol:ncol,opacity:a,valid:true};color=roundDecimals(color);return color}function emptyObject(){return{red:0,
24    green:0,blue:0,hue:0,sat:0,lightness:0,whiteness:0,blackness:0,cyan:0,magenta:0,yellow:0,black:0,ncol:"R",opacity:1,valid:false}}function getColorArr(x){if(x=="names")return["AliceBlue","AntiqueWhite","Aqua","Aquamarine","Azure","Beige","Bisque","Black","BlanchedAlmond","Blue","BlueViolet","Brown","BurlyWood","CadetBlue","Chartreuse","Chocolate","Coral","CornflowerBlue","Cornsilk","Crimson","Cyan","DarkBlue","DarkCyan","DarkGoldenRod","DarkGray","DarkGrey","DarkGreen","DarkKhaki","DarkMagenta","DarkOliveGreen",
25    "DarkOrange","DarkOrchid","DarkRed","DarkSalmon","DarkSeaGreen","DarkSlateBlue","DarkSlateGray","DarkSlateGrey","DarkTurquoise","DarkViolet","DeepPink","DeepSkyBlue","DimGray","DimGrey","DodgerBlue","FireBrick","FloralWhite","ForestGreen","Fuchsia","Gainsboro","GhostWhite","Gold","GoldenRod","Gray","Grey","Green","GreenYellow","HoneyDew","HotPink","IndianRed","Indigo","Ivory","Khaki","Lavender","LavenderBlush","LawnGreen","LemonChiffon","LightBlue","LightCoral","LightCyan","LightGoldenRodYellow",
26    "LightGray","LightGrey","LightGreen","LightPink","LightSalmon","LightSeaGreen","LightSkyBlue","LightSlateGray","LightSlateGrey","LightSteelBlue","LightYellow","Lime","LimeGreen","Linen","Magenta","Maroon","MediumAquaMarine","MediumBlue","MediumOrchid","MediumPurple","MediumSeaGreen","MediumSlateBlue","MediumSpringGreen","MediumTurquoise","MediumVioletRed","MidnightBlue","MintCream","MistyRose","Moccasin","NavajoWhite","Navy","OldLace","Olive","OliveDrab","Orange","OrangeRed","Orchid","PaleGoldenRod",
27    "PaleGreen","PaleTurquoise","PaleVioletRed","PapayaWhip","PeachPuff","Peru","Pink","Plum","PowderBlue","Purple","RebeccaPurple","Red","RosyBrown","RoyalBlue","SaddleBrown","Salmon","SandyBrown","SeaGreen","SeaShell","Sienna","Silver","SkyBlue","SlateBlue","SlateGray","SlateGrey","Snow","SpringGreen","SteelBlue","Tan","Teal","Thistle","Tomato","Turquoise","Violet","Wheat","White","WhiteSmoke","Yellow","YellowGreen"];if(x=="hexs")return["f0f8ff","faebd7","00ffff","7fffd4","f0ffff","f5f5dc","ffe4c4",
28    "000000","ffebcd","0000ff","8a2be2","a52a2a","deb887","5f9ea0","7fff00","d2691e","ff7f50","6495ed","fff8dc","dc143c","00ffff","00008b","008b8b","b8860b","a9a9a9","a9a9a9","006400","bdb76b","8b008b","556b2f","ff8c00","9932cc","8b0000","e9967a","8fbc8f","483d8b","2f4f4f","2f4f4f","00ced1","9400d3","ff1493","00bfff","696969","696969","1e90ff","b22222","fffaf0","228b22","ff00ff","dcdcdc","f8f8ff","ffd700","daa520","808080","808080","008000","adff2f","f0fff0","ff69b4","cd5c5c","4b0082","fffff0","f0e68c",
29    "e6e6fa","fff0f5","7cfc00","fffacd","add8e6","f08080","e0ffff","fafad2","d3d3d3","d3d3d3","90ee90","ffb6c1","ffa07a","20b2aa","87cefa","778899","778899","b0c4de","ffffe0","00ff00","32cd32","faf0e6","ff00ff","800000","66cdaa","0000cd","ba55d3","9370db","3cb371","7b68ee","00fa9a","48d1cc","c71585","191970","f5fffa","ffe4e1","ffe4b5","ffdead","000080","fdf5e6","808000","6b8e23","ffa500","ff4500","da70d6","eee8aa","98fb98","afeeee","db7093","ffefd5","ffdab9","cd853f","ffc0cb","dda0dd","b0e0e6","800080",
30  "663399","ff0000","bc8f8f","4169e1","8b4513","fa8072","f4a460","2e8b57","fff5ee","a0522d","c0c0c0","87ceeb","6a5acd","708090","708090","fffafa","00ff7f","4682b4","d2b48c","008080","d8bfd8","ff6347","40e0d0","ee82ee","f5deb3","ffffff","f5f5f5","ffff00","9acd32"]}function roundDecimals(c){c.red=Number(c.red.toFixed(0));c.green=Number(c.green.toFixed(0));c.blue=Number(c.blue.toFixed(0));c.hue=Number(c.hue.toFixed(0));c.sat=Number(c.sat.toFixed(2));c.lightness=Number(c.lightness.toFixed(2));c.whiteness=
31  Number(c.whiteness.toFixed(2));c.blackness=Number(c.blackness.toFixed(2));c.cyan=Number(c.cyan.toFixed(2));c.magenta=Number(c.magenta.toFixed(2));c.yellow=Number(c.yellow.toFixed(2));c.black=Number(c.black.toFixed(2));c.ncol=c.ncol.substr(0,1)+Math.round(Number(c.ncol.substr(1)));c.opacity=Number(c.opacity.toFixed(2));return c}function hslToRgb(hue,sat,light){var t1,t2,r,g,b;hue=hue/60;if(light<=.5)t2=light*(sat+1);else t2=light+sat-light*sat;t1=light*2-t2;r=hueToRgb(t1,t2,hue+2)*255;g=hueToRgb(t1,
32    t2,hue)*255;b=hueToRgb(t1,t2,hue-2)*255;return{r:r,g:g,b:b}}
32function hueToRgb(t1,t2,hue){if(hue<0)hue+=6;if(hue>=6)hue-=6;if(hue<1)return(t2-t1)*hue+t1;else if(hue<3)return t2;else if(hue<4)return(t2-t1)*(4-hue)+t1;else return t1}function hwbToRgb(hue,white,black){var i,rgb,rgbArr=[],tot;rgb=hslToRgb(hue,1,.5);rgbArr[0]=rgb.r/255;rgbArr[1]=rgb.g/255;rgbArr[2]=rgb.b/255;tot=white+black;if(tot>1){white=Number((white/tot).toFixed(2));black=Number((black/tot).toFixed(2))}for(i=0;i<3;i++){rgbArr[i]*=1-
33      white-black;rgbArr[i]+=white;rgbArr[i]=Number(rgbArr[i]*255)}return{r:rgbArr[0],g:rgbArr[1],b:rgbArr[2]}}function cmykToRgb(c,m,y,k){var r,g,b;r=255-Math.min(1,c*(1-k)+k)*255;g=255-Math.min(1,m*(1-k)+k)*255;b=255-Math.min(1,y*(1-k)+k)*255;return{r:r,g:g,b:b}}function ncolToRgb(ncol,white,black){var letter,percent,h,w,b;h=ncol;if(isNaN(ncol.substr(0,1))){letter=ncol.substr(0,1).toUpperCase();percent=ncol.substr(1);if(percent=="")percent=0;percent=Number(percent);if(isNaN(percent))return false;if(letter==
34    "R")h=0+percent*.6;if(letter=="Y")h=60+percent*.6;if(letter=="G")h=120+percent*.6;if(letter=="C")h=180+percent*.6;if(letter=="B")h=240+percent*.6;if(letter=="M")h=300+percent*.6;if(letter=="W"){h=0;white=1-percent/100;black=percent/100}}return hwbToRgb(h,white,black)}function hueToNcol(hue){while(hue>=360)hue=hue-360;if(hue<60)return"R"+hue/.6;if(hue<120)return"Y"+(hue-60)/.6;if(hue<180)return"G"+(hue-120)/.6;if(hue<240)return"C"+(hue-180)/.6;if(hue<300)return"B"+(hue-240)/.6;if(hue<360)return"M"+
35    (hue-300)/.6}function ncsToRgb(ncs){var black,chroma,bc,percent,black1,chroma1,red1,factor1,blue1,red1,red2,green2,blue2,max,factor2,grey,r,g,b;ncs=ftrim(ncs).toUpperCase();ncs=ncs.replace("(","");ncs=ncs.replace(")","");ncs=ncs.replace("NCS","NCS ");ncs=ncs.replace(/  /g," ");if(ncs.indexOf("NCS")==-1)ncs="NCS "+ncs;ncs=ncs.match(/^(?:NCS|NCS\sS)\s(\d{2})(\d{2})-(N|[A-Z])(\d{2})?([A-Z])?$/);if(ncs===null)return false;black=parseInt(ncs[1],10);chroma=parseInt(ncs[2],10);bc=ncs[3];if(bc!="N"&&bc!=
36    "Y"&&bc!="R"&&bc!="B"&&bc!="G")return false;percent=parseInt(ncs[4],10)||0;if(bc!=="N"){black1=1.05*black-5.25;chroma1=chroma;if(bc==="Y"&&percent<=60)red1=1;else if(bc==="Y"&&percent>60||bc==="R"&&percent<=80){if(bc==="Y")factor1=percent-60;else factor1=percent+40;red1=(Math.sqrt(14884-Math.pow(factor1,2))-22)/100}else if(bc==="R"&&percent>80||bc==="B")red1=0;else if(bc==="G"){factor1=percent-170;red1=(Math.sqrt(33800-Math.pow(factor1,2))-70)/100}if(bc==="Y"&&percent<=80)blue1=0;else if(bc==="Y"&&
37      percent>80||bc==="R"&&percent<=60){if(bc==="Y")factor1=percent-80+20.5;else factor1=percent+20+20.5;blue1=(104-Math.sqrt(11236-Math.pow(factor1,2)))/100}else if(bc==="R"&&percent>60||bc==="B"&&percent<=80){if(bc==="R")factor1=percent-60-60;else factor1=percent+40-60;blue1=(Math.sqrt(1E4-Math.pow(factor1,2))-10)/100}else if(bc==="B"&&percent>80||bc==="G"&&percent<=40){if(bc==="B")factor1=percent-80-131;else factor1=percent+20-131;blue1=(122-Math.sqrt(19881-Math.pow(factor1,2)))/100}else if(bc==="G"&&
38      percent>40)blue1=0;if(bc==="Y")green1=(85-17/20*percent)/100;else if(bc==="R"&&percent<=60)green1=0;else if(bc==="R"&&percent>60){factor1=percent-60+35;green1=(67.5-Math.sqrt(5776-Math.pow(factor1,2)))/100}else if(bc==="B"&&percent<=60){factor1=1*percent-68.5;green1=(6.5+Math.sqrt(7044.5-Math.pow(factor1,2)))/100}else if(bc==="B"&&percent>60||bc==="G"&&percent<=60)green1=.9;else if(bc==="G"&&percent>60){factor1=percent-60;green1=(90-1/8*factor1)/100}factor1=(red1+green1+blue1)/3;red2=(factor1-red1)*
39      (100-chroma1)/100+red1;green2=(factor1-green1)*(100-chroma1)/100+green1;blue2=(factor1-blue1)*(100-chroma1)/100+blue1;if(red2>green2&&red2>blue2)max=red2;else if(green2>red2&&green2>blue2)max=green2;else if(blue2>red2&&blue2>green2)max=blue2;else max=(red2+green2+blue2)/3;factor2=1/max;r=parseInt(red2*factor2*(100-black1)/100*255,10);g=parseInt(green2*factor2*(100-black1)/100*255,10);b=parseInt(blue2*factor2*(100-black1)/100*255,10);if(r>255)r=255;if(g>255)g=255;if(b>255)b=255;if(r<0)r=0;if(g<0)g=
40    0;if(b<0)b=0}else{grey=parseInt((1-black/100)*255,10);if(grey>255)grey=255;if(grey<0)grey=0;r=grey;g=grey;b=grey}return{r:r,g:g,b:b}}function rgbToHsl(r,g,b){var min,max,i,l,s,maxcolor,h,rgb=[];rgb[0]=r/255;rgb[1]=g/255;rgb[2]=b/255;min=rgb[0];max=rgb[0];maxcolor=0;for(i=0;i<rgb.length-1;i++){if(rgb[i+1]<=min)min=rgb[i+1];if(rgb[i+1]>=max){max=rgb[i+1];maxcolor=i+1}}if(maxcolor==0)h=(rgb[1]-rgb[2])/(max-min);if(maxcolor==1)h=2+(rgb[2]-rgb[0])/(max-min);if(maxcolor==2)h=4+(rgb[0]-rgb[1])/(max-min);
41    if(isNaN(h))h=0;h=h*60;if(h<0)h=h+360;l=(min+max)/2;if(min==max)s=0;else if(l<.5)s=(max-min)/(max+min);else s=(max-min)/(2-max-min);s=s;return{h:h,s:s,l:l}}function rgbToHwb(r,g,b){var h,w,bl;r=r/255;g=g/255;b=b/255;max=Math.max(r,g,b);min=Math.min(r,g,b);chroma=max-min;if(chroma==0)h=0;else if(r==max)h=(g-b)/chroma%6*360;else if(g==max)h=((b-r)/chroma+2)%6*360;else h=((r-g)/chroma+4)%6*360;w=min;bl=1-max;return{h:h,w:w,b:bl}}function rgbToCmyk(r,g,b){var c,m,y,k;r=r/255;g=g/255;b=b/255;max=Math.max(r,
42g,b);k=1-max;if(k==1){c=0;m=0;y=0}else{c=(1-r-k)/(1-k);m=(1-g-k)/(1-k);y=(1-b-k)/(1-k)}return{c:c,m:m,y:y,k:k}}function toHex(n){var hex=n.toString(16);while(hex.length<2)hex="0"+hex;return hex}function cl(x){console.log(x)}function ftrim(x){return x.replace(/^\s+|\s+$/g,"")}function isHex(x){return"0123456789ABCDEFabcdef".indexOf(x)>-1}window.fcolor=fcolor})();
43function fSetColorsByAttribute(){var z,i,att;z=document.getElementsByTagName("*");for(i=0;i<z.length;i++){att=z[i].getAttribute("data-f-color");
43if(att)z[i].style.backgroundColor=fcolor(att).toRgbString()}};
44(function(){var faBase="fal";f().prototype().fa=function(base){if(!base)return faBase;faBase=base;return this}})();
45(function(){var httpOnTimeout=0;f().prototype().http=function(input){if(!input.method)input.method="GET";var params=[];var r20=/%20/g;function addParam(key,value){value=typeof value==="function"?value():value==null?"":value;params[params.length]=encodeURIComponent(key)+"\x3d"+encodeURIComponent(value)}function httpEnd(){httpRequest.onloadend=function(){};httpRequest.onerror=function(){};httpRequest.ontimeout=function(){};httpRequest.onprogress=function(){};httpRequest.onabort=function(){};httpOnTimeout=
46      setTimeout(function(){f("http-off").emit({url:input.url})},500)}function httpSetHeaders(){httpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset\x3dUTF-8");if(input.headers instanceof Object)f(Object.keys(input.headers)).each(function(key){httpRequest.setRequestHeader(key,input.headers[key])})}var httpRequest=new XMLHttpRequest;httpRequest.onloadend=function(event){httpEnd();if(event.target.status==200){f("http-off").emit({url:input.url});try{input.onsuccess(event)}catch(err){console.log(err,
47    event)}}else try{input.onerror(event)}catch(err){console.log(err,event)}};httpRequest.onerror=function(event){httpEnd();try{input.onerror(event)}catch(err){console.log(err,event)}};httpRequest.ontimeout=function(event){httpEnd();try{input.ontimeout(event)}catch(err){console.log(err,event)}};httpRequest.onabort=function(event){httpEnd();try{input.onabort(event)}catch(err){console.log(err,event)}};httpRequest.onprogress=function(event){try{input.onprogress(event)}catch(err){}};clearTimeout(httpOnTimeout);
48    f("http-on").emit({url:input.url});if(this.input instanceof Element&&this.input.tagName.toLowerCase()=="form"){var elements=this.input.elements;for(var i=0;i<elements.length;i++){var element=elements[i];if(!element.disabled)if(element.type=="radio"||element.type=="checkbox"){if(element.checked)addParam(element.name,element.value)}else addParam(element.name,element.value)}if(input.params instanceof Object)f(Object.keys(input.params)).each(function(key){addParam(key,input.params[key])});var url;try{url=
49      new URL(input.url)}catch(err){if(input.url.indexOf("http")>0)url=new URL(input.url);else{var pathname=document.location.pathname;pathname=pathname.substring(0,pathname.indexOf("/web.app"));if(pathname.charAt(0)=="/")pathname=pathname.substring(1);if(pathname!="")pathname+="/";url=new URL(document.location.protocol+"//"+document.location.host+"/"+pathname+input.url)}}httpRequest.open(input.method,url);httpSetHeaders();httpRequest.timeout=input.timeout?input.timeout:0;httpRequest.send(params.join("\x26").replace(r20,
50      "+"))}else if(this.input instanceof Object){var url;try{url=new URL(input.url)}catch(err){if(input.url.indexOf("http")>0)url=new URL(input.url);else{var pathname=document.location.pathname;pathname=pathname.substring(0,pathname.indexOf("/web.app"));if(pathname.charAt(0)=="/")pathname=pathname.substring(1);if(pathname!="")pathname+="/";url=new URL(document.location.protocol+"//"+document.location.host+"/"+pathname+input.url)}}if(input.params instanceof Object)f(Object.keys(input.params)).each(function(key){url.searchParams.set(key,
51        input.params[key])});httpRequest.open(input.method,url);httpSetHeaders();httpRequest.timeout=input.timeout?input.timeout:0;httpRequest.send(JSON.stringify(this.input))}else{if(input.method.toLowerCase()=="get"){var url;try{url=new URL(input.url)}catch(err){if(input.url.indexOf("http")>0)url=new URL(input.url);else{var baseURL=document.location.protocol+"//"+document.location.host;url=new URL(baseURL+"/"+input.url)}}if(input.params instanceof Object)f(Object.keys(input.params)).each(function(key){url.searchParams.set(key,
52        input.params[key])});httpRequest.open(input.method,url);httpSetHeaders();httpRequest.timeout=input.timeout?input.timeout:0;httpRequest.send()}if(input.method.toLowerCase()=="post"){if(Array.isArray(input.params))f(input.params).each(function(item){addParam(item.name,item.value)});else if(input.params instanceof Object)f(Object.keys(input.params)).each(function(key){addParam(key,input.params[key])});httpRequest.open(input.method,input.url);httpSetHeaders();httpRequest.timeout=input.timeout?input.timeout:
530;httpRequest.send(params.join("\x26").replace(r20,"+"))}}return this};function ascii7(text){var ascii7text="";for(var i=0;i<text.length;
53i++){var charCode=text.codePointAt(i);if(charCode<127)ascii7text+=String.fromCodePoint(charCode);else{var c=String.fromCodePoint(charCode);i+=c.length-1;ascii7text+="\x26#"+charCode+";"}}return ascii7text}})();
54(function(){f().prototype().interactive=function(settings){this.each(function(item){var boundingRect=item.getBoundingClientRect();var mouseDown=false;function pos(boundingRect,event){var x=event.clientX-boundingRect.x;var y=event.clientY-boundingRect.y;return{x:x,y:y}}function down(settings,event){mouseDown=true;if(settings.down){var context=pos(boundingRect,event);context.down=mouseDown;settings.down(event,context)}}function up(settings,event){mouseDown=false;if(settings.up){var context=pos(boundingRect,
55      event);context.down=mouseDown;settings.up(event,context)}}function move(settings,event){if(settings.move){var context=pos(boundingRect,event);context.down=mouseDown;settings.move(event,context)}}f(item).on("mousedown",function(event){if(event.button===0)down(settings,event)},true);f(item).on("mouseup",function(event){if(event.button===0)up(settings,event)},true);f(item).on("mousemove",function(event){move(settings,event)},true);f(item).on("touchstart",function(event){down(settings,event.touches[0])},
56true);f(item).on("touchend",function(event){up(settings,event)},true);f(item).on("touchcancel",function(event){up(settings,event)},true);f(item).on("touchmove",function(event){move(settings,event.touches[0])},true)});return this}})();
57(function(){f().prototype().on=function(what,callback,replace){this.each(function(item){var currentOn=item["on"+what];item["on"+what]=function(event){if(typeof currentOn==="function"&&!replace)currentOn(event);callback(event)}});return this}})();
58(function(){var slots=[];window.addEventListener("message",function(event){slots.forEach(function(slot){if(event.data.what==slot.what)slot.callback(event.data.data,event)})},false);f().prototype().emit=function(data){postMessage({what:this.input,data:data},document.location.href);return this};f().prototype().slot=function(callback){var otherSlots=[];var me=this;f(slots).each(function(slot){if(slot.what!=me.input)otherSlots.push(slot)});slots=otherSlots;slots.push({what:this.input,callback:callback});
59    return this};f().prototype().unslot=function(){var newSlots=[];var what=this.input;f(slots).each(function(slot){if(what!=slot.what)newSlots.push(slot)});slots=newSlots;return this};document.addEventListener("keyup",function(event){f("keyup").emit({keyCode:event.keyCode,key:event.key,shiftKey:event.shiftKey,altKey:event.altKey,composed:event.composed,ctrlKey:event.ctrlKey,metaKey:event.metaKey,repeat:event.repeat,which:event.which,type:event.type})});document.addEventListener("keydown",function(event){f("keydown").emit({keyCode:event.keyCode,
60key:event.key,shiftKey:event.shiftKey,altKey:event.altKey,composed:event.composed,ctrlKey:event.ctrlKey,metaKey:event.metaKey,repeat:event.repeat,which:event.which,type:event.type})})})();
61(function(){var uiPlugins=[];var uiOnReadyPlugins=[];f().prototype().uiReady=function(){for(var i=0;i<uiOnReadyPlugins.length;i++)uiOnReadyPlugins[i]()};function renderUi(context){var renderDiv=context.div;var onready=context.callback;var plugin;for(var i=0;i<uiPlugins.length;i++)if(i==0)plugin=new Promise(function(resolve,reject){uiPlugins[i](resolve,{div:renderDiv,i:0,callback:onready})});else plugin=plugin.then(function(context){return new Promise(function(resolve,reject){uiPlugins[++context.i](resolve,
62    context)})});plugin.then(function(context){var ok=true;f('[class^\x3d"f__"]').each(function(item){ok=false;item.classList.forEach(function(className){if(className.indexOf("f__")==0){item.classList.remove(className);item.classList.add(className.replace("f__","f_"))}})});if(ok){onready();f().uiReady()}else renderUi(context)})}function renderDiv(target,html,options){var renderDiv=document.createElement("div");renderDiv.classList.add("f_");document.body.appendChild(renderDiv);f(renderDiv).html(html);
63  renderUi({div:renderDiv,callback:function(){f(target).html("");while(renderDiv.childNodes.length>0)target.appendChild(renderDiv.childNodes[0]);try{renderDiv.parentElement.removeChild(renderDiv)}catch(err){}if(options.onready)options.onready()}})}f().prototype().uiRender=function(callback){renderUi({div:this.item,callback:callback})};f().prototype().uiPlugins=function(){return uiPlugins};f().prototype().uiOnReadyPlugins=function(){return uiOnReadyPlugins};f().prototype().uiPlugin=function(name,plugin,
64  uiOnReadyPlugin){var uiPlugin=function(resolve,context){var item=f(context.div).find(".f_"+name).item;if(item){eval("var json \x3d"+item.innerText);json.onready=function(){renderUi(context)};f(item).addClass("f-"+name);plugin(item,json);f(item).removeClass("f_"+name)}else resolve(context)};
64uiPlugins.push(uiPlugin);if(uiOnReadyPlugin)uiOnReadyPlugins.push(uiOnReadyPlugin)};f().prototype().ui=function(options){options=options||{};if(this.item)this.items.forEach(function(item){renderDiv(item.parentElement,
65      item.parentElement.innerHTML,options)});else if(options.url){var template;try{template=f().t(options.url)}catch(err){}if(template){var html=template.render(f().appSession());renderDiv(f(options.target).item,html,options)}else f().http({url:options.url,headers:{pragma:"no-cache","Cache-Control":"no-cache"},onsuccess:function(event){var html=event.target.responseText;html=f(html).t(f().appSession());renderDiv(f(options.target).item,html,options)},onerror:function(event){renderDiv(f(options.target).item,
66"",options)}})}else{var target=f(options.target).item;var url=target.getAttribute("data-resource");if(url)this.ui({url:url,target:target,onready:options.onready?options.onready:function(){}})}return this}})();
67(function(){var _serverURL;f().prototype().serverURL=function(serverURL){if(!serverURL)if(_serverURL)return _serverURL;else{if(document.location){var url=document.location.protocol+"//"+document.location.hostname;if(document.location.port&&document.location.port!=""){url+=":";url+=document.location.port}url+="/";_serverURL=serverURL}return url}else _serverURL=serverURL};String.prototype.equals=function(compare){try{return this.toString()===compare.toString()}catch(e){return false}};String.prototype.equalsIgnoreCase=
68  function(compare){try{return this.toLowerCase().equals(compare.toLowerCase())}catch(e){return false}};String.prototype.contains=function(compare){try{return this.indexOf(compare)!=-1}catch(e){return false}};String.prototype.containsIgnoreCase=function(compare){try{return this.toLowerCase().contains(compare.toLowerCase())}catch(e){return false}};String.prototype.startsWith=function(compare){try{return this.indexOf(compare)==0}catch(e){return false}};String.prototype.capitalize=function(){return this.charAt(0).toUpperCase()+
69    this.slice(1)};Date.parse=function(date){try{if(typeof date=="string"){var o=date.split(/[^0-9]/);var year=o[0];var month=o.length>1?o[1]-1:0;var day=o.length>2?o[2]:0;var hour=o.length>3?o[3]:0;var minute=o.length>4?o[4]:0;var second=o.length>5?o[5]:0;return new Date(year,month,day,hour,minute,second)}else return new Date(date)}catch(e){return new Date}};Date.prototype.isInvalid=function(){if(isNaN(this.getTime()))return true;return false};Date.prototype.getTimestamp=function(){return this.getTime()/
70  1E3};Date.prototype.getISOTimestamp=function(){return Date.parse(this.toISOString()).getTime()/1E3};Date.prototype.add=function(what,time){var minute=6E4;if(what=="minutes")this.setTime(this.getTime()+time*minute);else if(what=="hours")this.setTime(this.getTime()+time*(60*minute));else if(what=="days")this.setTime(this.getTime()+time*(24*(60*minute)));return this};Date.prototype.clone=function(){return new Date(this)};Date.prototype.yesterday=function(){this.setDate(this.getDate()-1);return this};
71  Date.prototype.tomorrow=function(){this.setDate(this.getDate()+1);return this};Date.prototype.prevYear=function(){var currentYear=this.getFullYear();while(currentYear==this.getFullYear())this.setFullYear(this.getFullYear()-1);return this};Date.prototype.nextYear=function(){var currentYear=this.getFullYear();while(currentYear==this.getFullYear())this.setFullYear(this.getFullYear()+1);return this};Date.prototype.prevMonth=function(){var currentMonth=this.getMonth();do this.setMonth(this.getMonth()-
72  1);while(currentMonth==this.getMonth());return this};Date.prototype.nextMonth=function(){var currentMonth=this.getMonth();do this.setMonth(this.getMonth()+1);while(currentMonth==this.getMonth());return this};Date.prototype.changeMonth=function(n){if(n<0)for(var j=n;j<0;j++)this.prevMonth();if(n>0)for(var j=0;j<n;j++)this.nextMonth();return this};Date.prototype.changeWeek=function(n){if(n<0)for(var j=n;j<0;j++)this.prevWeek();if(n>0)for(var j=0;j<n;j++)this.nextWeek();return this};Date.prototype.prevWeek=
73  function(){var currentDay=this.getDay();do this.setDate(this.getDate()-1);while(currentDay!=this.getDay());return this};Date.prototype.nextWeek=function(){var currentDay=this.getDay();do this.setDate(this.getDate()+1);while(currentDay!=this.getDay());return this};Date.prototype.dayStart=function(){this.setHours(0);this.setMinutes(0);this.setSeconds(0);return this};Date.prototype.dayEnd=function(){this.setHours(23);this.setMinutes(59);this.setSeconds(59);return this};Date.prototype.monthStart=function(){this.setDate(1);
74    this.dayStart();return this};Date.prototype.monthEnd=function(){this.setDate(this.getMaxDayOfMonth());this.dayEnd();return this};Date.prototype.getMaxDayOfMonth=function(){var date=new Date(this.getFullYear(),this.getMonth(),1);var dayOfMonth=0;while(date.getMonth()==this.getMonth()){dayOfMonth++;date.tomorrow()}return dayOfMonth};Date.prototype.getStartOfWeek=function(){while(this.getDay()!=1)this.setDate(this.getDate()-1);return this};Date.prototype.getWeeksInMonth=function(){return Math.ceil(this.getMaxDayOfMonth()/
75    7)};Date.prototype.getWeeksInYear=function(){var date=new Date(this.getFullYear(),0,1);var dayOfYear=0;while(date.getFullYear()==this.getFullYear()){dayOfYear+=date.getMaxDayOfMonth();date.nextMonth()}return Math.round(dayOfYear/7)};Date.prototype.getMonthMonday=function(){this.setDate(1);
75this.getStartOfWeek();return this};Date.prototype.format=function(options,language){if(options){language=language||"en";return this.toLocaleDateString(language,options)}else{var month=("000"+(this.getMonth()+1)).slice(-2);
76  var date=("000"+this.getDate()).slice(-2);var hour=("000"+this.getHours()).slice(-2);var minute=("000"+this.getMinutes()).slice(-2);var second=("000"+this.getSeconds()).slice(-2);return this.getFullYear()+"-"+month+"-"+date+" "+hour+":"+minute+":"+second}};Date.prototype.datetimeAsParam=function(){return this.format()};Date.prototype.dateAsParam=function(){var month=("000"+(this.getMonth()+1)).slice(-2);var date=("000"+this.getDate()).slice(-2);return this.getFullYear()+"-"+month+"-"+date};Date.prototype.datetimeAsParam=
77  function(){var month=("000"+(this.getMonth()+1)).slice(-2);var date=("000"+this.getDate()).slice(-2);var hour=("000"+this.getHours()).slice(-2);var minute=("000"+this.getMinutes()).slice(-2);return this.getFullYear()+"-"+month+"-"+date+" "+hour+":"+minute};Date.prototype.time=function(options,language){options=options||{};language=language||"en";return this.toLocaleTimeString(language,options)};Date.prototype.calendarMonth=function(){var data={};var day=this.clone();data.day=day.datetimeAsParam();
78    data.dayStart=day.dayStart().datetimeAsParam();day.setDate(1);day.getStartOfWeek();data.dayStart=day.dayStart().datetimeAsParam();day.setDate(day.getDate()+6+7*5);data.dayEnd=day.dayEnd().datetimeAsParam();return data};Date.prototype.calendarWeek=function(){var data={};var day=this.clone();data.day=day.datetimeAsParam();data.dayStart=day.dayStart().datetimeAsParam();day.getStartOfWeek();data.dayStart=day.dayStart().datetimeAsParam();day.setDate(day.getDate()+6);data.dayEnd=day.dayEnd().datetimeAsParam();
79    return data};String.prototype.normalize=function(){var string=this;var newString="";for(var i=0;i<string.length;i++){var character=string.charAt(i);if(isNaN(character)&&character==character.toUpperCase())newString+="-"+character.toLowerCase();else newString+=character}return newString};String.prototype.replaceAll=function(search,replacement){return this.split(search).join(replacement)};JSON.parse=function(jsonAsString){eval("var json \x3d "+jsonAsString);return json};function stageReady(){f(".f-overlay").each(function(overlay){if(overlay.dataset.background)overlay.style.backgroundImage=
80    "url("+overlay.dataset.background+")"})}function stageResize(){f(".f-a4h").each(function(item,index){var rect=item.parentElement.getBoundingClientRect();item.style.height=Math.round(rect.width*2100/2970)+"px"});f(".f-a4v").each(function(item,index){var rect=item.parentElement.getBoundingClientRect();item.style.height=Math.round(rect.width*2970/2100)+"px"});f(".f-16_9").each(function(item,index){var rect=item.parentElement.getBoundingClientRect();item.style.height=Math.round(rect.width*9/16)+"px"});
81    f(".f-square").each(function(item,index){var rect=item.parentElement.getBoundingClientRect();item.style.height=Math.round(rect.width)+"px"});f(".f-stage").each(function(item,index){var rect=item.parentElement.getBoundingClientRect();var stagew=parseInt(item.getAttribute("data-width"));var stageh=parseInt(item.getAttribute("data-height"));var parentw=rect.width;var parenth=rect.height;var scale=parentw/stagew;if(parentw/parenth>stagew/stageh)scale=parenth/stageh;item.style.position="absolute";item.style.top=
82"50%";item.style.left="50%";item.style.width=stagew+"px";item.style.height=stageh+"px";item.style.transform="translate(-50%,-50%) scale("+scale+","+scale+")";item.setAttribute("scale",scale)})}f(window).on("resize",function(){stageResize()});f().uiOnReadyPlugins().push(stageResize);f().uiOnReadyPlugins().push(stageReady)})();
83(function(){var noParseDelimiters=["~{~","~}~"];var libTemplates={};function tc(src,options){if(!options)options={delimiters:["[%","%]"],comments:true};if(options.comments===true){var _scripts={};var _src="";src.split("\n").forEach(function(line){if(line.trim().indexOf("//")!=0)_src+=line+"\n"});src=_src;var x1;while((x1=src.indexOf("/*"))>=0){var x2=src.indexOf("*/",x1);src=src.substring(0,x1)+src.substring(x2+2)}while((x1=src.indexOf("\x3c!--"))>
83=0){var x2=src.indexOf("--\x3e",x1);src=src.substring(0,
84      x1)+src.substring(x2+3)}}var scriptIndex=0;x1=0;while((x1=src.indexOf("\x3cscript name\x3d",x1))>=0){x1=src.indexOf("\x3e",x1)+1;var x2=src.indexOf("\x3c/script\x3e",x1);var script=src.substring(x1,x2);script=script.split(options.delimiters[0]).join(noParseDelimiters[0]);script=script.split(options.delimiters[1]).join(noParseDelimiters[1]);src=src.substring(0,x1)+script+src.substring(x2)}var t="";t+='(function(model){if(model)for(var key in model) eval("var "+key+"\x3dmodel."+key);';t+='var _\x3d"";';
85  var x1;while((x1=src.indexOf(options.delimiters[0]))>=0){var x2=src.indexOf(options.delimiters[1],x1);var html=JSON.stringify(src.substring(0,x1));if(html!='""')t+="_+\x3d"+html+";";html=src.substring(x1+2,x2);if(html.charAt(0)=="\x3d"){html=html.substring(1);t+="_+\x3d "+html+";"}else if(html!="")t+=html+";";src=src.substring(x2+2)}t+="_+\x3d"+JSON.stringify(src)+";";t+="return _;});\n";try{t=t.split(noParseDelimiters[0]).join(options.delimiters[0]);t=t.split(noParseDelimiters[1]).join(options.delimiters[1])}catch(err){}return eval(t)}
86  f().prototype().tc=tc;f().prototype().t=function(data,options){if(Array.isArray(data)){f(data).each(function(template){libTemplates[template.url]=f(template.code).t()});return}if(libTemplates[data])return libTemplates[data];if(data)return tc(this.input,options)(data);else return{render:tc(this.input,options)}};function renderTemplate(item,url,target,context){if(libTemplates[url]){var template=libTemplates[url];var data=f().appSession();if(target)data=f().app().get(target);var html=template.render(data);
87  f(item).html(html);if(context)f(context.div).uiRender(context.callback)}else f().http({url:url,headers:{pragma:"no-cache","Cache-Control":"no-cache"},onsuccess:function(event){var template=event.target.responseText;libTemplates[url]=f(template).t();var data=f().appSession();if(target)data=f().app().get(target);var html=libTemplates[url].render(data);f(item).html(html);f(context.div).uiRender(context.callback)},onerror:function(event){f(context.div).uiRender(context.callback)}})}function tService(service,
88  signedHeaders,url,model,target,item,context){signedHeaders["pragma"]="no-cache";signedHeaders["Cache-Control"]="no-cache";f().http({url:service,headers:signedHeaders,onsuccess:function(event){var json=JSON.parse(event.target.responseText);f().app().set(model,json);renderTemplate(item,url,target,context)},onerror:function(event){renderTemplate(item,url,target,context)}})}var tPlugin=function(resolve,context){var item=f(context.div).find(".f_t").item;if(item){f(item).removeClass("f_t").addClass("f-t");
89var url=item.getAttribute("data-resource");var service=item.getAttribute("data-service");var secure=item.getAttribute("data-secure");var model=item.getAttribute("data-model");var target=item.getAttribute("data-target");if(service)if(secure=="true")f().api(function(apiHeaders){tService(service,apiHeaders,url,model,target,item,context)},item.getAttribute("data-channel"));else tService(service,{},url,model,target,item,context);else renderTemplate(item,url,target,context)}else resolve(context)};f().uiPlugins().push(tPlugin)})();
90(function(){var templatesvg=f().tc('  \x3csvg viewBox\x3d"0,0,[%\x3dw%],[%\x3dh%]" xmlns\x3d"http://www.w3.org/2000/svg" xmlns:xlink\x3d"http://www.w3.org/1999/xlink"\x3e  [%if(r){%]    \x3cg transform\x3d"rotate([%\x3dr%] [%\x3dw/2%] [%\x3dh/2%])"\x3e  [%}%]  [%if(typeof tx !\x3d\x3d \'undefined\' \x26\x26 typeof ty !\x3d\x3d \'undefined\' \x26\x26 (tx !\x3d 0 || ty !\x3d 0)) { %]    \x3cg transform\x3d"translate([%\x3dtx%] [%\x3dty%])"\x3e  [%}%]  [%if(clipRect) { var clipRectUid \x3d Math.random().toString(36).substr(2, 9); %]    \x3cclipPath id\x3d"clip-rect-[%\x3dclipRectUid%]"\x3e    \x3crect x\x3d"[%\x3dclipRect.x%]" y\x3d"[%\x3dclipRect.y%]" width\x3d"[%\x3dclipRect.w%]" height\x3d"[%\x3dclipRect.h%]" /\x3e    \x3c/clipPath\x3e    \x3cg clip-path\x3d"url(#clip-rect-[%\x3dclipRectUid%])"\x3e  [%}%]  [%  var svgId \x3d Math.random().toString(36).substr(2, 9);  var grouped \x3d false;  %]  [%f(paths).each(function(path, index){    var uid \x3d Math.random().toString(36).substr(2, 9);    %]    [%if(path.type \x3d\x3d \'text\'){%]      \x3cg [%if(path.settings.transform){%]class\x3d"[%\x3dpath.settings.class%]"[%}%] [%if(path.settings.transform){%] transform\x3d"[%\x3dpath.settings.transform%]"[%}%] fill\x3d"[%\x3dpath.settings.fill%]" [%if(!isNaN(path.size)){%]style\x3d"font-size:[%\x3dpath.size%]px"[%}%]\x3e      [%      var lines \x3d path.text.split(\'\\n\');      var offsetY \x3d (path.h-lines.length*path.size)/2-path.size/8;      %]      [%f(lines).each(function(line, index) {%]        [%if(path.textAlign \x3d\x3d 1){%]          \x3ctext \x3c!--textLength\x3d"[%\x3dpath.w%]" lengthAdjust\x3d"spacingAndGlyphs"--\x3e x\x3d"[%\x3dpath.x%]" y\x3d"[%\x3doffsetY+path.y+path.size*(index+1)%]" style\x3d"text-anchor: start"\x3e[%\x3dline%]\x3c/text\x3e        [%}%]        [%if(path.textAlign \x3d\x3d 2){%]          \x3ctext \x3c!--textLength\x3d"[%\x3dpath.w%]" lengthAdjust\x3d"spacingAndGlyphs"--\x3e x\x3d"[%\x3dpath.x+path.w/2%]" y\x3d"[%\x3doffsetY+path.y+path.size*(index+1)%]" style\x3d"text-anchor: middle"\x3e[%\x3dline%]\x3c/text\x3e        [%}%]        [%if(path.textAlign \x3d\x3d 3){%]          \x3ctext \x3c!--textLength\x3d"[%\x3dpath.w%]" lengthAdjust\x3d"spacingAndGlyphs"--\x3e x\x3d"[%\x3dpath.x+path.w%]" y\x3d"[%\x3doffsetY+path.y+path.size*(index+1)%]" style\x3d"text-anchor: end"\x3e[%\x3dline%]\x3c/text\x3e        [%}%]      [%})%]      \x3c/g\x3e    [%}else if(path.type \x3d\x3d \'transform-start\'){%]      \x3cg transform\x3d"[%\x3dpath.value%]"\x3e      \x3c!-- \x3cg transform\x3d"translate([%\x3d202%] [%\x3d(path.ty)%]) rotate(-90 1050 1485)"\x3e --\x3e    [%}else if(path.type \x3d\x3d \'transform-end\'){%]      \x3c/g\x3e    [%}else if(path.type \x3d\x3d \'image\'){%]      \x3cg [%if(path.settings.transform){%] transform\x3d"[%\x3dpath.settings.transform%]"[%}%]\x3e      \x3cimage xlink:href\x3d"[%\x3dpath.url%]" x\x3d"[%\x3dpath.x%]" y\x3d"[%\x3dpath.y%]" width\x3d"[%\x3dpath.w%]" height\x3d"[%\x3dpath.h%]" [%if(path.settings.mask){%] mask\x3d"url(#[%\x3dpath.settings.mask%]_[%\x3dsvgId%])"[%}%]\x3e\x3c/image\x3e      \x3c/g\x3e    [%}else if(path.type \x3d\x3d \'shape\'){%]      \x3cg [%if(path.settings.transform){%] transform\x3d"[%\x3dpath.settings.transform%]"[%}%]\x3e      \x3cpath d\x3d"[%\x3dpath.shape%]" fill\x3d"[%\x3dpath.settings.fill%]" fill-opacity\x3d"[%\x3dpath.settings.fillOpacity%]" stroke\x3d"[%\x3dpath.settings.stroke%]" stroke-opacity\x3d"[%\x3dpath.settings.strokeOpacity%]"\x3e\x3c/path\x3e      \x3c/g\x3e    [%}else{%]      [%if(path.special \x3d\x3d\x3d true){%]        [%if(path.type \x3d\x3d \'group-start\'){ grouped \x3d true; %] \x3cg [%}%]        [%if(path.type \x3d\x3d \'group-end\'){ grouped \x3d fal
90se; %] \x3c/g [%}%]        [%if(path.type \x3d\x3d \'defs-start\'){ %] \x3cdefs  [%}%]        [%if(path.type \x3d\x3d \'defs-end\'){ %] \x3c/defs [%}%]        [%if(path.type \x3d\x3d \'mask-start\'){ %] \x3cmask id\x3d"[%\x3dpath.id%]_[%\x3dsvgId%]" [%}%]        [%if(path.type \x3d\x3d \'mask-end\'){ %] \x3c/mask [%}%]        [%if(path.type \x3d\x3d \'clip-start\'){ %] \x3cclipPath id\x3d"[%\x3dpath.id%]_[%\x3dsvgId%]" [%}%]        [%if(path.type \x3d\x3d \'clip-end\'){ %] \x3c/clipPath [%}%]      [%}else{%]        [%if(path.type \x3d\x3d \'rect\'){%]          \x3crect x\x3d"[%\x3dpath.x%]" y\x3d"[%\x3dpath.y%]" rx\x3d"[%\x3dpath.rx%]" ry\x3d"[%\x3dpath.ry%]" width\x3d"[%\x3dpath.w%]" height\x3d"[%\x3dpath.h%]"        [%}else if(path.type \x3d\x3d \'circle\'){%]          \x3ccircle cx\x3d"[%\x3dpath.x%]" cy\x3d"[%\x3dpath.y%]" r\x3d"[%\x3dpath.r%]"        [%}else if(path.type \x3d\x3d \'ellipse\'){%]          \x3cellipse cx\x3d"[%\x3dpath.x%]" cy\x3d"[%\x3dpath.y%]" rx\x3d"[%\x3dpath.x1%]" ry\x3d"[%\x3dpath.y1%]"        [%}else{%]          \x3cdefs\x3e          [%f(markers).each(function(marker, index){ %]            \x3cmarker            id\x3d"[%\x3dmarker.name%]_[%\x3duid%]"            [%if(marker.r){%]              refX\x3d"[%\x3dmarker.r%]"              refY\x3d"[%\x3dmarker.r%]"              viewB
90ox\x3d"0 0 [%\x3dmarker.r*2%] [%\x3dmarker.r*2%]"              markerWidth\x3d"[%\x3dmarker.r*2%]"              markerHeight\x3d"[%\x3dmarker.r*2%]"            [%}else{%]              refX\x3d"[%\x3dmarker.w/2%]"              refY\x3d"[%\x3dmarker.h/2%]"              viewBox\x3d"0 0 [%\x3dmarker.w%] [%\x3dmarker.h%]"              markerWidth\x3d"[%\x3dmarker.w%]"              markerHeight\x3d"[%\x3dmarker.h%]"            [%}%]            orient\x3d"auto"\x3e            [%if(marker.r){%]              \x3ccircle cx\x3d"[%\x3dmarker.x%]" cy\x3d"[%\x3dmarker.y%]" r\x3d"[%\x3dmarker.r%]" fill\x3d"[%\x3dpath.settings.stroke%]" [%if(path.settings.strokeOpacity){%] fill-opacity\x3d"[%\x3dpath.settings.strokeOpacity%]"[%}%]\x3e\x3c/circle\x3e            [%}else{%]              \x3cpath d\x3d"[%\x3dmarker.d%]" fill\x3d"[%\x3dpath.settings.stroke%]" [%if(path.settings.strokeOpacity){%] fill-opacity\x3d"[%\x3dpath.settings.strokeOpacity%]"[%}%]\x3e\x3c/path\x3e            [%}%]            \x3c/marker\x3e          [%})%]          \x3c/defs\x3e          \x3cpath d\x3d"[%f(path.d).each(function(point, index){%][%if(index !\x3d 0){%] [%}%][%\x3dpoint.type%][%if(point.type \x3d\x3d "M" || point.type \x3d\x3d "L"){%][%\x3dpoint.x%],[%\x3dpoint.y%][%}%][%if(point.type \x3d\x3d "C"){%][%\x3dpoint.x2%],[%\x3dpoint.y2%],[%\x3dpoint.x3%],[%\x3dpoint.y3%],[%\x3dpoint.x1%],[%\x3dpoint.y1%] [%}%][%if(point.type \x3d\x3d "S"){%][%\x3dpoint.x%],[%\x3dpoint.y%],[%\x3dpoint.x1%],[%\x3dpoint.y1%][%}%][%if(point.type \x3d\x3d "Q"){%][%\x3dpoint.x2%],[%\x3dpoint.y2%] [%\x3dpoint.x1%],[%\x3dpoint.y1%][%}%][%if(point.type \x3d\x3d "T"){%][%\x3dpoint.x%],[%\x3dpoint.y%][%}%][%if(point.type \x3d\x3d "A"){%][%\x3dpoint.rx%],[%\x3dpoint.ry%],[%\x3dpoint.a%],[%\x3dpoint.laf%],[%\x3dpoint.sf%],[%\x3dpoint.x%],[%\x3dpoint.y%][%}%][%});%]"        [%}%]      [%}%]      [%if((grouped \x26\x26 path.special \x3d\x3d\x3d true) || (!grouped \x26\x26 !path.special)){%]        [%if(path.settings.fill){%] fill\x3d"[%\x3dpath.settings.fill%]"[%}%]        [%if(path.settings.stroke){%] stroke\x3d"[%\x3dpath.settings.stroke%]"[%}%]        [%if(path.settings.strokeWidth){%] stroke-width\x3d"[%\x3dpath.settings.strokeWidth%]"[%}%]        [%if(path.settings.strokeOpacity){%] stroke-opacity\x3d"[%\x3dpath.settings.strokeOpacity%]"[%}%]        [%if(path.settings.strokeDashArray){%] stroke-dasharray\x3d"[%\x3dpath.settings.strokeDashArray%]"[%}%]        [%if(path.settings.strokeLinecap){%] stroke-linecap\x3d"[%\x3dpath.settings.strokeLinecap%]"[%}%]        [%if(path.settings.strokeLinejoin){%] stroke-linejoin\x3d"[%\x3dpath.settings.strokeLinejoin%]"[%}%]        [%if(path.settings.fillOpacity){%] fill-opacity\x3d"[%\x3dpath.settings.fillOpacity%]"[%}%]        [%if(path.settings.clip){%] clip-path\x3d"url(#[%\x3dpath.settings.clip%]_[%\x3dsvgId%])"[%}%]        [%if(path.settings.mask){%] mask\x3d"url(#[%\x3dpath.settings.mask%]_[%\x3dsvgId%])"[%}%]        [%if(path.settings.transform){%] transform\x3d"[%\x3dpath.settings.transform%]"[%}%]        [%if(path.settings.opacity){%] opacity\x3d"[%\x3dpath.settings.opacity%]"[%}%]        [%if(path.settings.class){%] class\x3d"[%\x3dpath.settings.class%]"[%}%]        [%if(path.settings.markerStart){%] marker-start\x3d"url(#[%\x3dpath.settings.markerStart%]_[%\x3duid%])"[%}%]        [%if(path.settings.markerEnd){%] marker-end\x3d"url(#[%\x3dpath.settings.markerEnd%]_[%\x3duid%])"[%}%]      [%}%]      [%if(path.special \x3d\x3d\x3d true){%]        \x3e      [%}else{  %]        [%if(path.animateTransform){  %]          \x3e\x3canimatetransform attributeName\x3d"transform" from\x3d"[%\x3dpath.animateTransform.from%]" to\x3d"[%\x3dpath.animateTransform.to%]" attributeType\x3d"XML" type\x3d"[%\x3dpath.animateTransform.type%]" dur\x3d"[%\x3dpath.animateTransform.dur%]" repeatCount\x3d"[%\x3dpath.animateTransform.repeatCount%]"/\x3e          [%if(path.type \x3d\x3d \'rect\'){%]            \x3c/rect\x3e          [%}else if(path.type \x3d\x3d \'circle\'){%]            \x3c/circle\x3e          [%}else if(path.type \x3d\x3d \'ellipse\'){%]            \x3c/ellipse\x3e          [%}else{%]            \x3c/path\x3e          [%}%]        [%}else{%]          /\x3e        [%}%]      [%}%]    [%}%]  [%});%]  [%if(clipRect) { %]\x3c/g\x3e[%}%]  [%if(r){%]\x3c/g\x3e[%}%]  [%if(typeof tx !\x3d\x3d \'undefined\' \x26\x26 typeof ty !\x3d\x3d \'undefined\' \x26\x26 (tx !\x3d 0 || ty !\x3d 0)) { %]\x3c/g\x3e[%}%]  \x3c/svg\x3e');
91  var svgs={};f().prototype().svg=function(w,h,tx,ty,r,clipRect){var svg={};var path={};svg.clipRect=clipRect;svg.w=w;svg.h=h;svg.r=r;svg.tx=tx;svg.ty=ty;svg.paths=[];svg.markers=[];svg.settings={};svg.init=function(){svg.settings={};path.settings={}};svg.set=function(name,value){if(name){path.settings=JSON.parse(JSON.stringify(path.settings));if(value)path.settings[name]=value;else delete path.settings[name]}else path.settings={};svg.settings=JSON.parse(JSON.stringify(path.settings));return svg};svg.circle=
92    function(x,y,r){path={type:"circle",x:x,y:y,r:r,settings:svg.settings};return svg.end()};svg.image=function(x,y,w,h,url){path={type:"image",x:x,y:y,w:w,h:h,url:url,settings:svg.settings};return svg.end()};svg.ellipse=function(x,y,x1,y1){path={type:"ellipse",x:x,y:y,x1:x1,y1:y1,settings:svg.settings};return svg.end()};svg.rect=function(x,y,w,h,rx,ry,name,target){path={target:target,name:name,type:"rect",x:x,y:y,w:w,h:h,rx:rx?rx:0,ry:ry?ry:0,settings:svg.settings};return svg.end()};svg.text=function(x,
93    y,w,h,size,text,textAlign){path={type:"text",x:x,y:y,w:w,h:h,size:size,text:text,textAlign:textAlign,settings:svg.settings};return svg.end()};svg.shape=function(shape){path={type:"shape",shape:shape,settings:svg.settings};return svg.end()};svg.move=function(x,y){var point={type:"M",x:x,y:y};path.d.push(point);path.type=point.type;return svg};svg.marker=function(marker){svg.markers.push(marker)};svg.line=function(x,y){var point={type:"L",x:x,y:y};path.d.push(point);path.type=point.type;return svg};
94    svg.arc=function(rx,ry,a,laf,sf,x,y){var point={type:"A",rx:rx,ry:ry,a:a,laf:laf,sf:sf,x:x,y:y};path.d.push(point);path.type=point.type;return svg};svg.cubic=function(x1,y1,x2,y2,x3,y3){var point={type:"C",x1:x1,y1:y1,x2:x2,y2:y2,x3:x3,y3:y3};path.d.push(point);path.type=point.type;return svg};svg.quadratic=function(x1,y1,x2,y2){var point={type:"Q",x1:x1,y1:y1,x2:x2,y2:y2};path.d.push(point);path.type=point.type;return svg};svg.close=function(){var point={type:"Z"};path.d.push(point);return svg.end()};
95    svg.add=function(x,y,x1,y1){if(path.type=="C"){var point={type:"S",x:x1,y:y1,x1:x,y1:y};path.d.push(point)}if(path.type=="Q"){var point={type:"T",x:x,y:y};path.d.push(point)}if(path.type=="M"||path.type=="L")return svg.line(x,y);return svg};svg.transformStart=function(value){path={type:"transform-start",value:value};return svg.end()};svg.transformEnd=function(){path={type:"transform-end"};return svg.end()};svg.maskStart=function(id){path={special:true,type:"mask-start",id:id,settings:svg.settings};
96      return svg.end()};svg.maskEnd=function(){path={special:true,type:"mask-end",settings:svg.settings};return svg.end()};svg.clipStart=function(id){path={special:true,type:"clip-start",id:id,settings:svg.settings};return svg.end()};svg.clipEnd=function(){path={special:true,type:"clip-end",settings:svg.settings};return svg.end()};svg.groupStart=function(){path={special:true,type:"group-start",settings:svg.settings};return svg.end()};svg.groupEnd=function(){path={special:true,type:"group-end",settings:svg.settings};
97    return svg.end()};svg.defsStart=function(){path={special:true,type:"defs-start",settings:svg.settings};return svg.end()};svg.defsEnd=function(){path={special:true,type:"defs-end",settings:svg.settings};return svg.end()};svg.end=function(){svg.paths.push(path);path={d:[],settings:svg.settings};return svg};svg.markerEnd=function(name){path.markerEnd=name;return svg};svg.markerStart=function(name){path.markerStart=name;return svg};svg.clear=function(){svg.paths=[];path={d:[],settings:svg.settings};return svg};
98    svg.animate=function(type,duration,repeatCount,from,to){path.animateTransform={};if(type)path.animateTransform.type=type;else path.animateTransform.type="";
98if(duration)path.animateTransform.dur=duration;if(repeatCount)path.animateTransform.repeatCount=repeatCount;if(from)path.animateTransform.from=from;if(to)path.animateTransform.to=to;return svg};svg.render=function(){var html=templatesvg(svg);var _html="";html.split("\n").forEach(function(line){if(line.trim()!="")_html+=line});html=_html;svg.clear();
99      return html};return svg.clear()};f().prototype().renderSvg=function(){this.each(function(item){f(item).removeClass("f_svg").addClass("f-svg");f().http({url:item.getAttribute("data-resource"),headers:{pragma:"no-cache","Cache-Control":"no-cache"},onsuccess:function(event){var html=event.target.responseText;f(item).html(html)}})})};var svgPlugin=function(resolve,context){var item=f(context.div).find(".f_svg").item;if(item){var url=item.getAttribute("data-resource");f(item).removeClass("f_svg").addClass("f-svg");
100if(svgs[url])setTimeout(function(){var html=svgs[url];f(item).html(html);f(context.div).uiRender(context.callback)},0);else f().http({url:url,headers:{pragma:"no-cache","Cache-Control":"no-cache"},onsuccess:function(event){var html=event.target.responseText;svgs[url]=html;f(item).html(html);f(context.div).uiRender(context.callback)}})}else resolve(context)};f().uiPlugins().push(svgPlugin)})();
101(function(){var smoothing=.15;function line(pointA,pointB){var lengthX=pointB[0]-pointA[0];var lengthY=pointB[1]-pointA[1];return{length:Math.sqrt(Math.pow(lengthX,2)+Math.pow(lengthY,2)),angle:Math.atan2(lengthY,lengthX)}}function controlPoint(current,previous,next,reverse){var p=previous||current;var n=next||current;var o=line(p,n);var angle=o.angle+(reverse?Math.PI:0);var length=o.length*smoothing;var x=current[0]+Math.cos(angle)*length;var y=current[1]+Math.sin(angle)*length;return[x,y]}function bezierCommand(point,
102  i,a){var cps=controlPoint(a[i-1],a[i-2],point);var cpe=controlPoint(point,a[i-1],a[i+1],true);return"C "+cps[0]+","+cps[1]+" "+cpe[0]+","+cpe[1]+" "+point[0]+","+point[1]}function svgPath(points){return points.reduce(function(acc,point,i,a){return i==1?"M "+point[0]+","+point[1]:acc+bezierCommand(point,i,a)})}f().prototype().chart=function(options){var chart={};chart.options=options;chart.render=function(){return renderChart(chart.options)};return chart};function renderValues(json,values,colors){if(!values)return"";
103    var labelSizeX=json.labelSizeX;var labelSizeY=json.labelSizeY;var size=json.size;var prevX;var prevY;var svg='\x3cg clip-path\x3d"url(#clip-path-'+json.id+')"\x3e';var points=[];var fontSize=Math.min(Math.max(9,size/2),15);f(values).each(function(value,index){var x=json.width*labelSizeX+index*size;if(json.type=="bar")x=json.width*labelSizeX+index*size+size/2;var y=json.height*(1-labelSizeY);var hmax=json.height*(1-labelSizeY*2);y=hmax-value/json.max*hmax+json.height*labelSizeY;if(json.type=="bezier"){if(index==
104      0)points.push([x,y]);points.push([x,y])}x=x.toFixed(2);y=y.toFixed(2);if(json.type=="line"||json.type=="bezier"){if(json.type=="line")if(index>0)svg+='\x3cpath stroke-linecap\x3d"round" stroke-width\x3d"'+Math.min(4,size/4)+'" stroke-opacity\x3d"0.75" stroke\x3d"'+colors[index%colors.length]+'" fill\x3d"none" d\x3d"M'+prevX+","+prevY+"L"+x+","+y+'"/\x3e';svg+='\x3ccircle fill\x3d"'+colors[index%colors.length]+'" cx\x3d"'+x+'" cy\x3d"'+y+'" r\x3d"'+Math.min(3,size/6)+'"/\x3e'}if(json.type=="bar")svg+=
105    '\x3cpath stroke-width\x3d"'+size*.8+'" stroke-opacity\x3d"0.75" stroke\x3d"'+colors[index%colors.length]+'" d\x3d"M'+x+","+y+"L"+x+","+json.height*(1-labelSizeY)+'"/\x3e';prevX=x;prevY=y});if(json.type=="bezier")svg+='\x3cpath stroke-width\x3d"'+Math.min(4,size/4)+'" stroke-opacity\x3d"0.75" stroke\x3d"'+colors[0]+'" fill\x3d"none" d\x3d"'+svgPath(points)+'"/\x3e';svg+="\x3c/g\x3e";return svg}function renderChart(json){if(!json.width)return"";var chartLabelsColor="var(--color-gray1)";var chartAxisColor=
106    "var(--color-gray1)";var chartGridColor="var(--color-gray4)";if(!json.chartLabelsColor)json.chartLabelsColor=chartLabelsColor;if(!json.chartAxisColor)json.chartAxisColor=chartAxisColor;if(!json.chartGridColor)json.chartGridColor=chartGridColor;if(!json.isPercentage)json.isPercentage=false;var id=Math.random().toString(36).substr(2,9);var svg="";var labelSizeX=.15;var labelSizeY=.15;if(!json.labels){labelSizeX=3/json.width;labelSizeY=3/json.height}else{labelSizeX=Math.min(.15,96/json.width);labelSizeY=
107    Math.min(.15,96/json.height)}var size=json.width*(1-labelSizeX*2)/(json.values.length-1);if(json.type=="bar")size=json.width*(1-labelSizeX*2)/json.values.length;json.labelSizeX=labelSizeX;json.labelSizeY=labelSizeY;json.size=size;json.id=id;json.x0=Math.round(json.width*labelSizeX);json.y0=Math.round(json.height*labelSizeY);json.x1=Math.round(json.width*(1-labelSizeX));json.y1=Math.round(json.height*(1-labelSizeY));svg+='\x3cdiv style\x3d"position:relative;width:100%;height:'+json.height+'px;"\x3e';
108    for(var i=0;i<json.yaxis;i++){var x0=json.x0;var y0=json.y0-6+json.height*(1-labelSizeY*2)*i/json.yaxis;if(json.labels)svg+='\x3cdiv class\x3d"chart-labels" style\x3d"width:'+json.x0+"px;text-align:right;position:absolute;font-size:12px;line-height:12px;left:0px;top:"+y0+"px;color:"+json.chartLabelsColor+'"\x3e'+Math.round(json.max*(1-i/json.yaxis))+(json.isPercentage?" %":"")+"\x26nbsp;\x26nbsp;\x3c/div\x3e"}f(json.labels).each(function(value,index){var fontSize=Math.min(Math.max(9,size/2),15);var x=
109      json.width*labelSizeX+index*size-fontSize/2+2;if(json.type=="bar")x=json.width*labelSizeX+index*size+size/2-fontSize/2+2;if(window.navigator)svg+='\x3cdiv class\x3d"chart-labels" style\x3d"writing-mode:tb-rl;width:'+fontSize+"px;
109height:"+json.y0+"px;position:absolute;font-size:"+fontSize+"px;line-height:"+fontSize+"px;left:"+x+"px;top:"+json.height*(1-labelSizeY)+"px;color:"+json.chartLabelsColor+'"\x3e\x26nbsp;\x26nbsp;'+value+"\x3c/div\x3e";else svg+='\x3ctable style\x3d"position:absolute;left:'+
110    x+"px;top:"+json.height*(1-labelSizeY)+'px;"\x3e\x3ctr\x3e\x3ctd class\x3d"chart-labels" style\x3d"writing-mode:tb-rl;width:'+fontSize+"px;height:"+json.y0*2+"px;font-size:"+fontSize+"px;line-height:"+fontSize+"px;color:"+json.chartLabelsColor+'"\x3e\x26nbsp;\x26nbsp;'+value+"\x3c/td\x3e\x3c/tr\x3e\x3c/table\x3e"});svg+='\x3csvg viewBox\x3d"0,0,'+json.width+","+json.height+'" width\x3d"'+json.width+'" height\x3d"'+json.height+'"\x3e';for(var i=0;i<json.yaxis;i++){var x0=json.x0;var y0=Math.round(json.height*
111    labelSizeY+json.height*(1-labelSizeY*2)*i/json.yaxis);var x1=json.x1;var y1=y0;svg+='\x3cpath class\x3d"chart-grid" fill\x3d"none" stroke\x3d"'+json.chartGridColor+'" stroke-width\x3d"1" d\x3d"M'+x0+","+y0+"L"+x1+","+y1+'"/\x3e'}if(json.type=="line"||json.type=="bezier")svg+='\x3cpath class\x3d"chart-axis" fill\x3d"none" stroke-width\x3d"3" stroke-linecap\x3d"round" stroke\x3d"'+json.chartAxisColor+'" d\x3d"M'+json.x0+","+json.y0+"L"+json.x0+","+json.y1+"L"+json.x1+","+json.y1+'"/\x3e';svg+=renderValues(json,
112  json.values,json.colors);svg+=renderValues(json,json.values1,json.colors1);svg+=renderValues(json,json.values2,json.colors2);svg+=renderValues(json,json.values3,json.colors3);if(json.type=="bar")svg+='\x3cpath class\x3d"chart-axis" fill\x3d"none" stroke-width\x3d"3" stroke-linecap\x3d"round" stroke\x3d"'+json.chartAxisColor+'" d\x3d"M'+json.x0+","+json.y0+"L"+json.x0+","+json.y1+"L"+json.x1+","+json.y1+'"/\x3e';svg+="\x3c/svg\x3e";svg+="\x3c/div\x3e";return svg}function resizeCharts(){f(".f-chart").each(function(item,
113  index){var rect=item.getBoundingClientRect();var json=JSON.parse(item.dataset.json);json.width=rect.width;f(item).html(f().chart(json).render())})}f(window).on("resize",resizeCharts);var chartPlugin=function(resolve,context){var item=f(context.div).find(".f_chart").item;if(item){f(item).addClass("f-chart");var json=JSON.parse(f(item).html());item.dataset.json=JSON.stringify(json);f(context.div).uiRender(context.callback);f(item).removeClass("f_chart")}else resolve(context)};f().uiPlugins().push(chartPlugin);
114  f().uiOnReadyPlugins().push(resizeCharts);function polarToCartesian(centerX,centerY,radius,angleInDegrees){var angleInRadians=(angleInDegrees-90)*Math.PI/180;return{x:centerX+radius*Math.cos(angleInRadians),y:centerY+radius*Math.sin(angleInRadians)}}function describeArc(startAngle,endAngle){var start=polarToCartesian(50,50,50,endAngle);var end=polarToCartesian(50,50,50,startAngle);var largeArcFlag=endAngle-startAngle<=180?"0":"1";var d=["M",start.x,start.y,"A",50,50,0,largeArcFlag,0,end.x,end.y,"L",
11550,50,"Z"].join(" ");return d}})();
116(function(){var icons={};var iconsReady=false;f().prototype().icon=function(name,code){if(iconsReady===false){iconsReady=true;setupIcons(false);setupIcons(true)}if(code)icons[name]=code;else return icons[name]};function setupIcons(isDark){{var svg=f().svg(100,100);renderSun(svg,80,isDark);f().icon("clear-sky"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);renderCloud(svg,100,0,0,false,isDark);f().icon("few-clouds"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);renderCloud(svg,
117      100,0,0,true,isDark);f().icon("scattered-clouds"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);renderCloud(svg,95,5,0,false,isDark,true);renderCloud(svg,95,0,5,false,isDark);f().icon("broken-clouds"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);renderCloud(svg,100,0,-10,false,isDark);for(var i=0;i<4;i++)renderDrop(svg,15,20+i*15,74,isDark);f().icon("shower-rain"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);renderCloud(svg,100,0,-10,true,isDark);for(var i=
118      1;i<3;i++)renderDrop(svg,15,20+i*15,74,isDark);svg.set();f().icon("rain"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);renderCloud(svg,100,0,-10,false,isDark);for(var i=.5;i<3.5;i+=2)renderDrop(svg,15,20+i*15,74,isDark);renderBolt(svg,40,30,59,isDark);f().icon("thunderstorm"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);renderCloud(svg,100,0,-10,false,isDark);renderMist(svg,30,35,66.75,isDark);f().icon("mist"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);
119    renderSnow(svg,80,10,10,isDark);f().icon("snow"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);svg.set("class","f-logo");svg.set("fill","none");svg.set("stroke",f().color("gray0",isDark));svg.set("strokeWidth","1");svg.set("class","f-cnt");svg.groupStart();svg.rect(42,12,16,16);svg.circle(50,40,8);svg.rect(42,52,16,16);svg.circle(50,80,8);svg.groupEnd();svg.set("strokeWidth","0.5");svg.groupStart();svg.set();svg.move(42,12).line(58,28).end();svg.move(58,12).line(42,28).end();svg.move(50,
120      12).line(50,28).end();svg.move(42,20).line(58,20).end();svg.circle(50,40,3);svg.move(42+16/3,52).line(42+16/3,68).end();svg.move(42+16*2/3,52).line(42+16*2/3,68).end();svg.move(42,52+16/3).line(58,52+16/3).end();svg.move(42,52+16*2/3).line(58,52+16*2/3).end();for(var i=0;i<5;i++){svg.set("transform","rotate("+i*72+" 50 80)");svg.groupStart();svg.move(50,80).line(50,72).end();svg.groupEnd()}svg.groupEnd();f().icon("cnt"+(isDark?"-dark":""),svg.render())}{var svg=f().svg(100,100);svg.defsStart();svg.maskStart("mask1");
121      svg.set();svg.set("fill","white");svg.rect(0,0,100,100);svg.set("fill","none");svg.set("stroke","black");svg.set("strokeWidth","15");svg.move(20,95).cubic(80,5,65,65,35,35).end();svg.maskEnd();svg.clipStart("mask2");svg.set();svg.set("fill","black");svg.rect(0,45,100,10);svg.clipEnd();svg.maskStart("mask3");svg.set();svg.set("fill","black");svg.rect(0,0,100,100);svg.set("fill","white");svg.circle(50,50,37.5);svg.maskEnd();svg.maskStart("mask4");svg.set();svg.set("fill","black");svg.rect(0,0,100,100);
122      svg.set("fill","white");svg.circle(50,50,47.5);svg.maskEnd();svg.defsEnd();svg.set();svg.set("fill","none");svg.set("class","f-logo");svg.set("stroke",f().color("gray0",isDark));svg.set("strokeOpacity",.5);svg.set("strokeWidth",10);svg.set("mask","mask3");svg.groupStart();for(var i=-5;i<10;i++){var x=i*10;svg.move(x,95).cubic(x+60,5,x+45,65,x+15,35).end()}svg.groupEnd();svg.set();svg.set("class","f-logo");svg.set("stroke",f().color("gray0",isDark));svg.set("fill","none");svg.set("mask","mask4");svg.set("strokeLinecap",
123    "square");svg.set("strokeWidth",10);svg.move(20,95).cubic(80,5,65,65,35,35).end();svg.set("clip","mask2");svg.set("strokeWidth",10);svg.move(25,95).cubic(85,5,70,65,40,35).end();svg.set();svg.set("fill","none");svg.set("strokeWidth",5);svg.set("class","f-logo");svg.set("stroke",f().color("gray0",isDark));svg.set("mask","mask1");svg.circle(50,50,45);f().icon("f"+(isDark?"-dark":""),svg.render())}}function renderDrop(svg,size,x,y,isDark){var percentage=size/100;svg.set("class","f-drop");svg.set("transform",
124  "translate("+x+" "+y+")");svg.set("strokeWidth","0");svg.set("fill",f().color("teal",isDark));svg.move(20*percentage,60*percentage);svg.quadratic(50*percentage,10*percentage,20*percentage,40*percentage);svg.quadratic(80*percentage,60*percentage,80*percentage,40*percentage);svg.move(80*percentage,60*percentage).cubic(20*percentage,60*percentage,80*percentage,100*percentage,20*percentage,100*percentage);svg.close();svg.set("transform","")}function renderCloud(svg,size,x,y,sun,isDark,isDouble){var percentage=
125    size/100;svg.set("transform","translate("+x+" "+y+")");svg.set("strokeWidth","0");var offset=-2.5*percentage;if(sun===true){svg.set("class","f-sun");svg.set("fill",f().color("yellow",isDark));svg.circle(22.5*percentage,47.5*percentage,15*percentage)}if(isDouble===true){svg.set("class","f-cloud");svg.set("fill",f().color("gray1",isDark));svg.set("class","f-cloud-1")}else{svg.set("fill",f().color("gray0",isDark));svg.set("class","f-cloud")}svg.groupStart();svg.set();svg.circle(25*percentage+offset,
126  62.5*percentage,15*percentage);svg.circle(50*percentage+offset,47.5*percentage,25*percentage);svg.circle(75*percentage+offset,57.5*percentage,20*percentage);svg.rect(25*percentage+offset,60*percentage,50*percentage,17.5*percentage);svg.groupEnd()}
126function renderSun(svg,size,x,y,isDark){var percentage=size/100;svg.set("class","f-sun");svg.set("strokeLinecap","round");svg.set("strokeWidth","0");svg.set("fill",f().color("red",isDark));svg.rect(50,50,10,10);svg.set("fill",f().color("yellow",isDark));
127    svg.circle(62.5*percentage,62.5*percentage,20*percentage);if(size>=80){svg.set("stroke",f().color("yellow",isDark));svg.set("strokeWidth",7*percentage);for(var i=0;i<8;i++){svg.set("transform","rotate("+i*45+" "+62.5*percentage+" "+62.5*percentage+")");svg.move(62.5*percentage,22.5*percentage).line(62.5*percentage,30*percentage).end()}}}function renderSnow(svg,size,x,y,isDark){var percentage=size/100;svg.set("class","f-snow");svg.set("strokeLinecap","round");svg.set("stroke",f().color("gray0",isDark));
128  svg.set("strokeWidth",7*percentage);svg.set("transform");for(var i=0;i<3;i++){svg.set("transform","rotate("+i*60+" "+62.5*percentage+" "+62.5*percentage+")");svg.move(62.5*percentage,22.5*percentage).line(62.5*percentage,102.5*percentage).end()}for(var r=0;r<7;r++){svg.set("transform","rotate("+r*60+" "+62.5*percentage+" "+62.5*percentage+")");svg.move(62.5*percentage,42.5*percentage).line(50*percentage,30*percentage).end();svg.move(62.5*percentage,42.5*percentage).line(75*percentage,30*percentage).end()}}
129  function renderBolt(svg,size,x,y,isDark){var percentage=size/100;svg.set("class","f-bolt");svg.clipStart("clip");svg.rect(0*percentage,0*percentage,100,50*percentage);svg.clipEnd();svg.set("transform","translate("+x+" "+y+")");svg.set("strokeWidth","0");svg.set("fill",f().color("yellow",isDark));svg.set("clip","clip");svg.move(40*percentage,10*percentage).line(60*percentage,10*percentage).line(35*percentage,70*percentage).close();svg.set("clip");svg.move(45*percentage,30*percentage).line(65*percentage,
130    30*percentage).line(40*percentage,90*percentage).close()}
130function renderStar(svg,size,x,y,isDark){var percentage=size/100;svg.set("class","cloud");svg.set("strokeWidth","0");svg.set("fill",f().color("gray1",isDark));svg.move(50,10).line(60,40).line(90,50).line(60,60).line(50,90).line(40,60).line(10,50).line(40,40).close()}function renderMist(svg,size,x,y,isDark){var percentage=size/100;svg.set("class","f-mist");svg.set("strokeLinecap","round");svg.set("transform","translate("+x+" "+y+")");svg.set("stroke",
131f().color("gray1",isDark));svg.set("strokeWidth",7*percentage);for(var i=0;i<3;i++)svg.move(10*percentage,36.5*percentage+i*14.5*percentage).line(90*percentage,36.5*percentage+i*14.5*percentage).end()}})();
132(function(){function renderWeatherIcon(icon,settings){var html="";if(icon=="01d"||icon=="01n")html+=f().icon("clear-sky");else if(icon=="02d"||icon=="02n")html+=f().icon("few-clouds");else if(icon=="03d"||icon=="03n")html+=f().icon("scattered-clouds");else if(icon=="04d"||icon=="04n")html+=f().icon("broken-clouds");else if(icon=="09d"||icon=="09n")html+=f().icon("shower-rain");else if(icon=="10d"||icon=="10n")html+=f().icon("rain");else if(icon=="11d"||icon=="11n")html+=f().icon("thunderstorm");else if(icon==
133    "13d"||icon=="13n")html+=f().icon("snow");else if(icon=="50d"||icon=="50n")html+=f().icon("mist");html+="";return html}f().prototype().widgetWeather=function(settings){var me=f(this.item);var db=f("f_weather").db([{name:"location",key:"q"}],function(event){if(settings.provider=="openweathermap")db.dbGet("location",settings.location.toLowerCase(),function(result){var minutes=0;var json={};if(result){json=JSON.parse(result.data);minutes=((new Date).getTime()-json.timestamp)/6E4}if(result&&minutes<30){if(settings.showInfo){var html=
134          '\x3cdiv class\x3d"weather-icon"\x3e'+renderWeatherIcon(json.weather[0].icon,settings)+"\x3c/div\x3e";html+='\x3cdiv class\x3d"weather-info"\x3e\x3cspan class\x3d"weather-temp"\x3e'+Math.ceil(json.main.temp)+'\x26#176;\x26nbsp;\x26nbsp;\x3c/span\x3e\x3cspan class\x3d"weather-city"\x3e'+json.name+"\x3c/span\x3e\x3c/div\x3e";me.html(html)}else me.html(renderWeatherIcon(json.weather[0].icon,settings));if(typeof settings.onready=="function")settings.onready()}else{var url="https://api.openweathermap.org/data/2.5/weather?q\x3d"+
135          encodeURIComponent(settings.location)+"\x26appid\x3d"+encodeURIComponent(settings.token)+"\x26mode\x3djson\x26units\x3dmetric\x26lang\x3d"+encodeURIComponent(settings.language)+"";f().http({url:url,timeout:500,onsuccess:function(event){json=JSON.parse(event.target.responseText);json.timestamp=(new Date).getTime();db.dbPut("location",{q:settings.location.toLowerCase(),data:JSON.stringify(json)});if(settings.showInfo){var html='\x3cdiv class\x3d"weather-icon"\x3e'+renderWeatherIcon(json.weather[0].icon,
136                settings)+"\x3c/div\x3e";html+='\x3cdiv class\x3d"weather-info"\x3e\x3cspan class\x3d"weather-temp"\x3e'+Math.ceil(json.main.temp)+'\x26#176;\x26nbsp;\x26nbsp;\x3c/span\x3e\x3cspan class\x3d"weather-city"\x3e'+json.name+"\x3c/span\x3e\x3c/div\x3e";me.html(html)}else me.html(renderWeatherIcon(json.weather[0].icon,settings));if(typeof settings.onready=="function")settings.onready()},onerror:function(event){try{json=JSON.parse(result.data)}catch(e){}if(result){if(settings.showInfo){var html='\x3cdiv class\x3d"weather-icon"\x3e'+
137                  renderWeatherIcon(json.weather[0].icon,settings)+"\x3c/div\x3e";html+='\x3cdiv class\x3d"weather-info"\x3e\x3cspan class\x3d"weather-temp"\x3e'+Math.ceil(json.main.temp)+'\x26#176;\x26nbsp;\x26nbsp;\x3c/span\x3e\x3cspan class\x3d"weather-city"\x3e'+json.name+"\x3c/span\x3e\x3c/div\x3e";me.html(html)}else me.html(renderWeatherIcon(json.weather[0].icon,settings));if(typeof settings.onready=="function")settings.onready()}},ontimeout:function(event){try{json=JSON.parse(result.data)}catch(e){}if(result){if(settings.showInfo){var html=
138                  '\x3cdiv class\x3d"weather-icon"\x3e'+renderWeatherIcon(json.weather[0].icon,settings)+"\x3c/div\x3e";html+='\x3cdiv class\x3d"weather-info"\x3e\x3cspan class\x3d"weather-temp"\x3e'+Math.ceil(json.main.temp)+'\x26#176;\x26nbsp;\x26nbsp;\x3c/span\x3e\x3cspan class\x3d"weather-city"\x3e'+json.name+"\x3c/span\x3e\x3c/div\x3e";me.html(html)}else me.html(renderWeatherIcon(json.weather[0].icon,settings));if(typeof settings.onready=="function")settings.onready()}},onabort:function(event){try{json=JSON.parse(result.data)}catch(e){}if(result){if(settings.showInfo){var html=
139  '\x3cdiv class\x3d"weather-icon"\x3e'+renderWeatherIcon(json.weather[0].icon,settings)+"\x3c/div\x3e";html+='\x3cdiv class\x3d"weather-info"\x3e\x3cspan class\x3d"weather-temp"\x3e'+Math.ceil(json.main.temp)+'\x26#176;\x26nbsp;\x26nbsp;\x3c/span\x3e\x3cspan class\x3d"weather-city"\x3e'+json.name+"\x3c/span\x3e\x3c/div\x3e";me.html(html)}else me.html(renderWeatherIcon(json.weather[0].icon,settings));if(typeof settings.onready=="function")settings.onready()}}})}})});return this};var weatherPlugin=function(resolve,
140context){var item=f(context.div).find(".f_weather").item;if(item){var json=JSON.parse(item.innerHTML);item.innerHTML="";json.onready=function(){f(context.div).uiRender(context.callback)};f(item).addClass("f-weather").widgetWeather(json).removeClass("f_weather")}else resolve(context)};f().uiPlugins().push(weatherPlugin)})();
141(function(){function renderClock(settings){var d=new Date;var svg=f().svg(100,100);svg.set("class","f-widget-clock");svg.set("stroke",f().color("gray0"));svg.set("strokeLinecap",settings.cap?settings.cap:"butt");svg.set("strokeLinejoin","miter");for(var i=0;i<60;i+=5){svg.set("transform","rotate("+i*6+" 50 50)");svg.set("strokeWidth",.75);svg.move(50,10).line(50,15).end()}for(var i=0;i<60;i++){svg.set("transform","rotate("+i*6+" 50 50)");svg.set("strokeWidth",.25);svg.move(50,10).line(50,12.5).end()}var start=
142    (d.getHours()+d.getMinutes()/60+d.getSeconds()/3600)*360/12;if(settings.animated!="no")svg.animate("rotate","43200s","indefinite",start+" 50 50",start+360+" 50 50");svg.set("class","f-hours");svg.set("stroke",f().color("gray1"));svg.set("fill",f().color("gray1"));svg.set("strokeWidth",4);svg.set("transform","rotate("+start+" 50 50)");svg.move(50,50).line(50,30).end();var start=(d.getMinutes()+d.getSeconds()/60)*360/60;if(settings.animated!="no")svg.animate("rotate","3600s","indefinite",start+" 50 50",
143    start+360+" 50 50");svg.set("class","f-minutes");svg.set("stroke",f().color("gray2"));svg.set("fill",f().color("gray2"));svg.set("strokeWidth",2);svg.set("transform","rotate("+start+" 50 50)");svg.move(50,50).line(50,20).end();svg.circle(50,50,3);if(settings.showSeconds!="no"){var start=(d.getSeconds()+d.getMilliseconds()/1E3)*360/60;if(settings.animated!="no")svg.animate("rotate","60s","indefinite",start+" 50 50",start+360+" 50 50");svg.set("class","f-seconds");svg.set("stroke",f().color("gray3"));
144    svg.set("fill",f().color("gray3"));svg.set("strokeWidth",1);svg.set("transform","rotate("+start+" 50 50)");svg.move(50,50).line(50,10).end();svg.animate();svg.set("class","f-seconds");svg.circle(50,50,1.5)}return svg.render()}f().prototype().widgetClock=function(settings){var me=f(this.item);me.html(renderClock(settings));return this};var clockPlugin=function(resolve,context){var item=f(context.div).find(".f_clock").item;if(item)f(item).widgetClock(JSON.parse(JSON.stringify(item.dataset))).removeClass("f_clock").addClass("f-clock");
145resolve(context)};f().uiPlugins().push(clockPlugin)})();
146(function(){var app={};var _session=JSON.parse(sessionStorage.getItem("session"));if(!_session)_session={};var session=_session;try{session=new Proxy(_session,{set:function(target,prop,value){var result=Reflect.set(target,prop,value);sessionStorage.setItem("session",JSON.stringify(target));return result},deleteProperty:function(target,prop){var result=Reflect.deleteProperty(target,prop);sessionStorage.setItem("session",JSON.stringify(target));return result}})}catch(err){}app.session=session;app.set=
147  function(name,value){var path=name.split(".");var target=app.session;for(var i=0;i<path.length;i++)if(i<path.length-1){var o=target[path[i]];if(!o)target=target[path[i]]={};else target=o}else target=target[path[i]]=value;app.session.t=(new Date).getTime()};
147app.clear=function(name){if(!name)for(a in app.session)delete app.session[a];else app.set(name)};app.get=function(name,defaultValue){var path=name.split(".");var target=app.session;var value;for(var i=0;i<path.length;i++)if(i<path.length-1){var o=
148target[path[i]];if(!o)target=target[path[i]]={};else target=o}else value=target[path[i]];if(value==undefined){value=defaultValue;app.set(name,value)}return value};f().prototype().app=function(){return app};f().prototype().appSession=function(){return JSON.parse(JSON.stringify(app.session))}})();
149(function(){f().prototype().fileupload=function(options){options=options||{};this.each(function(item){if(!item.getAttribute("fileupload")){item.onchange=function(){var input=this;var files=input.files;var url=input.getAttribute("data-url");var json=undefined;try{json=JSON.parse(input.getAttribute("data-json"))}catch(err){}f().api(function(headers){for(var i=0;i<files.length;i++){var file=files[i];var request=new XMLHttpRequest;var formData=new FormData;if(json!==undefined){var blob=new Blob([JSON.stringify(json)],
150                {type:"application/json"});formData.append("json",blob)}formData.set(input.name,file,file.name);if(typeof options.timeout!="undefined")request.timeout=options.timeout;if(typeof options.progress=="function")request.onprogress=options.progress;request.onloadend=function(event){if(typeof options.stop=="function")setTimeout(function(){options.stop(event)},0);if(json!==undefined){try{json.info=JSON.parse(event.target.responseText)}catch(err){}delete json.progress;f("upload-complete").emit(json)}input.value=
151          ""};if(typeof options.start=="function")request.onloadstart=options.start;request.open("POST",url);f(Object.keys(headers)).each(function(key){request.setRequestHeader(key,headers[key])});request.upload.addEventListener("progress",function(evt){if(evt.lengthComputable){var percentComplete=evt.loaded/evt.total;if(json!==undefined){json.progress=percentComplete;f("upload-progress").emit(json)}}},false);request.send(formData);if(json!==undefined){delete json.progress;f("upload-start").emit(json)}}});
152item.blur()};item.setAttribute("fileupload",true)}})}})();
153(function(){var templateform=f().tc('  \x3cform\x3e  [%if(data.id){%]    \x3cinput type\x3d"hidden" name\x3d"id" value\x3d"[%\x3ddata.id%]"\x3e  [%}%]  [%f(data.elements).each(function(row,i){%]    \x3cdiv class\x3d"f-form-row"\x3e    [%f(row).each(function(item,j){%]      \x3cdiv class\x3d"f-form-col f-form-[%\x3ditem.type%]"\x3e      \x3cdiv class\x3d"f-form-item[%if(item.type \x3d\x3d "password"){%] secure[%}%][%if(item.readonly \x3d\x3d\x3d true){%] readonly[%}%]"\x3e      [% if(item.type !\x3d \'hidden\'){ %]        \x3cdiv class\x3d"f-form-label"\x3e\x3cspan class\x3d"f-tr"\x3e[%\x3d\'label.\'+item.name%]\x3c/span\x3e\x3c/div\x3e        [%if(item.type \x3d\x3d "password"){%]          \x3cdiv class\x3d"f-form-input-mask"\x3e\x3c/div\x3e          \x3cdiv class\x3d"f-form-eye-icon"\x3e\x3c/div\x3e        [%}%]        [%if(item.type \x3d\x3d \'select\'){%]          \x3cdiv class\x3d"f-form-input f-form-input-select"\x3e          \x3cselect onchange\x3d"f(\'form-select\').emit({name:\'[%\x3ditem.name%]\', value:this.value});f(this).closest(\'.f-form-item\').find(\'.f-form-error\').html(\'\');f(this).closest(\'.f-form-item\').removeClass(\'error\').find(\'input\').items[0].value\x3dthis.value;"\x3e          \x3coption disabled selected\x3e-\x3c/option\x3e          [% item.options.forEach(function(option){ %]            \x3coption value\x3d"[%\x3doption.value%]"\x3e[%\x3doption.label%]\x3c/option\x3e          [% }); %]          \x3c/select\x3e          \x3cdiv class\x3d"f-form-input-select-icon"\x3e\x3ci class\x3d"fas fa-caret-down"\x3e\x3c/i\x3e\x3c/div\x3e          \x3c/div\x3e        [%}else if(item.type \x3d\x3d \'search\'){ %]          \x3cdiv class\x3d"f-form-input-wrap"\x3e          \x3cdiv class\x3d"f-form-input f-form-input-search"\x3e\x26nbsp;\x3c/div\x3e          \x3cdiv class\x3d"f-form-input-search-icon"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-search"\x3e\x3c/i\x3e\x3c/div\x3e          \x3c/div\x3e          \x3cdiv class\x3d"f-form-box-component f-form-box-search hide"\x3e          \x3cdiv class\x3d"f-form-times"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-times"\x3e\x3c/i\x3e\x3c/div\x3e          \x3cdiv\x3e          \x3cdiv class\x3d"f-form-box-search-content"\x3e          \x3cdiv class\x3d"component-search"\x3e          {"name":"form-[%\x3ditem.name%]"}          \x3c/div\x3e          \x3cdiv class\x3d"component-pagination"\x3e          {            "name":"[%\x3ditem.name%]",            "url":"[%\x3ditem.service%]",            "secure":true,            "fields":[            {"name":"id", "width":"10%","
153sortable":"string","sort":"asc"},            {"name":"name", "width":"30%","sortable":"string"}            ],            "search":{              "source":"form-[%\x3ditem.name%]",              "name":"text"            },            "limit":25,            "template": "[%\x3ditem.template%]",            "mode":"list",            "switchMode":"no"          }          \x3c/div\x3e          \x3c/div\x3e          \x3c/div\x3e          \x3c/div\x3e        [%}else if(item.type \x3d\x3d \'radio\'){%]          \x3cdiv class\x3d"f-form-input f-form-input-radio"\x3e          [% item.options.forEach(function(option){ %]            \x3clabel\x3e            \x3cinput type\x3d"radio" name\x3d"[%\x3ditem.name%]" value\x3d"[%\x3doption.value%]"/\x3e            \x3cspan\x3e[%\x3doption.label%]\x3c/span\x3e            \x3c/label\x3e          [% }); %]          \x3c/div\x3e        [%}%]        [%if(item.type \x3d\x3d "date" || item.type \x3d\x3d "datetime" ||  item.type \x3d\x3d "time"){%]          \x3cdiv class\x3d"f-form-input-group f-form-input-group-[%\x3ditem.type%]"\x3e          [%if(item.type \x3d\x3d "date" || item.type \x3d\x3d "datetime"){%]            \x3cdiv class\x3d"f-form-datepicker"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-calendar-alt"\x3e\x3c/i\x3e\x3c/div\x3e            \x3cdiv class\x3d"f-form-input f-form-input-2 f-form-input-day" tip\x3d"tip.input.day" contenteditable\x3d"plaintext-only" spellcheck\x3d"false"\x3e\x3c/div\x3e            \x3cdiv class\x3d"f-form-sep"\x3e/\x3c/div\x3e            \x3cdiv class\x3d"f-form-input f-form-input-2 f-form-input-month" tip\x3d"tip.input.month" contenteditable\x3d"plaintext-only" spellcheck\x3d"false"\x3e\x3c/div\x3e            \x3cdiv class\x3d"f-form-sep"\x3e/\x3c/div\x3e            \x3cdiv class\x3d"f-form-input f-form-input-4 f-form-input-year" tip\x3d"tip.input.year" contenteditable\x3d"plaintext-only" spellcheck\x3d"false"\x3e\x3c/div\x3e          [%}%]          [%if(item.type \x3d\x3d "datetime" || item.type \x3d\x3d "time"){%]            \x3cdiv class\x3d"f-form-sep"\x3e\x3c/div\x3e            \x3cdiv class\x3d"f-form-input f-form-input-2 f-form-input-hour" tip\x3d"tip.input.hour" contenteditable\x3d"plaintext-only" spellcheck\x3d"false"\x3e\x3c/div\x3e            \x3cdiv class\x3d"f-form-sep"\x3e:\x3c/div\x3e            \x3cdiv class\x3d"f-form-input f-form-input-2 f-form-input-minute" tip\x3d"tip.input.minute" contenteditable\x3d"plaintext-only" spellcheck\x3d"false"\x3e\x3c/div\x3e          [%}%]          \x3cdiv class\x3d"f-form-datepicker-clean hide"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-times"\x3e\x3c/i\x3e\x3c/div\x3e          \x3c/div\x3e          \x3cdiv class\x3d"f-form-box-component f-form-box-datepicker hide"\x3e          \x3cdiv class\x3d"f-form-times"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-times"\x3e\x3c/i\x3e\x3c/div\x3e          \x3cdiv\x3e          \x3cdiv class\x3d"f-form-box-datepicker-content"\x3e          \x3cdiv class\x3d"component-datepicker"\x3e          {"name":"form-[%\x3ditem.name%]"}          \x3c/div\x3e          \x3c/div\x3e          \x3c/div\x3e          \x3c/div\x3e        [%}else if(item.type !\x3d \'select\' \x26\x26 item.type !\x3d \'radio\' \x26\x26 item.type !\x3d \'search\'){%]          \x3cdiv class\x3d"f-form-input" contenteditable\x3d"plaintext-only" spellcheck\x3d"false" name\x3d"[%\x3ditem.name%]" multiline\x3d"[%\x3ditem.multiline%]" type\x3d"[%\x3ditem.type%]"\x3e[%if(item.value){%][%\x3ditem.value%][%}%]\x3c/div\x3e        [%}%]        [%if(item.type \x3d\x3d "date" || item.type \x3d\x3d "datetime" || item.type \x3d\x3d "time"){%]          \x3cdiv class\x3d"f-form-tip"\x3e\x26nbsp;\x3c/div\x3e          \x3cdiv class\x3d"f-form-value"\x3e\x26nbsp;\x3c/div\x3e        [%}%]        \x3cdiv class\x3d"f-form-error"\x3e\x3c/div\x3e        \x3cdiv class\x3d"f-form-field-warning"\x3e\x3c/div\x3e      [% } %]      [% if(item.type \x3d\x3d \'hidden\'){ %]        \x3cdiv class\x3d"f-form-input f-form-input-hidden"\x3e\x3c/div\x3e      [% } %]      [% if(item.type !\x3d \'radio\'){ %]        \x3cinput type\x3d"hidden" name\x3d"[%\x3ditem.name%]"\x3e      [% } %]      \x3c/div\x3e      \x3c/div\x3e    [%});%]    \x3c/div\x3e  [%});%]  \x3cdiv class\x3d"f-form-warning"\x3e\x3c/div\x3e  \x3c/form\x3e');
154  function formSubmit(form,data){f().api(function(headers){form.http({url:data.url,method:"POST",headers:headers,onsuccess:function(event){var json=JSON.parse(event.target.responseText);if(json.errors){f(json.errors).each(function(error,index){form.find("input").each(function(item,index){if(item.name==error.name){var e=f(item).closest(".f-form-item").find(".f-form-error");e.html('\x3cspan class\x3d"f-tr"\x3e'+error.error+"\x3c/span\x3e");f(item).closest(".f-form-item").removeClass("error").addClass("error")}});
155    form.tr()});f("form-ko").emit({form:data,response:json})}else f("form-ok").emit({form:data,response:json})},onerror:function(event){f("form-ko").emit({form:data})}})})}function handleDateValue(item,group,part,len){var value="";group.find(".f-form-input").each(function(groupItem){if(f(groupItem).hasClass("f-form-input-"+part)){value=groupItem.innerText;if(value.length>len)groupItem.innerText=value="";else value=("0000"+value).slice(-len)}});return value}function handleDate(item,group){var dateAsString=
156    "";var year=handleDateValue(item,group,"year",4);
156if(year!=""){dateAsString+=year;var month=handleDateValue(item,group,"month",2);if(month!=""){dateAsString+="-"+month;var day=handleDateValue(item,group,"day",2);if(day!="")dateAsString+="-"+day}else handleDateValue(item,group,"day",2);var hour=handleDateValue(item,group,"hour",2);if(hour!=""){dateAsString+=" "+hour;var minute=handleDateValue(item,group,"minute",2);if(minute!="")dateAsString+=":"+minute}else handleDateValue(item,group,"minute  ",2)}else{var today=
157    new Date;var mm=("0000"+(today.getMonth()+1)).slice(-2);var dd=("0000"+today.getDate()).slice(-2);dateAsString=today.getFullYear()+"-"+mm+"-"+dd;var hour=handleDateValue(item,group,"hour",2);if(hour!=""){dateAsString+=" "+hour;var minute=handleDateValue(item,group,"minute",2);if(minute!="")dateAsString+=":"+minute}}return dateAsString}function setEndOfContenteditable(contentEditableElement){var range=document.createRange();range.selectNodeContents(contentEditableElement);range.collapse(false);var selection=
158    window.getSelection();selection.removeAllRanges();selection.addRange(range)}function ascii7(text){return ascii(text,127)}function ascii8(text){return ascii(text,255)}function ascii7i(text){var asciitext="";var x0=0,x1=0,x2=0;while((x1=text.indexOf("\x26#",x1))>=0){asciitext+=text.substring(x0,x1);x1+=2;x2=x1;x0=x2;x2=text.indexOf(";",x2);try{asciitext+=String.fromCodePoint(parseInt(text.substring(x1,x2)));x0=x2+1}catch(err){}}asciitext+=text.substring(x0);return asciitext}function ascii(text,limit){var asciitext=
159    "";for(var i=0;i<text.length;i++){var charCode=text.codePointAt(i);if(charCode<=limit)asciitext+=String.fromCodePoint(charCode);else{var char=String.fromCodePoint(charCode);i+=char.length-1;asciitext+="\x26#"+charCode+";"}}return asciitext}f().prototype().form=function(data){this.html(templateform({data:data}));var me=this;f("form-submit").unslot();f("form-submit").slot(function(){formSubmit(f(me.find("form").items[0]),data)});f(me.input).find(".f-form-eye-icon").on("click",function(event){var item=
160      f(event.target).closest(".f-form-item");if(item.hasClass("show-password"))item.removeClass("show-password");else item.addClass("show-password")});f(".f-form-input-search-clean").each(function(item,i){f(item).on("click",function(event){f(item).closest(".f-form-item").find(".f-form-input-search").html("\x26nbsp;");f(item).closest(".f-form-item").find('input[type\x3d"hidden"]').items[0].value="";f(item).addClass("hide");event.stopPropagation()})});f(".f-form-datepicker-clean").each(function(item,i){f(item).on("click",
161      function(event){f(item).closest(".f-form-item").find(".f-form-input").html("");f(item).addClass("hide");event.stopPropagation()})});f(".f-form-times").each(function(item,i){f(item).on("click",function(event){var box=f(item).closest(".f-form-box-component");box.addClass("hide");box.closest(".form-modal").removeClass("form-modal-pagination").removeClass("form-modal-datepicker");event.stopPropagation()})});f(".f-form-search").each(function(item,i){f(item).on("click",function(event){var box=f(item).find(".f-form-box-search");
162        if(box.hasClass("hide")){var ok=false;try{var search=box.find(".component-search");if(!search.hasClass("f-search")){search.addClass("f_search");ok=true}}catch(e){}try{var pagination=box.find(".component-pagination");if(!pagination.hasClass("f-pagination")){pagination.addClass("f_pagination");ok=true}}catch(e){}if(ok)box.find(".f-form-box-search-content").ui({onready:function(){box.find(".component-search").removeClass("component-search");box.find(".component-pagination").removeClass("component-pagination");
163        box.closest(".form-modal").addClass("form-modal-pagination");box.removeClass("hide");setTimeout(function(){if(box.closest(".form-panel").item)box.closest(".form-panel").item.scrollTop=0},0)}});else{box.closest(".form-modal").addClass("form-modal-pagination");box.removeClass("hide");setTimeout(function(){if(box.closest(".form-panel").item)box.closest(".form-panel").item.scrollTop=0},0)}}})});f(".f-form-datepicker").each(function(item,i){f(item).on("click",function(event){var formItem=f(item).closest(".f-form-item");
164        var input=formItem.find('[type\x3d"hidden"]').items[0];var box=formItem.find(".f-form-box-datepicker");if(box.hasClass("hide")){var defaultDate=null;if(input.value)defaultDate=Date.parse(input.value);var ok=false;try{var datepicker=box.find(".component-datepicker");if(!datepicker.hasClass("f-datepicker")){datepicker.addClass("f_datepicker");ok=true}}catch(e){}if(ok)box.find(".f-form-box-datepicker-content").ui({onready:function(){if(defaultDate&&!defaultDate.isInvalid())f().datepicker({channel:"form-"+
165            input.name,what:"defaultDate",value:defaultDate.toISOString()});box.find(".component-datepicker").removeClass("component-datepicker");box.closest(".form-modal").addClass("form-modal-datepicker");box.removeClass("hide");setTimeout(function(){if(box.closest(".form-panel").item)box.closest(".form-panel").item.scrollTop=0},0)}});else{if(defaultDate&&!defaultDate.isInvalid())f().datepicker({channel:"form-"+input.name,what:"defaultDate",value:defaultDate.toISOString()});box.closest(".form-modal").addClass("form-modal-datepicker");
166        box.removeClass("hide");setTimeout(function(){if(box.closest(".form-panel").item)box.closest(".form-panel").item.scrollTop=0},0)}}})});f(".f-form-input").each(function(item,i){var fItem=f(item);if(!fItem.hasClass("f-form-input-search")&&!fItem.hasClass("f-form-input-select")&&!fItem.hasClass("f-form-input-radio")){fItem.closest(".f-form-item").on("click",function(event){f(item).closest(".f-form-item").find(".f-form-input").items[0].focus()});fItem.on("click",function(event){event.stopPropagation()});
167        fItem.on("focus",function(event){setEndOfContenteditable(event.target);var tip=event.target.getAttribute("tip");if(tip)f(item).closest(".f-form-item").find(".f-form-tip").html(f().tr(tip));f(item).closest(".f-form-item").addClass("active").removeClass("error").find(".f-form-error").html("")});fItem.on("blur",function(event){f(item).closest(".f-form-item").removeClass("active").find(".f-form-tip").html("\x26nbsp;");if(window.getSelection)window.getSelection().removeAllRanges();else if(document.selection)document.selection.empty()});
168        var observer=new MutationObserver(function(mutations){observer.disconnect();var value=ascii7(item.innerText.trim());var currentValue=value;value=value.replaceAll("\x26#778;","\x26#730;");if(currentValue!=value)item.innerHTML=value;value=ascii8(ascii7i(item.innerText));observer.observe(item,{childList:true,subtree:true,characterData:true,attributes:true});if(item.getAttribute("multiline")!=="true"&&(item.innerText.match(/\n/)||item.innerText.match(/\r/))){item.innerText=value=value.replace(/\r?\n/g,
169            "").trim();item.blur();formSubmit(f(item).closest("form"),data)}if(item.getAttribute("type")=="password"&&value.match(/ /)){item.innerText=value=value.replace(/ /g,"").trim();item.blur()}var mask="";for(var i=0;i<value.length;i++)mask+="\x26bull;";f(item.parentElement).find(".f-form-input-mask").html(mask);var group=f(item.parentElement).closest(".f-form-input-group");if(group.items){value=handleDate(item,f(item.parentElement).closest(".f-form-input-group"));var userEnteredDate=new Date(Date.parse(value));
170            var localDateString=""+userEnteredDate.toLocaleDateString(f("html").item.getAttribute("lang"),{weekday:"long",day:"numeric",month:"long",year:"numeric"});if(group.hasClass("f-form-input-group-datetime"))localDateString+=' \x3ci class\x3d"fal fa-clock"\x3e\x3c/i\x3e '+userEnteredDate.toLocaleTimeString(f("html").item.getAttribute("lang"),{hour12:false,timeStyle:"short"});if(group.hasClass("f-form-input-group-time"))localDateString='\x26nbsp; \x3ci class\x3d"fal fa-clock"\x3e\x3c/i\x3e '+userEnteredDate.toLocaleTimeString(f("html").item.getAttribute("lang"),
171      {hour12:false,timeStyle:"short"});if(isNaN(userEnteredDate.getTime())){value="";f(item).closest(".f-form-item").find(".f-form-value").item.innerHTML="\x26nbsp;"}else f(item).closest(".f-form-item").find(".f-form-value").item.innerHTML=localDateString}var input=f(item).closest(".f-form-item").find("input").item;input.value=value;f("form-change").emit({form:data})});observer.observe(item,{childList:true,subtree:true,characterData:true,attributes:true})}if(data.values[item.getAttribute("name")])item.innerText=
172      data.values[item.getAttribute("name")];else{var name=f(item).closest(".f-form-item").find("input").items[0].name;if(data.values[name]!=null&&typeof data.values[name]!="undefined"){var value=data.values[name];if(f(item).hasClass("f-form-input-day")){item.innerText=(new Date(Date.parse(value))).getDate();f(item).closest(".f-form-item").find(".f-form-datepicker-clean").removeClass("hide")}if(f(item).hasClass("f-form-input-month"))item.innerText=(new Date(Date.parse(value))).getMonth()+1;if(f(item).hasClass("f-form-input-year"))item.innerText=
173          (new Date(Date.parse(value))).getFullYear();if(f(item).hasClass("f-form-input-hour"))item.innerText=("00"+(new Date(Date.parse(value))).getHours()).slice(-2);if(f(item).hasClass("f-form-input-minute"))item.innerText=("00"+(new Date(Date.parse(value))).getMinutes()).slice(-2);if(f(item).hasClass("f-form-input-hidden"))f(item).closest(".f-form-item").find("input").items[0].value=value;if(f(item).hasClass("f-form-input-select")){f(item).find("select").items[0].value=value;f(item).closest(".f-form-item").find("input").items[0].value=
174            value}if(f(item).hasClass("f-form-input-radio"))try{f(item).find('input[type\x3d"radio"][value\x3d"'+value+'"]').items[0].checked=true}catch(e){}if(f(item).hasClass("f-form-input-search")){f(item).closest(".f-form-item").find("input").items[0].value=value;f(item).closest(".f-form-item").find(".f-form-input-search-clean").removeClass("hide");var checkName=name.replace("Id","Name");if(data.values[checkName]!=null&&typeof data.values[checkName]!="undefined")value=data.values[checkName];item.innerText=
175            value}}}if(data.values&&data.values.warnings&&data.fieldWarning){var input=f(item).closest(".f-form-item").find("input").items[0];if(input)f(data.values.warnings).each(function(warning){if(input.name==warning.name){warning.id=data.id;warning["class"]=data.values["class"];var e=f(item).closest(".f-form-item").find(".f-form-field-warning");var modelName="formWarning."+warning.name;f().app().set(modelName,{data:warning});e.html('\x3cdiv class\x3d"f_t" data-resource\x3d"'+data.fieldWarning+'" data-target\x3d"'+
176    modelName+'"\x3e\x3c/div\x3e');f(item).closest(".f-form-item").removeClass("warning").addClass("warning")}})}});if(data.values&&data.values.warnings&&data.formWarning){var e=f(me.input).find(".f-form-warning");var modalName="formWarning."+f().app().get("form");f().app().set(modalName,{data:data.values});e.html('\x3cdiv class\x3d"f_t" data-resource\x3d"'+data.formWarning+'" data-target\x3d"'+modalName+'"\x3e\x3c/div\x3e')}};var formPlugin=function(resolve,context){var item=f(context.div).find(".f_form").item;
177    if(item){f(item).removeClass("f_form").addClass("f-form");f().http({url:item.getAttribute("data-resource"),onsuccess:function(event){var json=JSON.parse(event.target.responseText);json.url=json.uri;if(item.getAttribute("data-server"))json.url=item.getAttribute("data-server")+json.uri;var dataset=JSON.parse(JSON.stringify(item.dataset));if(item.getAttribute("data-id")){if(json.uri.indexOf("/add")>=0){json.uri=json.uri.replace("/add","/edit");json.url=json.url.replace("/add","/edit")}else{json.uri=
178              json.uri+"/edit";json.url=json.url+"/edit"}json.id=item.getAttribute("data-id");var editUrl=json.url.substring(0,json.url.lastIndexOf("/")+1)+item.getAttribute("data-id");f().api(function(headers){f().http({url:editUrl,headers:headers,onsuccess:function(event){json.values=JSON.parse(event.target.responseText);json.values=Object.assign(dataset,json.values);f(item).form(json);f(context.div).uiRender(context.callback)}})})}else{if(json.uri&&json.uri.indexOf("/add")<0){json.uri=json.uri+"/add";json.url=
179json.url+"/add"}json.id=null;json.values=Object.assign(json.values,dataset);f(item).form(json);f(context.div).uiRender(context.callback)}},onerror:function(){f(context.div).uiRender(context.callback)}})}else resolve(context)};f().uiPlugins().push(formPlugin)})();
180(function(){var templatedatepicker=f().tc('[%var today \x3d new Date();var viewDate \x3d new Date(data.viewDate);var defaultDate \x3d data.defaultDate ? new Date(data.defaultDate) : null;var minDate \x3d data.minDate ? new Date(data.minDate) : null;var maxDate \x3d data.maxDate ? new Date(data.maxDate) : null;var monthMonday \x3d new Date(viewDate).getMonthMonday();var weekday \x3d new Date(viewDate).getStartOfWeek();var day \x3d new Date(monthMonday);%]\x3cdiv class\x3d"[%\x3ddata.name%]"\x3e\t\x3cdiv class\x3d"ui-row mobile ui-datepicker-toolbar"\x3e\t\t\x3cdiv class\x3d"ui-column ui-column-fit ui-datepicker-prev"\t\t\tonclick\x3d"f(event).datepicker({channel:\'[%\x3ddata.name%]\',what:\'prev\'})"\x3e\t\t\t\x3ci class\x3d"fas fa-chevron-left"\x3e\x3c/i\x3e\t\t\x3c/div\x3e\t\t\x3cdiv class\x3d"ui-column ui-datepicker-today"\t\t\tonclick\x3d"f(event).datepicker({channel:\'[%\x3ddata.name%]\',what:\'today\'})"\x3e\t\t\t[%\x3dviewDate.format({month:\'long\',year:\'numeric\'})%]\t\t\x3c/div\x3e\t\t\x3cdiv class\x3d"ui-column ui-column-fit ui-datepicker-next"\t\t\tonclick\x3d"f(event).datepicker({channel:\'[%\x3ddata.name%]\',what:\'next\'})"\x3e\t\t\t\x3ci class\x3d"fas fa-chevron-right"\x3e\x3c/i\x3e\t\t\x3c/div\x3e\t\x3c/div\x3e\t\x3cdiv class\x3d"ui-datepicker"\x3e\t\t\x3cdiv class\x3d"ui-datepicker-row"\x3e\t\t[%for(var j\x3d1; j\x3c\x3d 7; j++){%]\t\t\x3cdiv class\x3d"ui-datepicker-column"\x3e\t\t\t\x3cdiv class\x3d"ui-weekday"\x3e[%\x3d weekday.format({weekday:\'short\'}) %]\x3c/div\x3e\t\t\x3c/div\x3e\t\t[% weekday.tomorrow(); %]\t\t[%}%]\t\x3c/div\x3e\t[%for(var i\x3d1; i\x3c\x3d6; i++){%]    \x3cdiv class\x3d"ui-datepicker-row"\x3e        [%for(var j\x3d1; j\x3c\x3d 7; j++){%]        \x3cdiv class\x3d"ui-datepicker-column[%if(day.format({}) \x3d\x3d today.format({})){%] ui-today[%}%][%if(defaultDate \x26\x26 day.format({})\x3d\x3ddefaultDate.format({})){%] ui-selected[%}%][%if(day.format({month:\'numeric\',year:\'numeric\'})\t\t\t\t!\x3dviewDate.format({month:\'numeric\',year:\'numeric\'})){%] ui-disable[%}%] [%if((maxDate !\x3d null \x26\x26 maxDate.getTime() \x3c\x3d day.getTime()) || (minDate !\x3d null \x26\x26 minDate.getTime() \x3e\x3d day.getTime())){%] ui-disable ui-event-none[%}%]"\x3e\t\t\t\t\x3cdiv class\x3d"ui-day"\t\t\t\t\tonclick\x3d"f(event).datepicker({channel:\'[%\x3ddata.name%]\',what:\'select\',value:\'[%\x3dday.toISOString()%]\'})"\x3e\t\t\t\t\t[%\x3d day.getDate() %]\t\t\t\t\x3c/div\x3e\t\t\x3c/div\x3e\t\t[% day.tomorrow(); %]\t\t[%}%]\t\x3c/div\x3e\t[%}%]\x3c/div\x3e\x3c/div\x3e');
181  function datepickerRender(container,json,callback){f().app().set("datepicker."+json.name,json);f(container).html(templatedatepicker({data:json}));if(typeof callback=="function")callback(container)}f().prototype().datepicker=function(container,json){json=json||{};if(container.constructor==={}.constructor){var command=container;var sender=this;f(".f-datepicker ."+command.channel).each(function(item){var datepicker=f().app().get("datepicker."+command.channel);var me=item;if(command.what=="prev"){var viewDate=
182          new Date(datepicker.viewDate);datepicker.viewDate=viewDate.prevMonth().toISOString()}if(command.what=="next"){var viewDate=new Date(datepicker.viewDate);datepicker.viewDate=viewDate.nextMonth().toISOString()}if(command.what=="today")datepicker.viewDate=(new Date).toISOString();if(command.what=="defaultDate"){datepicker.defaultDate=command.value;datepicker.viewDate=command.value}if(command.what=="viewDate")datepicker.viewDate=command.value;if(command.what=="select"){datepicker.defaultDate=command.value;
183          datepicker.viewDate=command.value;try{var target=sender.input.target;var formItem=f(item).closest(".f-form-item");if(formItem.items.length!=0){var date=new Date(command.value);date.setHours(12);date.setMinutes(0);date.setSeconds(0);formItem.find(".f-form-input-day").html(date.getDate());formItem.find(".f-form-input-month").html(date.getMonth()+1);formItem.find(".f-form-input-year").html(date.getFullYear());formItem.find(".f-form-input-hour").html(date.getHour
183s());formItem.find(".f-form-input-minute").html(date.getMinutes());
184  formItem.find(".f-form-datepicker-clean").removeClass("hide");f(item).closest(".f-form-box-datepicker").addClass("hide");f(item).closest(".form-modal").removeClass("form-modal-datepicker");sender.input.stopImmediatePropagation()}}catch(e){}f("datepicker").emit(command)}datepickerRender(item.parentElement,datepicker)})}else{if(!json.viewDate)json.viewDate=(new Date).toISOString();if(json.defaultDate)json.viewDate=json.defaultDate;datepickerRender(container,json,json.onready)}return this};var datepickerPlugin=
185function(resolve,context){var item=f(context.div).find(".f_datepicker").item;if(item){var json=JSON.parse(item.innerText);json.onready=function(){f(context.div).uiRender(context.callback)};f(item).addClass("f-datepicker").datepicker(item,json).removeClass("f_datepicker")}else resolve(context)};f().uiPlugins().push(datepickerPlugin)})();
186(function(){function updateCollapse(collapse){var height=0;collapse.find(".f-body").each(function(body){height=body.children[0].getBoundingClientRect().height});collapse.find(".f-body").each(function(body){if(collapse.hasClass("f-on"))body.style.height=height+"px";else body.style.height=0+"px";app.collapses=app.collapses});collapse.find(".f-header").find(".f-icon").each(function(icon){icon.innerHTML='\x3ci class\x3d"'+f().fa()+' fa-angle-down"\x3e\x3c/i\x3e'})}f().prototype().collapse=function(json){if(json)this.each(function(item){f(item).find(".f-body").each(function(body){body.children[0].addEventListener("DOMSubtreeModified",
187function(event){var collapse=f(event.target).closest(".f-collapse");updateCollapse(collapse)})});f(item).find(".f-header").on("click",function(event){var collapse=f(event.target).closest(".f-collapse");collapse.toggleClass("f-on");updateCollapse(collapse)})});f(".f-collapse").each(function(collapse){updateCollapse(f(collapse))});if(json)json.onready();return this}})();
188(function(){var templatepagination=f().tc('[% var pagination \x3d f().app().get(\'pagination.\'+conf.name) %]\x3cdiv class\x3d"toolbar"\x3e\x3cdiv class\x3d"toolbar-mode"\x3e[%if(pagination.switchMode \x3d\x3d \'yes\'){%]  [%if(pagination.mode \x3d\x3d \'list\'){%]    \x3cdiv onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'mode\',value:\'grid\'})"\x3e\x3cdiv\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-table"\x3e\x3c/i\x3e\x3c/div\x3e\x3c/div\x3e  [%}else{%]    \x3cdiv onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'mode\',value:\'list\'})"\x3e\x3cdiv\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-grip-horizontal"\x3e\x3c/i\x3e\x3c/div\x3e\x3c/div\x3e  [%}%][%}%]\x3c/div\x3e\x3cdiv class\x3d"toolbar-navigator"\x3e[%if(conf.size \x3e 1){%]  [%if(conf.n \x3e 2){%]    \x3cdiv onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'page-first\'})"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-chevron-double-left"\x3e\x3c/i\x3e\x3c/div\x3e  [%}else{%]    \x3cdiv class\x3d"off"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-chevron-double-left"\x3e\x3c/i\x3e\x3c/div\x3e  [%}%]  [%if(conf.n \x3e 1){%]    \x3cdiv onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'page-prev\'})"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-chevron-left"\x3e\x3c/i\x3e\x3c/div\x3e  [%}else{%]    \x3cdiv class\x3d"off"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-chevron-left"\x3e\x3c/i\x3e\x3c/div\x3e  [%}%]  [%for(var i\x3d-2;i\x3cconf.size+2;i++){ if(Math.abs(i-conf.n+1) \x3c 3){ %]      [%if(i \x3e\x3d 0 \x26\x26 i\x3cconf.size){%]        \x3cdiv class\x3d"btn-page [%if(i+1 \x3d\x3d conf.n){%]active[%}%]" onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'page\',value:[%\x3d(i+1)%]})"\x3e\x3cdiv\x3e[%\x3d(i+1)%]\x3c/div\x3e\x3c/div\x3e      [%}else{%]        \x3cdiv class\x3d"btn-page off"\x3e\x3c/div\x3e      [%}%]  [%}}%]  [%if(conf.size - conf.n \x3e 0){ %]    \x3cdiv onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'page-next\'})"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-chevron-right"\x3e\x3c/i\x3e\x3c/div\x3e  [%}else{ Math.ceil(count/limit)%]    \x3cdiv class\x3d"off"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-chevron-right"\x3e\x3c/i\x3e\x3c/div\x3e  [%}%]  [%if(conf.size - conf.n \x3e 1){ %]    \x3cdiv onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'page-last\'})"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-chevron-double-right"\x3e\x3c/i\x3e\x3c/div\x3e  [%}else{ Math.ceil(count/limit)%]    \x3cdiv class\x3d"off"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-chevron-double-right"\x3e\x3c/i\x3e\x3c/div\x3e  [%}%][%}%]\x3c/div\x3e\x3cdiv class\x3d"toolbar-info"\x3e\x3cspan class\x3d"f-tr"\x3e[%if(conf.size \x3e 1){%]label.page\x3c/span\x3e\x26nbsp;\x3cb\x3e[%\x3dconf.n%]\x3c/b\x3e/\x3cb\x3e[%\x3dconf.size%]\x3c/b\x3e,\x26nbsp;\x3cb\x3e[%\x3dfrom%]\x3c/b\x3e-[%}%]\x3cb\x3e[%\x3dfrom+Math.min(limit,size)%]\x3c/b\x3e\x26nbsp;\x3cspan class\x3d"f-tr"\x3elabel.of\x3c/span\x3e\x26nbsp;\x3cb\x3e[%\x3dcount%]\x3c/b\x3e\x26nbsp;\x26nbsp;\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d"[%\x3dconf.name%] view-[%\x3dpagination.mode%]"\x3e[%if(conf.template){%]  [%    var html;    try {      html \x3d conf.template({data:{items:items, conf:conf}});    } catch(err) {      html \x3d err;    }
188  %]  [%\x3d html %][%}else if(pagination.mode \x3d\x3d \'list\') {%]  \x3ctable\x3e  [%  var sortableCount \x3d 0;  f(conf.fields).each(function(field) {    if(field.sortable){      sortableCount++;    }  });  %]  [%f(conf.fields).each(function(field) {%]    [%    var sort \x3d \'\';    var sortClass \x3d \'\';    if(field.sortable) {      if(pagination.sort.indexOf(field.name) \x3d\x3d 0){        if(pagination.sort.indexOf(\'asc\') \x3e 0){          sort \x3d \'-up\';          sortClass \x3d \'sort-up\';        }else{          sort \x3d \'-down\';          sortClass \x3d \'sort-down\';        }      }else{      }    }    %]    [%if(field.sortable || pagination.mode \x3d\x3d \'list\'){%]      \x3cth style\x3d"width:[%\x3dfield.width%]" class\x3d"[%\x3dsortClass%]" [%if(field.sortable){%]onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'sort\',name:\'[%\x3dfield.name%]\'})"[%}%]\x3e      \x3cspan class\x3d"f-tr" code\x3d"label.[%\x3dfield.name%]"\x3e[%\x3dfield.name%]\x3c/span\x3e      [%if(field.sortable){%]        \x3ci class\x3d"[%\x3df().fa()%] fa-sort[%\x3dsort%]"\x3e\x3c/i\x3e      [%}%]      \x3c/th\x3e    [%}%]  [%});%]  [%f(items).each(function(item) {    var me \x3d item;    %]    \x3ctr onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'select\',id:\'[%\x3ditem.id%]\'})"\x3e    [%f(conf.fields).each(function(field) {%]      [%if(field.template){        var html;        try {          html \x3d field.template({data:item});        } catch(err) {          html \x3d err;        }        %]        \x3ctd style\x3d"width:[%\x3dfield.width%]"\x3e\x3cdiv class\x3d"[%\x3dconf.name%]-[%\x3dfield.name%]"\x3e[%\x3dhtml%]\x3c/div\x3e\x3c/td\x3e      [%}else{%]        \x3ctd style\x3d"width:[%\x3dfield.width%]"\x3e\x3cdiv class\x3d"[%\x3dconf.name%]-[%\x3dfield.name%]"\x3e[%\x3ditem[field.name]%]\x3c/div\x3e\x3c/td\x3e      [%}%]    [%});%]    \x3c/tr\x3e  [%});%]  \x3c/table\x3e[%}else{%]  \x3cdiv class\x3d"grid [%if(conf.width \x3d\x3d\x3d \'2x\'){%]grid-2x[%}%]"\x3e  [%f(items).each(function(item) {    var html;    try {      html \x3d conf.grid({data:item});    } catch(err) {      html \x3d err;    }    %]    \x3cdiv class\x3d"grid-item" data-id\x3d"[%\x3ditem.id%]" onclick\x3d"f(event).pagination({channel:\'[%\x3dconf.name%]\',what:\'select\',id:\'[%\x3ditem.id%]\'})"\x3e      \x3cdiv class\x3d"grid-item-content"\x3e[%\x3dhtml%]\x3c/div\x3e    \x3c/div\x3e  [%});%]  \x3c/div\x3e[%}%]\x3c/div\x3e');
189  function paginationRender(container,json,callback){var sortName=f().app().get("pagination."+json.name+".sort")||"";var params={from:f().app().get("pagination."+json.name+".from",0),limit:json.limit};if(sortName)params.sort=sortName;var searchText="";if(json.search){searchText=f().app().get("search."+json.search.source,"");params[json.search.name]=searchText}if(json.params)for(key in json.params)params[key]=json.params[key];if(json.secure)f().api(function(headers){f().http({url:json.url,headers:headers,
190        params:params,onsuccess:function(event){var data=JSON.parse(event.target.responseText);f().app().set("pagination."+json.name+".conf",json);f().app().set("pagination."+json.name+".data",data);if(!data.limit)data.limit=Number.MAX_SAFE_INTEGER;if(!data.from)data.from=0;json.n=data.from/data.limit+1;if(data.count/data.limit==Math.floor(data.count/data.limit))json.size=Math.floor(data.count/data.limit);else json.size=Math.floor(data.count/data.limit)+1;data.conf=json;f(container).html(templatepagination(data));
191          f(container).item.setAttribute("name",json.name);f("pagination-changed").emit({name:json.name});if(typeof callback=="function")callback(container)}})})}f().prototype().pagination=function(container,json){if(container.constructor==={}.constructor){var command=container;var sender=this;f(".f-pagination ."+command.channel).each(function(item){var pagination=f().app().get("pagination."+command.channel);var me=item;if(command.what=="sort"){var sort="asc";if(f(sender.input.target).closest("th").hasClass("sort-up"))sort=
192        "desc";pagination.sort=command.name+"|"+sort;pagination.from=0}if(isNaN(pagination.from))pagination.from=0;if(command.what=="page-first")pagination.from=0;if(command.what=="update")pagination.from=0;if(command.what=="page-prev")pagination.from=pagination.from-pagination.data.limit;if(command.what=="page-next")pagination.from=pagination.from+pagination.data.limit;if(command.what=="page-last")pagination.from=pagination.data.limit*Math.floor(pagination.data.count/pagination.data.limit);if(command.what==
193        "page")pagination.from=pagination.data.limit*(command.value-1);if(command.what=="mode")pagination.mode=command.value;if(command.what=="select"){try{var target=sender.input.target;var formItem=f(item).closest(".f-form-item");if(formItem.items.length!=0){if(command.value)formItem.find(".f-form-input-search").html(command.value);else{if(!target.onclick)target=f(target).closest("a").items[0];formItem.find(".f-form-input-search").html(target.innerText.trim())}formItem.find('input[type\x3d"hidden"]').items[0].value=
194          command.id;formItem.find(".f-form-input-search-clean").removeClass("hide");f(item).closest(".f-form-box-search").addClass("hide");f(item).closest(".form-modal").removeClass("form-modal-pagination");sender.input.stopImmediatePropagation()}}catch(e){}f("pagination").emit(command)}else paginationRender(item.parentElement,pagination.conf,function(container){f(".f-pagination").tr();f(container).find(".f_svg").renderSvg()})})}else{var sort="";try{json.grid=f().tc(f(container).find("script[name\x3dtemplate-grid]").html())}catch(err){}f(json.fields).each(function(field){try{field.template=
195          f().tc(f(container).find("script[name\x3d"+field.name+"]").html())}catch(err){}json.mode=f().app().get("pagination."+json.name+".mode",json.mode);json.switchMode=f().app().get("pagination."+json.name+".switchMode",json.switchMode?json.switchMode:"yes");if(field.sort)json.sort=f().app().get("pagination."+json.name+".sort",field.name+"|"+field.sort);json.search=f().app().get("pagination."+json.name+".search",json.search)});if(json.template)f().http({url:json.template,onsuccess:function(event){var text=
196event.target.responseText;try{json.template=f().tc(text)}catch(e){}paginationRender(container,json,json.onready)}});else paginationRender(container,json,json.onready)}return this};var paginationPlugin=function(resolve,context){var item=f(context.div).find(".f_pagination").item;if(item){var json=JSON.parse(item.innerText);json.onready=function(){f(context.div).uiRender(context.callback)};f(item).addClass("f-pagination").pagination(item,json).removeClass("f_pagination")}else resolve(context)};f().uiPlugins().push(paginationPlugin)})();
197(function(){var templatesearch=f().tc('\x3cdiv class\x3d"f-search-input [%\x3dname%]"\x3e\x3cdiv class\x3d"icon"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-search"\x3e\x3c/i\x3e\x3c/div\x3e\x3cdiv class\x3d"input" contenteditable\x3d"plaintext-only" spellcheck\x3d"false"\x3e\x3c/div\x3e\x3cdiv class\x3d"clear"\x3e\x3ci class\x3d"[%\x3df().fa()%] fa-times"\x3e\x3c/i\x3e\x3c/div\x3e\x3c/div\x3e');var searchTimeout=0;function emitSearch(name,event){var pagination=f().app().get("pagination",{});for(var key in pagination)if(pagination[key].search){var search=
198      pagination[key].search;if(search.source==name)f().pagination({channel:key,what:"update"})}f("search").emit({name:name,value:f().app().get("search."+name)})}f().prototype().search=function(data){this.html(templatesearch(data));var item=this.items[0];var me=this;
198var input=me.find(".input").items[0];me.find(".clear").addClass("off").on("click",function(){input.innerText=""});f(item).on("click",function(){input.focus()});input.innerText=f().app().get("search."+data.name,"");(new MutationObserver(function(event){var value=
199    input.innerText.trim();if(input.innerText.match(/\n/)||input.innerText.match(/\r/))input.blur();if(value=="")me.find(".clear").addClass("off");else me.find(".clear").removeClass("off");f().app().set("search."+data.name,value);clearTimeout(searchTimeout);searchTimeout=setTimeout(function(){emitSearch(data.name,event)},input.innerText==""?0:500)})).observe(input,{childList:true,subtree:true,characterData:true,attributes:true});if(input.innerText=="")me.find(".clear").addClass("off");else me.find(".clear").removeClass("off");
200data.onready();return this};var searchPlugin=function(resolve,context){var item=f(context.div).find(".f_search").item;if(item){var json=JSON.parse(item.innerText);json.onready=function(){f(context.div).uiRender(context.callback)};f(item).addClass("f-search").search(json).removeClass("f_search")}else resolve(context)};f().uiPlugins().push(searchPlugin)})();
201(function(){var templateselect=f().tc('\x3cdiv class\x3d"f-select-input"\x3e\x3cdiv class\x3d"f-select-choose f-on"\x3e\x3cspan\x3e\x3c/span\x3e\x26nbsp;\x26nbsp;\x3ci class\x3d"[%\x3df().fa()%] fa-caret-down fa-fw"\x3e\x3c/i\x3e\x3c/div\x3e\x3cdiv class\x3d"f-select-panel"\x3e[%f(items).each(function(item){%]  \x3cdiv class\x3d"f-select-option[%if(item.disable){%] f-select-option-disable[%}%]"\x3e  \x3cdiv class\x3d"f-select-label"\x3e[%\x3ditem.label%]\x26nbsp;\x26nbsp;\x3c/div\x3e  \x3c/div\x3e[%})%]\x3c/div\x3e\x3c/div\x3e');
202  function updateSelectors(name,value){f().app().set("select."+name,value)}
202function renderSelect(item,json){try{var value=f().app().get("select."+json.name);if(json.selected===undefined&&value)json.selected=value}catch(err){}var span=f(item).find(".f-select-choose").find("span").item;span.innerHTML="";if(json.selected)for(var i=0;i<json.items.length;i++){var option=json.items[i];if(option.value==json.selected){span.innerHTML=option.label;updateSelectors(json.name,option.value)}}if(span.innerHTML==""&&
203    json.items.length!=0){var option=json.items[0];json.selected=option.value;span.innerHTML=option.label;updateSelectors(json.name,option.value)}if(span.innerHTML==""){var text=f().tr("choose."+json.name);span.innerHTML=text===undefined?"choose."+json.name:text}}f().prototype().select=function(json){this.each(function(item){f(item).html(templateselect(json));var width=0;f(item).find(".f-select-label").each(function(item){var rect=item.getBoundingClientRect();if(rect.width>width)width=Math.ceil(rect.width)});
204      item.style.width=width+"px";f(item).on("click",function(event){var me=f(event.target).closest(".f-select").item;var options=f(me).find(".f-select-option");options.each(function(option,index){var rect=option.getBoundingClientRect();if(event.clientY>rect.top&&event.clientY<rect.top+rect.height){json.selected=json.items[index].value;renderSelect(item,json);f("select").emit({name:json.name,value:json.items[index].value,info:json.info})}});f(".f-select").each(function(item){if(item!=me)f(item).removeClass("f-on");
205      else f(item).toggleClass("f-on")});var height=options.item.getBoundingClientRect().height;if(f(item).hasClass("f-on"))f(item).find(".f-select-panel").item.style.height=height*json.items.length+"px";else f(item).find(".f-select-panel").item.style.height=0+"px";event.stopPropagation()});renderSelect(item,json)});return this};var selectPlugin=function(resolve,context){var item=f(context.div).find(".f_select").item;if(item){f(item).removeClass("f_select").addClass("f-select");f(item).select(JSON.parse(item.innerHTML));
206f(context.div).uiRender(context.callback)}else resolve(context)};f().uiPlugins().push(selectPlugin)})();
207(function(){var languages={it:{"btn.checkout":"Invia Ordine","btn.yes":"Si","btn.no":"No","btn.ok":"OK","btn.back":"Torna indietro","btn.cancel":"Annulla","btn.delete":"Elimina","btn.signin":"Accedi","btn.signup":"Iscriviti","btn.signforgot":"Recupera Password","btn.signout":"Esci","goto.sign":"Accedi","goto.signin":"Sei un utente registrato?","goto.signup":"Non hai un account? Crealo ora","goto.signforgot":"Hai dimenticato la password?","label.name":"Nome","label.surname":"Cognome","label.username":"Username",
208      "label.email":"Email","label.password":"Password","label.confirmpassword":"Conferma password","label.title":"Titolo","label.description":"Descrizione","label.date":"Data","label.duedate":"Data di scadenza","label.birthdate":"Data di nascita","label.noaccess":"No Access","label.readaccess":"Read Only","label.readwriteaccess":"Read / Write","error.bad":"Il valore inserito non \u00e8 corretto","error.empty":"Il valore non pu\u00f2 essere vuoto","error.bad.email":"La Email inserita non \u00e8 corretta",
209      "error.empty.email":"\u00c8 necessario inserire una Email","error.tooshort":"Il valore inserito \u00e8 troppo corto","error.different":"La conferma inserita non \u00e8 corretta","error.conflict":"Il valore inserito \u00e8\u00a0utilizzato","facebook.connect":"Continua con Facebook","tip.input.year":"Inserisci l'anno utilizzando 4 cifre","tip.input.month":"Inserisci il mese utilizzando un numero da 1 a 12","tip.input.day":"Inserisci il numero del giorno","tip.input.hour":"Inserisci l'ora utilizzando un numero da 0 a 23",
210    "tip.input.minute":"Inserisci i minuti utilizzando un numero da 0 a 59"},en:{"message.confirm":"Are you sure?","btn.checkout":"Checkout","btn.yes":"Yes","btn.no":"No","btn.ok":"OK","btn.back":"Back","btn.edit":"Edit","btn.close":"Close","btn.saveandclose":"Save and close","btn.cancel":"Cancel","btn.delete":"Delete","btn.signin":"Sign In","btn.signup":"Sign Up","btn.signforgot":"Forgot Password","btn.signout":"Sign Out","btn.sync":"Sync","goto.sign":"Sign","goto.signin":"Are you a registered user?",
211      "goto.signup":"Do you want to register as a new user?","goto.signforgot":"Did you forget your password?","label.page":"page","label.of":"of","label.name":"Name","label.surname":"Surname","label.username":"Username","label.email":"Email","label.password":"Password","label.confirmpassword":"Confirm password","label.title":"Title","label.description":"Description","label.date":"Date","label.duedate":"Due Date","label.birthdate":"Birth Date","label.noaccess":"No Access","label.readaccess":"Read Only",
212      "label.readwriteaccess":"Read / Write","label.readwritedownloadaccess":"Read / Write / Download","label.creationdate":"Creation Date","label.startdate":"Start Date","label.enddate":"End Date","label.note":"Notes","error.bad":"The value entered is incorrect","error.empty":"A value must be entered","error.bad.email":"The Email entered is incorrect","error.empty.email":"Email must be entered","error.tooshort":"The value entered is too short","error.different":"The confirm value entered is incorrect",
213    "error.conflict":"The value entered is already used","tip.input.year":"Enter the year using a 4-digit numbers","tip.input.month":"Enter the month using a number between 1 and 12","tip.input.day":"Enter the day number","tip.input.hour":"Enter the hour using a number between 0 and 23","tip.input.minute":"Enter the minute using a number between 0 and 59"},icon:{"label.startdate":"fa-calendar","label.enddate":"fa-calendar","label.note":"fa-comment","btn.checkout":"fa-shopping-basket","btn.sync":"fa-sync",
214      "btn.yes":"fa-check","btn.no":"fa-times","btn.ok":"fa-check-circle","btn.edit":"fa-pencil","btn.back":"fa-chevron-left","btn.c
214ancel":"fa-times-circle","btn.delete":"fa-trash","btn.close":"fa-times","btn.saveandclose":"fa-check","btn.signin":"fa-sign-in","btn.signout":"fa-sign-out","btn.signup":"fa-user-plus","btn.signforgot":"fa-unlock","goto.signin":"fa-sign-in","goto.signup":"fa-user-plus","goto.signforgot":"fa-unlock","label.username":"fa-user-circle","label.email":"fa-envelope","label.password":"fa-unlock",
215      "label.confirmpassword":"fa-lock","label.date":"fa-calendar","label.creationdate":"fa-calendar-star","label.duedate":"fa-calendar-times","label.birthdate":"fa-calendar-star","facebook.connect":"fab fa-facebook-square"}};f().prototype().tr=function(code,texts){code=code||"";code=code.toLowerCase();if(!code&&!texts){var language="it";try{language=f("html").items[0].getAttribute("lang")}catch(err){}this.each(function(container){f(container).find(".f-tr").each(function(item,i){var code=item.getAttribute("code");
216          if(!code){code=item.innerText||item.textContent;item.setAttribute("code",code)}var item=f(item);item.html(item.tr(code))});f(container).find(".f-date").each(function(item,i){var code=item.getAttribute("code");if(!code){code=item.innerText||item.textContent;item.setAttribute("code",code)}var item=f(item);var date=new Date(Date.parse(code));var dateString=""+date.toLocaleDateString(language,{weekday:"short",day:"numeric",month:"short",year:"numeric"});dateString+=" "+date.toLocaleTimeString(language,
217          {hour12:false,timeStyle:"short"});item.html(dateString)})})}try{if(languages[code]){if(texts)for(key in texts)languages[code][key.toLowerCase()]=texts[key];else f("html").items[0].setAttribute("lang",code);return this}var language="it";try{language=f("html").items[0].getAttribute("lang");if(!language)language="it"}catch(err){}var label=languages[language][code];if(f().fa()!=""){var icon=languages.icon[code];if(icon){if(icon.indexOf(" ")<0)icon=f().fa()+" "+icon;label='\x3ci class\x3d"'+icon+'"\x3e\x3c/i\x3e\x26nbsp;\x26nbsp;'+
218(typeof label=="string"?label:code)}}if(!label){var parts=code.split(".");if(parts.length==4){label=this.tr("error."+parts[1]+"."+parts[3]);if(!label)return this.tr("error."+parts[1]);else return label}}return label}catch(err){return code}};var trPlugin=function(resolve,context){f(context.div).tr();resolve(context)};f().uiPlugins().push(trPlugin)})();
219(function(){var dragInfo=undefined;var dragObject=undefined;function handleDragStart(event){event.dataTransfer.clearData();dragObject=undefined;dragInfo={};dragInfo.from=JSON.parse(JSON.stringify(event.currentTarget.dataset));dragInfo.type="start";f("drag-move").emit(dragInfo);f(event.currentTarget).addClass("f-drag")}function handleDragEnd(event){dragInfo.type="end";f("drag-move").emit(dragInfo);dragInfo=undefined;var from=f(".f-drag").closest(".f-draggable").item;if(dragObject)f("drag").emit({from:JSON.parse(JSON.stringify(from.dataset)),
220      to:JSON.parse(JSON.stringify(dragObject.dataset))});else f("drag").emit({from:JSON.parse(JSON.stringify(from.dataset))});f(event.target).removeClass("f-drag");f(".f-droparea-after").removeClass("on");f(".f-droparea-before").removeClass("on");f(".f-drop").removeClass("f-drop");event.preventDefault()}function handleDragEnter(event){handleDragLeave(event);var from=f(".f-drag").closest(".f-draggable").item;var to=f(event.target).closest(".f-draggable").item;if(to.dataset.drop){var toDrops=to.dataset.drop.split(",");
221      f(toDrops).each(function(toDrop){if(from.dataset.what==toDrop)if(from.dataset.id!=to.dataset.id&&from.dataset.what==to.dataset.what||from.dataset.what!=to.dataset.what){dragObject=to;f(to).addClass("f-drop");to.dataset["type"]="drop"}})}else if(from.dataset.what==to.dataset.what){if(from.dataset.id!=to.dataset.id){dragObject=to;var position=from.compareDocumentPosition(to);if(position&Node.DOCUMENT_POSITION_PRECEDING)f(to.parentElement).find(".f-droparea-before").addClass("on");if(position&Node.DOCUMENT_POSITION_FOLLOWING)f(to.parentElement).find(".f-droparea-after").addClass("on")}to.dataset["type"]=
222    "drag"}}function handleDropEnter(event){handleDragLeave(event);
222var from=f(".f-drag").closest(".f-draggable").item;var to=f(event.target).closest(".f-droppable").item;if(to.dataset.drop){var toDrops=to.dataset.drop.split(",");f(toDrops).each(function(toDrop){if(from.dataset.what==toDrop)if(from.dataset.id!=to.dataset.id&&from.dataset.what==to.dataset.what||from.dataset.what!=to.dataset.what){dragObject=to;f(to).addClass("f-drop");to.dataset["type"]="drop"}})}}function handleDragLeave(event){dragObject=
223    undefined;f(".f-droparea-after").removeClass("on");f(".f-droparea-before").removeClass("on");f(".f-drop").removeClass("f-drop")}function handleDragOver(event){event.preventDefault();event.dataTransfer.dropEffect="move";dragInfo.type="start";dragInfo.to=JSON.parse(JSON.stringify(event.target.dataset));for(var k in event)if(k.endsWith("X")||k.endsWith("Y"))dragInfo[k]=event[k];f("drag-move").emit(dragInfo)}function dragInit(){f(".f-draggable").each(function(item){var f_item=f(item);if(!f_item.hasClass("f-draggable-ok")){f_item.addClass("f-draggable-ok");
224  item.setAttribute("draggable","true");item.addEventListener("dragstart",handleDragStart,false);item.addEventListener("dragend",handleDragEnd,false);item.addEventListener("dragenter",handleDragEnter,false);item.addEventListener("dragover",handleDragOver,false)}});f(".f-droppable").each(function(item){var f_item=f(item);if(!f_item.hasClass("f-droppable-ok")){f_item.addClass("f-droppable-ok");item.addEventListener("dragenter",handleDropEnter,false);item.addEventListener("dragover",handleDragOver,false)}})}
225f().uiOnReadyPlugins().push(dragInit)})();
226(function () {
227  var api = {};
228  f().prototype().api = function (input, channel) {
229    if(!channel) {
230      channel = 'web';
231    }
232    if(typeof input == 'function') {
233      var headers = {};
234      if(api.k) {
235        var token = {t:new Date().getTime(),token:localStorage.getItem(channel)};
236        f(JSON.stringify(token)).apiEncrypt(function(base64) {
237          headers.token = localStorage.getItem(channel);
238          headers.sign = base64;
239          input(headers);
240        });
241      } else {
242        input(headers);
243      }
244    } else if(input && input.uri && input.uri.indexOf('handshake') > 0) {
245      if(input.uri.indexOf('http') != 0) {
246        if(input.uri.indexOf('/') != 0) {
247          input.uri = '/'+input.uri;
248        }
249      }
250      localStorage.removeItem(input.channel+'-privateKey'); // fix
251      localStorage.removeItem(input.channel+'-publicKey'); // fix
252      var privateKey = localStorage.getItem(input.channel+'-pvKey');
253      var publicKey = localStorage.getItem(input.channel+'-pbKey');
254      if(privateKey && publicKey){
255        crypto.subtle.importKey('jwk', JSON.parse(window.atob(privateKey)), {name:'ECDH',namedCurve:'P-256'},true,['deriveKey']).then(function(privateKey) { // private
256          handshake(input, privateKey);
257        });
258      }else{
259        crypto.subtle.generateKey({name:'ECDH',namedCurve:'P-256'},true,['deriveKey']).then(function(key) {
260          crypto.subtle.exportKey('jwk',key.privateKey).then(function(json) { // export private key
261            localStorage.setItem(input.channel+'-pvKey',window.btoa(JSON.stringify(json)));
262            crypto.subtle.exportKey('raw',key.publicKey).then(function(bytes) { // export public key
263              localStorage.setItem(input.channel+'-pbKey',arrayBufferToBase64(bytes));
264              handshake(input, key.privateKey);
265            });
266          });
267        });
268      }
269    } else {
270      var json = {authenticated:api.u};
271      return json;
272    }
273    return this;
274  };
275  f().prototype().decodeBase64 = function () {
276    return arrayBufferToString(base64ToArrayBuffer(this.input));
277  }
278  f().prototype().encodeBase64 = function () {
279    return arrayBufferToBase64(stringToArrayBuffer(this.input));
280  }
281  function handshake(input, privateKey){
282    f().http({
283      method:'POST',
284      url: input.uri,
285      onsuccess:function(event) {
286        var json = JSON.parse(event.target.responseText);
287        localStorage.setItem(input.channel,json.d);
288        crypto.subtle.importKey('spki', base64ToArrayBuffer(json.k), {name:'ECDH',namedCurve:'P-256'},true,[]).then(function(publicKey) {
289          crypto.subtle.deriveKey({name:'ECDH','public':publicKey},privateKey,{name:'AES-CTR',length:256},false,['encrypt','decrypt']).then(function(secretKey) {
290            api.k = secretKey;
291            api.t = json.t;
292            api.u = json.u;
293            input.onsuccess(json);
294          });
295        });
296      },
297      params:{k:localStorage.getItem(input.channel+'-pbKey'),t:new Date().getTime(),d:localStorage.getItem(input.channel),c:input.channel}
298    });
299  }
300  function arrayBufferToBase64( buffer ) {
301    var binary = '';
302    var bytes = new Uint8Array( buffer );
303    var len = bytes.byteLength;
304    for (var i = 0; i < len; i++) {
305      binary += String.fromCharCode( bytes[ i ] );
306    }
307    return window.btoa(binary);
308  }
309  function base64ToArrayBuffer(base64) {
310    var binary_string = window.atob(base64);
311    var len = binary_string.length;
312    var bytes = new Uint8Array( len );
313    for (var i = 0; i < len; i++)        {
314      bytes[i] = binary_string.charCodeAt(i);
315    }
316    return bytes;
317  }
318  function stringToArrayBuffer(str){
319    var arr = new Uint8Array(str.length);
320    for(var i=str.length; i--; )
321    arr[i] = str.charCodeAt(i);
322    return arr.buffer;
323  }
324  function arrayBufferToString(buffer){
325    var arr = new Uint8Array(buffer);
326    var str = String.fromCharCode.apply(String, arr);
327    return str;
328  }
329  f().prototype().apiDecrypt = function (callback) {
330    crypto.subtle.decrypt(
331    {name:'AES-CTR',length:128,counter:new Uint8Array([0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f])},
332    api.k,
333    base64ToArrayBuffer(this.input)
334    ).then(function(bytes) {
335      callback(arrayBufferToString(bytes));
336    });
337    return this;
338  };
339  f().prototype().apiEncrypt = function (callback) {
340    crypto.subtle.encrypt(
341    {name:'AES-CTR',length:128,counter:new Uint8Array([0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f])},
342    api.k,
343    stringToArrayBuffer(this.input)
344    ).then(function(bytes) {
345      callback(arrayBufferToBase64(bytes));
346    });
347    return this;
348  };
349})();
350
351f().t([{"code":"[% \n  var data = f().app().get('data') || {};\n%]\n\n\n<div style=\"width:96%;max-width:980px;margin:auto;\">\n  \n  <div style=\"text-align:right;padding:10px;\">\n    <div class=\"button\">\n      <div id=\"signin-button\" onclick=\"customDropdown(this)\"><\/div>\n      <div class=\"dropdown-content\">\n        <div class=\"box\" id=\"signin\"><\/div>\n      <\/div>\n    <\/div>\n    <div class=\"button\">\n      <div id=\"cart-button\" onclick=\"customDropdown(this)\"><\/div>\n      <div class=\"dropdown-content\">\n        <div class=\"box\" id=\"cart\"><\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n  \n\n    <!-- <div class=\"box\" id=\"find-store\"><\/div> -->\n\n  \n    <div class=\"box\" id=\"book-community\"><\/div>\n    <div class=\"box\" id=\"cart-checkout\"><\/div>\n    <div class=\"box\" id=\"connected-account\"><\/div>\n    <div class=\"box\" id=\"profile\"><\/div>\n    <div class=\"box\" id=\"signup\"><\/div>\n    <div class=\"box\" id=\"cart-fullheight\"><\/div>\n\n\n    <br><br><br><br>\n    \n    \n    <div class=\"row row-top\">\n    <div class=\"column\">\n      [%(data.book_showcase || []).forEach(function(item){%]\n      <div style=\"background:var(--color-gray6);padding:5px 10px;margin:5px;min-height:140px;\">\n      <div class=\"row\">\n          <div class=\"column\">\n            <div style=\"font-size:18px;font-weight:bold\">[%=item.title%]<\/div>\n            <div>[%=item.price%]<\/div>\n            <div>[%=(item.abstract || '').substring(0,200)%]...<\/div>\n          <\/div>\n          <div class=\"column column-fit\">\n            <div class=\"button\" onclick=\"widgets.setCartItem({id:[%=item.id%], preOrder:'yes'})\">Pre Ordina<\/div>\n          <\/div>\n      <\/div>\n      <\/div>\n      [%});%]\n    <\/div>\n    <div class=\"column\">\n      [%(data.book_topten || []).forEach(function(item){%]\n      <div style=\"background:var(--color-gray6);padding:5px 10px;margin:5px;min-height:140px;\">\n      <div class=\"row\">\n          <div class=\"column\">\n            <div style=\"font-size:18px;font-weight:bold\">[%=item.title%]<\/div>\n            <div>[%=item.price%]<\/div>\n            <div>[%=(item.abstract || '').substring(0,200)%]...<\/div>\n          <\/div>\n          <div class=\"column column-fit\">\n            <div class=\"button\" onclick=\"widgets.setCartItem({id:[%=item.id%]})\">Aggiungi al carrello<\/div>\n          <\/div>\n      <\/div>\n      <\/div>\n      [%});%]\n    <\/div>\n    <\/div>\n  \n  \n<\/div>\n\n<!-- <div class=\"cart-fullheight\" id=\"cart-fullheight\"><\/div> -->","url":"ui/templates/ecommerce.html"},{"code":"[%\n  var cart = widgets.getCart();\n  var info = cart.shipment || {};\n  var delivery = cart.delivery || {};\n  var step = widgets.get('stepCheckout',1);\n  var gift = cart.gift || {};\n%]\n<div class=\"step-title\" onclick=\"widgets.cartStep(3)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">3<\/span>\n  <\/div>\n  <div class=\"title-text\">\n    [%if(gift.labelCart){ %]\n      [%= gift.labelCart %]\n    [%}else{%]\n      Indirizzo Spedizione\n    [%}%]\n    [%if(info.recipient && step != 3){%] <div class=\"title-small-widget\">[%= (info.recipient || '') %]<\/div>[%}%]\n  <\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(step == 3 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(step == 3){%]\n<form onsubmit=\"return widgets.cartStep(this);\">\n<div class=\"step-content\">\n  [%if(gift.id){ %]\n    <div class=\"field-widget\">\n      <img src=\"https://ubik-media.s3.amazonaws.com/customevents/[%=gift.id%]/[%=gift.id%]-1800x720.jpg?t=[%=gift.t%]\" />\n    <\/div>\n    [%if(gift.type == 1){%]\n      \n      [%if(gift.description){%]\n      <div class=\"field-widget\">\n        [%=gift.description%]\n      <\/div>\n      [%}%]\n      \n      <div class=\"field-widget\">\n        <label class=\"label-widget\">[%= gift.labelCartRow %]<\/label>\n        <input class=\"input-widget\" type=\"text\" name=\"recipient\" placeholder=\"[%= (gift.labelPlaceholder || '') %]\" autocomplete=\"off\" value=\"[%=info.recipient || ''%]\" data-required/>\n      <\/div>\n      \n    [%}else{%]\n      \n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Destinatario<\/label>\n        <input class=\"input-widget\" type=\"text\" name=\"recipient\" placeholder=\"Nome\" autocomplete=\"off\" value=\"[%= (info.recipient || '') %]\" data-required/>\n      <\/div>\n      \n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Telefono<\/label>\n        <input class=\"input-widget\" type=\"text\" name=\"phone\" placeholder=\"Telefono\" autocomplete=\"off\" value=\"[%= (info.phone || '') %]\" data-required/>\n      <\/div>\n      \n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Indirizzo<\/label>\n        <input class=\"input-widget\" type=\"text\" name=\"address\" placeholder=\"Indirizzo\" autocomplete=\"off\" value=\"[%= (info.address || '') %]\" data-required/>\n      <\/div>\n      \n      <div class=\"row-widget row-widget-top\">\n      <div class=\"column-widget\">\n        <div class=\"field-widget\">\n          <label class=\"label-widget\">CAP<\/label>\n          <input class=\"input-widget\" type=\"text\" name=\"postalCode\" placeholder=\"Cap\" autocomplete=\"off\" value=\"[%= (info.postalCode || '') %]\" data-required/>\n        <\/div>\n      <\/div>\n      <div class=\"column-widget\">\n        <div class=\"field-widget\">\n          <label class=\"label-widget\">Città<\/label>\n          <input class=\"input-widget\" type=\"text\" name=\"city\" placeholder=\"Città\" autocomplete=\"off\" value=\"[%= (info.city || '') %]\" data-required/>\n        <\/div>\n      <\/div>\n      <\/div>\n      \n      \n      <div class=\"row-widget row-widget-top\">\n      <div class=\"column-widget\">\n        <div class=\"field-widget\">\n          <label class=\"label-widget\">Provincia<\/label>\n          <select name=\"province\" class=\"select-widget\" data-required>\n            <option value=\"\" selected disabled>Seleziona provincia<\/option>
351\n            [%italianProvinces.forEach(function(item){%]\n            <option value=\"[%=item.value.toUpperCase()%]\"[%if((info.province || '').toUpperCase() == item.value.toUpperCase()){%] selected[%}%]>[%=item.name%]<\/option>\n            [%});%]\n          <\/select>\n        <\/div>\n      <\/div>\n      <div class=\"column-widget\">\n        <div class=\"field-widget\">\n          <label class=\"label-widget\">Nazione<\/label>\n          <input class=\"input-widget\" type=\"text\" placeholder=\"Nazione\" autocomplete=\"off\" value=\"ITALIA\" disabled/>\n        <\/div>\n      <\/div>\n      <\/div>\n      \n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Dedica<\/label>\n        <textarea class=\"textarea-widget\" name=\"note\" placeholder=\"Scrivi una dedica...\" autocomplete=\"off\">[%= (info.note || '') %]<\/textarea>\n      <\/div>\n      \n    [%}%]\n  [%}else{%]\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Destinatario<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"recipient\" placeholder=\"Nome\" autocomplete=\"off\" value=\"[%= (info.recipient || '') %]\" data-required/>\n  <\/div>\n  \n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Telefono<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"phone\" placeholder=\"Telefono\" autocomplete=\"off\" value=\"[%= (info.phone || '') %]\" data-required/>\n  <\/div>\n  \n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Indirizzo<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"address\" placeholder=\"Indirizzo\" autocomplete=\"off\" value=\"[%= (info.address || '') %]\" data-required/>\n  <\/div>\n  \n  <div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">CAP<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"postalCode\" placeholder=\"Cap\" autocomplete=\"off\" value=\"[%= (info.postalCode || '') %]\" data-required/>\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Città<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"city\" placeholder=\"Città\" autocomplete=\"off\" value=\"[%= (info.city || '') %]\" data-required/>\n    <\/div>\n  <\/div>\n  <\/div>\n  \n  \n  <div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Provincia<\/label>\n      <select name=\"province\" class=\"select-widget\" data-required>\n        <option value=\"\" selected disabled>Seleziona provincia<\/option>\n        [%italianProvinces.forEach(function(item){%]\n        <option value=\"[%=item.value.toUpperCase()%]\"[%if((info.province || '').toUpperCase() == item.value.toUpperCase()){%] selected[%}%]>[%=item.name%]<\/option>\n        [%});%]\n      <\/select>\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Nazione<\/label>\n      <input class=\"input-widget\" type=\"text\" placeholder=\"Nazione\" autocomplete=\"off\" value=\"ITALIA\" disabled/>\n    <\/div>\n  <\/div>\n  <\/div>\n  \n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Note<\/label>\n    <textarea class=\"textarea-widget\" name=\"note\" placeholder=\"Note\" autocomplete=\"off\">[%= (info.note || '') %]<\/textarea>\n  <\/div>\n  [%}%]\n<\/div>\n<div class=\"step-toolbar\">\n  <div><\/div>\n  <div><button type=\"submit\" class=\"button-widget button-large button-blue\">Salva e Prosegui<\/button><\/div>\n<\/div>\n<\/form>\n[%}%]","url":"ui/widgets/cart-checkout/step-3.html"},{"code":"[%\n  var cart = widgets.getCart();\n  var delivery = cart.delivery || {};\n  var store = cart.store || {};\n  var step = widgets.get('stepCheckout',1);\n  var items = (delivery.items || []);\n  var selected = {};\n  items.forEach(function(item){\n    if(item.type == delivery.select){\n      selected = item;\n    }\n  });\n  var riceviACasa = false;\n%]\n<div class=\"step-title\" onclick=\"widgets.cartStep(2)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">2<\/span>\n  <\/div>\n  <div class=\"title-text\">Spedizione o Ritiro?[%if(selected.name && step != 2){%] <div class=\"title-small-widget\">[%=selected.name%]<\/div>[%}%]<\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(step == 2 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(step == 2){%]\n<div class=\"step-content\">
351\n  [% items.forEach(function(item){ if(item.type == 2){riceviACasa = true;} %]\n  <div class=\"step-radio[%if(item.type == delivery.select){%] selected[%}%]\" onclick=\"widgets.setCartDelivery('[%=item.token%]')\">\n  <div class=\"step-radio-wrap\">\n    <div class=\"radio-icon\"><\/div>\n    <div class=\"radio-label\">\n      <div>[%=item.name%]<\/div>\n      [%if(item.price > 0){%]\n      [%if(cart.spendAtLeast && item.type != 1){%]\n      <p>Nessun costo con una spesa di almeno [%= cart.spendAtLeast.toFixed(2).replace('.',',') %] &euro;<\/p>\n      [%}%]\n      [%}%]\n    <\/div>\n    <div class=\"radio-description\">\n      [%if(item.price > 0){%]\n        [%= item.price.toFixed(2).replace('.',',') %] &euro;\n      [%}else{%]\n        Gratuito\n      [%}%]\n    <\/div>\n  <\/div>\n  <\/div>\n  [% }); %]\n  [%if(widgets.hasPrintOnDemand()){%]\n    [%if(items.length){%]\n      <div class=\"alert-widget alert-info\">Per i libri \"PRINT ON DEMAND\" non è previsto il ritiro in libreria<\/div>\n    [%}else{%]\n      <div class=\"alert-widget alert-info\">La libreria che hai selezionato non prevede la spedizione dei libri \"PRINT ON DEMAND\".<\/div>\n    [%}%]\n  [%}else if(widgets.get('cartTab') == 'preorderable'){%]\n    <div class=\"alert-widget alert-info\">Per i libri \"PRE ORDINABILE\" non è previsto la spedizione a casa.<\/div>\n  [%}else if(store.id && !riceviACasa){%]\n    <div class=\"alert-widget alert-info\">La libreria che hai selezionato non prevede la spedizione del libro.<\/div>\n  [%}%]\n\n<\/div>\n\n\n<div class=\"step-toolbar\">\n  <div><\/div>\n  <div><div class=\"button-widget button-large button-blue\"[%if(!delivery.select){%] disabled[%}%] onclick=\"widgets.cartStep(3)\">Prosegui<\/div><\/div>\n<\/div>\n[%}%]","url":"ui/widgets/cart-checkout/step-2.html"},{"code":"[%\n  var cart = widgets.getCart();\n  var payment = cart.payment || {};\n  var step = widgets.get('stepCheckout',1);\n  var payments = (payment.items || []);\n  var selected = {};\n  payments.forEach(function(item){\n    if(item.id == payment.select){\n      selected = item;\n    }\n  });\n%]\n<div class=\"step-title\" onclick=\"widgets.cartStep(5)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">5<\/span>\n  <\/div>\n  <div class=\"title-text\">Effettua Pagamento[%if(selected.name && step != 5){%] <div class=\"title-small-widget\">[%=selected.name%]<\/div>[%}%]<\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(step == 5 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(step == 5){%]\n<div class=\"step-content\">\n  [%if(widgets.hasCartWarning()){%]\n  <div class=\"alert-widget alert-warning\">Nel tuo carrello è presente un titolo \"NON ORDINABILE\", modifica l'ordine prima di procedere. &nbsp;&nbsp;<div onclick=\"widgets.fire('goTo',{what:'cart'})\" class=\"button-widget button-small button-orange\">Modifica<\/div><\/div>\n  [%}%]\n  \n  <div>\n  [% payments.forEach(function(item){ %]\n  <div class=\"step-radio[%if(item.id == payment.select){%] selected[%}%]\">\n    <div class=\"step-radio-wrap\"  onclick=\"widgets.setCartPayment('[%=item.id%]')\">\n      <div class=\"radio-icon\"><\/div>\n      <div class=\"radio-label\">\n        <div>[%=item.name%]<\/div>\n        [%if(item.description){%]\n        <p>[%=item.description%]<\/p>\n        [%}%]\n      <\/div>\n      [%if(item.id == 3){%]\n      <div class=\"radio-cards\">\n        <div class=\"icon-widget icon-paypal\">[%= widgets.getSvg('card/paypal') %]<\/div>\n      <\/div>\n      [%}else if(item.id == 4){%]\n      <div class=\"radio-cards\">\n        <div class=\"icon-widget icon-satispay\">[%= widgets.getSvg('card/satispay') %]<\/div>\n      <\/div>\n      [%}else if(item.id == 5){%]\n      <div class=\"radio-cards\">\n        <div class=\"icon-widget icon-bonifico\">[%= widgets.getSvg('card/bonifico') %]<\/div>\n      <\/div>\n      [%}else if(item.id == 2){%]\n      <div class=\"radio-cards\">\n        <div class=\"icon-widget\">[%= widgets.getSvg('card/visa') %]<\/div>\n        <div class=\"icon-widget\">[%= widgets.getSvg('card/mastercard') %]<\/div>\n        <div class=\"icon-widget\">[%= widgets.getSvg('card/americanexpress') %]<\/div>\n        <div class=\"icon-widget\">[%= widgets.getSvg('card/diners') %]<\/div>\n      <\/div>\n      [%}%]\n    <\/div>\n    \n    [%if(payment.select == 2 && item.id == 2){%]\n    <div class=\"stripe-payment-widget\">\n      <div class=\"stripe-retrieve-method-widget\">\n        <div class=\"stripe-methods\"><\/div>\n        <div class=\"field-widget\">\n        <div class=\"button-widget button-submit button-fullwidth button-large button-green\" disabled>[%= widgets.getSvg('lock') %]Paga [%= cart.total.toFixed(2).replace('.',',') %] &euro;<\/div>\n        <\/div>\n        \n        [%if(widgets.hasPrintOnDemand()){%]\n          <div class=\"alert-widget alert-info alert-rm-margin\">Per i libri \"PRINT ON DEMAND\" l'addebito dell'ordine viene effettuato immediatamente.<\/div>\n        [%}else{%]\n          <div class=\"alert-widget alert-info alert-rm-margin\">Se entro 7 giorni lavorativi non verrà spedito l'ordine, nessun importo verrà addebitato.<\/div>\n        [%}%]\n        \n        <div class=\"text-center-widget\"><div class=\"stripe-payment-divisor\">Oppure<\/div><\/div>\n        <div class=\"button-widget button-choose button-fullwidth button-large button-blue\">Aggiungi una modalità di pagamento<\/div>\n      <\/div>\n      <div class=\"stripe-create-method-widget\">\n      <div class=\"stripe-elements-widget\">\n        <div class=\"field-widget\">\n          <label class=\"label-widget\">Email<\/label>\n          <input class=\"input-widget\" value=\"[%= (payment.configuration.defaultEmail || '') %]\" type=\"text\" name=\"email\" placeholder=\"Email\" autocomplete=\"off\" />\n        <\/div>\n        <div class=\"field-widget\">\n          <label class=\"label-widget\">Titolare della carta<\/label>\n          <input class=\"input-widget\" type=\"text\" name=\"name\" placeholder=\"Titolare della carta\" autocomplete=\"off\" />\n        <\/div>\n        <div class=\"field-widget\">\n          <label class=\"label-widget\">Informazioni sulla carta<\/label>\n          <div class=\"stripe-card\" id=\"stripe-card\"><\/div>\n          <div class=\"stripe-terms\"><span>Powered by <div class=\"icon-widget\">[%= widgets.getSvg('stripe') %]<\/div><\/span>&nbsp; | &nbsp;<a href=\"https://stripe.com/it/legal\" target=\"_blank\">Terms<\/a> &nbsp;<a href=\"https://stripe.com/en-gb-it/privacy\" target=\"_blank\">Privacy<\/a><\/div>\n          <div class=\"form-errors-widget\"><\/div>\n        <\/div>\n        <div class=\"field-widget\">\n          <div class=\"button-widget button-submit button-fullwidth button-large button-green\">[%= widgets.getSvg('lock') %]Paga [%= cart.total.toFixed(2).replace('.',',') %] &euro;<\/div>\n        <\/div>\n        \n        [%if(widgets.hasPrintOnDemand()){%]\n          <div class=\"alert-widget alert-info alert-rm-margin\">Per i libri \"PRINT ON DEMAND\" l'addebito dell'ordine viene effettuato immediatamente.<\/div>\n        [%}else{%]\n          <div class=\"alert-widget alert-info alert-rm-margin\">Se entro 7 giorni lavorativi non verrà spedito l'ordine, nessun importo verrà addebitato.<\/div>\n        [%}%]\n        \n      <\/div>\n      <div class=\"stripe-choose-method\">\n        <div class=\"text-center-widget\"><div class=\"stripe-payment-divisor\">Oppure<\/div><\/div>\n        <div class=\"button-widget button-choose button-fullwidth button-large button-blue\">Scegli una modalità di pagamento<\/div>\n      <\/div>\n      <\/div>\n    <\/div>\n    [%}%]\n    \n  <\/div>\n  [% }); %]\n  <\/div>\n<\/div>\n<div class=\"step-toolbar center\">\n  <div>\n    [%if(payment.select == 2){%]\n      \n    [%}else{%]\n      <div class=\"button-widget button-large button-green\" onclick=\"widgets.cartCheckout()\">[%= widgets.getSvg('checked') %] Conferma Ordine<\/div>\n    [%}%]\n  <\/div>\n<\/div>\n[%}%]","url":"ui/widgets/cart-checkout/step-5.html"},{"code":"[%\n  var cart = widgets.getCart();\n  var store = cart.store || {};\n  var delivery = cart.delivery || {};\n  var payment = cart.payment || {};\n  var shipment = cart.shipment || {};\n  var gift = cart.gift || {};\n  var items = cart.items || [];\n  var step = widgets.get('stepCheckout',1);\n  var cartTab = widgets.get('cartTab');\n%]\n<div class=\"step-title\" onclick=\"widgets.cartStep(4)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">4<\/span>\n  <\/div>\n  <div class=\"title-text\">\n    Riepilogo\n    [%if(cart.total && step != 4){%] <div class=\"title-small-widget\">Totale [%= cart.total.toFixed(2).replace('.',',') %] &euro;<\/div>[%}%]\n  <\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(step == 4 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(step == 4){%]\n<div class=\"step-content\">\n  \n  [%if(gift.id){ %]\n    <div class=\"field-widget\">\n      <img src=\"https://ubik-media.s3.amazonaws.com/customevents/[%=gift.id%]/[%=gift.id%]-1800x720.jpg?t=[%=gift.t%]\" />\n    <\/div>\n  [%}%]\n  \n  <div class=\"cart-widget\">\n    <div class=\"cart-items\">\n      <div>
351\n      [%items.forEach(function(item){ %]\n      <div class=\"cart-item\">\n        <div class=\"cart-context\">\n          <div class=\"cart-image\" onclick=\"widgets.fire('goTo',{what:'ean',ean:'[%=item.id%]'})\" style=\"background-image:url([%=item.imageUrl%])\"><\/div>\n          <div class=\"cart-info\">\n            <div class=\"cart-title\">[%=(item.title || '-')%]<\/div>\n            <div class=\"cart-author\">[%=(item.author || '-')%]<\/div>\n            <div class=\"cart-editor\">[%=(item.editor || '-')%]<\/div>\n            <div class=\"cart-ean\">[%=item.id%]<\/div>\n            \n            [%if(item.state){%]\n            <div class=\"cart-availabilty stato-[%= item.state.toLowerCase().replace(/ /g,'-').replace('_','-').replace('/','-'); %]\">[%=item.state%]<\/div>\n            [%}else{%]\n            <div class=\"cart-availabilty\">ORDINABILE<\/div>\n            [%}%]\n            \n            [%if(item.state && item.state.toLowerCase().indexOf('print on demand') != - 1){\n                var deg = (Math.floor(Math.random() * 50) + -10);\n            %]\n              <div class=\"text-right-widget\">\n              <div class=\"circle-print-on-demand\" style=\"transform:rotate([%=deg%]deg)\">\n              <div>\n                <div>Print<\/div>\n                <div>on<\/div>\n                <div>Demand<\/div>\n              <\/div>\n              <\/div>\n              <\/div>\n            [%}%]\n            \n          <\/div>\n          <div class=\"cart-price\">\n          [%if(item.quantity > 1){%]\n            [%= item.quantity %] x [%= item.price.toFixed(2).replace('.',',') %] &euro;\n          [%}%]\n          <\/div>\n          <div class=\"cart-price-summary\">[%= item.subtotal.toFixed(2).replace('.',',') %] &euro;<\/div>\n        <\/div>\n        <div class=\"cart-toolbar\">\n          <div class=\"cart-remove\">&nbsp;<\/div>\n          <div class=\"cart-quantity\">&nbsp;<\/div>\n        <\/div>\n      <\/div>\n      [%});%]\n      <\/div>\n      [%if(widgets.hasCartWarning()){%]\n      <div class=\"alert-widget alert-warning\">Nel tuo carrello è presente un titolo \"NON ORDINABILE\", modifica l'ordine prima di procedere. &nbsp;&nbsp;<div onclick=\"widgets.fire('goTo',{what:'cart'})\" class=\"button-widget button-small button-orange\">Modifica<\/div><\/div>\n      [%}%]\n    <\/div>\n  \n    <div class=\"cart-summary-checkout\">\n      <div class=\"cart-summary\">\n        <div class=\"cart-row\">\n          <div class=\"cart-column\">Libreria<\/div>\n          <div class=\"cart-column cart-column-fit\">[%=(store.name || '-')%]<\/div>\n        <\/div>\n        \n        <div class=\"cart-row\">\n          <div class=\"cart-column\">Spedizione o ritiro?<\/div>\n          <div class=\"cart-column cart-column-fit\">\n            [% (delivery.items || []).forEach(function(item){ %]\n            [%if(item.type == delivery.select){%]\n                [%= item.name %]\n            [%}%]\n            [% }); %]\n          <\/div>\n        <\/div>\n        \n        [%if(delivery.select != 1){%]\n        <div class=\"cart-row\">\n          <div class=\"cart-column\">\n            [%if(gift.labelCart){ %]\n              [%= gift.labelCart %]\n            [%}else{%]\n              Indirizzo Spedizione\n            [%}%]\n          <\/div>\n          <div class=\"cart-column cart-column-fit\">\n            [%= (shipment.recipient || '') %]\n          <\/div>\n        <\/div>\n        [%}%]\n        \n        \n      <\/div> \n      \n      <hr/>\n      \n      <div class=\"cart-summary last-large\">\n        [%if(delivery.select != 1){%]\n        <div class=\"cart-row\">\n          <div class=\"cart-column\">Subtotale<\/div>\n          <div class=\"cart-column cart-column-fit\">[%= cart.subtotal.toFixed(2).replace('.',',') %] &euro;<\/div>\n        <\/div>\n        <div class=\"cart-row\">\n          <div class=\"cart-column\">\n            <div>Costi di spedizione<\/div>\n            [%if(cart.shipping){%]\n            [%if(cart.spendAtLeast){%]\n            <div class=\"text-small-widget\">Nessun costo con una spesa di almeno [%= cart.spendAtLeast.toFixed(2).replace('.',',') %] &euro;<\/div>\n            [%}%]\n            [%}%]\n          <\/div>\n          <div class=\"cart-column cart-column-fit\">[%= cart.shipping.toFixed(2).replace('.',',') %] &euro;<\/div>\n        <\/div>\n        [%}%]\n        <div class=\"cart-row\">\n          <div class=\"cart-column\">Totale<\/div>\n          <div class=\"cart-column cart-column-fit\">[%= cart.total.toFixed(2).replace('.',',') %] &euro;<\/div>\n        <\/div>\n      <\/div>\n    \n      \n      \n    <\/div>\n  <\/div>\n  \n<\/div>\n<div class=\"step-toolbar\">\n  <div><\/div>\n  <div><div class=\"button-widget button-large [%if(widgets.hasCartWarning()){%]button-orange[%}else{%]button-blue[%}%]\" onclick=\"widgets.cartStep(5)\">\n    [%if(delivery.select == 1){%]\n      Prosegui\n    [%}else{%]\n      Effettua Pagamento [%= widgets.getSvg('continue') %]\n    [%}%]\n  <\/div><\/div>\n<\/div>\n[%}%]","url":"ui/widgets/cart-checkout/step-4.html"},{"code":"[% paymentMethodsTemp.forEach(function(item,index){ \n  var card = item.card || {};\n%]\n<div class=\"method-widget\" data-index=\"[%=index%]\">\n<div class=\"row-widget mobile-widget\">\n  <div class=\"column-widget column-widget-fit\"><div class=\"icon-widget\">[%= widgets.getSvg('checked')%]<\/div><\/div>\n  <div class=\"column-widget\">\n    <div class=\"method-number\">****[%=card.last4%] [%=(card.brand || '').toUpperCase()%]<\/div>\n    <div class=\"method-expired\">Scadenza [%=card.exp_month%]/[%=card.exp_year%]<\/div>\n  <\/div>\n  <div class=\"column-widget column-widget-fit method-detach\"><div class=\"icon-widget\">[%= widgets.getSvg('trash')%]<\/div><\/div>\n<\/div>\n<\/div>\n[%});%]\n[% window.paymentMethodsTemp = null; %]","url":"ui/widgets/cart-checkout/payment-methods.html"},{"code":"[%\n  var cart = widgets.getCart();\n  var store = cart.store || {};\n  var step = widgets.get('stepCheckout',1);\n%]\n<div class=\"step-title\" onclick=\"widgets.cartStep(1)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">1<\/span>\n  <\/div>\n  <div class=\"title-text\">Libreria[%if(store.id && step != 1){%] <div class=\"title-small-widget\">[%=store.name%]<\/div>[%}%]<\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(step == 1 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(step == 1){%]\n<div class=\"step-content\">\n  <div class=\"step-radio selected\" onclick=\"widgets.findStore()\">\n  <div class=\"step-radio-wrap\">\n    <div class=\"radio-icon\"[%if(!store.id){%]style=\"opacity:0;\"[%}%]><\/div>\n    <div class=\"radio-label\">\n      <div>[%= (store.name || 'Seleziona Libreria') %]<\/div>\n      <p>Seleziona la libreria più vicina a te<\/p>\n    <\/div>\n    <div class=\"radio-description\">\n      [%if(store.id){%]\n        <div class=\"icon-widget\">[%= widgets.getSvg('exchange') %]<\/div>&nbsp;Cambia\n      [%}else{%]\n        <div class=\"icon-widget\">[%= widgets.getSvg('marker') %]<\/div>&nbsp;Seleziona\n      [%}%]\n    <\/div>\n  <\/div>\n  <\/div>\n<\/div>\n<div class=\"step-toolbar\">\n  <div><\/div>\n  <div><div class=\"button-widget button-large button-blue\"[%if(!store.name){%] disabled[%}%] onclick=\"widgets.cartStep(2)\">Prosegui<\/div><\/div>\n<\/div>\n[%}%]","url":"ui/widgets/cart-checkout/step-1.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var formData = data.formData;\n  var step = data.step;\n%]\n<div class=\"field-widget\">\n  <label class=\"label-widget\">Nome<\/label>\n  <input class=\"input-widget\" type=\"text\" name=\"businessProfileName\" placeholder=\"Nome dell'azienda rivolto al cliente\" autocomplete=\"off\" value=\"[%= (formData.get('businessProfileName') || '')%]\" data-required [%if(step == 5){%]readonly[%}%] />\n<\/div>\n\n<div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Email<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"businessProfileSupportEmail\" placeholder=\"Indirizzo email a cui inviare problemi di supporto\" autocomplete=\"off\" value=\"[%= (formData.get('businessProfileSupportEmail') || '')%]\" data-email data-required [%if(step == 5){%]readonly[%}%]/>\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Telefono<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"businessProfileSupportPhone\" placeholder=\"Numero di telefono da chiamare in caso di problemi di supporto\" autocomplete=\"off\" value=\"[%= (formData.get('businessProfileSupportPhone') || '')%]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n<\/div>\n\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Sito Web<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"businessProfileUrl\" placeholder=\"Sito web\" autocomplete=\"off\" value=\"[%= (formData.get('businessProfileUrl') || '')%]\" data-required [%if(step == 5){%]readonly[%}%] />\n  <\/div>\n<\/div>    \n\n<div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Indirizzo<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"businessProfileSupportAddressLine1\" placeholder=\"Indirizzo a cui inviare problemi di supporto\" autocomplete=\"off\" value=\"[%= (formData.get('businessProfileSupportAddressLine1') || '')%]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Città<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"businessProfileSupportAddressCity\" placeholder=\"Città\" autocomplete=\"off\" value=\"[%= (formData.get('businessProfileSupportAddressCity') || '')%]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Provincia<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"businessProfileSupportAddressState\" placeholder=\"Provincia\" autocomplete=\"off\" value=\"[%= (formData.get('businessProfileSupportAddressState') || '')%]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget column-widget-fit\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">CAP<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"businessProfileSupportAddressPostalCode\" placeholder=\"Cap\" autocomplete=\"off\" value=\"[%= (formData.get('businessProfileSupportAddressPostalCode') || '')%]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget column-widget-fit\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Paese<\/label>\n      <input class=\"input-widget\" type=\"text\" placeholder=\"Paese\" autocomplete=\"off\" value=\"IT\" readonly data-required />\n    <\/div>\n  <\/div>\n<\/div>","url":"ui/widgets/connected-account/business-fields.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var shop = data.shop || {};\n  var stripe = shop.stripe || {};\n  var businessProfile = stripe.business_profile;\n  var company = stripe.company;\n  var person = stripe.person;\n  var settings = stripe.settings || {};\n  var balance = stripe.balance;\n  var charges = stripe.charges;\n  var externalAccount = (stripe.external_accounts.data || [])[0];\n  var payoutsSchedule = (settings.payouts || {}).schedule || {};\n  \n  var payouts = {\n    interval:{\n      'daily':'Giornaliero',\n      'weekly':'Settimanale',\n      'monthly':'Mensile'\n    },\n    weeklyAnchor:{\n      'monday':'Lunedì',\n      'tuesday':'Martedì',\n      'wednesday':'Mercoledì',\n      'thursday':'Giovedì',\n      'friday':'Venerdì',\n      'saturday':'Sabato',\n      'sunday':'Domenica',     \n    }\n  }\n%]\n\n<div class=\"connected-account-widget\">\n  <div class=\"connected-account-info\">\n    <div class=\"small-widget text-right-widget uppercase-widget\">\n      <div>ULTIMO AGGIORNAMENTO<\/div>\n      <div><b>[%= Date.parse(stripe.lastModified).format({day:'2-digit',month:'short', year:'numeric', hour:'2-digit',minute:'2-digit',second:'2-digit'},'it') %]<\/b><\/div>\n      <div class=\"button-widget button-small\" onclick=\"widgets.refreshConnectedAccount();\">Aggiorna ora<\/div>\n    <\/div>\n    <div class=\"extra-info\"><div class=\"icon-widget\">[%= widgets.getSvg('store')%]<\/div> Connected Account<\/div>\n    <div class=\"name-info\">[%= stripe.business_profile.name %]<\/div>\n    <div class=\"row-widget status-info\">\n      <div class=\"column-widget column-widget-fit\">\n        [%if(stripe.charges_enabled){%]\n          <div class=\"icon-widget checked-widget\">[%= widgets.getSvg('checked')%]<\/div>\n        [%}else{%]\n          <div class=\"icon-widget checked-widget checked-red\">[%= widgets.getSvg('times')%]<\/div>\n        [%}%]\n        <div>Pagamenti in entrata<\/div>\n      <\/div>\n      <div class=\"column-widget column-widget-fit\">\n        [%if(stripe.payouts_enabled){%]\n          <div class=\"icon-widget checked-widget\">[%= widgets.getSvg('checked')%]<\/div>\n        [%}else{%]\n          <div class=\"icon-widget checked-widget checked-red\">[%= widgets.getSvg('times')%]<\/div>\n        [%}%]\n        <div>Pagamenti in uscita<\/div>\n      <\/div>\n      [%if(stripe.person.verification.status == 'verified'){%]\n        <div class=\"column-widget column-widget-fit\">\n          <div class=\"icon-widget checked-widget\">[%= widgets.getSvg('checked')%]<\/div>\n          <div>Account Verificato<\/div>\n        <\/div>\n      [%}else{%]\n        <div class=\"column-widget column-widget-fit\">\n          <div class=\"icon-widget checked-widget checked-disable\">
351[%= widgets.getSvg('checked')%]<\/div>\n          <div>In attesa di verifica<\/div>\n        <\/div>\n      [%}%]\n    <\/div>\n  <\/div>\n  \n  \n  <div class=\"profile-widget\" style=\"padding:0\">\n  <div class=\"profile-menu-widget\">\n    <div class=\"menu-item-widget[%if(!data.target){%] item-selected[%}%]\" onclick=\"widgets.setConnectedAccountTarget()\"><div class=\"icon-widget\">[%= widgets.getSvg('store') %]<\/div> Account<\/div>\n    <div class=\"menu-item-widget[%if(data.target == 'charges'){%] item-selected[%}%]\" onclick=\"widgets.setConnectedAccountTarget('charges')\"><div class=\"icon-widget\">[%= widgets.getSvg('bank') %]<\/div> Movimenti<\/div>\n    <div class=\"menu-item-widget[%if(data.target == 'person'){%] item-selected[%}%]\" onclick=\"widgets.setConnectedAccountTarget('person')\"><div class=\"icon-widget\">[%= widgets.getSvg('userTie') %]<\/div> Rappresentante<\/div>\n  <\/div>\n  <\/div>\n  \n  [% if(data.target == 'edit-payouts-schedule'){ \n      var interval = data.payoutsScheduleInterval || payoutsSchedule.interval;\n  %]\n    <div class=\"connected-account-info small-info\">\n    <div class=\"name-info\">Gestione della pianificazione dei pagamenti<\/div>    \n      <form onsubmit=\"return widgets.scheduleConnectedAccount(this);\">  \n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Programma<\/label>\n        <select class=\"select-widget\" name=\"payoutsScheduleInterval\" onchange=\"widgets.setConnectedAccountSchedule(this.value)\" data-required>\n          [% Object.keys(payouts['interval']).forEach(function(key){ %]\n          <option value=\"[%= key %]\"[%if(interval == key){%] selected[%}%]>[%= payouts['interval'][key] %]<\/option>\n          [% }); %]\n        <\/select>\n      <\/div>  \n      [%if(interval == 'weekly'){%]\n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Giorno della settimana<\/label>\n        <select class=\"select-widget\" name=\"payoutsScheduleWeeklyAnchor\" data-required>\n          [% Object.keys(payouts['weeklyAnchor']).forEach(function(key){ %]\n          <option value=\"[%= key %]\"[%if(payoutsSchedule.weekly_anchor == key){%] selected[%}%]>[%= payouts['weeklyAnchor'][key] %]<\/option>\n          [% }); %]\n        <\/select>\n      <\/div>  \n      [%}else if(interval == 'monthly'){%]\n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Giorno del mese<\/label>\n        <select class=\"select-widget\" name=\"payoutsScheduleMonthlyAnchor\" data-required>\n          [% for(var i=1; i<=31; i++){ %]\n          <option value=\"[%= i %]\"[%if(payoutsSchedule.monthly_anchor == key){%] selected[%}%]>[%= i %]<\/option>\n          [% } %]\n        <\/select>\n      <\/div>  \n      [%}%]\n      <div class=\"row-widget mobile-widget\">\n        <div class=\"column-widget\">\n        <button type=\"button\" class=\"button-widget\" onclick=\"widgets.setConnectedAccountTarget();\">[%= widgets.getSvg('back') %]Annulla<\/button>\n        <\/div>\n        <div class=\"column-widget text-right-widget\">\n        <button type=\"submit\" class=\"button-widget button-green\">[%= widgets.getSvg('checked') %]Conferma Pianificazione<\/button>\n        <\/div>\n      <\/div>\n      \n      <\/form>\n    <\/div>\n  [% } else if(data.target == 'charges'){ %]\n    \n    [%if(charges && charges.data){%]\n    <div class=\"connected-account-info small-info\">\n      <div class=\"name-info\">Ultimi Movimenti<\/div>    \n      <div class=\"text-right-widget\">\n        <div class=\"button-widget button-green button-small\" onclick=\"widgets.excelChargesConnectedAccount();\">Scarica Excel<\/div>\n      <\/div>\n      <div class=\"orders-widget\">\n        <div class=\"order-widget order-header\">\n          <div class=\"order-date\">Data<\/div>\n          <div class=\"order-total text-right-widget\">Importo<\/div>\n          <div class=\"order-total text-right-widget\">Netto<\/div>\n          <div class=\"order-total text-right-widget\">Commissione<\/div>\n          <div class=\"order-state\">Stato<\/div>\n          <div class=\"order-method\" style=\"white-space:nowrap;\">Metodo di pag.<\/div>\n          <div class=\"order-client\">Intestatario<\/div>\n          <div class=\"order-detail\"><\/div>\n        <\/div>\n        [%if(charges.data.length){%]\n          [% charges.data.forEach(function(ch
351arge){ \n            var transaction = charge.balance_transaction_data || {};\n          %]\n          <div class=\"order-widget order-body\">\n            <div class=\"order-date\">[%= Date.parse(charge.created*1000).format({day:'numeric',month:'2-digit',year:'2-digit',hour:'2-digit',minute:'2-digit'},'it') %]<\/div>\n            <div class=\"order-total text-right-widget\">\n              <b>[%=(charge.amount/100).toFixed(2).replace('.',',')%]  &euro;<\/b>\n            <\/div>\n            <div class=\"order-total text-right-widget\">\n              [%if(transaction.net){%]\n              <b>[%=(transaction.net/100).toFixed(2).replace('.',',')%]  &euro;<\/b>\n              [%}else{%]\n                <b>[%=(charge.amount/100).toFixed(2).replace('.',',')%]  &euro;<\/b>\n              [%}%]\n            <\/div>\n            <div class=\"order-total text-right-widget\">\n              [%if(transaction.fee){%]\n              <b>[%=(transaction.fee/100).toFixed(2).replace('.',',')%]  &euro;<\/b>\n              [%}else{%]\n                <b>0  &euro;<\/b>\n              [%}%]\n            <\/div>\n            [%if(charge.refunded){%]\n              [%if(charge.captured){%]\n              <div class=\"order-state state-2\"><span>Rimborsato<\/span>[%if(charge.failure_message){%]<div class=\"order-state-message\">[%=charge.failure_message%]<\/div>[%}%]<\/div>\n              [%}else{%]\n              <div class=\"order-state state-3\"><span>Annullato<\/span>[%if(charge.failure_message){%]<div class=\"order-state-message\">[%=charge.failure_message%]<\/div>[%}%]<\/div>\n              [%}%]\n            [%}else if(charge.captured){%]\n              <div class=\"order-state state-6\"><span>Completato<\/span>[%if(charge.failure_message){%]<div class=\"order-state-message\">[%=charge.failure_message%]<\/div>[%}%]<\/div>\n            [%}else if(charge.disputed){%]\n            <div class=\"order-state state-5\"><span>Contestato<\/span>[%if(charge.failure_message){%]<div class=\"order-state-message\">[%=charge.failure_message%]<\/div>[%}%]<\/div>\n            [%}else{%]          \n              [%if(charge.status == 'succeeded' && !charge.captured){%]\n                <div class=\"order-state\"><span>Da Riscuotere<\/span>[%if(charge.failure_message){%]<div class=\"order-state-message\">[%=charge.failure_message%]<\/div>[%}%]<\/div>\n              [%}else{%]\n                <div class=\"order-state\"><span>[%= charge.status %]<\/span>[%if(charge.failure_message){%]<div class=\"order-state-message\">[%=charge.failure_message%]<\/div>[%}%]<\/div>\n              [%}%]\n            [%}%]\n            <div class=\"order-method\">\n              <div style=\"white-space:nowrap;\">****[%= charge.payment_method_details.card.last4%] - [%=(charge.payment_method_details.card.exp_month || '-')%]/[%=(charge.payment_method_details.card.exp_year || '-')%]<\/div>\n              <div style=\"white-space:nowrap;\">[%=(charge.payment_method_details.card.brand || '-').toUpperCase()%] - <b>[%=(charge.payment_method_details.card.country || '-')%]<\/b><\/div>\n            <\/div>\n            <div class=\"order-client\">\n              <div><b>[%=(charge.billing_details.name || '-')%]<\/b><\/div>\n              <div>[%=(charge.billing_details.email || '-')%]<\/div>\n            <\/div>\n            <div class=\"order-detail\">\n              [%if(charge.receipt_url){%]\n              <div class=\"button-widget button-small\" onclick=\"window.open('[%= charge.re
351ceipt_url %]','receipt')\">Ricevuta<\/div>\n              [%}%]\n            <\/div>\n          <\/div>\n          [% }); %]\n          [%if(charges.has_more){%]\n          <br>\n          <div class=\"text-center-widget\">\n            <div class=\"button-widget button-small\" onclick=\"widgets.moreChargesConnectedAccount('[%= charges.data[charges.data.length-1].id %]');\">Altri Movimenti<\/div>\n          <\/div>\n          [%}%]\n        [%}else{%]\n          <div class=\"empty-widget\">\n            <div>Nessun movimento da visualizzare<\/div>\n          <\/div>\n        [%}%]\n      <\/div>\n    <\/div>\n    [%}%]\n    \n  [% }else if(data.target == 'person'){ %]\n    \n    [%if(person){%]\n    <div class=\"connected-account-info small-info\">\n      <div class=\"name-info\"><div class=\"icon-widget\">[%= widgets.getSvg('userTie')%]<\/div> Rappresentante<\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Nome<\/div>\n        <div class=\"column-widget\">[%= (person.first_name || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Cognome<\/div>\n        <div class=\"column-widget\">[%= (person.last_name || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Data di nascita<\/div>\n        <div class=\"column-widget\">[%= (person.dob.day || '') %]/[%= (person.dob.month || '') %]/[%= (person.dob.year || '') %]<\/div>\n      <\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Email<\/div>\n        <div class=\"column-widget\">[%= (person.email || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Telefono<\/div>\n        <div class=\"column-widget\">[%= (person.phone || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Titolo di lavoro<\/div>\n        <div class=\"column-widget\">[%= (person.relationship.title || '') %]<\/div>\n      <\/div>\n      [%if(person.address){ var personAddress = person.address || {}; %]\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Indirizzo<\/div>\n        <div class=\"column-widget\">[%= (personAddress.line1 || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Città<\/div>\n        <div class=\"column-widget\">[%= (personAddress.city || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Provincia<\/div>\n        <div class=\"column-widget\">[%= (personAddress.state || '') %]<\/div>\n      <\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">CAP<\/div>\n        <div class=\"column-widget\">[%= (personAddress.postal_code || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Paese<\/div>\n        <div class=\"column-widget\">[%= (personAddress.country || '') %]<\/div>\n      <\/div>\n      [%}%]\n    <\/div>\n    [%}%]\n    \n  [% }else if(!data.target){ %]\n    [%if(balance){%]\n    <div class=\"connected-account-info small-info\">\n      <div class=\"name-info\">Saldo<\/div>\n      <div class=\"row-widget row-info\">\n        [%if(balance.pending && balance.pending.length){%]\n        <div class=\"column-widget column-widget-fit\">Da trasferire<\/div>\n        <div class=\"column-widget\" style=\"font-size:20px;\"><b>[%= (balance.pending[0].amount/100).toFixed(2).replace('.',',') %] &euro;<\/b><\/div>\n        [%}%]\n        [%if(balance.available && balance.available.length){%]\n        <div class=\"column-widget column-widget-fit\">In trasferimento<\/div>\n        <div class=\"column-widget\" style=\"font-size:20px;\"><b>[%= (balance.available[0].amount/100).toFixed(2).replace('.',',') %] &euro;<\/b><\/div>\n        [%}%]\n      <\/div>\n      <div class=\"row-widget row-info\">\n        [%if(payoutsSchedule.interval){%]\n        <div class=\"column-widget column-widget-fit\">Trasferimento<\/div>\n        <div class=\"column-widget\" style=\"flex-grow: 1;\">\n        <div class=\"text-left-widget\">\n          <div style=\"white-space:nowrap;\">\n            [%= (payouts['interval'][payoutsSchedule.interval] || '') %]\n            [%if(payoutsSchedule.interval == 'weekly'){%]\n            &nbsp; (Ogni [%= (payouts['weeklyAnchor'][payoutsSchedule.weekly_anchor] || '
351-') %])\n            [%}else if(payoutsSchedule.interval == 'monthly'){%]\n            &nbsp; (Ogni [%= payoutsSchedule.monthly_anchor %] del mese)\n            [%}%]\n            &nbsp; <div class=\"button-widget button-small\" onclick=\"widgets.setConnectedAccountTarget('edit-payouts-schedule')\">[%= widgets.getSvg('edit')%] Modifica<\/div>\n          <\/div>\n          \n        <\/div>\n        <\/div>\n        [%}%]\n      <\/div>\n    <\/div>\n    [%}%]\n    \n    \n    <div class=\"connected-account-info small-info\">\n      <div class=\"name-info\">Capacità<\/div>\n      <div class=\"row-widget status-info\">\n        <div class=\"column-widget column-widget-fit\">\n          <div class=\"icon-widget\">[%= widgets.getSvg('card')%]<\/div>\n          <div>Pagamenti con carta<\/div>\n        <\/div>\n        <div class=\"column-widget column-widget-fit\">\n          <div class=\"icon-widget\">[%= widgets.getSvg('exchange')%]<\/div>\n          <div>Trasferimenti<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n    \n    [%if(businessProfile){%]\n    <div class=\"connected-account-info small-info\">\n      <div class=\"name-info\">Attività<\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Nome<\/div>\n        <div class=\"column-widget\">[%= (businessProfile.name || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Telefono<\/div>\n        <div class=\"column-widget\">[%= (businessProfile.support_phone || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Email<\/div>\n        <div class=\"column-widget\">[%= (businessProfile.support_email || '') %]<\/div>\n      <\/div>\n      [%if(businessProfile.support_address){ var businessProfileAddress = businessProfile.support_address || {}; %]\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Indirizzo<\/div>\n        <div class=\"column-widget\">[%= (businessProfileAddress.line1 || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Città<\/div>\n        <div class=\"column-widget\">[%= (businessProfileAddress.city || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Provincia<\/div>\n        <div class=\"column-widget\">[%= (businessProfileAddress.state || '') %]<\/div>\n      <\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">CAP<\/div>\n        <div class=\"column-widget\">[%= (businessProfileAddress.postal_code || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Paese<\/div>\n        <div class=\"column-widget\">[%= (businessProfileAddress.country || '') %]<\/div>\n      <\/div>\n      [%}%]\n    <\/div>\n    [%}%]\n    \n    [%if(company){%]\n    <div class=\"connected-account-info small-info\">\n      <div class=\"name-info\">Azienda<\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Partita IVA<\/div>\n        <div class=\"column-widget\">[%if(company.vat_id_provided){%]<div class=\"icon-widget checked-widget checked-disable\">[%= widgets.getSvg('checked')%]<\/div>[%}%]Fornito<\/div>\n        <div class=\"column-widget column-widget-fit\">Numero REA<\/div>\n        <div class=\"column-widget\">[%if(company.tax_id_provided){%]<div class=\"icon-widget checked-widget checked-disable\">[%= widgets.getSvg('checked')%]<\/div>[%}%]Fornito<\/div>\n        <div class=\"column-widget column-widget-fit\">Rappresentante<\/div>\n        <div class=\"column-widget\">[%if(company.directors_provided || company.executives_provided){%]<div class=\"icon-widget checked-widget checked-disable\">[%= widgets.getSvg('checked')%]<\/div>[%}%]Fornito<\/div>\n      <\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Nome<\/div>\n        <div class=\"column-widget\">[%= (company.name || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Telefono<\/div>\n        <div class=\"column-widget\">[%= (company.phone || '') %]<\/div>\n      <\/div>\n      [%if(company.address){ var companyAddress = company.address || {}; %]\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Indirizzo<\/div>\n        <div class=\"column-widget\">[%= (companyAddress.line1 || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Città<\/div>\n        <div class=\"column-widget\">[%= (companyAddress.city || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Provincia<\/div>\n        <div class=\"column-widget\">[%= (companyAddress.state || '') %]<\/div>\n      <\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">CAP<\/div>\n        <div class=\"column-widget\">[%= (companyAddress.postal_code || '') %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Paese<\/div>\n        <div class=\"column-widget\">[%= (companyAddress.country || '') %]<\/div>\n      <\/div>\n      [%}%]\n    <\/div>\n    [%}%]\n    \n    [% if(externalAccount){ %]\n    <div class=\"connected-account-info small-info\">\n      <div class=\"name-info\">Conto Bancario<\/div>\n      <div class=\"row-widget row-info\">\n        <div class=\"column-widget column-widget-fit\">Banca<\/div>\n        <div class=\"column-widget\">[%= externalAccount.bank_name %]<\/div>\n        <div class=\"column-widget column-widget-fit\">Intestatario<\/div>\n        <div class=\"column-widget\">[%= externalAccount.account_holder_name %]<\/div>\n        <div class=\"column-widget column-widget-fit\">
351IBAN<\/div>\n        <div class=\"column-widget\">******** [%= externalAccount.last4 %]<\/div>\n      <\/div>\n    <\/div>\n    [%}%]\n    \n    <div class=\"text-center-widget\">\n    <div class=\"button-widget button-red\" onclick=\"widgets.deleteStripeAccount();\">Elimina Account<\/div>\n    <\/div>\n    \n  [%}%]\n  \n  \n  \n  \n  \n  \n  \n<\/div>\n<!-- <div class=\"empty-widget\">\n  <div class=\"button-widget button-text button-large\">\n    <span>[%=widgets.getSvg('user')%]<\/span>\n    [%= stripe.business_profile.name %] ([%= stripe.email %])\n  <\/div>\n  \n  <div>\n  <b>CONNECTED ACCOUNT<\/b>\n  <div>Payments <b>[%=(stripe.charges_enabled ? 'active' : 'inactive')%]<\/b><\/div>\n  <div>Payouts <b>[%=(stripe.payouts_enabled ? 'active' : 'inactive')%]<\/b><\/div><br>\n  <\/div>\n  \n  \n  [%if(stripe.capabilities){%]\n  <div>\n  <b>ACCOUNT CAPABILITIES<\/b>\n  <div>Card payments <b>[%=stripe.capabilities.card_payments%]<\/b><\/div>\n  <div>Transfers <b>[%=stripe.capabilities.transfers%]<\/b><\/div><br>\n  <\/div>\n  [%}%]\n  \n  [%if(stripe.person.verification){%]\n  <div>\n  <b>PERSON STATUS<\/b>\n  <div>[%=stripe.person.verification.status%]<\/div>\n  <\/div>\n  [%}%]\n\n\n  <div>\n  <br>  \n  <div class=\"button-widget\" onclick=\"widgets.setConnectedAccountTarget('modifica')\">Modifica account<\/div>\n  <div class=\"button-widget button-red\" onclick=\"widgets.deleteStripeAccount();\">Elimina account<\/div>\n  <\/div>\n<\/div> -->\n","url":"ui/widgets/connected-account/profile.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n%]\n<div class=\"checkout-steps\">\n  <div class=\"checkout-step[%if(data.step == 1){%] step-selected[%}%][%if(data.step >= 2){%] step-complete[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/step-1.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step[%if(data.step == 2){%] step-selected[%}%][%if(data.step >= 3){%] step-complete[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/step-2.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step[%if(data.step == 3){%] step-selected[%}%][%if(data.step >= 4){%] step-complete[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/step-3.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step[%if(data.step == 4){%] step-selected[%}%][%if(data.step >= 5){%] step-complete[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/step-4.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step[%if(data.step == 5){%] step-selected[%}%][%if(data.step >= 6){%] step-complete[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/step-5.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step\" onclick=\"widgets.showError('Prima di procedere', 'Si prega di creare account')\">\n  <div class=\"step-title\">\n    <div class=\"title-info\">
351\n      <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n      <span class=\"circle-number\">6<\/span>\n    <\/div>\n    <div class=\"title-text\">Crea Rappresentante<\/div>\n    <div class=\"title-icon\">[%=widgets.getSvg('down')%]<\/div>\n  <\/div>\n  <\/div>\n  <div class=\"checkout-step\" onclick=\"widgets.showError('Prima di procedere', 'Si prega di creare rappresentante')\">\n  <div class=\"step-title\">\n    <div class=\"title-info\">\n      <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n      <span class=\"circle-number\">7<\/span>\n    <\/div>\n    <div class=\"title-text\">Verifica Documenti<\/div>\n    <div class=\"title-icon\">[%=widgets.getSvg('down')%]<\/div>\n  <\/div>\n  <\/div>\n<\/div>","url":"ui/widgets/connected-account/wizard-account.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n%]\n\n<div class=\"step-title\" onclick=\"widgets.connectedAccountStep(3)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">3<\/span>\n  <\/div>\n  <div class=\"title-text\">Dati Attività<\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(data.step == 3 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(data.step == 3){%]\n<form onsubmit=\"return widgets.connectedAccountStep(this);\">    \n<input type=\"hidden\" name=\"step\" value=\"4\">  \n<div class=\"step-content\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/business-fields.html\"><\/div>\n<\/div>\n<div class=\"step-toolbar\">\n  <div><\/div>\n  <div><button class=\"button-widget button-blue\">Salva i dati e prosegui<\/button><\/div>\n<\/div>\n<\/form>\n[%}%]\n\n\n","url":"ui/widgets/connected-account/step-3.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n%]\n\n<div class=\"step-title\" onclick=\"widgets.connectedAccountStep(2)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">2<\/span>\n  <\/div>\n  <div class=\"title-text\">Dati Aziendali<\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(data.step == 2 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(data.step == 2){%]\n<form onsubmit=\"return widgets.connectedAccountStep(this);\">  \n<input type=\"hidden\" name=\"step\" value=\"3\">    \n<div class=\"step-content\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/company-fields.html\"><\/div>\n<\/div>\n<div class=\"step-toolbar\">\n  <div><\/div>\n  <div><button class=\"button-widget button-blue\">Salva i dati e prosegui<\/button><\/div>\n<\/div>\n<\/form>\n[%}%]\n\n\n","url":"ui/widgets/connected-account/step-2.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n%]\n<div class=\"step-title\" onclick=\"widgets.connectedAccountStep(5)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">5<\/span>\n  <\/div>\n  <div class=\"title-text\">Crea Account<\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(data.step == 5 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(data.step == 5){%]\n<div class=\"step-content\">\n  <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/account-fields.html\"><\/div>\n  <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/company-fields.html\"><\/div>\n  <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/business-fields.html\"><\/div>\n  <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/bank-fields.html\"><\/div>\n<\/div>\n<div class=\"step-toolbar center\">\n  <div><div class=\"button-widget button-large button-green\" onclick=\"widgets.createConnectedAccount()\">[%=widgets.getSvg('checked')%] Crea Account<\/div><\/div>\n<\/div>\n[%}%]\n\n\n","url":"ui/widgets/connected-account/step-5.html"},{"code":"[%\n  \n  var data = widgets.getConnectedAccount();\n  var formData = data.formData;\n  var step = data.step;\n%]\n<div class=\"field-widget\">\n  <label class=\"label-widget\">Intestatario<\/label>\n  <input class=\"input-widget\" type=\"text\" name=\"externalAccountName\" placeholder=\"Intestatario conto corrente\" value=\"[%= (formData.get('externalAccountName') || '')%]\" autocomplete=\"off\" [%if(step == 5){%]readonly[%}%] />\n<\/div>\n\n<div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">IBAN<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"externalAccountNumber\" placeholder=\"IBAN conto corrente\" value=\"[%= (formData.get('externalAccountNumber') || '')%]\" autocomplete=\"off\" data-required [%if(step == 5){%]readonly[%}%] />\n      [%if(widgets.getDevelopment()){%]\n        [%if(step != 5){%]\n        <div class=\"button-widget button-small button-yellow\" style=\"margin:10px 0;box-shadow:none;cursor:auto\">IBAN di test &nbsp; <b>IT60X0542811101000000123456<\/b><\/div>\n        [%}%]\n      [%}%]\n    <\/div>\n  <\/div>\n  <!-- <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Codice BIC / SWIFT<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"externalAccountRoutingNumber\" placeholder=\"Codice BIC / SWIFT della tua banca\" value=\"[%= (formData.get('externalAccountRoutingNumber') || '')%]\" autocomplete=\"off\" [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div> -->\n<\/div>","url":"ui/widgets/connected-account/bank-fields.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n%]\n\n<div class=\"step-title\" onclick=\"widgets.connectedAccountStep(4)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">4<\/span>\n  <\/div>\n  <div class=\"title-text\">Dati Bancari<\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(data.step == 4 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(data.step == 4){%]\n<form onsubmit=\"return widgets.connectedAccountStep(this);\">    \n<input type=\"hidden\" name=\"step\" value=\"5\">  \n<div class=\"step-content\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/bank-fields.html\"><\/div>\n<\/div>\n<div class=\"step-toolbar\">\n  <div><\/div>\n  <div><button class=\"button-widget button-blue\">Salva i dati e prosegui<\/button>
351<\/div>\n<\/div>\n<\/form>\n[%}%]","url":"ui/widgets/connected-account/step-4.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var steps = [\"Dati Account\", \"Dati Aziendali\", \"Dati Attività\", \"Dati Bancari\", \"Crea Account\"];\n%]\n<div class=\"checkout-steps\">\n  [% steps.forEach(function(stepName, i){ %]\n    <div class=\"checkout-step step-complete\">\n    <div class=\"step-title\">\n      <div class=\"title-info\">\n        <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n        <span class=\"circle-number\">[%=i%]<\/span>\n      <\/div>\n      <div class=\"title-text\">[%=stepName%]<\/div>\n      <div class=\"title-icon\">[%=widgets.getSvg('down')%]<\/div>\n    <\/div>\n    <\/div>\n  [% }); %]\n  <div class=\"checkout-step step-selected\">\n    <div class=\"step-title\">\n      <div class=\"title-info\">\n        <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n        <span class=\"circle-number\">6<\/span>\n      <\/div>\n      <div class=\"title-text\">Crea Rappresentante<\/div>\n      <div class=\"title-icon\">[%=widgets.getSvg('up')%]<\/div>\n    <\/div>\n    <form onsubmit=\"return widgets.createConnectedAccountPerson(this);\">  \n    <div class=\"step-content\">\n      <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/person-fields.html\"><\/div>\n    <\/div>\n    <div class=\"step-toolbar center\">\n      <div><\/div>\n      <div><button class=\"button-widget button-large button-green\">[%=widgets.getSvg('checked')%] Crea Rappresentante<\/button><\/div>\n    <\/div>\n    <\/form>\n  <\/div>\n  <div class=\"checkout-step\" onclick=\"widgets.showError('Prima di procedere', 'Si prega di creare rappresentante')\">\n  <div class=\"step-title\">\n    <div class=\"title-info\">
351\n      <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n      <span class=\"circle-number\">7<\/span>\n    <\/div>\n    <div class=\"title-text\">Verifica Documenti<\/div>\n    <div class=\"title-icon\">[%=widgets.getSvg('down')%]<\/div>\n  <\/div>\n  <\/div>\n<\/div>\n\n","url":"ui/widgets/connected-account/wizard-person.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var formData = data.formData;\n  var step = data.step;\n%]\n\n<div class=\"row-widget row-widget-top\">\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Nome<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeFirstName\" placeholder=\"Nome rappresentante\" autocomplete=\"off\" value=\"[%= (formData.get('representativeFirstName') || '')%]\" data-required />\n  <\/div>\n<\/div>\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Cognome<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeLastName\" placeholder=\"Cognome rappresentante\" autocomplete=\"off\" value=\"[%= (formData.get('representativeFirstName') || '')%]\" data-required />\n  <\/div>\n<\/div>\n<\/div>\n\n        \n<div class=\"row-widget row-widget-top\">\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Data nascita<\/label>\n    <input class=\"input-widget\" type=\"date\" name=\"representativeBirthDate\" placeholder=\"Data di nascita rappresentante\" autocomplete=\"off\" value=\"[%= (formData.get('representativeBirthDate') || '')%]\" data-required />\n  <\/div>\n<\/div>\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Email<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeEmail\" placeholder=\"Email rappresentante\" autocomplete=\"off\" value=\"[%= (formData.get('representativeEmail') || '')%]\" data-email data-required/>\n  <\/div>\n<\/div>\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Telefono<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativePhone\" placeholder=\"Telefono rappresentante\" autocomplete=\"off\" value=\"[%= (formData.get('representativePhone') || '')%]\" data-required />\n  <\/div>\n<\/div>\n<\/div>\n\n<div class=\"row-widget row-widget-top\">\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Ruolo<\/label>\n    <select class=\"select-widget\" name=\"representativeRole\" data-required>\n      <option value=\"executive\">Esecutivo<\/option>\n      <option value=\"owner\">Proprietario<\/option>\n    <\/select>\n  <\/div>\n<\/div>\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Titolo di lavoro<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeJobTitle\" placeholder=\"Titolo di lavoro rappresentante\" autocomplete=\"off\" value=\"[%= (formData.get('representativeJobTitle') || '')%]\"  data-required/>\n  <\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"row-widget row-widget-top\">\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Indirizzo<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeAddressLine1\" placeholder=\"Indirizzo rappresentante\" autocomplete=\"off\" value=\"[%= (formData.get('representativeAddressLine1') || '')%]\"  data-required />\n  <\/div>\n<\/div>\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Città<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeAddressCity\" placeholder=\"Città\" autocomplete=\"off\" value=\"[%= (formData.get('representativeAddressCity') || '')%]\"  data-required />\n  <\/div>\n<\/div>\n<div class=\"column-widget\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Provincia<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeAddressState\" placeholder=\"Provincia\" autocomplete=\"off\" value=\"[%= (formData.get('representativeAddressState') || '')%]\"  data-required />\n  <\/div>\n<\/div>\n<div class=\"column-widget column-widget-fit\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">CAP<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeAddressPostalCode\" placeholder=\"Cap\" autocomplete=\"off\" value=\"[%= (formData.get('representativeAddressPostalCode') || '')%]\"  data-required />\n  <\/div>\n<\/div>\n<div class=\"column-widget column-widget-fit\">\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Paese<\/label>\n    <input class=\"input-widget\" type=\"text\" name=\"representativeAddressCountry\" placeholder=\"Paese\" autocomplete=\"off\" value=\"IT\" readonly data-required />\n  <\/div>\n<\/div>\n<\/div>","url":"ui/widgets/connected-account/person-fields.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var shop = data.shop;\n  var visuraUri = (shop.stripe || {}).visura || '';\n%]\n\n<div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Doc. identità fronte (PNG, JPEG, PDF, <b>Max 10 MB<\/b>)<\/label>\n      <div class=\"button-widget button-file button-large button-fullwidth\">\n      <input type=\"file\" class=\"file-widget\" name=\"verificationDocumentFront\" accept=\"application/pdf, image/jpeg, image/png\" data-label=\"
351Seleziona file\" data-required>\n      <\/div>\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Doc. identità retro (PNG, JPEG, PDF, <b>Max 10 MB<\/b>)<\/label>\n      <div class=\"button-widget button-file button-large button-fullwidth\">\n      <input type=\"file\" class=\"file-widget\" name=\"verificationDocumentBack\" accept=\"application/pdf, image/jpeg, image/png\" data-label=\"Seleziona file\" data-required>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n[%if(visuraUri){%]\n<div class=\"field-widget\">\n<div class=\"row-widget\">\n  <div class=\"column-widget\">\n    Hai già una visura camerale caricata, se desideri puoi sovrascriverla<br>\n    <div style=\"margin-top: 10px;\" class=\"button-widget\" onclick=\"window.open('[%=widgets.getApiUrl()%][%=(visuraUri || '').replace('\\'','&rsquo;')%]','visura');\">Visualizza visura<\/div>\n  <\/div>\n<\/div>\n<\/div>\n[%}%]\n\n<div class=\"field-widget\">\n  <label class=\"label-widget\">Visura Camerale (PNG, JPEG, PDF, <b>Max 10 MB<\/b>)<\/label>\n  [%if(visuraUri){%]\n    <div class=\"button-widget button-green button-large button-fullwidth button-file\">\n      <input type=\"file\" class=\"file-widget\" name=\"additionalDocument\" accept=\"application/pdf, image/jpeg, image/png\" data-label=\"visura_camerale.pdf\">\n    <\/div>\n  [%}else{%]\n    <div class=\"button-widget button-large button-fullwidth button-file\">\n    <input type=\"file\" class=\"file-widget\" name=\"additionalDocument\" accept=\"application/pdf, image/jpeg, image/png\" data-label=\"Seleziona visura\" data-required>\n    <\/div>\n  [%}%]\n<\/div>","url":"ui/widgets/connected-account/requirement-fields.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var steps = [\"Dati Account\", \"Dati Aziendali\", \"Dati Attività\", \"Dati Bancari\", \"Crea Account\", \"Crea Rappresentante\"];\n%]\n<div class=\"checkout-steps\">\n  [% steps.forEach(function(stepName, i){ %]\n    <div class=\"checkout-step step-complete\">\n    <div class=\"step-title\">\n      <div class=\"title-info\">\n        <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n        <span class=\"circle-number\">[%=i%]<\/span>\n      <\/div>\n      <div class=\"title-text\">[%=stepName%]<\/div>\n      <div class=\"title-icon\">[%=widgets.getSvg('down')%]<\/div>\n    <\/div>\n    <\/div>\n  [% }); %]\n  <div class=\"checkout-step step-selected\">\n    <div class=\"step-title\">\n      <div class=\"title-info\">\n        <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n        <span class=\"circle-number\">7<\/span>\n      <\/div>\n      <div class=\"title-text\">Verifica Documenti<\/div>\n      <div class=\"title-icon\">[%=widgets.getSvg('up')%]<\/div>\n    <\/div>\n    <form onsubmit=\"return widgets.verificationConnectedAccount(this);\">  \n    <div class=\"step-content\">\n      <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/requirement-fields.html\"><\/div>\n    <\/div>\n    <div class=\"step-toolbar center\">\n      <div><\/div>\n      <div><button class=\"button-widget button-large button-green\">[%=widgets.getSvg('checked')%] Carica Documenti<\/button><\/div>\n    <\/div>\n    <\/form>\n  <\/div>\n<\/div>\n\n","url":"ui/widgets/connected-account/wizard-requirement.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var formData = data.formData;\n  var step = data.step;\n%]\n<div class=\"field-widget\">\n  <label class=\"label-widget\">Ragione sociale<\/label>\n  <input class=\"input-widget\" type=\"text\" name=\"companyName\" placeholder=\"La ragione sociale dell'azienda\" autocomplete=\"off\" value=\"[%= (formData.get('companyName') || '') %]\" data-required [%if(step == 5){%]readonly[%}%] />\n<\/div>\n\n<div class=\"field-widget\">\n  <label class=\"label-widget\">Telefono<\/label>\n  <input class=\"input-widget\" type=\"text\" name=\"companyPhone\" placeholder=\"Numero di telefono dell'azienda\" autocomplete=\"off\" value=\"[%= (formData.get('companyPhone') || '') %]\" data-required [%if(step == 5){%]readonly[%}%] />\n<\/div>\n\n<div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Partita IVA<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"companyVatId\" placeholder=\"Partita IVA\" autocomplete=\"off\" value=\"[%= (formData.get('companyVatId') || '') %]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Numero REA<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"companyTaxId\" placeholder=\"Numero REA\" value=\"[%= (formData.get('companyTaxId') || '') %]\" autocomplete=\"off\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n<\/div>\n\n\n\n<div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Sede Legale<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"companyAddressLine1\" placeholder=\"Sede legale dell'azienda\" autocomplete=\"off\" value=\"[%= (formData.get('companyAddressLine1') || '') %]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Città<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"companyAddressCity\" placeholder=\"Città\" autocomplete=\"off\" value=\"[%= (formData.get('companyAddressCity') || '') %]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Provincia<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"companyAddressState\" placeholder=\"Provincia\" autocomplete=\"off\" value=\"[%= (formData.get('companyAddressState') || '') %]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget column-widget-fit\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">CAP<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"companyAddressPostalCode\" placeholder=\"Cap\" autocomplete=\"off\" value=\"[%= (formData.get('companyAddressPostalCode') || '') %]\" data-required [%if(step == 5){%]readonly[%}%] />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget column-widget-fit\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Paese<\/label>\n      <input class=\"input-widget\" type=\"text\" placeholder=\"Paese\" autocomplete=\"off\" value=\"IT\" readonly data-required />\n    <\/div>\n  <\/div>\n<\/div>    ","url":"ui/widgets/connected-account/company-fields.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n%]\n<div class=\"step-title\" onclick=\"widgets.connectedAccountStep(1)\">\n  <div class=\"title-info\">\n    <span class=\"circle-icon\">[%=widgets.getSvg('checked')%]<\/span>\n    <span class=\"circle-number\">1<\/span>\n  <\/div>\n  <div class=\"title-text\">Dati Account<\/div>\n  <div class=\"title-icon\">[%=widgets.getSvg(data.step == 1 ? 'up' : 'down')%]<\/div>\n<\/div>\n[%if(data.step == 1){%]\n<form onsubmit=\"return widgets.connectedAccountStep(this);\">  \n<input type=\"hidden\" name=\"step\" value=\"2\">  \n<div class=\"step-content\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/account-fields.html\"><\/div>\n<\/div>\n<div class=\"step-toolbar\">\n  <div><\/div>\n  <div><button class=\"button-widget button-blue\">Salva i dati e prosegui<\/button>
351<\/div>\n<\/div>\n<\/form>\n[%}%]\n\n\n","url":"ui/widgets/connected-account/step-1.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var formData = data.formData;\n  var step = data.step;\n%]\n<div class=\"row-widget row-widget-top\">\n  <div class=\"column-widget\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Attività<\/label>\n      <select class=\"select-widget\" disabled data-required>\n        <option value=\"company\"[%if(data.type == 'company'){%] selected[%}%]>Aziendale<\/option>\n      <\/select>\n    <\/div>\n  <\/div>\n  <div class=\"column-widget column-widget-fit\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Moneta<\/label>\n      <input class=\"input-widget\" type=\"text\" autocomplete=\"off\" readonly value=\"EUR\" data-required />\n    <\/div>\n  <\/div>\n  <div class=\"column-widget column-widget-fit\">\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Paese<\/label>\n      <input class=\"input-widget\" type=\"text\" autocomplete=\"off\" readonly value=\"IT\" data-required />\n    <\/div>\n  <\/div>\n<\/div>\n\n<div class=\"field-widget\">\n  <label class=\"label-widget\">Account Email<\/label>\n  <input class=\"input-widget\" type=\"text\" name=\"email\" value=\"[%= (formData.get('email') || '') %]\" placeholder=\"Indirizzo email del titolare dell'account\" autocomplete=\"off\" data-email data-required [%if(step == 5){%]readonly[%}%] />\n<\/div>","url":"ui/widgets/connected-account/account-fields.html"},{"code":"[%  \n  var account =  widgets.getAccount() || {}; \n  var oauth =  widgets.getOAuth() || {};\n%]\n[%if(f().api().authenticated){\n    var me = account.me || {};\n%]\n\n<div class=\"profile-widget\">\n  <div class=\"f_t\" data-resource=\"ui/widgets/account/profile-card.html\"><\/div>      \n  <div class=\"profile-body-widget\">\n    [%if(account.target == 'editPersonalData'){%]\n      <div class=\"f_t\" data-resource=\"ui/widgets/account/change-data.html\"><\/div>   \n    [%}else if(account.target == 'editAccessData'){%]\n      <div class=\"f_t\" data-resource=\"ui/widgets/account/change-password.html\"><\/div>   \n    [%}else{%]\n      <div class=\"f_t\" data-resource=\"ui/widgets/account/profile.html\"><\/div>   \n    [%}%]\n  <\/div>\n  [%if(!account.target){%]\n  <div class=\"text-center-widget\">\n    <div class=\"button-widget button-blue\" onclick=\"widgets.signout()\">Esci da my ubik<\/div>\n  <\/div>\n  [%}%]\n<\/div>\n[%}else if(account.target == 'forgotPasswordSuccess'){%]\n  <div class=\"form-widget\">\n    <div class=\"form-title\">Reset Password<\/div>\n    <p class=\"form-description\">Controlla la tua casella di posta, abbiamo spedito una mail contenente la nuova password<\/p><br>\n    <div class=\"form-icon\">[%= widgets.getSvg('newsletter') %]<\/div>\n    <div onclick=\"widgets.setAccountTarget()\" class=\"button-widget button-fullwidth button-blue button-large\">Torna all'accesso<\/div>\n  <\/div>  \n[%}else if(account.target == 'forgotPassword'){%]\n  <div class=\"f_t\" data-resource=\"ui/widgets/account/forgot-password.html\"><\/div>   \n[%}else{%]\n  <form onsubmit=\"return widgets.signin(this);\" class=\"form-widget\">\n  <div style=\"min-height:280px;\">\n    <div class=\"field-widget\">\n    <div class=\"form-title\">Accesso<\/div>\n    <\/div>\n    <div class=\"animated-widget\">\n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Indirizzo email<\/label>\n        <input class=\"input-widget\" type=\"text\" name=\"email\" placeholder=\"Inserisci la tua email\" autocomplete=\"off\" />\n      <\/div>\n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Password<\/label>\n        <input class=\"input-widget\" type=\"password\" name=\"password\" placeholder=\"Inserisci la tua password\" autocomplete=\"off\" />\n        <div class=\"text-right-widget\">\n          <div onclick=\"widgets.setAccountTarget('forgotPassword');\" class=\"button-widget button-blue button-text\">Password dimenticata?<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n  <div class=\"field-widget\">\n    <button class=\"button-widget button-fullwidth button-blue button-large\">Entra<\/button>
351\n  <\/div>\n  [%if(oauth.apple || oauth.google || oauth.facebook){%]\n  <div class=\"form-separator-widget\"><span>Oppure<\/span><\/div>\n    <div class=\"form-buttons-widget\">\n    [%Object.keys(oauth).forEach(function(key){ var item = oauth[key]; %]\n    <div class=\"button-widget\" onclick=\"widgets.[%=key%]Login();\">[%= widgets.getSvg(key) %] [%=item.button%]<\/div>\n    [%});%]\n  <\/div>\n  [%}%]\n  <div class=\"text-left-widget\">\n    <div onclick=\"widgets.fire('goTo',{what:'signup'});\" class=\"button-widget button-blue button-text\">Non hai un account?&nbsp;&nbsp;<a>Registrati<\/a><\/div>\n  <\/div>\n  <\/form>\n[%}%]","url":"ui/widgets/signin-wrap.html"},{"code":"[%\n  var account = widgets.getAccount() || {}; \n  var me = account.me || {};\n  var book = widgets.getBook() || {};\n  var ratings = book.ratings || [];\n  var comments = book.comments || [];\n  comments.sort(function(a,b){\n    try{\n      return new Date(b.t).getTime()-new Date(a.t);\n    }catch(e){\n      return -1;\n    }\n  });\n  ratings.sort(function(a,b){\n    try{\n      return new Date(b.id).getTime()-new Date(a.id);\n    }catch(e){\n      return -1;\n    }\n  });\n%]\n\n<div class=\"book-community-widget\">\n      \n    [%if(me.id){%]\n    <div class=\"text-center-widget\">\n    <div class=\"buttons-widget buttons-community buttons-userlibrary\">\n      <div class=\"button-widget[%if(book.userLibrary==1){%] button-blue[%}%]\" onclick=\"widgets.sendBookState(1)\">[%= widgets.getSvg('heart') %] Voglio leggerlo<\/div>\n      <div class=\"button-widget[%if(book.userLibrary==2){%] button-blue[%}%]\" onclick=\"widgets.sendBookState(2)\">[%= widgets.getSvg('book') %] Letto<\/div>\n      <div class=\"button-widget[%if(book.userLibrary==3){%] button-blue[%}%]\" onclick=\"widgets.sendBookState(3)\">[%= widgets.getSvg('bookOpen') %] In lettura<\/div>\n    <\/div>\n    <\/div>\n\n    <div class=\"book-comment-widget\">\n      <div class=\"row-widget row-widget-top\">\n      <div class=\"column-widget column-widget-fit\">\n        <div class=\"profile-widget\" style=\"padding:0;margin:10px 0;\">\n        <div class=\"profile-me-widget\" style=\"justify-content: center;\">\n          <div class=\"profile-photo-widget\"[%if(me.photo){%] style=\"background-image:url([%=me.photo%])\"[%}%]>[%if(!me.photo){%][%= widgets.getSvg('user') %][%}%]<\/div>\n        <\/div>\n        <\/div>\n      <\/div>\n      <div class=\"column-widget\">\n        <textarea id=\"input-comment-widget\" class=\"textarea-widget\" name=\"note\" rows=\"3\" placeholder=\"Aggiungi un commento...\" autocomplete=\"off\"><\/textarea>\n      <\/div>  \n      <div class=\"column-widget column-widget-fit text-center-widget\">\n        <div class=\"button-widget button-blue button-large button-circle\" style=\"margin:10px 0;\" onclick=\"widgets.sendBookComment(document.getElementById('input-comment-widget').value)\">[%=widgets.getSvg('plane')%]<\/div>\n      <\/div>\n      <\/div>  \n    <\/div>\n    \n    <div class=\"rating-widget\">\n      <div class=\"edit-rating-widget\" data-settings=\"{value:[%=book.userRating%],height:40}\"><\/div>\n    <\/div>\n    \n    [%}else{%]\n    <div class=\"row-widget\">\n    <div class=\"column-widget\">\n      <div class=\"book-community-info\">\n        <div class=\"icon-widget icon-iolettore\">[%= widgets.getSvg('iolettore')%]<\/div>\n        <ul class=\"list-widget\">\n          <li><div class=\"icon-widget checked\">[%= widgets.getSvg('checked') %]<\/div> Recensisci i tuoi libri preferiti e rispondi ai commenti di altri utenti<\/li>\n          <li><div class=\"icon-widget checked\">[%= widgets.getSvg('checked') %]<\/div> Arricchisci il tuo profilo con post e foto dei libri che stai leggendo<\/li>\n          <li><div class=\"icon-widget checked\">[%= widgets.getSvg('checked') %]<\/div> Crea la tua libreria virtuale aggiungendo i titoli che hai letto o vorresti leggere nella tua Wishlist<\/li>\n        <\/ul>\n      <\/div>\n    <\/div>\n    <div class=\"column-widget\">\n      <div class=\"f_t\" data-resource=\"ui/widgets/signin-wrap.html\"><\/div>  \n    <\/div>\n    <\/div>\n    [%}%]\n    \n  \n\n\n    <div class=\"row-widget row-widget-top\">\n      <div class=\"column-widget\">
351\n        [%if(comments.length){ %]\n        [% comments.forEach(function(comment){ \n          var replies = comment.replies || [];\n          var like = 0;\n          var unlike = 0;\n          var hasLike = false;\n          var hasUnlike = false;\n          try{\n            comment.actions[0].reactions.forEach(function(item){\n              if(item.reaction == 'up'){\n                like++;\n                if(item.userId == me.id){\n                  hasLike = true;\n                }\n              }else if(item.reaction == 'down'){\n                unlike++;\n                if(item.userId == me.id){\n                  hasUnlike = true;\n                }\n              }\n            });\n          }catch(e){}\n          replies.sort(function(a,b){\n            try{\n              return new Date(b.id).getTime()-new Date(a.id);\n            }catch(e){\n              return -1;\n            }\n          });\n        %]\n        <div class=\"profile-widget profile-comment-widget\">\n        <div class=\"profile-me-widget\">\n          <div class=\"profile-photo-widget\"[%if(comment.photo){%] style=\"background-image:url([%=comment.photo%])\"[%}%]>[%if(!comment.photo){%][%= widgets.getSvg('user') %][%}%]<\/div>\n          <div class=\"profile-info-widget\">\n            <div class=\"name-widget\">[%= comment.user %]<\/div>\n            <div class=\"date-widget\">[%= comment.date %]<\/div>\n            <div class=\"message-widget\">[%= comment.message %]<\/div>       \n            [%if(me.id){%]   \n            <div class=\"buttons-widget buttons-community buttons-reactions\">\n              <div class=\"button-widget button-small[%if(hasLike){%] button-blue[%}%]\" onclick=\"widgets.sendBookCommentReaction([%=comment.id%], 'up')\">[%= widgets.getSvg('like') %] &nbsp; [%= like %]<\/div>\n              <div class=\"button-widget button-small[%if(hasUnlike){%] button-blue[%}%]\" onclick=\"widgets.sendBookCommentReaction([%=comment.id%], 'down')\">[%= widgets.getSvg('unlike') %] &nbsp; [%= unlike %]<\/div>\n              <div class=\"button-widget button-small\" onclick=\"f(this).closest('.profile-info-widget').find('.book-reply-widget').toggleClass('show')\">[%= widgets.getSvg('reply') %]<\/div>\n            <\/div>\n            \n            <div class=\"book-reply-widget\">\n            <div class=\"row-widget row-widget-top mobile-widget\">\n            <div class=\"column-widget\">\n              <textarea id=\"book-comment-[%=comment.id%]-widget\" class=\"textarea-widget\" name=\"note\" rows=\"3\" placeholder=\"Rispondi...\" autocomplete=\"off\"><\/textarea>\n            <\/div>  \n            <div class=\"column-widget column-widget-fit text-center-widget\">\n              <div class=\"button-widget button-blue button-circle\" onclick=\"widgets.sendBookComment(document.getElementById('book-comment-[%=comment.id%]-widget').value, [%=comment.id%])\">[%=widgets.getSvg('plane')%]<\/div>\n            <\/div>\n            <\/div>  \n            <\/div>\n            [%}%]\n          \n            [%replies.forEach(function(reply){\n              var like = 0;\n              var unlike = 0;\n              var hasLike = false;\n              var hasUnlike = false;\n                try{\n                  reply.actions[0].reactions.forEach(function(item){\n                    if(item.reaction == 'up'){\n                      like++;\n                      if(item.userId == me.id){\n                        hasLike = true;\n                      }\n                    }else if(item.reaction == 'down'){\n                      unlike++;\n                      if(item.userId == me.id){\n                        hasUnlike = true;\n                      }\n                    }\n                  });\n                }catch(e){}\n            %]\n              <div class=\"profile-widget profile-comment-widget\">\n              <div class=\"profile-me-widget\">\n                <div class=\"profile-photo-widget\"[%if(reply.photo){%] style=\"background-image:url([%=reply.photo%])\"[%}%]>[%if(!reply.photo){%][%= widgets.getSvg('user') %][%}%]<\/div>\n                <div class=\"profile-info-widget\">\n                  <div class=\"name-widget\">[%= reply.user %]<\/div>\n                  <div class=\"date-widget\">[%= reply.date %]<\/div>\n                  <div class=\"message-widget\">[%= reply.message %]<\/div>       \n                  [%if(me.id){%]   \n                  <div class=\"buttons-widget buttons-community buttons-reactions\">\n                    <div class=\"button-widget button-small[%if(hasLike){%] button-blue[%}%]\" onclick=\"widgets.sendBookCommentReaction([%=reply.id%], 'up')\">[%= widgets.getSvg('like') %] &nbsp; [%= like %]<\/div>\n                    <div class=\"button-widget button-small[%if(hasUnlike){%] button-blue[%}%]\" onclick=\"widgets.sendBookCommentReaction([%=reply.id%], 'down')\">[%= widgets.getSvg('unlike') %] &nbsp; [%= unlike %]<\/div>\n                  <\/div>\n                  [%}%]\n                <\/div>\n              <\/div>\n              <\/div>\n            [%});%]\n          \n          <\/div>\n        <\/div>\n        <\/div>\n        [% }); %]\n      [%}%]\n      <\/div>\n      <div class=\"column-widget column-widget-fit\">\n        [%if(ratings.length){%]\n        <div class=\"ratings-widget\">
351\n        [% ratings.forEach(function(rating){ %]\n        <div class=\"profile-widget profile-rating-widget\">\n        <div class=\"profile-me-widget\">\n          <div class=\"profile-photo-widget\"[%if(rating.userPhoto){%] style=\"background-image:url([%=rating.userPhoto%])\"[%}%]>[%if(!rating.userPhoto){%][%= widgets.getSvg('user') %][%}%]<\/div>\n          <div class=\"profile-info-widget\">\n            <div class=\"name-widget\">[%= rating.user %]<\/div>\n            <div class=\"rating-widget\">\n            <div class=\"read-rating-widget\" data-settings=\"{value:[%=rating.value%],height:24}\"><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n        <\/div>\n        [% }); %]\n        <\/div>\n        [%}%]\n      <\/div>\n    <\/div>\n\n<\/div>\n[%if(ratings.length || comments.length || me.id){%]\n[%}%]","url":"ui/widgets/book-wrap.html"},{"code":"<div class=\"f_t cart-checkout\" data-widget=\"true\" data-cart-checkout=\"true\" data-resource=\"ui/widgets/cart-checkout-wrap.html\"><\/div>  \n","url":"ui/widgets/cart-checkout.html"},{"code":"[%if(window.google && window.google.maps){%]\n  <div class=\"event-map\"><\/div>\n[%}else{%]\n  <div class=\"form-widget\">\n    <div class=\"form-title\">Google Maps<\/div>\n    <p class=\"form-description\">Per visualizzare la mappa devi attivare API google maps<\/p><br>\n  <\/div> \n[%}%]\n","url":"ui/widgets/find-event/map.html"},{"code":"<div class=\"find-event-map f_t\" data-resource=\"ui/widgets/find-event/map.html\"><\/div>\n","url":"ui/widgets/find-event/body.html"},{"code":"<div class=\"find-event-widget\" id=\"find-event-widget\">\n  <div class=\"find-event-overlay\" onclick=\"widgets.closeFindEvent();\"><\/div>\n  <div class=\"find-event\" data-resource=\"ui/widgets/find-event/body.html\"><\/div>\n<\/div>\n","url":"ui/widgets/find-event/append.html"},{"code":"<div class=\"f_t\" data-widget=\"true\" data-resource=\"ui/widgets/signin-button-wrap.html\"><\/div>  \n","url":"ui/widgets/signin-button.html"},{"code":"[%if(window.google && window.google.maps){%]\n  <div class=\"store-map\"><\/div>\n[%}else{%]\n  <div class=\"form-widget\">\n    <div class=\"form-title\">Google Maps<\/div>\n    <p class=\"form-description\">Per visualizzare la mappa devi attivare API google maps<\/p><br>\n  <\/div> \n[%}%]","url":"ui/widgets/find-store/map.html"},{"code":"<div class=\"find-store-list\">\n  <div class=\"store-toolbar\">\n    <div calss=\"field-widget\">\n    <input class=\"input-widget\" placeholder=\"Città, Regione, Via o Cap\" onkeyup=\"widgets.findStore(this.value, true)\" />\n    <\/div>\n  <\/div>\n  <div class=\"f_t\" data-widget=\"true\" data-find-store-list=\"true\" data-resource=\"ui/widgets/find-store/items.html\"><\/div>\n<\/div>\n<div class=\"find-store-map f_t\" data-resource=\"ui/widgets/find-store/map.html\"><\/div>\n","url":"ui/widgets/find-store/body.html"},{"code":"<div class=\"find-store-widget\" id=\"find-store-widget\" onclick=\"widgets.closeFindStore();\">\n  <div class=\"find-store\" data-resource=\"ui/widgets/find-store/body.html\" onclick=\"event.stopPropagation();\"><\/div>\n<\/div>\n","url":"ui/widgets/find-store/append.html"},{"code":"[%\n  var stores = widgets.getStores();\n%]\n<div class=\"store-items\">\n  [%stores.forEach(function(store){\n      var payments = store.paymentTypes || [];\n  %]\n  <div class=\"store-item\">\n    <div class=\"row-widget mobile-widget\">\n      <div class=\"column-widget\">\n        <div class=\"store-name\">[%=store.name%]<\/div>\n      <\/div>\n      <div class=\"column-widget column-widget-fit\">\n        <div class=\"button-widget button-small button-blue button-uppercase\" onclick=\"widgets.setCartStore([%=store.id%])\">Seleziona <span>[%=widgets.getSvg('continue')%]<\/span><\/div>\n      <\/div>\n    <\/div>\n    \n    <div class=\"store-address\">[%=store.address%]<\/div>\n    <div class=\"store-address\">[%=(store.postalCode || '')%], [%=(store.city || '')%]<\/div>\n    <div class=\"store-email\">[%=store.email%]<\/div>\n    <div class=\"store-phone\">[%=store.phone%]<\/div>\n    <div class=\"store-payments bg-gray\">\n      <div class=\"store-payment\"><div class=\"icon-widget\">[%= widgets.getSvg('cash')%]<\/div> Pagamento in libreria<\/div>
351\n      [%if(payments.length){%]\n        [% payments.forEach(function(payment){ %]\n          <div class=\"store-payment\"><div class=\"icon-widget\">[%= widgets.getSvg(payment.icon)%]<\/div> [%=payment.name%]<\/div>\n        [% }); %]\n      [%}%]\n    <\/div>\n  <\/div>\n  [%});%]\n<\/div>","url":"ui/widgets/find-store/items.html"},{"code":"<div class=\"f_t\" data-widget=\"true\" data-resource=\"ui/widgets/cart-button-wrap.html\"><\/div>  \n","url":"ui/widgets/cart-button.html"},{"code":"[%  var account =  widgets.getAccount() || {}; %]\n[%if(f().api().authenticated){%]\n  <div class=\"f_t\" data-resource=\"ui/widgets/signin-wrap.html\"><\/div>  \n[%}else{%]\n  [%if(account.target == 'confirmEmail'){%]\n  <div class=\"form-widget\">\n    <div class=\"form-title\">Benvenuto<\/div>\n    <p class=\"form-description\">Grazie per esserti iscritto alla nostra community,<br> per accedere devi prima confermare la tua email,<br> controlla la tua casella di posta<\/p><br>\n    <div onclick=\"widgets.fire('goTo',{what:'signin'});\" class=\"button-widget button-blue\">Accesso<\/div>\n  <\/div>  \n  [%}else{%]\n  <form onsubmit=\"return widgets.signup(this);\" class=\"form-widget\">\n    <div class=\"form-title\">Iscriviti su my ubik<\/div><br>\n\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Nome<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"name\" placeholder=\"Inserisci il tuo nome\" autocomplete=\"off\" data-required />\n    <\/div>\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Cognome<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"surname\" placeholder=\"Inserisci il tuo cognome\" autocomplete=\"off\" data-required />\n    <\/div>\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Indirizzo email<\/label>\n      <input class=\"input-widget\" type=\"text\" name=\"email\" placeholder=\"Inserisci la tua email\" autocomplete=\"off\" data-required data-email />\n    <\/div>\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Password<\/label>\n      <input class=\"input-widget\" type=\"password\" name=\"password\" placeholder=\"Inserisci la tua password\" autocomplete=\"off\" data-required data-password-validation/>\n    <\/div>\n    <div class=\"field-widget\">\n      <label class=\"label-widget\">Conferma password<\/label>\n      <input class=\"input-widget\" type=\"password\" name=\"confirmPassword\" placeholder=\"Ripeti la tua password\" autocomplete=\"off\" data-required />\n    <\/div>\n    <div class=\"field-widget\">\n      <label>\n  \t\t  <input type=\"checkbox\" name=\"terms\" class=\"filled-in\" data-required onclick=\"var btn=f(this).closest('form').find('button[type=submit]').item;if(this.checked){ btn.removeAttribute('disabled') }else{ btn.setAttribute('disabled',true); }\">\n  \t\t  <span>Accetto le <a href=\"https://www.ubiklibri.it/privacy.html\" target=\"_blank\">condizioni di utilizzo<\/a><\/span>\n  \t\t<\/label>\n    <\/div>\n    <div class=\"field-widget\">\n      <label>\n  \t\t  <input type=\"checkbox\" name=\"privacy1\" class=\"filled-in\">\n  \t\t  <span>Iscriviti alla newsletter e rimani sempre aggiornato sul mondo my ubik.<\/span>\n  \t\t<\/label>\n    <\/div>\n    <div class=\"field-widget\">\n      <label>\n  \t\t  <input type=\"checkbox\" name=\"privacy2\" class=\"filled-in\">\n  \t\t  <span>Le tue recensioni potranno essere pubblicate su newsletter e campagne di comunicazione.<\/span>\n  \t\t<\/label>\n    <\/div>      \n    <div class=\"field-widget\">\n      <button type=\"submit\" class=\"button-widget button-fullwidth button-blue button-large\" disabled>Iscriviti<\/button>\n    <\/div>\n  <\/form>\n  [%}%]\n[%}%]","url":"ui/widgets/signup-wrap.html"},{"code":"[%\n  var account = widgets.getAccount() || {};\n  var order = (account.order || {});\n%]\n[%if(account.me && account.me.id){%]\n  <div class=\"connected-account-widget\">\n    [%if(order.token && order.item){%]\n      [%if(order.item.token && order.item.id){%]\n        [%if(widgets.get('showOrderRefund')){%]\n          <div class=\"f_t\" data-resource=\"ui/widgets/account/order-refund.html\"><\/div>  \n        [%}else if(widgets.get('showOrderPaymentRequest') && order.item.paymentConfiguration){%]\n          <div class=\"f_t\" data-resource=\"ui/widgets/account/order-payment-request.html\"><\/div>  \n        [%}else if(widgets.get('showOrderChat')){%]\n        <div class=\"f_t\" data-resource=\"ui/widgets/account/order-chat.html\"><\/div>  \n        [%}else{%]\n          <div class=\"f_t\" data-resource=\"ui/widgets/account/order-detail.html\"><\/div>  \n        [%}%]\n      [%}else{%]\n        <div class=\"f_t\" data-resource=\"ui/widgets/account/order-not-found.html\"><\/div>  \n      [%}%]\n    [%}else{%]\n      <div class=\"f_t\" data-resource=\"ui/widgets/account/order-list.html\"><\/div>  \n    [%}%]\n  <\/div>\n[%}else{%]\n  <div class=\"f_t\" data-resource=\"ui/widgets/signin-wrap.html\"><\/div>  \n[%}%]","url":"ui/widgets/orders-wrap.html"},{"code":"[%\n  var account = widgets.getAccount() || {};\n  var me = account.me || {};\n%]\n[%if(me.id){\n  var cart = widgets.getCart() || {};\n  var delivery = cart.delivery || {};\n  var step = widgets.get('stepCheckout',1);\n%]\n<div class=\"checkout-steps\">\n  <div class=\"checkout-step[%if(step == 1){%] step-selected[%}%][%if(step >= 2){%] step-complete[%}%][%if(widgets.getDomain() != null){%] step-disable[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/cart-checkout/step-1.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step[%if(step == 2){%] step-selected[%}%][%if(step >= 3){%] step-complete[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/cart-checkout/step-2.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step[%if(step == 3){%] step-selected[%}%][%if(step >= 4){%] step-complete[%}%][%if(delivery.select == 1){%] step-disable[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/cart-checkout/step-3.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step[%if(step == 4){%] step-selected[%}%][%if(step >= 5){%] step-complete[%}%][%if(step >= 4 && widgets.hasCartWarning()){%] step-warning[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/cart-checkout/step-4.html\"><\/div>\n  <\/div>\n  <div class=\"checkout-step[%if(step == 5){%] step-selected[%}%][%if(step >= 6){%] step-complete[%}%]\">\n    <div class=\"f_t\" data-resource=\"ui/widgets/cart-checkout/step-5.html\"><\/div>\n  <\/div>  \n<\/div>\n[%}else{%]\n  <div class=\"row-widget row-widget-top\">\n    <div class=\"column-widget column-signin-widget\">\n      <div class=\"f_t\" data-resource=\"ui/widgets/signin-wrap.html\"><\/div>  \n    <\/div>\n    <div class=\"column-widget\">\n      <div class=\"form-widget\">\n        <div style=\"min-height:280px;\">\n          <div class=\"form-title\">Non sei ancora iscritto?<\/div>\n          <p class=\"form-description\">Iscriviti e scopri tutti i vantaggi<\/p>\n          <ul class=\"list-widget\">\n            <li><div class=\"icon-widget checked\">[%= widgets.getSvg('checked') %]<\/div> Promozioni e offerte<\/li>\n            <li><div class=\"icon-widget checked\">[%= widgets.getSvg('checked') %]<\/div> Salva il tuo carrello<\/li>\n            <li><div class=\"icon-widget checked\">[%= widgets.getSvg('checked') %]<\/div> Velocità nei tuoi acquisti<\/li>\n          <\/ul>\n        <\/div>\n        <div class=\"text-center-widget\">\n        <div class=\"button-widget button-blue button-large button-fullwidth\" onclick=\"widgets.fire('goTo',{what:'signup'})\">Iscriviti<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n[%}%]","url":"ui/widgets/cart-checkout-wrap.html"},{"code":"[%\n  var cartSize = widgets.getAccountCartSize() || 0;\n%]\n<div class=\"button-widget button-text\">\n  <span>[%=widgets.getSvg('shopping')%][%if(cartSize){%]<span class=\"badget-widget\">[%=cartSize%]<\/span>[%}%]<\/span>\n  Carrello\n<\/div>","url":"ui/widgets/cart-button-wrap.html"},{"code":"<div class=\"f_t\" data-widget=\"true\" data-book=\"true\" data-resource=\"ui/widgets/book-wrap.html\"><\/div>  \n","url":"ui/widgets/book.html"},{"code":"<div class=\"f_t\" data-widget=\"true\" data-orders=\"true\" data-resource=\"ui/widgets/orders-wrap.html\"><\/div>  ","url":"ui/widgets/orders.html"},{"code":"[% \n  var data = widgets.getCart();\n  var items = data.items || [];\n  var cartTab = widgets.get('cartTab');\n  var showSummary = window.location.href.indexOf('/cart') != -1 || window.location.href.indexOf('localhost') != -1 || items.length <= 1;
351\n%]\n\n[%if(widgets.getCartItemSize()){%]\n  \n  [%if(data.orderItemsSize && data.preOrderItemsSize){%]\n  <div class=\"cart-items-tabs\">\n    <div class=\"cart-items-tab[%if(cartTab != 'preorderable'){%] is-selected[%}%]\" onclick=\"widgets.setCartItemsTab()\">[%if(data.orderItemsSize){%]<span>[%= data.orderItemsSize %]<\/span>[%}%] CARRELLO<\/div>\n    <div class=\"cart-items-tab[%if(cartTab == 'preorderable'){%] is-selected[%}%]\" onclick=\"widgets.setCartItemsTab('preorderable')\">[%if(data.preOrderItemsSize){%]<span>[%= data.preOrderItemsSize %]<\/span>[%}%] PRENOTAZIONE<\/div>\n  <\/div>\n  [%}%]\n  \n  [%if(showSummary){%]\n    <div class=\"cart-items-wrap\">\n    [%items.forEach(function(item){%]\n    <div class=\"cart-item\">\n      <div class=\"cart-context\">\n        <div class=\"cart-image\" onclick=\"widgets.fire('goTo',{what:'ean',ean:'[%=item.id%]'})\" style=\"background-image:url([%=item.imageUrl%])\"><\/div>\n        <div class=\"cart-info\">\n          <div class=\"cart-title\">[%=(item.title || '-')%]<\/div>\n          <div class=\"cart-author\">[%=(item.author || '-')%]<\/div>\n          <div class=\"cart-editor\">[%=(item.editor || '-')%]<\/div>\n          <div class=\"cart-ean\">[%=item.id%]<\/div>\n          \n          [%if(item.state){%]\n          <div class=\"cart-availabilty stato-[%= item.state.toLowerCase().replace(/ /g,'-').replace('_','-').replace('/','-'); %]\">[%=item.state%]<\/div>\n          [%}else{%]\n          <div class=\"cart-availabilty\">ORDINABILE<\/div>\n          [%}%]\n          \n          [%if(item.state && item.state.toLowerCase().indexOf('print on demand') != - 1){\n            var deg = (Math.floor(Math.random() * 40) + -20);\n          %]\n            <div class=\"text-right-widget\">\n            <div class=\"circle-print-on-demand\" style=\"transform:rotate([%=deg%]deg)\">\n            <div>\n              <div>Print<\/div>\n              <div>on<\/div>\n              <div>Demand<\/div>\n            <\/div>\n            <\/div>\n            <\/div>\n          [%}%]\n          \n        <\/div>\n        <div class=\"cart-price\">\n        [%if(item.quantity > 1){%]\n          [%= item.quantity %] x [%= item.price.toFixed(2).replace('.',',') %] &euro;\n        [%}%]\n        <\/div>\n        \n        <div class=\"cart-price-summary\">\n        [%if(item.promoDiscount || item.promoIndication){%]\n          [%if(item.promoIndication){%]\n            <div class=\"ux-tag is-promo\" data-tippy-content=\"[%= item.promoIndication %]\">\n            <div class=\"ux-tag-content\"><div class=\"ux-svg is-inline is-small is-left\" data-icon=\"promo\"><\/div>In promozione<\/div>\n            <\/div>\n          [%}%]\n          [%if(item.promoDiscount && item.originalPrice){%]\n            <div class=\"cart-discount\">-[%= item.promoDiscount %]%<\/div>\n            <div>[%= item.subtotal.toFixed(2).replace('.',',') %] &euro;<\/div>\n            <div class=\"cart-original-price\">[%= (item.originalPrice*item.quantity).toFixed(2).replace('.',',') %] &euro;<\/div>\n          [%}else{%]\n            <div>[%= item.subtotal.toFixed(2).replace('.',',') %] &euro;<\/div>\n          [%}%]\n        [%}else{%]\n          [%= item.subtotal.toFixed(2).replace('.',',') %] &euro;          \n        [%}%]\n        <\/div>\n      <\/div>\n      <div class=\"cart-toolbar\">\n        <div class=\"cart-remove\">\n          <div class=\"button-widget button-small button-red button-fullwidth button-uppercase\" onclick=\"widgets.removeCartItem('[%=item.id%]')\">[%=widgets.getSvg('trash')%] Rimuovi<\/div>\n        <\/div>\n        <div class=\"cart-quantity\">\n          <div class=\"buttons-widget\">\n            <div class=\"button-widget button-small\" onclick=\"widgets.setCartItemDecrease('[%=item.id%]')\">[%=widgets.getSvg(item.quantity == 1 ? 'trash' : 'minus')%]<\/div>\n            <div class=\"button-widget button-large button-text\">[%=item.quantity%]<\/div>\n            <div class=\"button-widget button-small\" onclick=\"widgets.setCartItemIncrease('[%=item.id%]')\">[%=widgets.getSvg('plus')%]<\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n    [%});%]\n    <\/div> \n  [%}else{%]   \n    <div class=\"empty-widget\">\n      <div class=\"message-widget\">Hai [%= items.length %] titoli nel tuo carrello<\/div>\n      <div class=\"button-widget button-uppercase\" onclick=\"widgets.fire('goTo',{what:'cart'})\"><span>[%=widgets.getSvg('eye')%]<\/span> Visualizza titoli<\/div>\n    <\/div>\n  [%}%]\n  [%if(widgets.hasCartWarning()){%]\n  <div class=\"alert-widget alert-warning\">Nel tuo carrello è presente un titolo \"NON ORDINABILE\", modifica l'ordine prima di procedere.<\/div>\n  [%}%]\n[%}else{%]\n  <div class=\"empty-widget\">\n    <div class=\"message-widget\">Il tuo carrello è vuoto<\/div>\n    <div class=\"button-widget button-blue button-uppercase\" onclick=\"widgets.fire('goTo',{what:'catalog'})\"><span>[%=widgets.getSvg('plus')%]<\/span> Aggiungi Libro<\/div>\n  <\/div>\n[%}%]","url":"ui/widgets/cart/items.html"},{"code":"[%\n  var data = widgets.getCart() || {};\n  var store = data.store || {};\n%]\n<div class=\"cart-store-info\">\n  [%if(store.id){%]\n    <div class=\"store-name\">[%=store.name%]<\/div>
351\n    <div class=\"store-address\">[%=store.address%], [%=store.city%]<\/div>\n  [%}else{%]\n    <div class=\"store-name\">Seleziona libreria<\/div>\n    <div class=\"store-address\">Scegli la libreria più vicina a te<\/div>\n  [%}%]\n<\/div>\n<div class=\"cart-store-button\">\n  [%if(store.id){%]\n    <div class=\"button-widget button-orange button-small button-uppercase\" onclick=\"widgets.findStore()\"><span>[%=widgets.getSvg('exchange')%]<\/span> Cambia Libreria<\/div>\n  [%}else{%]\n    <div class=\"button-widget button-orange button-small button-uppercase\" onclick=\"widgets.findStore()\"><span>[%=widgets.getSvg('marker')%]<\/span> Seleziona Libreria<\/div>\n  [%}%]\n<\/div>","url":"ui/widgets/cart/store.html"},{"code":"[% \n  var data = widgets.getCart() || {};\n  var delivery = data.delivery || {};\n  var spendAtLeast = data.spendAtLeast || 0;\n  var shipping = data.shipping || 0;\n  var subtotal = data.subtotal || 0;\n  var total = data.total || 0;\n  var cartTab = widgets.get('cartTab');\n  var items = data.items || [];\n  var showSummary = window.location.href.indexOf('/cart') != -1 || window.location.href.indexOf('localhost') != -1 || items.length <= 1;\n%]\n[%if(total > 0){%]\n<div class=\"cart-summary last-large\">\n  [%if(delivery.select != 1){%]\n  <div class=\"cart-row\">\n    <div class=\"cart-column\">Subtotale<\/div>\n    <div class=\"cart-column cart-column-fit\">[%= subtotal.toFixed(2).replace('.',',') %] &euro;<\/div>\n  <\/div>\n  [%if(shipping){%]\n  <div class=\"cart-row cart-row-top\">\n    <div class=\"cart-column\">\n      <div>Costi di spedizione<\/div>\n      [%if(spendAtLeast){%]<div class=\"text-small-widget\">Nessun costo con una spesa di almeno [%= spendAtLeast.toFixed(2).replace('.',',') %] &euro;<\/div>[%}%]\n    <\/div>\n    <div class=\"cart-column cart-column-fit\">[%= shipping.toFixed(2).replace('.',',') %] &euro;<\/div>\n  <\/div>\n  [%}%]\n  [%}%]\n  <div class=\"cart-row\">\n    <div class=\"cart-column\">Totale<\/div>\n    <div class=\"cart-column cart-column-fit\">[%= total.toFixed(2).replace('.',',') %] &euro;<\/div>\n  <\/div>\n<\/div>\n\n[%if(cartTab == 'preorderable'){%]\n  [%if(showSummary){%]\n    <div class=\"button-widget [%if(widgets.hasCartWarning()){%]button-orange[%}else{%]button-green[%}%] button-uppercase\" onclick=\"widgets.cartCheckout();\"><span>[%=widgets.getSvg('checked')%]<\/span> Conferma prenotazione<\/div>\n  [%}else{%]\n    <div class=\"button-widget [%if(widgets.hasCartWarning()){%]button-orange[%}else{%]button-blue[%}%] button-uppercase\" onclick=\"widgets.fire('goTo',{what:'cart'})\"><span>[%=widgets.getSvg('shopping')%]<\/span> Visualizza prenotazione<\/div>\n  [%}%]\n[%}else{%]\n  <div class=\"button-widget button-blue button-uppercase\" onclick=\"widgets.fire('goTo',{what:'catalog'})\"><span>[%=widgets.getSvg('plus')%]<\/span> Aggiungi Libro<\/div>\n  <div class=\"button-widget [%if(widgets.hasCartWarning()){%]button-orange[%}else{%]button-blue[%}%] button-uppercase\" onclick=\"widgets.fire('goTo',{what:'checkout'})\"><span>[%=widgets.getSvg('shopping')%]<\/span> Procedi all'ordine<\/div>\n[%}%]\n\n\n[%}else{%]\n<div class=\"cart-summary last-large\">\n  <div class=\"cart-row\">\n    <div class=\"cart-column\">Totale<\/div>\n    <div class=\"cart-column cart-column-fit\">0 &euro;<\/div>\n  <\/div>\n<\/div>\n[%}%]","url":"ui/widgets/cart/summary.html"},{"code":"<div class=\"f_t\" data-widget=\"true\" data-connected-account=\"true\" data-resource=\"ui/widgets/connected-account-wrap.html\"><\/div>  ","url":"ui/widgets/connected-account.html"},{"code":"<div class=\"cart-widget\">\n  [%if(widgets.getDomain() == null){%]\n  <div class=\"cart-store f_t\" data-widget=\"true\" data-resource=\"ui/widgets/cart/store.html\"><\/div>\n  [%}%]\n  <div class=\"cart-items f_t\" data-cart-items=\"true\" data-widget=\"true\" data-resource=\"ui/widgets/cart/items.html\"><\/div>\n  <div class=\"cart-summary-checkout f_t\" data-cart-summary=\"true\" data-widget=\"true\" data-resource=\"ui/widgets/cart/summary.html\"><\/div>\n<\/div>\n","url":"ui/widgets/cart.html"},{"code":"[%\n  var data = widgets.getConnectedAccount();\n  var shop = data.shop || {};\n  var stripe = shop.stripe || {};\n%]\n\n<div class=\"stripe-widget\">\n<div class=\"icon-widget\">[%= widgets.getSvg('stripe')%][%if(widgets.getDevelopment()){%]<span>Test Data<\/span>[%}%]<\/div>\n<div class=\"name-widget\">Connected Account<\/div>\n<\/div>\n[%if(stripe.id){%]\n  [%if(!stripe.person){%]\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/wizard-
351person.html\"><\/div>\n  [%}else if(stripe.person && stripe.person.verification && !(stripe.person.verification.document.back && stripe.person.verification.document.front && stripe.person.verification.additional_document.front)){%]\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/wizard-requirement.html\"><\/div>    \n  [%}else{%]\n    <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/profile.html\"><\/div> \n  [%}%]\n[%}else if(!stripe.id || data.target == 'create'){%]\n  <div class=\"f_t\" data-resource=\"ui/widgets/connected-account/wizard-account.html\"><\/div>  \n[%}%]\n","url":"ui/widgets/connected-account-wrap.html"},{"code":"[%  \n  var account =  widgets.getAccount() || {}; \n  var me = account.me || {};\n%]\n\n<div class=\"connected-account-widget\">\n<div class=\"connected-account-info small-info\">\n  <div class=\"name-info\">\n  <div class=\"row-widget\">\n    <div class=\"column-widget\">\n      <div class=\"icon-widget\">[%= widgets.getSvg('edit')%]<\/div> DATI PERSONALI\n    <\/div>\n    <div class=\"column-widget text-right-widget\">\n      <div class=\"button-widget button-small\" onclick=\"widgets.setAccountTarget('editPersonalData')\">Modifica<\/div>\n    <\/div>\n  <\/div>\n  <\/div>\n  \n  <div class=\"orders-widget\">\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-property\">Nome<\/div>\n      <div class=\"order-label\">[%= me.name %]<\/div>\n    <\/div>\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-property\">Cognome<\/div>\n      <div class=\"order-label\">[%= me.surname %]<\/div>\n    <\/div>\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-property\">Email<\/div>\n      <div class=\"order-label\">\n        [%if(me.email.indexOf('privaterelay.appleid.com') >= 0){%]\n          EMAIL PRIVATA\n        [%}else{%]\n          [%= me.email %]\n        [%}%]\n      <\/div>\n    <\/div>\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-property\">Biografia<\/div>\n      <div class=\"order-label\">[%= me.bio || '' %]<\/div>\n    <\/div>\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-description\">Condizioni di utilizzo<\/div>\n      <div class=\"order-number\">Autorizzo <div class=\"icon-widget checked-widget\">[%= widgets.getSvg('checked')%]<\/div><\/div>\n    <\/div>\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-description\">Newsletter<\/div>\n      <div class=\"order-number\">\n        [%if(me.privacy1){%]\n          Autorizzo <div class=\"icon-widget checked-widget\">[%= widgets.getSvg('checked')%]<\/div>\n        [%}else{%]\n          Non autorizzo <div class=\"icon-widget checked-widget checked-disable\">[%= widgets.getSvg('checked')%]<\/div>\n        [%}%]\n      <\/div>\n    <\/div>\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-description\">Marketing<\/div>\n      <div class=\"order-number\">\n        [%if(me.privacy2){%]\n          Autorizzo  <div class=\"icon-widget checked-widget\">[%= widgets.getSvg('checked')%]<\/div>\n        [%}else{%]\n          Non autorizzo  <div class=\"icon-widget checked-widget checked-disable\">[%= widgets.getSvg('checked')%]<\/div>\n        [%}%]\n      <\/div>\n    <\/div>\n  <\/div>\n\n<\/div>\n<div class=\"connected-account-info small-info\">\n  <div class=\"name-info\">\n  <div class=\"row-widget\">\n    <div class=\"column-widget\">\n      <div class=\"icon-widget\">[%= widgets.getSvg('lock')%]<\/div> DATI DI ACCESSO\n    <\/div>\n    <div class=\"column-widget text-right-widget\">\n      <div class=\"button-widget button-small\" onclick=\"widgets.setAccountTarget('editAccessData')\">Modifica<\/div>\n    <\/div>\n  <\/div>\n  <\/div>\n  \n  <div class=\"orders-widget\">\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-property\">Username<\/div>\n      <div class=\"order-label\">[%= me.username %]<\/div>\n    <\/div>\n    <div class=\"order-widget order-body events-none\">\n      <div class=\"order-property\">Password<\/div>\n      <div class=\"order-label\">********<\/div>\n    <\/div>\n  <\/div>\n  \n<\/div>\n\n\n<div class=\"connected-account-info small-info\">\n  <div class=\"name-info\"><div class=\"icon-widget\">[%= widgets.getSvg('iolettore')%]<\/div> my ubik<\/div>\n  <div class=\"orders-widget\">\n    <div class=\"order-widget order-body events-none\">\n    <div class=\"order-description\">Vuoi eliminare il tuo account?<\/div>\n    <div class=\"order-detail\"><div class=\"button-widget button-small button-red\" onclick=\"widgets.deleteMe()\">Elimina<\/div><\/div>\n    <\/div>\n  <\/div>\n<\/div>\n<\/div>","url":"ui/widgets/account/profile.html"},{"code":"[%\n  var account = widgets.getAccount() || {};\n  var accountOrder = (account.order || {});\n  var order = accountOrder.item || {};\n  var items = order.items || [];\n%]\n\n\n<div class=\"row-widget\">\n  <div class=\"column-widget\"><div class=\"button-widget\" onclick=\"widgets.paymentRequestOrder(false)\">[%= widgets.getSvg('back') %] Ordine<\/div><\/div>\n  <div class=\"column-widget\"><\/div>\n<\/div>\n\n\n<div class=\"alert-widget alert-warning\">\n  <div>Il pagamento è stato annullato, per continuare con l'ordine bisogna effettuare nuovamente il pagamento.<\/div>\n<\/div>\n\n\n<div class=\"connected-account-info small-info\">\n  <div class=\"name-info\">Libri ordinati<\/div>\n  <div class=\"cart-widget\">\n  <div class=\"cart-items\">
351\n    [%items.forEach(function(item){ %]\n    <div class=\"cart-item\">\n      <div class=\"cart-context\">\n        <div class=\"cart-image\" onclick=\"widgets.fire('goTo',{what:'ean',ean:'[%=item.id%]'})\" style=\"background-image:url([%=item.imageUrl%])\"><\/div>\n        <div class=\"cart-info\">\n          <div class=\"cart-title\">[%=(item.title || '-')%]<\/div>\n          <div class=\"cart-author\">[%=(item.author || '-')%]<\/div>\n          <div class=\"cart-editor\">[%=(item.editor || '-')%]<\/div>\n          <div class=\"cart-ean\">[%=item.id%]<\/div>\n        <\/div>\n        <div class=\"cart-price\">\n        [%if(item.quantity > 1){%]\n          [%= item.quantity %] x [%= item.price.toFixed(2).replace('.',',') %] &euro;\n        [%}%]\n        <\/div>\n        <div class=\"cart-price-summary\">[%= item.subtotal.toFixed(2).replace('.',',') %] &euro;<\/div>\n      <\/div>\n      <div class=\"cart-toolbar\">\n        <div class=\"cart-remove\">\n          &nbsp;\n        <\/div>\n        <div class=\"cart-quantity\">\n        <\/div>\n      <\/div>\n    <\/div>\n    [%});%]            \n  <\/div>\n  <div class=\"cart-summary-checkout\">\n  <div class=\"cart-summary last-large\">\n    [%if(order.delivery.type != 1){%]\n    <div class=\"cart-row\">\n      <div class=\"cart-column\">Subtotale<\/div>\n      <div class=\"cart-column cart-column-fit\">[%= order.subtotal.toFixed(2).replace('.',',') %] &euro;<\/div>\n    <\/div>\n    <div class=\"cart-row\">\n      <div class=\"cart-column\">\n        <div>Costi di spedizione<\/div>\n        <div class=\"text-small-widget\">Nessun costo con una spesa di almeno [%= order.spendAtLeast.toFixed(2).replace('.',',') %] &euro;<\/div>\n      <\/div>\n      <div class=\"cart-column cart-column-fit\">[%= order.shipping.toFixed(2).replace('.',',') %] &euro;<\/div>\n    <\/div>\n    [%}%]\n    <div class=\"cart-row\">\n      <div class=\"cart-column\">Totale<\/div>\n      <div class=\"cart-column cart-column-fit\">[%= order.total.toFixed(2).replace('.',',') %] &euro;<\/div>\n    <\/div>\n  <\/div>\n  <\/div>\n  <\/div>     \n \n<\/div>\n\n<div class=\"connected-account-info small-info\">\n  <div class=\"name-info\">Effetua pagamento<\/div>\n  \n  \n  <div class=\"checkout-steps\">\n  <div class=\"checkout-step step-selected\">\n  <div class=\"stripe-payment-widget\" style=\"margin:0;position:relative;z-index:2;\">\n    <div class=\"stripe-retrieve-method-widget\">\n      <div class=\"stripe-methods\"><\/div>\n      <div class=\"field-widget\">\n      <div class=\"button-widget button-submit button-fullwidth button-large button-green\" disabled>[%= widgets.getSvg('lock') %]Paga [%= (order.total || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n      <\/div>\n      <div class=\"alert-widget alert-info alert-rm-margin\">Se entro 7 giorni lavorativi non verrà spedito l'ordine, nessun importo verrà addebitato.<\/div>\n      <div class=\"text-center-widget\"><div class=\"stripe-payment-divisor\">Oppure<\/div><\/div>\n      <div class=\"button-widget button-choose button-fullwidth button-large button-blue\">Aggiungi una modalità di pagamento<\/div>\n    <\/div>\n    <div class=\"stripe-create-method-widget\">\n    <div class=\"stripe-elements-widget\">\n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Email<\/label>\n        <input class=\"input-widget\" value=\"[%= account.me.email %]\" type=\"text\" name=\"email\" placeholder=\"Email\" autocomplete=\"off\" />\n      <\/div>\n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Titolare della carta<\/label>\n        <input class=\"input-widget\" type=\"text\" name=\"name\" placeholder=\"Titolare della carta\" autocomplete=\"off\" />\n      <\/div>\n      <div class=\"field-widget\">\n        <label class=\"label-widget\">Informazioni sulla carta<\/label>\n        <div class=\"stripe-card\" id=\"stripe-card\"><\/div>\n        <div class=\"stripe-terms\"><span>Powered by <div class=\"icon-widget\">[%= widgets.getSvg('stripe') %]<\/div><\/span>&nbsp; | &nbsp;<a href=\"https://stripe.com/it/legal\" target=\"_blank\">Terms<\/a> &nbsp;<a href=\"https://stripe.com/en-gb-it/privacy\" target=\"_blank\">Privacy<\/a><\/div>\n        <div class=\"form-errors-widget\"><\/div>\n      <\/div>\n      <div class=\"field-widget\">\n        <div class=\"button-widget button-submit button-fullwidth button-large button-green\">[%= widgets.getSvg('lock') %]Paga [%= (order.total || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n      <\/div>\n      <div class=\"alert-widget alert-info alert-rm-margin\">Se entro 7 giorni lavorativi non verrà spedito l'ordine, nessun importo verrà addebitato.<\/div>\n    <\/div>\n    <div class=\"stripe-choose-method\">\n      <div class=\"text-center-widget\"><div class=\"stripe-payment-divisor\">Oppure<\/div><\/div>\n      <div class=\"button-widget button-choose button-fullwidth button-large button-blue\">Scegli una modalità di pagamento<\/div>\n    <\/div>\n    <\/div>\n  <\/div>\n  <\/div>\n  <\/div>\n<\/div>\n","url":"ui/widgets/account/order-payment-request.html"},{"code":"\n<form onsubmit=\"return widgets.forgotPassword(this);\" class=\"form-widget\">\n<div class=\"form-title\">Hai dimenticato la password?<\/div>\n<p class=\"form-description\">Nessun problema, invieremo una nuova password alla tua casella di posta.<\/p><br>\n\n<div class=\"animated-widget\">\n<div class=\"field-widget\">\n  <label class=\"label-widget\">Indirizzo email<\/label>\n  <input class=\"input-widget\" type=\"text\" name=\"email\" placeholder=\"Inserisci la tua email\" autocomplete=\"off\"/>\n<\/div>\n<\/div>\n\n<div class=\"form-buttons-widget\">\n  <button class=\"button-widget button-fullwidth button-blue button-large\">Recupera<\/button>
351\n  <div onclick=\"widgets.setAccountTarget()\" class=\"button-widget button-fullwidth button-large\">Annulla<\/div>\n<\/div>\n<\/form>  ","url":"ui/widgets/account/forgot-password.html"},{"code":"[%\n  var account = widgets.getAccount() || {};\n  var accountOrder = (account.order || {});\n  var order = accountOrder.item || {};\n  var items = order.items || [];\n%]\n\n\n<div class=\"row-widget mobile-widget\">\n  <div class=\"column-widget\"><div class=\"button-widget\" onclick=\"widgets.selectOrder()\">[%= widgets.getSvg('back') %] Ordini<\/div><\/div>\n  <div class=\"column-widget text-right-widget\"><div class=\"button-widget button-blue\" onclick=\"widgets.chatOrder(true)\"><span>[%= widgets.getSvg('comments') %][%if(order.countMessages > 0){%]<span class=\"badget-widget\">[%= order.countMessages%]<\/span>[%}%]<\/span> Messaggi<\/div><\/div>\n<\/div>\n\n[%if(order.state.id == 9){%]\n  <div class=\"alert-widget alert-warning\" style=\"flex-direction: column;\">\n    <div>Il pagamento è stato annullato, per continuare con l'ordine bisogna effettuare nuovamente il pagamento.<\/div>\n    <div class=\"button-widget button-orange button-small\" onclick=\"widgets.paymentRequestOrder(true);\"><i class=\"fa fa-check\"><\/i>&nbsp;&nbsp;Effettua Pagamento<\/div>\n  <\/div>\n[%}%]\n\n[%if(order.refund){%]\n  <div class=\"connected-account-info small-info refund refund-answer-[%=order.refund.answerId%]\">\n    <div class=\"name-info\">Richiesta reso del [%= Date.parse(order.refund.reasonDate).format({day:'2-digit',month:'2-digit',year:'2-digit'},'it') %]<\/div>\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\">Tipo<\/div>\n      <div class=\"column-widget\">[%= (order.refund.reason  || '-')%]<\/div>\n      [%if(order.refund.reasonNote){%]\n      <div class=\"column-widget column-widget-fit\">Motivo<\/div>\n      <div class=\"column-widget\">[%= (order.refund.reasonNote || '-') %]<\/div>\n      [%}%]\n    <\/div>\n    [%if(order.refund.answerId){%]\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\">Risposta<\/div>\n      <div class=\"column-widget\">[%= (order.refund.answer  || 'In attesa')%]<\/div>\n      [%if(order.refund.answerNote){%]\n      <div class=\"column-widget column-widget-fit\">Nota<\/div>\n      <div class=\"column-widget\">[%= (order.refund.answerNote || '-') %]<\/div>\n      [%}%]\n    <\/div>\n    [%}%]\n  <\/div>\n[%}%]\n\n<div class=\"connected-account-info\">\n  <div class=\"name-info\">Dettaglio Ordine<\/div>\n  <div class=\"row-widget row-info\">\n    <div class=\"column-widget column-widget-fit\">Numero Ordine<\/div>\n    <div class=\"column-widget\">[%= (order.id || '-') %]<\/div>\n    <div class=\"column-widget column-widget-fit\">Data ordine<\/div>\n    <div class=\"column-widget\">[%= Date.parse(order.date).format({day:'2-digit',month:'2-digit',year:'2-digit',hour:'2-digit',minute:'2-digit'},'it') %]<\/div>\n    [%if(order.state.id != 2){%]\n    <div class=\"column-widget column-widget-fit\">Stato Ordine<\/div>\n    <div class=\"column-widget\"><div class=\"order-state state-[%=order.state.id%]\"><span>\n      [%if(order.state.icon){%]<div class=\"icon-widget\">[%= widgets.getSvg(order.state.icon) %]<\/div>[%}%][%=order.state.name%] \n    <\/span><\/div><\/div>\n    [%}%]\n  <\/div>\n  <div class=\"row-widget row-info\">\n    <div class=\"column-widget column-widget-fit\">Consegna<\/div>\n    <div class=\"column-widget\">[%=(order.delivery.name || '-')%]<\/div>\n    <div class=\"column-widget column-widget-fit\">Pagamento<\/div>\n    <div class=\"column-widget\"><div class=\"icon-widget\">[%= widgets.getSvg(order.payment.icon) %]<\/div>[%=(order.payment.name || '-')%]<\/div>\n  <\/div>\n<\/div>\n\n[%if(order.gift.id && order.gift.type == 1){%]\n  <div class=\"connected-account-info small-info\">\n    <div class=\"name-info\">[%= order.gift.labelCart %]<\/div>\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\" style=\"width: auto;\">[%= order.gift.labelCartRow %]<\/div>\n      <div class=\"column-widget\">[%= order.shipment.recipient %]<\/div>\n    <\/div>\n  <\/div>\n[%}else if(order.delivery.type == 1){%]\n  <div class=\"connected-account-info small-info\">\n    <div class=\"name-info\">Indirizzo libreria<\/div>\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\">Libreria<\/div>\n      <div class=\"column-widget\">[%= (order.store.name  || '-')%]<\/div>\n      <div class=\"column-widget column-widget-fit\">Telefono<\/div>\n      <div class=\"column-widget\">[%= (order.store.phone || '-') %]<\/div>\n      <div class=\"column-widget column-widget-fit\">Email<\/div>\n      <div class=\"column-widget\">[%= (order.store.email || '-') %]<\/div>\n    <\/div>\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\">Indirizzo<\/div>\n      <div class=\"column-widget\">[%= (order.store.address || '-') %]<\/div>\n      <div class=\"column-widget column-widget-fit\">Città<\/div>\n      <div class=\"column-widget\">[%= (order.store.city || '-') %]<\/div>\n      <div class=\"column-widget column-widget-fit\">Provincia<\/div>\n      <div class=\"column-widget\">[%= (order.store.province || '-').toUpperCase() %]<\/div>\n    <\/div>\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\">CAP<\/div>\n      <div class=\"column-widget\">[%= (order.store.postalCode || '-') %]<\/div>\n    <\/div>\n  <\/div>\n[%}else{%]\n  <div class=\"connected-account-info small-info\">\n    <div class=\"name-info\">Indirizzo di spedizione<\/div>\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\">Destinatario<\/div>\n      <div class=\"column-widget\">[%= (order.shipment.recipient  || '-')%]<\/div>\n      <div class=\"column-widget column-widget-fit\">Telefono<\/div>\n      <div class=\"column-widget\">[%= (order.shipment.phone || '-') %]<\/div>\n    <\/div>\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\">Indirizzo<\/div>\n      <div class=\"column-widget\">[%= (order.shipment.address || '-') %]<\/div>\n      <div class=\"column-widget column-widget-fit\">Città<\/div>\n      <div class=\"column-widget\">[%= (order.shipment.city || '-') %]<\/div>\n      <div class=\"column-widget column-widget-fit\">Provincia<\/div>\n      <div class=\"column-widget\">[%= (order.shipment.province || '-').toUpperCase() %]<\/div>\n    <\/div>\n    <div class=\"row-widget row-info\">\n      <div class=\"column-widget column-widget-fit\">CAP<\/div>\n      <div class=\"column-widget\">[%= (order.shipment.postalCode || '-') %]<\/div>\n      [%if(order.shipment.note){%]\n        [%if(order.gift.id && order.gift.type == 2){%]\n          <div class=\"column-widget column-widget-fit\">Dedica<\/div>\n          <div class=\"column-widget\">[%= (order.shipment.note || '-') %]<\/div>\n        [%}else{%]\n          <div class=\"column-widget column-widget-fit\">Note<\/div>\n          <div class=\"column-widget\">[%= (order.shipment.note || '-') %]<\/div>\n        [%}%]\n      [%}%]\n    <\/div>\n  <\/div>\n[%}%] \n     \n\n<div class=\"connected-account-info small-info\">\n  <div class=\"name-info\">Libri ordinati<\/div>\n  <div class=\"cart-widget\">\n  <div class=\"cart-items\">
351\n    [%items.forEach(function(item){ %]\n    <div class=\"cart-item[%if(item.workflowId == 10){%] item-disable[%}%]\">\n      <div class=\"cart-actions\">\n      <div>\n      Stato:&nbsp;&nbsp;<div class=\"order-state state-[%=item.workflowId%]\" ><span>[%=item.workflowName%]<\/span><\/div>\n      <\/div>\n      <\/div>\n      \n      <div class=\"cart-context\">\n        <div class=\"cart-image\" onclick=\"widgets.fire('goTo',{what:'ean',ean:'[%=item.id%]'})\" style=\"background-image:url([%=item.imageUrl%])\"><\/div>\n        <div class=\"cart-info\">\n          <div class=\"cart-title\">[%=(item.title || '-')%]<\/div>\n          <div class=\"cart-author\">[%=(item.author || '-')%]<\/div>\n          <div class=\"cart-editor\">[%=(item.editor || '-')%]<\/div>\n          <div class=\"cart-ean\">[%=item.id%]<\/div>\n          \n          [%if(item.workflowId == 2 || item.workflowId == 9){%]\n            [%if(item.state){%]\n            <div class=\"cart-availabilty stato-[%= item.state.toLowerCase().replace(/ /g,'-').replace('_','-').replace('/','-'); %]\">[%=item.state%]<\/div>\n            [%}else{%]\n            <div class=\"cart-availabilty\">ORDINABILE<\/div>\n            [%}%]\n          [%}%]\n          \n          [%if(item.state && item.state.toLowerCase().indexOf('print on demand') != - 1){\n              var deg = (Math.floor(Math.random() * 50) + -10);\n          %]\n            <div class=\"text-right-widget\">\n            <div class=\"circle-print-on-demand\" style=\"transform:rotate([%=deg%]deg)\">\n            <div>\n              <div>Print<\/div>\n              <div>on<\/div>\n              <div>Demand<\/div>\n            <\/div>\n            <\/div>\n            <\/div>\n          [%}%]\n          \n        <\/div>\n        <div class=\"cart-price\">\n        [%if(item.quantity > 1){%]\n          [%= item.quantity %] x [%= (item.price || 0).toFixed(2).replace('.',',') %] &euro;\n        [%}%]\n        <\/div>\n        <div class=\"cart-price-summary\">[%= (item.subtotal || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n      <\/div>\n      <div class=\"cart-toolbar\">\n        <div class=\"cart-remove\">\n          &nbsp;\n        <\/div>\n        <div class=\"cart-quantity\">\n        <\/div>\n      <\/div>\n    <\/div>\n    [%});%]            \n  <\/div>\n  <div class=\"cart-summary-checkout\">\n  <div class=\"cart-summary last-large\">\n    [%if(order.delivery.type != 1){%]\n    <div class=\"cart-row\">\n      <div class=\"cart-column\">Subtotale<\/div>\n      <div class=\"cart-column cart-column-fit\">[%= (order.subtotal || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n    <\/div>\n    <div class=\"cart-row\">\n      <div class=\"cart-column\">\n        <div>Costi di spedizione<\/div>\n        [%if(order.shipping){%]\n        [%if(order.spendAtLeast){%]\n        <div class=\"text-small-widget\">Nessun costo con una spesa di almeno [%= (order.spendAtLeast || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n        [%}%]\n        [%}%]\n      <\/div>\n      <div class=\"cart-column cart-column-fit\">[%= (order.shipping || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n    <\/div>\n    [%}%]\n    <div class=\"cart-row\">\n      <div class=\"cart-column\">\n        [%if(order.totalOld){%]\n          <div class=\"text-small-widget\">L'importo effettivo che ti sarà addebitato è di <b>[%= (order.total || 0).toFixed(2).replace('.',',') %] &euro;<\/b><\/div>        \n        [%}%]\n        <div>Totale<\/div>\n      <\/div>\n      <div class=\"cart-column cart-column-fit\">\n        [%if(order.totalOld){%]\n        <div class=\"total-old\">[%= (order.totalOld || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n        [%}%]\n        <div>[%= (order.total || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n  <\/div>\n  <\/div>     \n  \n  <br>\n  <div class=\"field-widget\">\n  <div class=\"text-center-widget\">\n    [%if(order.state.id == 2){%]\n      [%if(!order.charge || (order.charge && !order.charge.captured)){%]\n      <div class=\"button-widget\" onclick=\"widgets.cancelOrder()\">Annulla ordine<\/div>\n      [%}%]\n    [%}else{%]\n      [%if(order.state.id == 6 && order.receiptUrl){%]\n        [%if(!order.refund){%]\n          <div class=\"button-widget\" onclick=\"widgets.refundOrder(true)\">[%= widgets.getSvg('refund') %] Richista reso<\/div>\n        [%}%]\n      [%}%]\n      [%if(order.state.id == 4 || order.state.id == 6 || order.state.id == 8 || order.state.id == 3 || order.state.id == 5){%]\n        <div class=\"button-widget\" onclick=\"widgets.archiveOrder()\">
351[%= widgets.getSvg('archive') %] Archivia ordine<\/div>\n      [%}%]\n    [%}%]\n    [%if(order.payment.id == 2 && order.receiptUrl){%]\n      <div class=\"button-widget\" onclick=\"window.open('[%=order.receiptUrl%]')\">[%= widgets.getSvg('receipt') %] Ricevuta Stripe<\/div>      \n    [%}%]\n  <\/div>\n  <\/div>\n \n<\/div>\n\n\n[%if(order.gift.id){%]\n  <div class=\"field-widget\">\n    <img src=\"https://ubik-media.s3.amazonaws.com/customevents/[%=order.gift.id%]/[%=order.gift.id%]-1800x720.jpg?t=[%=order.gift.t%]\" />\n  <\/div>\n[%}%]\n\n","url":"ui/widgets/account/order-detail.html"},{"code":"[%\n  var account = widgets.getAccount() || {};\n  var accountOrder = (account.order || {});\n  var order = accountOrder.item || {};\n%]\n\n\n<div class=\"empty-widget\">\n  <div class=\"message-widget\">[%= order.message || '-' %]<\/div>\n  <div class=\"button-widget\" onclick=\"widgets.selectOrder()\">Visualizza ordini<\/div>\n<\/div>","url":"ui/widgets/account/order-not-found.html"},{"code":"[%\n  var account = widgets.getAccount() || {};\n  var me = account.me || {};\n  var orders = me.orders || [];\n%]\n\n<div class=\"profile-widget profile-orders-widget\">\n  <div class=\"f_t\" data-resource=\"ui/widgets/account/profile-card.html\"><\/div>\n<\/div>\n\n<div class=\"connected-account-info small-info\">\n  <div class=\"name-info\"><div class=\"icon-widget\">[%= widgets.getSvg('trunk')%]<\/div> ORDINI<\/div>\n  <div class=\"orders-widget\">\n    <div class=\"order-widget order-header\">\n      <div class=\"order-number\">Numero<\/div>\n      <div class=\"order-date\">Data<\/div>\n      <div class=\"order-state\">Stato<\/div>\n      <div class=\"order-delivery\">Consegna<\/div>\n      <div class=\"order-total\">Totale<\/div>\n      <div class=\"order-detail\">&nbsp;<\/div>\n    <\/div>\n    [%if(orders.length){%]\n      [% orders.forEach(function(order){ %]\n      <div class=\"order-widget order-body\" onclick=\"widgets.selectOrder('[%=order.token%]')\">\n        <div class=\"order-number\">[%=(order.id || '-')%]<\/div>\n        <div class=\"order-date\">[%= Date.parse(order.date).format({day:'2-digit',month:'2-digit',year:'2-digit',hour:'2-digit',minute:'2-digit'},'it') %]<\/div>\n        [%if(order.state.id == 2){%]\n          <div class=\"order-state\">\n            [%order.infoRows.forEach(function(item){%]\n            <div class=\"order-state-item state-[%=item.id%]\">\n            <span>[%=item.state%] <b>[%=item.count%]<\/b><\/span>\n            <\/div>\n            [%});%]\n          <\/div>\n        [%}else{%]\n          <div class=\"order-state state-[%=order.state.id%]\"><span>\n            [%if(order.state.icon){%]<div class=\"icon-widget\">[%= widgets.getSvg(order.state.icon) %]<\/div>[%}%] [%=order.state.name%]\n          <\/span><\/div>\n        [%}%]\n        <div class=\"order-delivery\">[%=(order.delivery.name || '-')%]<\/div>\n        <div class=\"order-total\">\n          [%if(order.totalOld){%]\n          <div class=\"total-old\">[%= (order.totalOld || 0).toFixed(2).replace('.',',') %] &euro;<\/div>\n          [%}%]\n          <div>[%=((order.total || 0).toFixed(2).replace('.',',') || '0')%] &euro;<\/div>\n        <\/div>\n        <div class=\"order-detail\">\n          <div class=\"button-widget button-small\" style=\"position:relative;\">[%if(order.countMessages > 0){%]<span class=\"badget-widget\">[%= order.countMessages %]<\/span> [%}%]Dettaglio<\/div>\n        <\/div>\n      <\/div>\n      [% }); %]\n    [%}else{%]\n      <div class=\"empty-widget\">\n        <div>Nessun ordine da visualizzare<\/div><br>\n        <div class=\"button-widget button-blue\" onclick=\"widgets.fire('goTo',{what:'cart'})\">\n          <span>[%=widgets.getSvg('shopping')%]<\/span>\n          Vai al carrello\n        <\/div>\n      <\/div>\n    [%}%]\n  <\/div>\n<\/div>","url":"ui/widgets/account/order-list.html"},{"code":"[%  \n  var account =  widgets.getAccount() || {}; \n  var me = account.me || {};\n%]\n<div class=\"profile-me-widget\">\n  <div class=\"profile-photo-widget\"[%if(me.photo){%] style=\"background-image:url([%=me.photo%])\"[%}%]>[%if(!me.photo){%][%= widgets.getSvg('user') %][%}%]<\/div>\n  <div class=\"profile-info-widget\">\n    <div class=\"name-widget\">[%= me.name %] [%= me.surname %]<\/div>\n    <div class=\"email-widget\">\n      [%if(me.email.indexOf('privaterelay.appleid.com') >= 0){%]\n        EMAIL PRIVATA\n      [%}else{%]\n        [%= me.email %]\n      [%}%]\n    <\/div>\n    [%if(me.bio){%]\n    <div class=\"bio-widget\">[%= me.bio %]<\/div>\n    [%}%]\n  <\/div>\n<\/div>\n\n<div class=\"profile-community-widget\" onclick=\"widgets.fire('goTo',{what:'iolettore'})\">\n  <div class=\"icon-widget logo-iolettore\">[%= widgets.getSvg('iolettore') %]<\/div>\n  <div>\n    <div class=\"detail-widget\">Scopri la community<\/div>\n    <div class=\"title-widget\">my ubik è l\u2019app che ti porta in libreria!<\/div>\n  <\/div>\n  <div class=\"icon-widget\">[%= widgets.getSvg('continue') %]<\/div>\n<\/div>\n\n<div class=\"profile-menu-widget\">\n  <div class=\"menu-item-widget item-orders\" onclick=\"widgets.fire('goTo',{what:'orders'})\"><div class=\"icon-widget\">[%= widgets.getSvg('trunk') %]<\/div> I miei ordini<\/div>\n  <div class=\"menu-item-widget item-profile item-selected\" onclick=\"widgets.fire('goTo',{what:'profile'})\"><div class=\"icon-widget\">[%= widgets.getSvg('user') %]<\/div> Profilo<\/div>\n<\/div>\n","url":"ui/widgets/account/profile-card.html"},{"code":"[%  \n  var account =  widgets.getAccount() || {}; \n  var me = account.me || {};\n%]\n<form onsubmit=\"return widgets.personalData(this);\" class=\"form-widget nopad-widget\">\n  <div class=\"row-widget\">\n    <div class=\"column-widget\">\n      <div class=\"form-title\">Dati Personali<\/div>\n    <\/div>\n    <div class=\"column-widget text-right-widget\">\n      <div class=\"button-widget\" onclick=\"widgets.setAccountTarget()\">Chiudi<\/div>\n    <\/div>\n  <\/div>\n  <br>\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Nome<\/label>
351\n    <input class=\"input-widget\" value=\"[%=me.name%]\" type=\"text\" name=\"name\" placeholder=\"Inserisci il tuo nome\" autocomplete=\"off\" data-required />\n  <\/div>\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Cognome<\/label>\n    <input class=\"input-widget\" value=\"[%=me.surname%]\" type=\"text\" name=\"surname\" placeholder=\"Inserisci il tuo cognome\" autocomplete=\"off\" data-required />\n  <\/div>\n  <!-- <div class=\"field-widget\">\n    <label class=\"label-widget\">Username<\/label>\n    <input class=\"input-widget\" value=\"[%=me.username%]\" type=\"text\" name=\"username\" placeholder=\"Inserisci il tuo cognome\" autocomplete=\"off\" data-required />\n  <\/div> -->\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Email<\/label>\n    <input class=\"input-widget\" value=\"[%=me.email%]\" type=\"text\" name=\"email\" placeholder=\"Inserisci il tuo cognome\" autocomplete=\"off\" data-required />\n  <\/div>\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Bio<\/label>\n    <textarea class=\"textarea-widget\" name=\"description\" placeholder=\"Inserisci il tuo cognome\" autocomplete=\"off\" data-required>[%= (me.bio || '') %]<\/textarea>\n  <\/div>\n  <div class=\"field-widget\">\n    <label>\n      <input type=\"checkbox\" class=\"filled-in\" checked disabled>\n      <span>Accetto le <a href=\"https://www.ubiklibri.it/privacy.html\" target=\"_blank\">condizioni di utilizzo<\/a><\/span>\n    <\/label>\n  <\/div>\n  <div class=\"field-widget\">\n    <label>\n      <input type=\"checkbox\" name=\"privacy1\" class=\"filled-in\"[%if(me.privacy1){%] checked[%}%]>\n      <span>Iscriviti alla newsletter e rimani sempre aggiornato sul mondo my ubik.<\/span>\n    <\/label>\n  <\/div>\n  <div class=\"field-widget\">\n    <label>\n      <input type=\"checkbox\" name=\"privacy2\" class=\"filled-in\"[%if(me.privacy2){%] checked[%}%]>\n      <span>Le tue recensioni potranno essere pubblicate su newsletter e campagne di comunicazione.<\/span>\n    <\/label>\n  <\/div>      \n  <br>\n  <div class=\"field-widget\">\n    <input type=\"hidden\" name=\"id\" value=\"[%= me.id %]\" />\n    <button type=\"submit\" class=\"button-widget button-fullwidth button-blue button-large\">Modifica<\/button>\n  <\/div>\n<\/form>","url":"ui/widgets/account/change-data.html"},{"code":"[%\n  var account = widgets.getAccount() || {};\n  var accountOrder = account.order || {};\n  var order = accountOrder.item || {};\n  var refundReasons = order.refundReasons || [];\n%]\n\n<div class=\"row-widget\">\n  <div class=\"column-widget\"><div class=\"button-widget\" onclick=\"widgets.refundOrder(false)\">[%= widgets.getSvg('back') %] Ordine<\/div><\/div>\n  <div class=\"column-widget\"><\/div>\n<\/div>\n\n<div class=\"connected-account-info\">\n  <div class=\"name-info\">Reso ordine<\/div>\n  <div class=\"step-content\">\n    <div class=\"field-widget\">\n    [% refundReasons.forEach(function(item){ %]\n      <div class=\"step-radio[%if(item.id == accountOrder.refundReasonId){%] selected[%}%]\" onclick=\"widgets.refundOrder([%=item.id%])\">\n      <div class=\"step-radio-wrap\">\n        <div class=\"radio-icon\"><\/div>\n        <div class=\"radio-label\">[%=item.name%]<\/div>\n      <\/div>\n      <\/div>\n    [% }); %]  \n    <\/div>\n    <div class=\"field-widget\">\n      <div class=\"label-widget\">Motivo del rimborso?<\/div>\n      <textarea class=\"textarea-widget\" placeholder=\"Scrivi un motivo...\" onkeyup=\"widgets.refundOrder(this.value)\"><\/textarea> \n    <\/div>\n  <\/div>  \n  \n  <div class=\"text-center-widget\">\n  [%if(accountOrder.refundReasonId){%]\n    <div class=\"button-widget button-green\" onclick=\"widgets.refundOrder()\">[%= widgets.getSvg('checked') %] Conferma<\/div>\n  [%}else{%]\n    <div class=\"button-widget button-green\" disabled>[%= widgets.getSvg('checked') %] Conferma<\/div>\n  [%}%]\n  <\/div>\n   \n<\/div>","url":"ui/widgets/account/order-refund.html"},{"code":"[%  \n  var account =  widgets.getAccount() || {}; \n  var me = account.me || {};\n%]\n<form onsubmit=\"return widgets.changePassword(this);\" class=\"form-widget nopad-widget\">\n  <div class=\"row-widget\">\n    <div class=\"column-widget\">\n      <div class=\"form-title\">Dati di accesso<\/div>\n    <\/div>\n    <div class=\"column-widget text-right-widget\">\n      <div class=\"button-widget\" onclick=\"widgets.setAccountTarget()\">Chiudi<\/div>\n    <\/div>\n  <\/div>\n  <br>\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Password attuale<\/label>\n    <input class=\"input-widget\" type=\"password\" name=\"oldPassword\" placeholder=\"Inserisci la password attuale\" autocomplete=\"off\" data-required />\n  <\/div>\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Nuova password<\/label>\n    <input class=\"input-widget\" type=\"password\" name=\"newPassword\" placeholder=\"Inserisci la tua nuova password\" autocomplete=\"off\" data-required data-password-validation />\n  <\/div>\n  <div class=\"field-widget\">\n    <label class=\"label-widget\">Conferma nuova password<\/label>\n    <input class=\"input-widget\" type=\"password\" name=\"confirmNewPassword\" placeholder=\"Ripeti la tua nuova password\" autocomplete=\"off\" data-required />\n  <\/div>\n  <br>\n  <div class=\"field-widget\">\n    <input type=\"hidden\" name=\"id\" value=\"[%= me.id %]\" />\n    <button type=\"submit\" class=\"button-widget button-fullwidth button-blue button-large\">Modifica<\/button>
351\n  <\/div>\n<\/form>","url":"ui/widgets/account/change-password.html"},{"code":"[%\n  var account = widgets.getAccount() || {};\n  var accountOrder = account.order || {};\n  var order = accountOrder.item || {};\n  var messages = accountOrder.messages || [];\n%]\n<div class=\"row-widget\">\n  <div class=\"column-widget\"><div class=\"button-widget\" onclick=\"widgets.chatOrder()\">[%= widgets.getSvg('back') %] Ordine<\/div><\/div>\n  <div class=\"column-widget text-right-widget\"><\/div>\n<\/div>\n\n\n<div class=\"chat-widget\">\n  <div class=\"chat-header-widget\">\n    <div class=\"chat-image\">\n      [%= widgets.getSvg('store') %]\n    <\/div>\n    <div class=\"chat-info\">\n      <div class=\"chat-name-widget\">[%= order.store.name %]<\/div>\n      <div class=\"chat-email-widget\">[%= order.store.email %]<\/div>\n    <\/div>\n  <\/div>\n  \n  <div class=\"chat-body-widget\">\n    [% messages.forEach(function(item){ %]\n      <div class=\"chat-item-wrap-widget[%if(item.isUser){%] me-widget[%}%]\">\n      <div class=\"chat-item-widget\">
351\n        [%= ( item.message || '' ).replace(/\\n/g, '<br>') %]\n        <div class=\"chat-date-widget\">[%= Date.parse(item.date).format({day:'2-digit',month:'2-digit',year:'2-digit', hour:'2-digit',minute:'2-digit'},'it') %]<\/div>\n      <\/div>\n      <\/div>\n    [% }); %]\n  <\/div>\n  \n  <div class=\"chat-footer-widget\">\n    <div class=\"chat-message-widget\">\n      <textarea id=\"message-[%=order.id%]\" class=\"textarea-widget\" placeholder=\"Scrivi messaggio...\"><\/textarea>\n    <\/div>\n    <div class=\"chat-send-widget\" onclick=\"widgets.sendMessageOrder(document.getElementById('message-[%=order.id%]'))\">[%=widgets.getSvg('plane')%]<\/div>\n  <\/div>\n<\/div>  \n\n\n\n","url":"ui/widgets/account/order-chat.html"},{"code":"<div class=\"find-store-list\">\n<div class=\"store-toolbar\">\n  <div class=\"ux-input has-icon-left\">\n  <div class=\"ux-svg\" data-icon=\"target\" onclick=\"widgets.findStoreCurrentPosition(this);\"><\/div>\n  <input type=\"text\" placeholder=\"Cerca per città, regione, via o cap\" onkeyup=\"widgets.findStore(this.value, true)\">\n  <\/div>\n<\/div>\n<div class=\"f_t\" data-widget=\"true\" data-find-store-list=\"true\" data-resource=\"ui/widgets/find-store-v2/inline-items.html\"><\/div>\n<\/div>\n<div class=\"find-store-map f_t\" data-resource=\"ui/widgets/find-store-v2/map.html\"><\/div>\n","url":"ui/widgets/find-store-v2/inline-body.html"},{"code":"[%if(window.google && window.google.maps){%]\n  <div class=\"store-map\"><\/div>\n[%}else{%]\n  <div class=\"form-widget\">\n    <div class=\"form-title\">Google Maps<\/div>\n    <p class=\"form-description\">Per visualizzare la mappa devi attivare API google maps<\/p><br>\n  <\/div> \n[%}%]\n","url":"ui/widgets/find-store-v2/map.html"},{"code":"[%\n  var stores = widgets.getStores();\n  stores.sort(function(a,b){\n    return (b.selected ? 1 : 0) - (a.selected ? 1 : 0);\n  });\n%]\n<div class=\"store-items\">\n  [%stores.forEach(function(store){%]\n  <div class=\"store-item\">\n    <div class=\"ux-label-medium\">[%=store.name%]<\/div>\n    [%if(store.address){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"shop\"><\/div>[%=store.address%]<\/div>[%}%]\n    [%if(store.phone){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"phone\"><\/div>[%=store.phone%]<\/div>[%}%]\n    [%if(store.email){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"e-mail\"><\/div>[%=store.email%]<\/div>[%}%]\n\n    [%if(store.facebook || store.instagram || store.tiktok){%]\n    <div class=\"ux-socials\">\n    [%if(store.facebook){%]<a class=\"ux-svg is-small\" data-icon=\"facebook\" href=\"[%=store.facebook%]\" target=\"_blank\"><\/a>[%}%]\n    [%if(store.instagram){%]<a class=\"ux-svg is-small\" data-icon=\"instagram\" href=\"[%=store.instagram%]\" target=\"_blank\"><\/a>[%}%]\n    [%if(store.tiktok){%]<a class=\"ux-svg is-small\" data-icon=\"tiktok\" href=\"[%=store.tiktok%]\" target=\"_blank\"><\/a>[%}%]\n    <\/div>\n    [%}%]\n\n    <div class=\"ux-actions\">\n    <div class=\"ux-button is-small is-text\" onclick=\"widgets.fire('goTo',{what:'shop',id:[%=store.id%]})\">Visita pagina<\/div>\n    <div class=\"ux-button is-small is-black\" onclick=\"widgets.fire('goTo',{what:'shop-address',id:[%=store.id%]})\"><div class=\"ux-svg is-small is-left\" data-icon=\"pin-map\"><\/div>Indicazioni<\/div>\n    <\/div>\n\n  <\/div>\n  [%});%]\n<\/div>","url":"ui/widgets/find-store-v2/shop-items.html"},{"code":"[%\n  var stores = widgets.getStores();\n  stores.sort(function(a,b){\n    return (b.selected ? 1 : 0) - (a.selected ? 1 : 0);\n  });\n%]\n<div class=\"store-items\">\n  [%stores.forEach(function(store){ %]\n  <div class=\"store-item\">\n    <div class=\"ux-label-medium\">[%= store.name %]<\/div>\n    [%if(store.address){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"shop\"><\/div>[%=store.address%]<\/div>[%}%]\n    [%if(store.phone){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"phone\"><\/div>[%=store.phone%]<\/div>[%}%]\n    [%if(store.email){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"e-mail\"><\/div>[%=store.email%]<\/div>[%}%]\n\n    [%if(store.facebook || store.instagram || store.tiktok){%]\n    <div class=\"ux-socials\">\n    [%if(store.facebook){%]<a class=\"ux-svg is-small\" data-icon=\"facebook\" href=\"[%=store.facebook%]\" target=\"_blank\"><\/a>[%}%]\n    [%if(store.instagram){%]<a class=\"ux-svg is-small\" data-icon=\"instagram\" href=\"[%=store.instagram%]\" target=\"_blank\"><\/a>[%}%]\n    [%if(store.tiktok){%]<a class=\"ux-svg is-small\" data-icon=\"tiktok\" href=\"[%=store.tiktok%]\" target=\"_blank\"><\/a>[%}%]\n    <\/div>\n    [%}%]\n\n    <div class=\"ux-actions\">\n    <div class=\"ux-button is-small is-text\" onclick=\"widgets.fire('goTo',{what:'shop',id:[%=store.id%]})\">Visita pagina<\/div>\n    [%if(store.selected){%]\n    <div class=\"ux-button is-small is-text\"><div class=\"ux-svg is-small is-left\" data-icon=\"check-big\"><\/div>La tua libreria<\/div>\n    [%}else{%]\n    <div class=\"ux-button is-small is-black\" onclick=\"widgets.setCartStore([%=store.id%])\">Imposta come preferita<\/div>\n    [%}%]\n    <\/div>\n\n  <\/div>\n  [%});%]\n<\/div>","url":"ui/widgets/find-store-v2/inline-items.html"},{"code":"<div class=\"find-store-widget find-store-v2\" id=\"find-store-widget\">\n  <div class=\"find-store-overlay\" onclick=\"widgets.closeFindStore();\"><\/div>\n  <div class=\"find-store\" data-resource=\"ui/widgets/find-store-v2/store-body.html\"><\/div>\n<\/div>","url":"ui/widgets/find-store-v2/store-append.html"},{"code":"<div class=\"find-store-widget find-store-v2 is-inline\">\n<div class=\"find-store\" data-resource=\"ui/widgets/find-store-v2/inline-body.html\"><\/div>\n<\/div>","url":"ui/widgets/find-store-v2/inline-append.html"},{"code":"<div class=\"find-store-list\">\n<div class=\"store-toolbar\">\n  <div class=\"ux-button is-small is-icon-only\" onclick=\"widgets.closeFindShop();\"><div class=\"ux-svg\" data-icon=\"close-x\"><\/div><\/div>\n  <div class=\"ux-input has-icon-left\">\n    <div class=\"ux-svg\" data-icon=\"target\" onclick=\"widgets.findStoreCurrentPosition(this);\"><\/div>\n    <input type=\"text\" placeholder=\"Cerca per città, regione, via o cap\" onkeyup=\"widgets.findShop(this.value, true)\">\n  <\/div>\n<\/div>\n<div class=\"f_t\" data-widget=\"true\" data-find-store-list=\"true\" data-resource=\"ui/widgets/find-store-v2/shop-items.html\"><\/div>\n<\/div>\n<div class=\"find-store-map f_t\" data-resource=\"ui/widgets/find-store-v2/map.html\"><\/div>\n","url":"ui/widgets/find-store-v2/shop-body.html"},{"code":"[%\n  var stores = widgets.getStores();\n  stores.sort(function(a,b){\n    return (b.selected ? 1 : 0) - (a.selected ? 1 : 0);\n  });\n%]\n<div class=\"store-items\">
351\n  [%stores.forEach(function(store){\n      var payments = store.paymentTypes || [];\n  %]\n  <div class=\"store-item\">\n\n    <div class=\"ux-label-medium\">[%=store.name%]<\/div>\n    [%if(store.address){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"shop\"><\/div>[%=store.address%]<\/div>[%}%]\n    [%if(store.phone){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"phone\"><\/div>[%=store.phone%]<\/div>[%}%]\n    [%if(store.email){%]<div class=\"ux-label-small\"><div class=\"ux-svg is-small is-inline is-left\" data-icon=\"e-mail\"><\/div>[%=store.email%]<\/div>[%}%]\n\n    <div class=\"ux-actions\">\n      <div class=\"ux-dropdown\" data-position=\"bottomright\">\n      <div class=\"ux-dropdown-button\">\n        <div class=\"ux-button is-small is-text\">Pagamenti supportati<\/div>\n      <\/div>\n      <div class=\"ux-dropdown-list\">\n      <ul>\n      <li><a><div class=\"ux-svg is-small\">[%= widgets.getSvg('new/cash')%]<\/div>Pagamento in libreria<\/a><\/li>\n      [% payments.forEach(function(payment){%]\n      <li><a><div class=\"ux-svg is-small\">[%= widgets.getSvg('new/'+payment.icon)%]<\/div>[%=payment.name%]<\/a><\/li>\n      [% }); %]\n      <\/ul>\n      <\/div>\n      <\/div>\n\n      [%if(store.selected){%]\n      <div class=\"ux-button is-small is-text\"><div class=\"ux-svg is-small is-left\" data-icon=\"check-big\"><\/div>La tua libreria<\/div>\n      [%}else{%]\n      <div class=\"ux-button is-small is-black\" onclick=\"widgets.setCartStore([%=store.id%])\">Seleziona<\/div>\n      [%}%]\n    <\/div>\n  <\/div>\n  [%});%]\n<\/div>","url":"ui/widgets/find-store-v2/store-items.html"},{"code":"<div class=\"find-store-list\">\n<div class=\"store-toolbar\">\n  <div class=\"ux-button is-small is-icon-only\" onclick=\"widgets.closeFindStore();\"><div class=\"ux-svg\" data-icon=\"close-x\"><\/div><\/div>\n  <div class=\"ux-input has-icon-left\">\n    <div class=\"ux-svg\" data-icon=\"target\" onclick=\"widgets.findStoreCurrentPosition(this);\"><\/div>\n    <input type=\"text\" placeholder=\"Cerca per città, regione, via o cap\" onkeyup=\"widgets.findStore(this.value, true)\">\n  <\/div>\n<\/div>\n<div class=\"f_t\" data-widget=\"true\" data-find-store-list=\"true\" data-resource=\"ui/widgets/find-store-v2/store-items.html\"><\/div>\n<\/div>\n<div class=\"find-store-map f_t\" data-resource=\"ui/widgets/find-store-v2/map.html\"><\/div>\n","url":"ui/widgets/find-store-v2/store-body.html"},{"code":"<div class=\"find-store-widget find-store-v2 find-shop-widget\" id=\"find-shop-widget\">\n  <div class=\"find-store-overlay\" onclick=\"widgets.closeFindShop();\"><\/div>\n  <div class=\"find-store\" data-resource=\"ui/widgets/find-store-v2/shop-body.html\"><\/div>\n<\/div>","url":"ui/widgets/find-store-v2/shop-append.html"},{"code":"<div class=\"f_t\" data-widget=\"true\" data-signin=\"true\" data-resource=\"ui/widgets/signin-wrap.html\"><\/div>  \n","url":"ui/widgets/signin.html"},{"code":"<div class=\"f_t\" data-widget=\"true\" data-signup=\"true\" data-resource=\"ui/widgets/signup-wrap.html\"><\/div>  \n","url":"ui/widgets/signup.html"},{"code":"[%if(f().api().authenticated){\n  var account = widgets.getAccount() || {};\n  var me = account.me || {};\n%]\n  <div class=\"button-widget button-text\"><span>[%=widgets.getSvg('user')%]<\/span> [%= me.name %] [%= me.surname %]<\/div>\n[%}else{%]\n  <div class=\"button-widget button-text\"><span>[%=widgets.getSvg('user')%]<\/span> Entra<\/div>\n[%}%]","url":"ui/widgets/signin-button-wrap.html"}]);
352window.onpopstate = function(event){
353  var state = event.state || {};
354  if(state.orderToken){
355    widgets.selectOrder(state.orderToken, true);
356  }else{
357    widgets.selectOrder(null, true);
358  }
359};
360
361window.italianProvinces = [
362{
363  "name": "Agrigento",
364  "value": "ag"
365},
366
367{
368  "name": "Alessandria",
369  "value": "al"
370},
371
372{
373  "name": "Ancona",
374  "value": "an"
375},
376
377{
378  "name": "Aosta",
379  "value": "ao"
380},
381
382{
383  "name": "Arezzo",
384  "value": "ar"
385},
386
387{
388  "name": "Ascoli Piceno",
389  "value": "ap"
390},
391
392{
393  "name": "Asti",
394  "value": "at"
395},
396
397{
398  "name": "Avellino",
399  "value": "av"
400},
401
402{
403  "name": "Bari",
404  "value": "ba"
405},
406
407{
408  "name": "Barletta-Andria-Trani",
409  "value": "bt"
410},
411
412{
413  "name": "Belluno",
414  "value": "bl"
415},
416
417{
418  "name": "Benevento",
419  "value": "bn"
420},
421
422{
423  "name": "Bergamo",
424  "value": "bg"
425},
426
427{
428  "name": "Biella",
429  "value": "bi"
430},
431
432{
433  "name": "Bologna",
434  "value": "bo"
435},
436
437{
438  "name": "Bolzano",
439  "value": "bz"
440},
441
442{
443  "name": "Brescia",
444  "value": "bs"
445},
446
447{
448  "name": "Brindisi",
449  "value": "br"
450},
451
452{
453  "name": "Cagliari",
454  "value": "ca"
455},
456
457{
458  "name": "Caltanissetta",
459  "value": "cl"
460},
461
462{
463  "name": "Campobasso",
464  "value": "cb"
465},
466
467{
468  "name": "Carbonia-iglesias",
469  "value": "ci"
470},
471
472{
473  "name": "Caserta",
474  "value": "ce"
475},
476
477{
478  "name": "Catania",
479  "value": "ct"
480},
481
482{
483  "name": "Catanzaro",
484  "value": "cz"
485},
486
487{
488  "name": "Chieti",
489  "value": "ch"
490},
491
492{
493  "name": "Como",
494  "value": "co"
495},
496
497{
498  "name": "Cosenza",
499  "value": "cs"
500},
501
502{
503  "name": "Cremona",
504  "value": "cr"
505},
506
507{
508  "name": "Crotone",
509  "value": "kr"
510},
511
512{
513  "name": "Cuneo",
514  "value": "cn"
515},
516
517{
518  "name": "Enna",
519  "value": "en"
520},
521
522{
523  "name": "Fermo",
524  "value": "fm"
525},
526
527{
528  "name": "Ferrara",
529  "value": "fe"
530},
531
532{
533  "name": "Firenze",
534  "value": "fi"
535},
536
537{
538  "name": "Foggia",
539  "value": "fg"
540},
541
542{
543  "name": "Forlì-Cesena",
544  "value": "fc"
545},
546
547{
548  "name": "Frosinone",
549  "value": "fr"
550},
551
552{
553  "name": "Genova",
554  "value": "ge"
555},
556
557{
558  "name": "Gorizia",
559  "value": "go"
560},
561
562{
563  "name": "Grosseto",
564  "value": "gr"
565},
566
567{
568  "name": "Imperia",
569  "value": "im"
570},
571
572{
573  "name": "Isernia",
574  "value": "is"
575},
576
577{
578  "name": "La spezia",
579  "value": "sp"
580},
581
582{
583  "name": "L'aquila",
584  "value": "aq"
585},
586
587{
588  "name": "Latina",
589  "value": "lt"
590},
591
592{
593  "name": "Lecce",
594  "value": "le"
595},
596
597{
598  "name": "Lecco",
599  "value": "lc"
600},
601
602{
603  "name": "Livorno",
604  "value": "li"
605},
606
607{
608  "name": "Lodi",
609  "value": "lo"
610},
611
612{
613  "name": "Lucca",
614  "value": "lu"
615},
616
617{
618  "name": "Macerata",
619  "value": "mc"
620},
621
622{
623  "name": "Mantova",
624  "value": "mn"
625},
626
627{
628  "name": "Massa-Carrara",
629  "value": "ms"
630},
631
632{
633  "name": "Matera",
634  "value": "mt"
635},
636
637{
638  "name": "Medio Campidano",
639  "value": "vs"
640},
641
642{
643  "name": "Messina",
644  "value": "me"
645},
646
647{
648  "name": "Milano",
649  "value": "mi"
650},
651
652{
653  "name": "Modena",
654  "value": "mo"
655},
656
657{
658  "name": "Monza e della Brianza",
659  "value": "mb"
660},
661
662{
663  "name": "Napoli",
664  "value": "na"
665},
666
667{
668  "name": "Novara",
669  "value": "no"
670},
671
672{
673  "name": "Nuoro",
674  "value": "nu"
675},
676
677{
678  "name": "Ogliastra",
679  "value": "og"
680},
681
682{
683  "name": "Olbia-Tempio",
684  "value": "ot"
685},
686
687{
688  "name": "Oristano",
689  "value": "or"
690},
691
692{
693  "name": "Padova",
694  "value": "pd"
695},
696
697{
698  "name": "Palermo",
699  "value": "pa"
700},
701
702{
703  "name": "Parma",
704  "value": "pr"
705},
706
707{
708  "name": "Pavia",
709  "value": "pv"
710},
711
712{
713  "name": "Perugia",
714  "value": "pg"
715},
716
717{
718  "name": "Pesaro e Urbino",
719  "value": "pu"
720},
721
722{
723  "name": "Pescara",
724  "value": "pe"
725},
726
727{
728  "name": "Piacenza",
729  "value": "pc"
730},
731
732{
733  "name": "Pisa",
734  "value": "pi"
735},
736
737{
738  "name": "Pistoia",
739  "value": "pt"
740},
741
742{
743  "name": "Pordenone",
744  "value": "pn"
745},
746
747{
748  "name": "Potenza",
749  "value": "pz"
750},
751
752{
753  "name": "Prato",
754  "value": "po"
755},
756
757{
758  "name": "Ragusa",
759  "value": "rg"
760},
761
762{
763  "name": "Ravenna",
764  "value": "ra"
765},
766
767{
768  "name": "Reggio di Calabria",
769  "value": "rc"
770},
771
772{
773  "name": "Reggio nell'Emilia",
774  "value": "re"
775},
776
777{
778  "name": "Rieti",
779  "value": "ri"
780},
781
782{
783  "name": "Rimini",
784  "value": "rn"
785},
786
787{
788  "name": "Roma",
789  "value": "rm"
790},
791
792{
793  "name": "Rovigo",
794  "value": "ro"
795},
796
797{
798  "name": "Salerno",
799  "value": "sa"
800},
801
802{
803  "name": "Sassari",
804  "value": "ss"
805},
806
807{
808  "name": "Savona",
809  "value": "sv"
810},
811
812{
813  "name": "Siena",
814  "value": "si"
815},
816
817{
818  "name": "Siracusa",
819  "value": "sr"
820},
821
822{
823  "name": "Sondrio",
824  "value": "so"
825},
826
827{
828  "name": "Taranto",
829  "value": "ta"
830},
831
832{
833  "name": "Teramo",
834  "value": "te"
835},
836
837{
838  "name": "Terni",
839  "value": "tr"
840},
841
842{
843  "name": "Torino",
844  "value": "to"
845},
846
847{
848  "name": "Trapani",
849  "value": "tp"
850},
851
852{
853  "name": "Trento",
854  "value": "tn"
855},
856
857{
858  "name": "Treviso",
859  "value": "tv"
860},
861
862{
863  "name": "Trieste",
864  "value": "ts"
865},
866
867{
868  "name": "Udine",
869  "value": "ud"
870},
871
872{
873  "name": "Varese",
874  "value": "va"
875},
876
877{
878  "name": "Venezia",
879  "value": "ve"
880},
881
882{
883  "name": "Verbano-Cusio-Ossola",
884  "value": "vb"
885},
886
887{
888  "name": "Vercelli",
889  "value": "vc"
890},
891
892{
893  "name": "Verona",
894  "value": "vr"
895},
896
897{
898  "name": "Vibo valentia",
899  "value": "vv"
900},
901
902{
903  "name": "Vicenza",
904  "value": "vi"
905},
906
907{
908  "name": "Viterbo",
909  "value": "vt"
910}
911
912];
913(function(){
914  var widgets = function(){
915    var _widgets = {
916      svg:{
917        'newsletter':[
918        {
919          path:'M14.432,4.4 L14.432,10.04 L17.488,12.255 L17.561,12.308 L17.561,21.96 L-0,21.96 L-0,12.308 L0.073,12.255 L3.129,10.04 L3.129,4.4 L14.432,4.4 z M0.352,12.694 L0.352,21.608 L16.695,21.608 L0.352,12.694 z M17.209,12.694 L9.148,17.091 L17.209,21.488 L17.209,12.694 z M14.08,4.752 L3.481,4.752 L3.481,14 L8.78,16.891 L14.08,14 L14.08,4.752 z M11.303,11.44 L11.303,11.792 L6.258,11.792 L6.258,11.44 L11.303,11.44 z M11.303,8.311 L11.303,8.663 L6.258,8.663 L6.258,8.311 L11.303,8.311 z M3.129,10.474 L0.505,12.377 L3.129,13.808 L3.129,10.474 z M14.432,10.474 L14.432,13.808 L17.056,12.377 L14.432,10.474 z',
920          fill:'#847E7D'
921        },
922        {
923          path:'M19.243,0 C20.766,0 22,1.234 22,2.757 C22,4.28 20.766,5.514 19.243,5.514 C17.72,5.514 16.485,4.28 16.485,2.757 C16.485,1.234 17.72,0 19.243,0 z M19.243,0.352 C17.914,0.352 16.837,1.428 16.837,2.757 C16.837,4.085 17.914,5.162 19.243,5.162 C20.571,5.162 21.648,4.085 21.648,2.757 C21.648,1.428 20.571,0.352 19.243,0.352 z M20.635,1.652 L20.717,1.655 L20.775,1.694 C20.844,1.762 20.844,1.874 20.775,1.943 L18.898,3.82 C18.829,3.889 18.718,3.889 18.649,3.82 L17.71,2.881 C17.642,2.813 17.642,2.701 17.71,2.632 C17.779,2.564 17.89,2.564 17.959,2.632 L18.773,3.447 L20.526,1.694 C20.591,1.65 20.555,1.664 20.635,1.652 z',
924          fill:'#40AA6B'
925        }
926        ],
927        'card/satispay':[
928        {
929          path:'M3.902,4.89 L4.51,5.498 C4.566,5.553 4.526,5.649 4.447,5.649 L3.143,5.649 L3.902,4.89 z M2.82,-0 L1.195,-0 C1.117,-0 1.077,0.095 1.133,0.151 L1.886,0.903 L2.823,1.841 L3.746,2.763 L3.808,2.826 L3.746,2.888 L2.823,3.811 L1.886,4.748 L1.136,5.498 C1.081,5.553 1.12,5.649 1.199,5.649 L2.823,5.649 C2.847,5.649 2.869,5.639 2.886,5.623 L3.76,4.748 L4.745,3.763 L5.62,2.888 C5.655,2.854 5.655,2.798 5.62,2.763 L4.745,1.889 L2.883,0.026 C2.867,0.01 2.845,0.001 2.823,0.001 C2.822,0.001 2.821,-0 2.82,-0 z M18.087,1.931 C18.505,1.931 18.699,2.229 18.699,2.815 C18.699,3.448 18.374,3.772 17.862,3.772 C17.642,3.772 17.469,3.746 17.307,3.72 L17.307,2.266 C17.569,2.035 17.841,1.931 18.087,1.931 z M17.307,1.554 L17.255,1.554 L16.889,1.633 L16.889,5.384 L16.941,5.384 L17.307,5.305 L17.307,4.086 C17.48,4.123 17.642,4.149 17.846,4.149 C18.72,4.149 19.138,3.553 19.138,2.752 C19.138,1.936 18.72,1.554 18.181,1.554 C17.82,1.554 17.553,1.69 17.307,1.873 L17.307,1.554 z M22.244,1.627 L21.763,1.627 L22.606,4.05 L22.643,4.149 C22.47,4.573 22.355,4.756 21.9,5.08 L22.135,5.384 C22.585,5.101 22.857,4.798 23.077,4.17 L24,1.627 L23.524,1.627 L22.873,3.532 L22.837,3.532 L22.244,1.627 z M1.744,1.045 L0.901,1.889 L0.026,2.763 C-0.009,2.798 -0.009,2.854 0.026,2.888 L0.901,3.763 L1.744,4.607 L2.681,3.669 L1.9,2.888 L1.838,2.826 L1.9,2.763 L2.681,1.982 L1.744,1.045 z M15.591,1.554 C15.053,1.554 14.624,1.8 14.624,2.261 C14.624,3.108 15.895,2.904 15.895,3.417 C15.895,3.694 15.66,3.772 15.335,3.772 C15.121,3.772 14.901,3.736 14.655,3.684 L14.613,3.684 L14.613,4.07 C14.796,4.112 15.058,4.149 15.319,4.149 C15.853,4.149 16.334,3.971 16.334,3.375 C16.334,2.553 15.063,2.747 15.063,2.261 C15.063,1.988 15.33,1.931 15.586,1.931 C15.759,1.931 15.952,1.962 16.177,2.035 L16.219,2.035 L16.219,1.648 C16.02,1.586 15.806,1.554 15.591,1.554 z M8.059,1.554 C7.52,1.554 7.091,1.8 7.091,2.261 C7.091,3.108 8.362,2.904 8.362,3.417 C8.362,3.694 8.127,3.772 7.802,3.772 C7.588,3.772 7.368,3.736 7.122,3.684 L7.08,3.684 L7.08,4.07 C7.263,4.112 7.525,4.149 7.786,4.149 C8.32,4.149 8.801,3.971 8.801,3.375 C8.801,2.553 7.53,2.747 7.53,2.261 C7.53,1.988 7.797,1.931 8.053,1.931 C8.226,1.931 8.419,1.9
92962 8.644,2.035 L8.686,2.035 L8.686,1.648 C8.488,1.586 8.273,1.554 8.059,1.554 z M12.311,0.963 L12.27,0.963 L11.898,1.042 L11.898,1.627 L11.574,1.627 L11.574,1.994 L11.898,1.994 L11.898,3.5 C11.898,4.091 12.301,4.149 12.557,4.149 C12.767,4.149 12.934,4.107 13.081,4.055 L13.044,3.699 C12.913,3.741 12.746,3.778 12.641,3.778 C12.536,3.778 12.311,3.757 12.311,3.49 L12.311,1.994 L13.117,1.994 L13.117,1.627 L12.311,1.627 L12.311,0.963 z M20.979,2.941 L20.979,3.474 C20.775,3.621 20.514,3.767 20.284,3.767 C20.069,3.767 19.928,3.626 19.928,3.422 C19.928,3.139 20.127,3.066 20.305,3.04 L20.979,2.941 z M20.498,1.554 C20.21,1.554 19.849,1.622 19.619,1.711 L19.666,2.098 C19.944,1.973 20.284,1.931 20.42,1.931 C20.781,1.931 20.979,2.046 20.979,2.465 L20.979,2.632 L20.325,2.721 C20.032,2.763 19.488,2.847 19.488,3.453 C19.488,3.903 19.823,4.134 20.142,4.134 C20.503,4.134 20.77,3.961 20.99,3.793 L21,3.793 L21,4.139 L21.058,4.139 L21.398,4.071 L21.398,2.465 C21.398,1.769 21.016,1.554 20.498,1.554 z M10.674,2.941 L10.674,3.474 C10.47,3.621 10.209,3.767 9.978,3.767 C9.764,3.767 9.622,3.626 9.622,3.422 C9.622,3.139 9.821,3.066 9.999,3.04 L10.674,2.941 z M10.193,1.554 C9.905,1.554 9.544,1.622 9.314,1.711 L9.361,2.098 C9.638,1.973 9.978,1.931 10.114,1.931 C10.475,1.931 10.674,2.046 10.674,2.465 L10.674,2.632 L10.02,2.721 C9.727,2.763 9.183,2.847 9.183,3.453 C9.183,3.903 9.518,4.133 9.837,4.133 C10.198,4.133 10.465,3.961 10.685,3.793 L10.695,3.793 L10.695,4.139 L10.753,4.139 L11.093,4.071 L11.093,2.465 C11.093,1.769 10.711,1.554 10.193,1.554 z M13.593,4.137 L13.593,4.139 L13.595,4.139 L13.593,4.137 z M14.012,1.554 L13.959,1.554 L13.593,1.633 L13.593,4.137 L13.595,4.139 L13.647,4.139 L14.012,4.061 L14.012,1.554 z M14.012,0.706 L13.959,0.706 L13.593,0.784 L13.593,1.227 L13.595,1.229 L13.647,1.229 L14.012,1.151 L14.012,0.706 z M4.45,0 L3.14,0 L3.902,0.762 L4.513,0.151 C4.569,0.095 4.529,0 4.45,0 z',
930          fill:'#EF373F'
931        }
932        ],
933        'card/paypal':[
934        {
935          path:'M10.091,1.723 C10.224,1.723 10.31,1.785 10.349,1.91 L10.865,3.668 L12.107,1.84 C12.161,1.762 12.232,1.723 12.318,1.723 L13.22,1.723 C13.259,1.723 13.294,1.74 13.325,1.776 C13.355,1.806 13.368,1.845 13.372,1.887 C13.373,1.916 13.366,1.945 13.349,1.969 L10.361,6.281 C10.306,6.359 10.236,6.398 10.15,6.398 L9.248,6.398 C9.146,6.398 9.095,6.347 9.095,6.246 C9.095,6.183 9.415,5.715 10.056,4.84 C10.048,4.809 9.957,4.535 9.781,4.02 C9.605,3.504 9.441,3.023 9.289,2.578 C9.136,2.133 9.06,1.903 9.06,1.887 C9.06,1.848 9.076,1.811 9.107,1.776 C9.138,1.74 9.173,1.723 9.212,1.723 L10.091,1.723 z M6.47,2.59 C6.689,2.59 6.871,2.654 7.015,2.783 C7.16,2.912 7.232,3.09 7.232,3.316 C7.232,3.605 7.133,3.846 6.933,4.037 C6.734,4.229 6.49,4.324 6.201,4.324 C5.974,4.324 5.793,4.262 5.656,4.137 C5.519,4.012 5.451,3.84 5.451,3.621 C5.451,3.332 5.549,3.088 5.744,2.889 C5.939,2.69 6.181,2.59 6.47,2.59 z M6.26,1.641 C5.697,1.641 5.219,1.852 4.824,2.273 C4.43,2.695 4.232,3.191 4.232,3.762 C4.232,4.223 4.367,4.59 4.637,4.863 C4.906,5.137 5.267,5.273 5.721,5.273 C5.939,5.273 6.166,5.226 6.4,5.133 C6.634,5.039 6.822,4.914 6.963,4.758 C6.931,4.851 6.916,4.933 6.916,5.004 C6.916,5.129 6.966,5.191 7.068,5.191 L7.877,5.191 C8.025,5.191 8.111,5.117 8.134,4.968 L8.615,1.91 C8.622,1.863 8.611,1.82 8.58,1.781 C8.548,1.742 8.509,1.723 8.462,1.723 L7.572,1.723 C7.462,1.723 7.396,1.852 7.373,2.109 C7.162,1.797 6.791,1.641 6.26,1.641 z M2.276,1.043 C2.588,1.043 2.815,1.088 2.955,1.178 C3.096,1.268 3.143,1.457 3.096,1.746 C3.057,2.019 2.955,2.199 2.791,2.285 C2.627,2.371 2.393,2.414 2.088,2.414 L1.701,2.426 L1.901,1.172 C1.916,1.086 1.967,1.043 2.053,1.043 L2.276,1.043 z M2.885,0 L1.01,0 C0.862,0 0.78,0.074 0.764,0.223 L0.002,5.003 C-0.006,5.05 0.006,5.093 0.038,5.132 C0.069,5.171 0.108,5.191 0.155,5.191 L1.045,5.191 C1.201,5.191 1.287,5.117 1.303,4.968 L1.514,3.679 C1.522,3.617 1.549,3.566 1.596,3.527 C1.643,3.488 1.701,3.462 1.772,3.451 C1.842,3.439 1.908,3.433 1.971,3.433 C2.033,3.433 2.108,3.437 2.194,3.445 C2.279,3.453 2.334,3.457 2.358,3.457 C3.029,3.457 3.557,3.267 3.939,2.888 C4.322,2.51 4.514,1.984 4.514,1.312 C4.514,0.851 4.363,0.517 4.063,0.31 L4.063,0.311 C3.762,0.104 3.369,0 2.885,0 z',
936          fill:'#003087'
937        },
938        {
939          path:'M19.571,1.641 C20.11,1.641 20.481,1.797 20.684,2.109 C20.708,1.852 20.774,1.723 20.883,1.723 L21.774,1.723 C21.821,1.723 21.86,1.742 21.891,1.781 C21.922,1.82 21.934,1.863 21.926,1.91 L21.446,4.968 C21.422,5.117 21.336,5.191 21.188,5.191 L20.379,5.191 C20.278,5.191 20.227,5.129 20.227,5.004 C20.227,4.973 20.235,4.926 20.251,4.863 C20.266,4.801 20.274,4.765 20.274,4.758 C20.141,4.914 19.958,5.039 19.723,5.133 C19.489,5.226 19.258,5.273 19.032,5.273 C18.579,5.273 18.217,5.137 17.948,4.863 C17.678,4.59 17.544,4.223 17.544,3.762 C17.544,3.191 17.741,2.695 18.135,2.273 C18.53,1.852 19.008,1.641 19.571,1.641 z M19.782,2.59 C19.493,2.59 19.25,2.69 19.055,2.889 C18.86,3.088 18.762,3.332 18.762,3.621 C18.762,3.84 18.833,4.012 18.973,4.137 C19.114,4.262 19.297,4.324 19.524,4.324 C19.805,4.324 20.045,4.226 20.245,4.031 C20.444,3.836 20.543,3.598 20.544,3.316 C20.544,3.09 20.471,2.912 20.327,2.783 C20.182,2.654 20,2.59 19.782,2.59 z M23.848,0 L22.981,0 C22.894,-0 22.844,0.043 22.828,0.129 L22.066,5.003 L22.055,5.027 C22.055,5.066 22.07,5.103 22.102,5.138 C22.133,5.173 22.172,5.191 22.219,5.191 L22.992,5.191 C23.14,5.191 23.223,5.117 23.238,4.968 L24,0.176 L24,0.164 C24,0.055 23.949,0 23.848,0 L23.848,0 z M15.587,1.043 C15.759,1.043 15.895,1.051 15.997,1.066 C16.098,1.082 16.196,1.131 16.29,1.213 C16.384,1.295 16.431,1.414 16.431,1.57 C16.431,1.898 16.345,2.121 16.173,2.238 C16.001,2.355 15.743,2.414 15.399,2.414 L15.024,2.426 L15.224,1.172 C15.239,1.086 15.29,1.043 15.376,1.043 L15.587,1.043 z M16.196,0 L14.333,0 C14.177,0 14.091,0.074 14.075,0.223 L13.314,5.003 C13.306,5.05 13.317,5.093 13.349,5.132 C13.38,5.171 13.419,5.191 13.466,5.191 L14.427,5.191 C14.52,5.191 14.583,5.14 14.614,5.039 L14.825,3.679 C14.833,3.617 14.86,3.566 14.907,3.527 C14.954,3.488 15.013,3.462 15.083,3.451 C15.153,3.439 15.22,3.433 15.282,3.433 C15.345,3.433 15.419,3.437 15.50
9395,3.445 C15.591,3.453 15.646,3.457 15.669,3.457 C16.341,3.457 16.868,3.267 17.251,2.888 C17.634,2.51 17.825,1.984 17.825,1.312 C17.825,0.851 17.674,0.518 17.374,0.31 L17.374,0.311 C17.073,0.104 16.681,0 16.196,0 z',
940          fill:'#009CDE'
941        }
942        ],
943        'facebook':[
944        {
945          path:'M24,12.045 C24,5.416 18.628,0.045 12,0.045 C5.372,0.045 -0,5.416 -0,12.045 C-0,17.67 3.877,22.395 9.103,23.693 L9.103,15.71 L6.628,15.71 L6.628,12.045 L9.103,12.045 L9.103,10.465 C9.103,6.382 10.95,4.488 14.962,4.488 C15.722,4.488 17.034,4.638 17.573,4.788 L17.573,8.107 C17.292,8.079 16.8,8.06 16.186,8.06 C14.217,8.06 13.458,8.805 13.458,10.741 L13.458,12.045 L17.377,12.045 L16.702,15.71 L13.453,15.71 L13.453,23.955 C19.397,23.238 24,18.18 24,12.045 L24,12.045 z',
946          fill:'#3C5A9A'
947        }
948        ],
949        'apple':[
950        {
951          path:'M18.55,12.75 C18.584,16.382 21.736,17.591 21.771,17.606 C21.744,17.692 21.267,19.329 20.11,21.02 C19.11,22.482 18.072,23.939 16.436,23.969 C14.829,23.998 14.312,23.016 12.475,23.016 C10.638,23.016 10.064,23.939 8.543,23.998 C6.965,24.058 5.762,22.417 4.754,20.961 C2.693,17.981 1.118,12.541 3.233,8.869 C4.283,7.045 6.161,5.89 8.199,5.861 C9.749,5.831 11.212,6.904 12.16,6.904 C13.107,6.904 14.885,5.614 16.754,5.803 C17.537,5.836 19.733,6.119 21.144,8.184 C21.03,8.254 18.523,9.714 18.55,12.75 M15.53,3.832 C16.368,2.817 16.932,1.405 16.778,0 C15.57,0.049 14.109,0.805 13.243,1.819 C12.466,2.717 11.786,4.154 11.969,5.531 C13.316,5.636 14.692,4.847 15.53,3.832',
952          fill:'#000000'
953        }
954        ],
955        'google':[
956        {
957          path:'M23.76,12.267 C23.76,11.28 23.68,10.56 23.507,9.813 L12.24,9.813 L12.24,14.267 L18.853,14.267 C18.72,15.373 18,17.04 16.4,18.16 L16.378,18.309 L19.94,21.069 L20.187,21.093 C22.453,19 23.76,15.92 23.76,12.267',
958          fill:'#4285F4'
959        },
960        {
961          path:'M12.24,24 C15.48,24 18.2,22.933 20.187,21.093 L16.4,18.16 C15.387,18.867 14.027,19.36 12.24,19.36 C9.067,19.36 6.373,17.267 5.413,14.373 L5.273,14.385 L1.568,17.252 L1.52,17.387 C3.493,21.307 7.547,24 12.24,24',
962          fill:'#34A853'
963        },
964        {
965          path:'M5.413,14.373 C5.16,13.627 5.013,12.827 5.013,12 C5.013,11.173 5.16,10.373 5.4,9.627 L5.393,9.468 L1.643,6.555 L1.52,6.613 C0.707,8.24 0.24,10.067 0.24,12 C0.24,13.933 0.707,15.76 1.52,17.387 L5.413,14.373',
966          fill:'#FBBC05'
967        },
968        {
969          path:'M12.24,4.64 C14.493,4.64 16.013,5.613 16.88,6.427 L20.267,3.12 C18.187,1.187 15.48,-0 12.24,-0 C7.547,-0 3.493,2.693 1.52,6.613 L5.4,9.627 C6.373,6.733 9.067,4.64 12.24,4.64',
970          fill:'#EB4335'
971        }
972        ],
973        'card/bonifico':[
974        {
975          path:'M8.44,-0 L8.44,8.44 L-0,8.44 L-0,-0 L8.44,-0 z M12.264,0.789 Q12.441,0.789 12.547,0.906 Q12.653,1.024 12.653,1.213 L12.653,2.796 Q12.653,2.986 12.547,3.103 Q12.441,3.22 12.264,3.22 Q12.092,3.22 11.988,3.103 Q11.884,2.986 11.884,2.796 L11.884,1.214 Q11.884,1.024 11.988,0.906 Q12.092,0.789 12.264,0.789 L12.264,0.789 z M12.264,0.422 Q11.902,0.422 11.681,0.645 Q11.46,0.869 11.46,1.236 L11.46,2.778 Q11.46,3.145 11.681,3.366 Q11.902,3.587 12.264,3.587 Q12.631,3.587 12.854,3.366 Q13.077,3.145 13.077,2.778 L13.077,1.236 Q13.077,0.869 12.854,0.645 L12.595,0.478 L12.264,0.422 z M20.269,0.422 Q19.911,0.422 19.693,0.639 Q19.474,0.856 19.474,1.218 L19.474,2.787 Q19.474,3.15 19.693,3.369 Q19.911,3.587 20.269,3.587 Q20.632,3.587 20.851,3.369 Q21.07,3.15 21.069,2.787 L21.07,2.721 Q21.07,2.677 21.025,2.677 L20.689,2.659 Q20.645,2.659 20.645,2.703 L20.645,2.818 Q20.645,2.999 20.541,3.11 Q20.437,3.22 20.269,3.22 Q20.101,3.22 20,3.11 Q19.898,2.999 19.898,2.818 L19.898,1.191 Q19.898,1.01 20,0.9 Q20.101,0.789 20.269,0.789 Q20.437,0.789 20.541,0.9 Q20.645,1.01 20.645,1.191 L20.645,1.306 Q20.645,1.351 20.689,1.351 L21.025,1.333 Q21.07,1.333 21.069,1.289 L21.07,1.218 Q21.07,0.856 20.851,0.639 Q20.632,0.422 20.269,0.422 z M22.276,0.789 Q22.453,0.789 22.559,0.906 Q22.665,1.024 22.665,1.213 L22.665,2.796 Q22.665,2.986 22.559,3.103 Q22.453,3.22 22.276,3.22 Q22.104,3.22 22,3.103 Q21.896,2.986 21.896,2.796 L21.896,1.214 Q21.896,1.024 22,0.906 Q22.104,0.789 22.276,0.789 L22.276,0.789 z M22.276,0.422 Q21.914,0.422 21.693,0.645 Q21.472,0.869 21.472,1.236 L21.472,2.778 Q21.472,3.145 21.693,3.366 Q21.914,3.587 22.276,3.587 Q22.643,3.587 22.8
97566,3.366 Q23.09,3.145 23.089,2.778 L23.09,1.236 Q23.09,0.869 22.866,0.645 L22.607,0.478 L22.276,0.422 z M16.158,0.458 L15.823,0.458 Q15.778,0.458 15.778,0.502 L15.778,3.508 Q15.778,3.552 15.822,3.552 L16.158,3.552 Q16.203,3.552 16.202,3.508 L16.203,0.502 Q16.203,0.458 16.158,0.458 z M18.943,0.458 L18.607,0.458 Q18.563,0.458 18.563,0.502 L18.563,3.508 Q18.563,3.552 18.607,3.552 L18.943,3.552 Q18.988,3.552 18.987,3.508 L18.988,0.502 Q18.988,0.458 18.943,0.458 z M15.186,0.458 L14.854,0.458 Q14.81,0.458 14.81,0.502 L14.81,2.509 Q14.81,2.522 14.801,2.524 Q14.793,2.526 14.788,2.513 L14.032,0.493 Q14.019,0.458 13.983,0.458 L13.608,0.458 Q13.564,0.458 13.563,0.502 L13.564,3.508 Q13.564,3.552 13.608,3.552 L13.944,3.552 Q13.988,3.552 13.988,3.508 L13.984,1.501 Q13.984,1.492 13.992,1.49 Q14.001,1.488 14.006,1.496 L14.757,3.517 Q14.77,3.552 14.806,3.552 L15.186,3.552 Q15.23,3.552 15.23,3.508 L15.23,0.502 Q15.23,0.458 15.186,0.458 z M10.231,0.824 L10.231,0.824 Q10.439,0.825 10.553,0.955 Q10.668,1.085 10.668,1.32 Q10.668,1.545 10.553,1.671 Q10.439,1.797 10.231,1.797 L9.948,1.797 Q9.93,1.797 9.93,1.779 L9.93,0.842 Q9.93,0.825 9.948,0.824 L10.231,0.824 z M10.257,2.111 L10.257,2.111 Q10.461,2.111 10.575,2.255 Q10.69,2.398 10.69,2.655 Q10.69,2.907 10.573,3.044 Q10.456,3.181 10.253,3.181 L9.948,3.181 Q9.93,3.181 9.93,3.163 L9.93,2.129 Q9.93,2.111 9.948,2.111 L10.257,2.111 z M10.226,0.458 L9.55,0.458 Q9.506,0.458 9.506,0.502 L9.506,3.508 Q9.506,3.552 9.55,3.552 L10.288,3.552 Q10.66,3.552 10.887,3.331 Q11.115,3.11 11.115,2.708 Q11.115,2.447 11.015,2.257 Q10.916,2.067 10.739,1.961 C10.736,1.957 10.734,1.954 10.731,1.951 C10.82,1.861 10.91,1.772 10.999,1.683 L11.084,1.28 Q11.084,0.878 10.856,0.668 Q10.629,0.458 10.226,0.458 z M18.183,0.458 L16.795,0.458 Q16.751,0.458 16.751,0.502 L16.751,3.508 Q16.751,3.552 16.795,3.552 L17.131,3.552 Q17.175,3.552 17.175,3.508 L17.175,2.204 Q17.175,2.186 17.193,2.186 L17.798,2.186 Q17.843,2.186 17.842,2.142 L17.843,1.863 Q17.843,1.819 17.798,1.819 L17.193,1.819 Q17.175,1.819 17.175,1.801 L17.175,0.842 Q17.175,0.825 17.193,0.824 L18.183,0.824 Q18.227,0.825 18.227,0.78 L18.227,0.502 Q18.227,0.458 18.183,0.458 z',
976          fill:'#09549F'
977        },
978        {
979          path:'M5.995,5.971 C5.979,5.893 5.903,5.843 5.825,5.861 C5.699,5.89 5.503,5.925 5.291,5.925 C4.623,5.925 4.091,5.515 3.861,4.919 L5.199,4.919 C5.265,4.919 5.322,4.873 5.337,4.809 L5.412,4.475 C5.432,4.387 5.365,4.303 5.274,4.303 L3.695,4.303 C3.68,4.135 3.678,3.97 3.696,3.806 L5.421,3.806 C5.488,3.806 5.545,3.76 5.559,3.695 L5.636,3.345 C5.655,3.257 5.588,3.173 5.498,3.173 L3.871,3.173 C4.113,2.644 4.608,2.291 5.255,2.291 C5.425,2.291 5.591,2.317 5.7,2.339 C5.773,2.354 5.845,2.31 5.865,2.238 L6.006,1.716 C6.027,1.636 5.977,1.556 5.896,1.54 C5.754,1.513 5.524,1.479 5.276,1.479 C4.133,1.479 3.21,2.188 2.869,3.173 L2.48,3.173 C2.402,3.173 2.339,3.237 2.339,3.315 L2.339,3.665 C2.339,3.743 2.402,3.806 2.48,3.806 L2.734,3.806 C2.722,3.966 2.72,4.151 2.732,4.303 L2.48,4.303 C2.402,4.303 2.339,4.366 2.339,4.444 L2.339,4.778 C2.339,4.856 2.402,4.919 2.48,4.919 L2.834,4.919 C3.129,5.982 4.048,6.751 5.276,6.751 C5.586,6.751 5.848,6.697 5.995,6.659 C6.068,6.64 6.113,6.568 6.099,6.495 L5.995,5.971 z',
980          fill:'#FFFFFF'
981        },
982        {
983          path:'M16.304,4.642 Q16.667,4.642 16.885,4.859 Q17.104,5.076 17.104,5.438 L17.104,5.509 Q17.104,5.553 17.06,5.553 L16.724,5.571 Q16.68,5.571 16.68,5.526 L16.68,5.411 Q16.68,5.23 16.576,5.12 Q16.472,5.009 16.304,5.009 Q16.136,5.009 16.035,5.12 Q15.933,5.23 15.933,5.412 L15.933,7.038 Q15.933,7.219 16.035,7.33 Q16.136,7.44 16.304,7.44 Q16.472,7.44 16.576,7.33 Q16.68,7.219 16.68,7.038 L16.68,6.923 Q16.68,6.879 16.724,6.879 L17.06,6.897 Q17.104,6.897 17.104,6.941 L17.104,7.007 Q17.104,7.37 16.885,7.589 Q16.667,7.807 16.304,7.807 Q15.946,7.807 15.727,7.589 Q15.509,7.37 15.509,7.007 L15.509,5.438 Q15.509,5.076 15.727,4.859 Q15.946,4.642 16.304,4.642 z M23.187,5.009 Q23.363,5.009 23.47,5.126 Q23.576,5.244 23.576,5.434 L23.576,7.016 Q23.576,7.206 23.47,7.323 Q23.363,7.44 23.187,7.44 Q23.014,7.44 22.91,7.323 Q22.807,7.206 22.807,7.016 L22.807,5.434 Q22.807,5.244 22.91,5.126 Q23.014,5.009 23.187,5.009 z M23.187,4.642 Q22.824,4.642 22.603,4.866 Q22.382,5.089 22.382,5.456 L22.382,6.998 Q22.382,7.365 22.603,7.586 Q22.824,7.807 23.187,7.807 Q23.554,7.807 23.777,7.586 Q24,7.365 24,6.998 L24,5.456 Q24,5.089 23.777,4.866 Q23.554,4.642 23.187,4.642 z M21.852,4.678 L21.516,4.678 Q21.472,4.678 21.472,4.722 L21.472,7.728 Q21.472,7.772 21.516,7.772 L21.852,7.772 Q21.896,7.772 21.896,7.728 L21.896,4.722 Q21.896,4.678 21.852,4.678 z M18.223,5.274 Q18.227,5.274 18.231,5.283 L18.532,6.853 Q18.532,6.87 18.519,6.87 L17.931,6.87 Q17.918,6.87 17.918,6.852 L18.214,5.283 Q18.218,5.274 18.223,5.274 z M18.426,4.678 L18.033,4.678 Q17.993,4.678 17.984,4.717 L1
9837.325,7.723 Q17.321,7.745 17.332,7.759 Q17.343,7.772 17.365,7.772 L17.701,7.772 Q17.745,7.772 17.75,7.732 L17.842,7.224 Q17.842,7.215 17.849,7.211 Q17.856,7.206 17.865,7.206 L18.585,7.206 Q18.594,7.206 18.601,7.211 Q18.607,7.215 18.607,7.224 L18.704,7.732 Q18.713,7.772 18.753,7.772 L19.098,7.772 Q19.138,7.772 19.138,7.732 L19.138,7.723 L18.475,4.718 Q18.47,4.678 18.426,4.678 z M13.776,4.678 L13.4,4.678 Q13.356,4.678 13.356,4.722 L13.356,7.728 Q13.356,7.772 13.4,7.772 L13.736,7.772 Q13.78,7.772 13.78,7.728 L13.776,5.721 Q13.776,5.712 13.785,5.71 Q13.793,5.708 13.798,5.716 L14.549,7.737 Q14.563,7.772 14.598,7.772 L14.978,7.772 Q15.022,7.772 15.022,7.728 L15.022,4.722 Q15.022,4.678 14.978,4.678 L14.647,4.678 Q14.602,4.678 14.602,4.722 L14.602,6.729 Q14.602,6.742 14.594,6.744 Q14.585,6.746 14.58,6.733 L13.824,4.713 Q13.811,4.678 13.776,4.678 z M12.109,5.274 Q12.114,5.274 12.118,5.283 L12.419,6.853 Q12.419,6.87 12.405,6.87 L11.818,6.87 Q11.804,6.87 11.804,6.852 L12.1,5.283 Q12.105,5.274 12.109,5.274 z M12.313,4.678 L11.919,4.678 Q11.879,4.678 11.871,4.717 L11.212,7.723 Q11.208,7.745 11.219,7.759 Q11.23,7.772 11.252,7.772 L11.588,7.772 Q11.632,7.772 11.636,7.732 L11.729,7.224 Q11.729,7.215 11.736,7.211 Q11.742,7.206 11.751,7.206 L12.472,7.206 Q12.481,7.206 12.487,7.211 Q12.494,7.215 12.494,7.224 L12.591,7.732 Q12.6,7.772 12.64,7.772 L12.985,7.772 Q13.024,7.772 13.024,7.732 L13.024,7.723 L12.361,4.718 Q12.357,4.678 12.313,4.678 z M20.238,5.045 Q20.42,5.045 20.53,5.184 Q20.641,5.323 20.641,5.562 Q20.641,5.792 20.53,5.931 Q20.42,6.07 20.238,6.07 L19.911,6.07 Q19.894,6.07 19.894,6.052 L19.894,5.062 Q19.894,5.045 19.911,5.045 L20.238,5.045 z M20.305,4.678 L19.513,4.678 Q19.469,4.678 19.469,4.722 L19.469,7.728 Q19.469,7.772 19.513,7.772 L19.849,7.772 Q19.894,7.772 19.894,7.728 L19.894,6.424 Q19.894,6.406 19.911,6.406 L20.221,6.406 Q20.234,6.406 20.238,6.419 L20.645,7.737 Q20.658,7.772 20.698,7.772 L21.043,7.772 Q21.083,7.772 21.083,7.741 L21.078,7.723 L20.627,6.366 Q20.623,6.353 20.636,6.34 Q20.835,6.247 20.95,6.041 Q21.065,5.836 21.065,5.557 Q21.065,5.301 20.97,5.1 Q20.875,4.899 20.702,4.788 Q20.53,4.678 20.305,4.678 z M10.231,5.045 Q10.438,5.045 10.553,5.175 Q10.668,5.305 10.668,5.54 Q10.668,5.765 10.553,5.891 Q10.438,6.017 10.231,6.017 L9.948,6.017 Q9.93,6.017 9.93,5.999 L9.93,5.062 Q9.93,5.045 9.948,5.045 L10.231,5.045 z M10.257,6.331 Q10.461,6.331 10.575,6.475 Q10.69,6.618 10.69,6.875 Q10.69,7.127 10.573,7.264 Q10.456,7.401 10.253,7.401 L9.948,7.401 Q9.93,7.401 9.93,7.383 L9.93,6.349 Q9.93,6.331 9.948,6.331 L10.257,6.331 z M10.226,4.678 L9.55,4.678 Q9.506,4.678 9.506,4.722 L9.506,7.728 Q9.506,7.772 9.55,7.772 L10.288,7.772 Q10.659,7.772 10.887,7.551 Q11.115,7.33 11.115,6.928 Q11.115,6.667 11.015,6.477 Q10.916,6.287 10.739,6.181 Q10.721,6.172 10.743,6.159 Q11.084,5.977 11.084,5.5 Q11.084,5.098 10.856,4.888 Q10.629,4.678 10.226,4.678 z',
984          fill:'#333333'
985        }
986        ],
987        'new/cash':[
988        {
989          path:'M17.417,3.917 L17.417,9.559 C18.776,9.785 19.856,10.63 20.083,12 L20.083,17.334 C20.083,18.994 17.903,20.084 15.333,20.084 C12.763,20.084 10.583,18.994 10.583,17.334 L10.583,12 C10.583,10.34 12.763,9.251 15.333,9.25 L15.917,9.282 L15.917,5.417 L5.417,5.417 L5.417,11.917 L8.667,11.917 C9.081,11.917 9.417,12.253 9.417,12.667 C9.417,13.082 9.081,13.417 8.667,13.417 L3.917,13.417 L3.917,3.917 L17.417,3.917 z M18.583,16.642 C17.638,17.308 16.446,17.358 15.333,17.417 C14.142,17.423 13.129,17.223 12.083,16.642 L12.083,17.334 C12.083,17.883 13.485,18.584 15.333,18.584 C17.181,18.584 18.583,17.883 18.583,17.334 L18.583,16.642 z M18.583,13.975 C17.638,14.641 16.446,14.691 15.333,14.75 C14.142,14.757 13.129,14.556 12.083,13.975 L12.083,14.667 C12.083,15.216 13.485,15.917 15.333,15.917 C17.181,15.917 18.583,15.216 18.583,14.667 L18.583,13.975 z M15.333,10.75 C13.485,10.751 12.083,11.452 12.083,12 C12.083,12.55 13.485,13.251 15.333,13.25 C17.181,13.251 18.583,12.55 18.583,12 C18.583,11.452 17.181,10.751 15.333,10.75 z M10.668,7.251 C9.885,7.251 9.251,7.885 9.251,8.668 C9.251,9.45 9.885,10.084 10.668,10.084 C11.45,10.084 12.084,9.45 12.084,8.668 C12.084,7.885 11.45,7.251 10.66
9897,7.251 z',
990          fill:'#63605F',
991        }
992        ],
993        'new/card':[
994        {
995          path:'M18,5.25 C19.151,5.25 20.083,6.183 20.083,7.333 L20.083,16.667 C20.083,17.818 19.151,18.75 18,18.75 L6,18.75 C4.849,18.75 3.917,17.818 3.917,16.667 L3.917,7.333 C3.917,6.183 4.849,5.25 6,5.25 L18,5.25 z M18.583,12.083 L5.417,12.083 L5.417,16.667 C5.417,16.989 5.678,17.25 6,17.25 L18,17.25 C18.322,17.25 18.583,16.989 18.583,16.667 L18.583,12.083 z M10.666,13.917 C11.08,13.917 11.416,14.253 11.416,14.667 C11.416,15.081 11.08,15.417 10.666,15.417 L7.333,15.417 C6.918,15.417 6.583,15.081 6.583,14.667 C6.583,14.253 6.918,13.917 7.333,13.917 L10.666,13.917 z M16.667,13.917 C17.082,13.917 17.417,14.253 17.417,14.667 C17.417,15.081 17.082,15.417 16.667,15.417 L16.001,15.417 C15.586,15.417 15.251,15.081 15.251,14.667 C15.251,14.253 15.586,13.917 16.001,13.917 L16.667,13.917 z M18.583,9.417 L5.417,9.417 L5.417,10.583 L18.583,10.583 L18.583,9.417 z M18,6.75 L6,6.75 C5.678,6.75 5.417,7.011 5.417,7.333 L5.417,7.917 L18.583,7.917 L18.583,7.333 C18.583,7.011 18.322,6.75 18,6.75 z',
996          fill:'#63605F',
997        }
998        ],
999        'new/exchange':[
1000        {
1001          path:'M12,7.251 C14.623,7.251 16.75,9.377 16.75,12.001 C16.75,14.624 14.623,16.751 12,16.751 C9.377,16.751 7.25,14.624 7.25,12.001 C7.25,9.377 9.377,7.251 12,7.251 z M12,8.751 C10.205,8.751 8.75,10.206 8.75,12.001 C8.75,13.796 10.205,15.251 12,15.251 C13.795,15.251 15.25,13.796 15.25,12.001 C15.25,10.206 13.795,8.751 12,8.751 z M12,9.917 C12.414,9.917 12.75,10.252 12.75,10.667 L12.75,13.333 C12.75,13.748 12.414,14.083 12,14.083 C11.586,14.083 11.25,13.748 11.25,13.333 L11.25,10.667 C11.25,10.252 11.586,9.917 12,9.917 z',
1002          fill:'#63605F',
1003        },
1004        {
1005          path:'M19.333,14.584 C19.747,14.584 20.083,14.92 20.083,15.334 C20.083,15.749 19.747,16.084 19.333,16.084 L14.21,16.084 C13.796,16.084 13.46,15.749 13.46,15.334 C13.46,14.92 13.796,14.584 14.21,14.584 L19.333,14.584 z M9.79,14.584 L4.19,14.584 L5.471,15.865 L7.471,17.865 C7.764,18.158 8.238,18.158 8.531,17.865 C8.824,17.572 8.824,17.097 8.531,16.804 L7.812,16.084 L9.79,16.084 C10.204,16.084 10.54,15.749 10.54,15.334 C10.54,14.92 10.204,14.584 9.79,14.584 z',
1006          fill:'#63605F',
1007        },
1008        {
1009          path:'M9.79,7.917 C10.204,7.917 10.54,8.253 10.54,8.667 C10.54,9.081 10.204,9.417 9.79,9.417 L4.667,9.417 C4.253,9.417 3.917,9.081 3.917,8.667 C3.917,8.253 4.253,7.917 4.667,7.917 L9.79,7.917 z M14.21,9.417 L19.809,9.417 L18.529,8.152 L16.529,6.177 C16.236,5.888 15.761,5.888 15.468,6.177 C15.175,6.466 15.175,6.935 15.468,7.225 L16.188,7.935 L14.21,7.935 C13.796,7.935 13.46,8.267 13.46,8.676 C13.46,9.085 13.796,9.417 14.21,9.417 z',
1010          fill:'#63605F',
1011        }
1012        ],
1013        'new/card/visa':[
1014        {
1015          path:'M9.112,8.262 L5.97,15.758 L3.92,15.758 L2.374,9.776 C2.28,9.407 2.198,9.272 1.913,9.117 C1.447,8.864 0.677,8.627 0,8.479 L0.046,8.262 L3.346,8.262 C3.766,8.262 4.145,8.542 4.24,9.026 L5.057,13.364 L7.075,8.262 L9.112,8.262 z M17.145,13.311 C17.153,11.332 14.409,11.223 14.427,10.339 C14.433,10.07 14.689,9.784 15.25,9.711 C15.528,9.675 16.294,9.647 17.162,10.047 L17.503,8.457 C17.036,8.288 16.436,8.125 15.689,8.125 C13.772,8.125 12.423,9.144 12.411,10.603 C12.399,11.682 13.374,12.284 14.109,12.643 C14.865,13.01 15.118,13.246 15.116,13.575 C15.11,14.077 14.513,14.299 13.954,14.308 C12.98,14.323 12.414,14.044 11.963,13.835 L11.612,15.477 C12.065,15.685 12.901,15.866 13.768,15.876 C15.806,15.876 17.138,14.869 17.145,13.311 z M22.206,15.758 L24,15.758 L22.434,8.262 L20.779,8.262 C20.407,8.262 20.093,8.478 19.954,8.812 L17.044,15.758 L19.08,15.758 L19.484,14.638 L21.972,14.638 L22.206,15.758 L22.206,15.758 z M20.042,13.102 L21.063,10.287 L21.651,13.102 L20.043,13.102 L20.042,13.102 z M11.883,8.262 L10.28,15.758 L8.34,15.758 L9.945,8.262 L11.883,8.262 z',
1016          fill:'#1434CB'
1017        }
1018        ],
1019        'new/card/mastercard':[
1020        {
1021          path:'M15.246,6.17 L8.756,6.17 L8.756,17.832 L15.246,17.832 L15.246,6.17 z',
1022          fill:'#FF5F00'
1023        },
1024        {
1025          path:'M9.167,12.001 C9.166,10.878 9.421,9.769 9.912,8.759 C10.403,7.748 11.117,6.863 12,6.17 C10.906,5.31 9.592,4.775 8.208,4.626 C6.825,4.478 5.427,4.722 4.175,5.33 C2.924,5.938 1.868,6.886 1.13,8.066 C0.392,9.246 -0,10.609 -0,12.001 C-0,13.392 0.392,14.756 1.13,15.936 C1.868,17.115 2.924,18.063 4.175,18.672 C5.427,19.28 6.825,19.524 8.208,19.375 C9.592,19.227 10.906,18.692 12,17.832 C11.117,17.139 10.403,16.253 9.912,15.243 C9.421,14.233 9.166,13.124 9.167,12.001 z',
1026          fill:'#EB001B'
1027        },
1028        {
1029          path:'M24,12.001 C24,13.392 23.608,14.756 22.87,15.936 C22.132,17.115 21.076,18.063 19.825,18.672 C18.573,19.28 17.175,19.524 15.792,19.375 C14.408,19.227 13.094,18.692 12,17.832 C12.883,17.138 13.596,16.252 14.087,15.242 C14.578,14.232 14.833,13.124 14.833,12.001 C14.833,10.878 14.578,9.769 14.087,8.759 C13.596,7.749 12.883,6.864 12,6.17 C13.094,5.31 14.408,4.775 15.792,4.626 C17.175,4.478 18.573,4.722 19.825,5.33 C21.076,5.938 22.132,6.886 22.87,8.066 C23.608,9.246 24,10.609 24,12.001 z',
1030          fill:'#F79E1B'
1031        }
1032        ],
1033        'new/card/americanexpress':[
1034        {
1035          path:'M0,0 L24,0 L24,24 L0,24 L0,0 z',
1036          fill:'#FFFFFF'
1037        },
1038        {
1039          path:'M19.698,5.887 L20.491,3.792 L24,3.792 L24,0 L0,0 L0,24 L24,24 L24,20.208 L20.66,20.208 L19.415,18.736 L18.17,20.151 L8.774,20.151 L8.774,12.623 L5.66,12.623 L9.566,3.849 L13.358,3.849 L14.264,5.83 L14.264,3.849 L18.962,3.849 L19.698,5.887 z M17.094,7.302 L17.094,6.453 L17.434,7.302 L19.019,11.491 L20.491,11.491 L22.076,7.302 L22.358,6.453 L22.358,11.434 L24,11.434 L24,5.038 L21.283,5.038 L20.038,8.264 L19.698,9.17 L19.358,8.264 L18.113,5.038 L15.396,5.038 L15.396,11.377 L17.094,11.377 L17.094,7.302 z M13.585,11.377 L15.453,11.377 L12.623,4.981 L10.415,4.981 L7.585,11.377 L9.453,11.377 L9.962,10.132 L13.075,10.132 L13.585,11.377 z M11.208,7.189 L11.547,6.396 L11.887,7.189 L12.566,8.83 L10.585,8.83 L11.208,7.189 z M10.075,12.623 L10.075,19.019 L15.396,19.019 L15.396,17.604 L11.66,17.604 L11.66,16.472 L15.283,16.472 L15.283,15.113 L11.66,15.113 L11.66,13.981 L15.396,13.981 L15.396,12.623 L10.075,12.623 z M21.396,18.906 L23.491,18.906 L20.491,15.736 L23.491,12.566 L21.396,12.566 L19.472,14.66 L17.547,12.566 L15.396,12.566 L18.396,15.792 L15.396,18.962 L17.434,18.962 L19.358,16.868 L21.396,18.906 z M22.189,15.792 L24,17.66 
1039L24,13.981 L22.189,15.792 z',
1040          fill:'#006FCF'
1041        }
1042        ],
1043        'new/card/diners':[
1044        {
1045          path:'M0.434,12.179 C0.434,6.647 4.918,2.165 10.448,2.165 C15.979,2.165 20.463,6.647 20.463,12.179 C20.463,17.712 15.981,22.194 10.448,22.194 C4.916,22.194 0.434,17.71 0.434,12.179 z',
1046          fill:'#FFFFFF'
1047        },
1048        {
1049          path:'M10.464,22.372 C4.724,22.4 0,17.75 0,12.091 C0,5.905 4.724,1.627 10.464,1.627 L13.153,1.627 C18.823,1.627 24,5.903 24,12.091 C24,17.748 18.823,22.372 13.153,22.372 L10.464,22.372 z M10.487,2.485 C5.242,2.485 0.993,6.736 0.993,11.981 C0.993,17.225 5.242,21.475 10.487,21.475 C15.731,21.475 19.981,17.225 19.983,11.981 C19.983,6.736 15.731,2.487 10.487,2.485 z M8.33,17.598 L8.33,6.364 C6.074,7.234 4.474,9.418 4.468,11.981 C4.474,14.544 6.074,16.728 8.33,17.596 M16.506,11.981 C16.502,9.416 14.899,7.23 12.639,6.364 L12.639,17.6 C14.897,16.732 16.502,14.548 16.506,11.983',
1050          fill:'#0D4E96'
1051        }
1052        ],
1053        'card/visa':[
1054        {
1055          path:'M1.231,4.308 L22.769,4.308 C23.449,4.308 24,4.859 24,5.538 L24,18.462 C24,19.141 23.449,19.692 22.769,19.692 L1.231,19.692 C0.551,19.692 -0,19.141 -0,18.462 L-0,5.538 C-0,4.859 0.551,4.308 1.231,4.308 z',
1056          fill:'#0E4595'
1057        },
1058        {
1059          path:'M9.022,15.038 L10.048,9.014 L11.69,9.014 L10.663,15.038 L9.022,15.038 z M16.594,9.144 C16.269,9.022 15.759,8.891 15.123,8.891 C13.5,8.891 12.358,9.708 12.348,10.879 C12.339,11.745 13.164,12.227 13.786,12.516 C14.426,12.811 14.64,12.999 14.637,13.263 C14.633,13.666 14.127,13.851 13.655,13.851 C12.998,13.851 12.649,13.76 12.11,13.535 L11.898,13.439 L11.668,14.787 C12.051,14.956 12.76,15.101 13.497,15.109 C15.222,15.109 16.343,14.301 16.356,13.051 C16.362,12.366 15.924,11.844 14.977,11.414 C14.403,11.136 14.052,10.95 14.055,10.668 C14.055,10.417 14.353,10.15 14.996,10.15 C15.533,10.141 15.922,10.258 16.225,10.38 L16.372,10.45 L16.594,9.144 M20.819,9.014 L19.55,9.014 C19.157,9.014 18.863,9.122 18.691,9.514 L16.252,15.034 L17.976,15.034 C17.976,15.034 18.258,14.292 18.322,14.129 C18.51,14.129 20.185,14.131 20.425,14.131 C20.474,14.342 20.624,15.034 20.624,15.034 L22.148,15.034 L20.819,9.014 z M18.806,12.904 C18.942,12.557 19.46,11.22 19.46,11.22 C19.451,11.236 19.595,10.871 19.678,10.645 L19.789,11.165 C19.789,11.165 20.103,12.602 20.169,12.904 L18.806,12.904 z M7.628,9.014 L6.02,13.122 L5.849,12.287 C5.55,11.325 4.618,10.283 3.575,9.761 L5.045,15.028 L6.782,15.026 L9.367,9.014 L7.628,9.014',
1060          fill:'#FFFFFF'
1061        },
1062        {
1063          path:'M4.521,9.014 L1.873,9.014 L1.852,9.139 C3.912,9.638 5.275,10.843 5.841,12.291 L5.265,9.523 C5.165,9.141 4.877,9.027 4.521,9.014',
1064          fill:'#F2AE14'
1065        },
1066        ],
1067        'card/mastercard':[
1068        {
1069          path:'M1.231,4.308 L22.769,4.308 C23.449,4.308 24,4.859 24,5.538 L24,18.462 C24,19.141 23.449,19.692 22.769,19.692 L1.231,19.692 C0.551,19.692 -0,19.141 -0,18.462 L-0,5.538 C-0,4.859 0.551,4.308 1.231,4.308 z',
1070          fill:'#000000'
1071        },
1072        {
1073          path:'M9.748,7.953 L14.252,7.953 L14.252,16.047 L9.748,16.047 z',
1074          fill:'#FF5F00'
1075        },
1076        {
1077          path:'M10.034,12 C10.034,10.356 10.806,8.897 11.993,7.953 C11.121,7.267 10.02,6.852 8.818,6.852 C5.973,6.852 3.671,9.154 3.671,12 C3.671,14.846 5.973,17.148 8.818,17.148 C10.02,17.148 11.121,16.733 11.993,16.047 C10.806,15.117 10.034,13.644 10.034,12 z',
1078          fill:'#EB001B'
1079        },
1080        {
1081          path:'M20.329,12 C20.329,14.846 18.027,17.148 15.182,17.148 C13.98,17.148 12.879,16.733 12.007,16.047 C13.208,15.103 13.966,13.644 13.966,12 C13.966,10.356 13.194,8.897 12.007,7.953 C12.879,7.267 13.98,6.852 15.182,6.852 C18.027,6.852 20.329,9.169 20.329,12 z',
1082          fill:'#F79E1B'
1083        }
1084        ],
1085        'card/americanexpress':[
1086        {
1087          path:'M1.231,4.308 L22.769,4.308 C23.449,4.308 24,4.859 24,5.538 L24,18.462 C24,19.141 23.449,19.692 22.769,19.692 L1.231,19.692 C0.551,19.692 -0,19.141 -0,18.462 L-0,5.538 C-0,4.859 0.551,4.308 1.231,4.308 z',
1088          fill:'#2557D6'
1089        },
1090        {
1091          path:'M0.008,11.56 L1.16,11.56 L1.42,10.959 L2.001,10.959 L2.26,11.56 L4.527,11.56 L4.527,11.101 L4.729,11.562 L5.906,11.562 L6.108,11.094 L6.108,11.56 L11.742,11.56 L11.739,10.574 L11.848,10.574 C11.924,10.577 11.946,10.584 11.946,10.704 L11.946,11.56 L14.86,11.56 L14.86,11.33 C15.095,11.451 15.461,11.56 15.941,11.56 L17.167,11.56 L17.429,10.959 L18.011,10.959 L18.268,11.56 L20.63,11.56 L20.63,10.989 L20.987,11.56 L22.88,11.56 L22.88,7.79 L21.007,7.79 L21.007,8.235 L2
10910.745,7.79 L18.822,7.79 L18.822,8.235 L18.582,7.79 L15.985,7.79 C15.551,7.79 15.169,7.848 14.86,8.01 L14.86,7.79 L13.068,7.79 L13.068,8.01 C12.872,7.843 12.604,7.79 12.307,7.79 L5.761,7.79 L5.322,8.764 L4.871,7.79 L2.809,7.79 L2.809,8.235 L2.583,7.79 L0.824,7.79 L0.008,9.582 L0.008,11.56 L0.008,11.56 z M7.28,11.016 L6.589,11.016 L6.586,8.899 L5.608,11.016 L5.016,11.016 L4.036,8.897 L4.036,11.016 L2.665,11.016 L2.406,10.413 L1.002,10.413 L0.74,11.016 L0.008,11.016 L1.215,8.313 L2.217,8.313 L3.364,10.872 L3.364,8.313 L4.464,8.313 L5.347,10.147 L6.157,8.313 L7.28,8.313 L7.28,11.016 z M2.175,9.852 L1.714,8.775 L1.255,9.852 L2.175,9.852 z M10.031,11.016 L7.778,11.016 L7.778,8.313 L10.031,8.313 L10.031,8.876 L8.452,8.876 L8.452,9.363 L9.993,9.363 L9.993,9.917 L8.452,9.917 L8.452,10.457 L10.031,10.457 L10.031,11.016 z M13.205,9.041 C13.205,9.472 12.905,9.695 12.73,9.762 C12.877,9.815 13.003,9.91 13.063,9.989 C13.158,10.124 13.175,10.244 13.175,10.485 L13.175,11.016 L12.495,11.016 L12.492,10.675 C12.492,10.512 12.508,10.279 12.386,10.149 C12.287,10.053 12.137,10.033 11.894,10.033 L11.17,10.033 L11.17,11.016 L10.496,11.016 L10.496,8.313 L12.047,8.313 C12.392,8.313 12.646,8.322 12.863,8.443 C13.077,8.563 13.205,8.74 13.205,9.041 z M12.352,9.442 C12.26,9.496 12.15,9.498 12.019,9.498 L11.2,9.498 L11.2,8.898 L12.03,8.898 C12.147,8.898 12.27,8.903 12.35,8.947 C12.437,8.986 12.491,9.07 12.491,9.185 C12.491,9.304 12.44,9.399 12.352,9.442 z M14.286,11.016 L13.598,11.016 L13.598,8.313 L14.286,8.313 L14.286,11.016 z M22.273,11.016 L21.317,11.016 L20.039,8.987 L20.039,11.016 L18.666,11.016 L18.404,10.413 L17.003,10.413 L16.748,11.016 L15.959,11.016 C15.632,11.016 15.217,10.946 14.982,10.717 C14.745,10.488 14.621,10.177 14.621,9.685 C14.621,9.284 14.695,8.918 14.985,8.628 C15.203,8.413 15.544,8.313 16.009,8.313 L16.662,8.313 L16.662,8.892 L16.022,8.892 C15.776,8.892 15.637,8.927 15.504,9.052 C15.389,9.166 15.31,9.381 15.31,9.665 C15.31,9.954 15.37,10.163 15.495,10.299 C15.599,10.406 15.788,10.439 15.965,10.439 L16.268,10.439 L17.218,8.313 L18.228,8.313 L19.37,10.87 L19.37,8.313 L20.397,8.313 L21.582,10.196 L21.582,8.313 L22.273,8.313 L22.273,11.016 z M18.174,9.852 L17.707,8.775 L17.243,9.852 L18.174,9.852 z M23.991,15.332 C23.827,15.561 23.508,15.677 23.076,15.677 L21.774,15.677 L21.774,15.098 L23.07,15.098 C23.199,15.098 23.289,15.081 23.343,15.031 C23.395,14.985 23.423,14.921 23.423,14.854 C23.423,14.776 23.39,14.713 23.341,14.676 C23.292,14.634 23.221,14.616 23.103,14.616 C22.47,14.595 21.68,14.634 21.68,13.779 C21.68,13.387 21.94,12.974 22.648,12.974 L23.991,12.974 L23.991,12.436 L22.743,12.436 C22.366,12.436 22.093,12.523 21.899,12.657 L21.899,12.436 L20.053,12.436 C19.758,12.436 19.411,12.506 19.248,12.657 L19.248,12.436 L15.952,12.436 L15.952,12.657 C15.689,12.476 15.247,12.436 15.042,12.436 L12.868,12.436 L12.868,12.657 C12.661,12.465 12.199,12.436 11.918,12.436 L9.485,12.436 L8.928,13.014 L8.407,12.436 L4.772,12.436 L4.772,16.208 L8.338,16.208 L8.912,15.622 L9.452,16.208 L11.65,16.21 L11.65,15.323 L11.866,15.323 C12.158,15.327 12.502,15.316 12.806,15.19 L12.806,16.208 L14.619,16.208 L14.619,15.225 L14.706,15.225 C14.818,15.225 14.829,15.229 14.829,15.336 L14.829,16.208 L20.337,16.208 C20.687,16.208 21.052,16.122 21.255,15.967 L21.255,16.208 L23.002,16.208 C23.365,16.208 23.72,16.159 23.99,16.034 L23.99,15.331 z M13.069,13.881 C13.069,14.632 12.485,14.787 11.895,14.787 L11.054,14.787 L11.054,15.693 L9.744,15.693 L8.913,14.798 L8.05,15.693 L5.38,15.693 L5.38,12.99 L8.091,12.99 L8.921,13.876 L9.779,12.99 L11.933,12.99 C12.468,12.99 13.069,13.132 13.069,13.881 z M7.709,15.125 L6.051,15.125 L6.051,14.587 L7.531,14.587 L7.531,14.035 L6.051,14.035 L6.051,13.544 L7.742,13.544 L8.479,14.332 L7.709,15.125 z M10.38,15.434 L9.345,14.333 L10.38,13.267 L10.38,15.434 z M11.911,14.232 L11.04,14.232 L11.04,13.544 L11.919,13.544 C12.162,13.544 12.331,13.639 12.331,13.875 C12.331,14.109 12.17,14.232 11.911,14.232 z M16.476,12.99 L18.726,12.99 L18.726,13.549 L17.147,13.549 L17.147,14.041 L18.688,14.041 L18.688,14.592 L17.147,14.592 L17.147,15.13 L18.726,15.132 L18.726,15.693 L16.476,15.693 L16.476,12.99 z M15.611,14.437 C15.761,14.49 15.883,14.585 15.941,14.664 C16.036,14.796 16.05,14.919 16.053,15.157 L16.053,15.693 L15.376,15.693 L15.376,15.355 C15.376,15.193 15.392,14.952 15.267,14.826 C15.168,14.729 15.018,14.706 14.772,14.706 L14.051,14.706 L14.051,15.693 L13.374,15.693 L13.374,12.99 L14.931,12.99 C15.272,12.99 15.521,13.005 15.742,13.118 C15.955,13.241 16.089,13.41 16.089,13.718 C16.088,14.149 15.788,14.37 15.611,14.437 z M15.23,14.095 C15.139,14.147 15.028,14.151 14.897,14.151 L14.078,14.151 L14.078,13.544 L14.908,13.544 C15.028,13.544 15.148,13.546 15.23,13.593 C15.317,13.637 15.369,13.72 15.369,13.836 C15.369,13.952 15.317,14.045 15.23,14.095 z M21.316,14.268 C21.448,14.398 21.518,14.562 21.518,14.84 C21.518,15.422 21.139,15.693 20.459,15.693 L19.146,15.693 L19.146,15.114 L20.454,15.114 C20.581,15.114 20.672,15.097 20.729,15.047 C20.775,15.005 20.809,14.944 20.809,14.87 C20.809,14.792 20.773,14.729 20.726,14.692 C20.675,14.65 20.604,14.632 20.486,14.632 C19.856,14.611 19.066,14.65 19.066,13.795 C19.066,13.403 19.323,12.99 20.03,12.99 L21.382,12.99 L21.382,13.565 L20.145,13.565 C20.022,13.565 19.943,13.57 19.875,13.614 C19.801,13.658 19.774,13.723 19.774,13.809 C19.774,13.911 19.836,13.98 19.921,14.01 C19.992,14.034 20.069,14.041 20.183,14.041 L20.546,14.05 C20.912,14.059 21.164,14.119 21.316,14.268 z M23.992,13.544 L22.763,13.544 C22.64,13.544 22.559,13.548 22.49,13.593 C22.419,13.636 22.392,13.701 22.392,13.787 C22.392,13.889 22.452,13.959 22.539,13.989 C22.61,14.012 22.687,14.019 22.799,14.019 L23.164,14.029 C23.533,14.037 23.779,14.098 23.929,14.246 C23.957,14.267 23.973,14.29 23.992,14.313 L23.992,13.544 L23.992,13.544 z',
1092          fill:'#FFFFFF'
1093        }
1094        ],
1095        'card/diners':[
1096        {
1097          path:'M1.231,4.308 L22.769,4.308 C23.449,4.308 24,4.859 24,5.538 L24,18.462 C24,19.141 23.449,19.692 22.769,19.692 L1.231,19.692 C0.551,19.692 0,19.141 0,18.462 L0,5.538 C0,4.859 0.551,4.308 1.231,4.308 z',
1098          fill:'#0079BE'
1099        },
1100        {
1101          path:'M13.109,6.872 C15.906,6.871 18.459,8.986 18.459,12.045 C18.459,14.842 15.906,17.141 13.109,17.128 L10.701,17.128 C7.87,17.141 5.54,14.842 5.54,12.045 C5.54,8.986 7.87,6.871 10.701,6.872 L13.109,6.872 z M10.716,7.306 C8.13,7.306 6.034,9.407 6.033,12 C6.
1101034,14.593 8.13,16.694 10.716,16.694 C13.304,16.694 15.4,14.593 15.401,12 C15.4,9.407 13.304,7.306 10.716,7.306 z M11.787,9.21 C12.901,9.639 13.692,10.72 13.694,11.988 C13.692,13.256 12.901,14.336 11.787,14.765 L11.787,9.21 z M9.662,9.211 L9.662,14.764 C8.548,14.335 7.758,13.255 7.756,11.988 C7.758,10.721 8.548,9.64 9.662,9.211 z',
1102          fill:'#FFFFFF'
1103        },
1104        ],
1105        startFull:[
1106        'M10.82,2.204 L8.135,7.649 L2.127,8.525 C1.049,8.681 0.618,10.009 1.399,10.77 L5.745,15.006 L4.717,20.989 C4.532,22.07 5.671,22.88 6.625,22.375 L12,19.549 L17.375,22.375 C18.329,22.876 19.468,22.07 19.283,20.989 L18.255,15.006 L22.601,10.77 C23.382,10.009 22.951,8.681 21.873,8.525 L15.865,7.649 L13.18,2.204 C12.699,1.234 11.305,1.222 10.82,2.204 z'
1107        ],
1108        startHalf:[
1109        'M21.873,8.512 L15.866,7.637 L13.181,2.203 C12.94,1.717 12.469,1.472 11.998,1.472 C11.53,1.472 11.063,1.714 10.82,2.203 L8.135,7.636 L2.127,8.51 C1.049,8.666 0.618,9.992 1.399,10.751 L5.745,14.978 L4.716,20.95 C4.57,21.802 5.251,22.487 6.014,22.487 C6.216,22.487 6.424,22.439 6.624,22.333 L11.999,19.514 L17.373,22.334 C17.573,22.438 17.78,22.486 17.982,22.486 C18.745,22.486 19.427,21.804 19.281,20.951 L18.254,14.979 L22.601,10.753 C23.382,9.993 22.951,8.667 21.873,8.512 z M16.877,13.568 L16.133,14.291 L16.308,15.313 L17.11,19.969 L12.918,17.769 L11.999,17.288 L12,4.269 L14.095,8.508 L14.554,9.437 L15.58,9.586 L20.269,10.269 L16.877,13.568 z'
1110        ],
1111        startEmpty:[
1112        'M21.873,8.525 L15.865,7.649 L13.18,2.204 C12.699,1.234 11.305,1.222 10.82,2.204 L8.135,7.649 L2.127,8.525 C1.049,8.681 0.618,10.009 1.399,10.77 L5.745,15.006 L4.717,20.989 C4.532,22.07 5.671,22.88 6.625,22.375 L12,19.549 L17.375,22.375 C18.329,22.876 19.468,22.07 19.283,20.989 L18.255,15.006 L22.601,10.77 C23.382,10.009 22.951,8.681 21.873,8.525 z M16.137,14.315 L17.111,20.006 L12,17.321 L6.889,20.006 L7.863,14.315 L3.726,10.285 L9.442,9.454 L12,4.273 L14.558,9.454 L20.274,10.285 L16.137,14.315 z'
1113        ],
1114        reply:[
1115        'M0.942,9.026 L8.8,2.241 C9.487,1.647 10.571,2.129 10.571,3.051 L10.571,6.625 C17.742,6.707 23.429,8.145 23.429,14.94 C23.429,17.683 21.662,20.401 19.708,21.821 C19.099,22.265 18.23,21.708 18.455,20.989 C20.479,14.516 17.495,12.797 10.571,12.697 L10.571,16.622 C10.571,17.546 9.487,18.026 8.8,17.433 L0.942,10.647 C0.448,10.22 0.447,9.453 0.942,9.026 z'
1116        ],
1117        unlike:[
1118        'M2,4.167 L2,13.542 C2,14.06 2.42,14.479 2.937,14.479 L6.062,14.479 C6.58,14.479 7,14.06 7,13.542 L7,4.167 C7,3.649 6.58,3.229 6.062,3.229 L2.937,3.229 C2.42,3.229 2,3.649 2,4.167 z M3.562,11.979 C3.562,11.462 3.982,11.042 4.5,11.042 C5.018,11.042 5.437,11.462 5.437,11.979 C5.437,12.497 5.018,12.917 4.5,12.917 C3.982,12.917 3.562,12.497 3.562,11.979 z M14.187,21.979 C13.399,21.979 13.036,20.444 12.862,19.722 C12.659,18.875 12.448,18 11.87,17.421 C10.602,16.15 9.936,14.532 8.389,13.002 C8.3,12.915 8.25,12.795 8.25,12.67 L8.25,4.319 C8.25,4.064 8.455,3.855 8.71,3.851 C9.329,3.839 10.144,3.496 10.767,3.219 C12.007,2.667 13.551,1.98 15.437,1.979 L15.548,1.979 C17.219,1.979 19.195,1.995 19.993,3.141 C20.32,3.612 20.401,4.197 20.233,4.884 C20.87,5.551 21.212,6.793 20.873,7.805 C21.558,8.72 21.621,9.997 21.236,10.909 L21.241,10.913 C21.705,11.38 22.003,12.134 22,12.835 C21.994,14.021 20.978,15.104 19.674,15.104 L15.7,15.104 C15.986,16.211 17,17.141 17,18.798 C17,21.667 15.125,21.979 14.187,21.979 z'
1119        ],
1120        like:[
1121        'M6.063,10.729 L2.938,10.729 C2.42,10.729 2,11.149 2,11.667 L2,21.042 C2,21.56 2.42,21.979 2.938,21.979 L6.063,21.979 C6.58,21.979 7,21.56 7,21.042 L7,11.667 C7,11.149 6.58,10.729 6.063,10.729 z M4.5,20.417 C3.982,20.417 3.563,19.997 3.563,19.479 C3.563,18.962 3.982,18.542 4.5,18.542 C5.018,18.542 5.438,18.962 5.438,19.479 C5.438,19.997 5.018,20.417 4.5,20.417 z M17,5.161 C17,6.818 15.986,7.747 15.7,8.854 L19.674,8.854 C20.978,8.854 21.994,9.938 22,11.124 C22.003,11.824 21.705,12.579 21.241,13.046 L21.236,13.05 C21.621,13.961 21.558,15.239 20.873,16.154 C21.212,17.166 20.87,18.408 20.233,19.074 C20.401,19.762 20.32,20.347 19.993,20.818 C19.195,21.963 17.219,21.979 15.548,21.979 L15.437,21.979 C13.551,21.979 12.007,21.292 10.767,20.74 C10.144,20.463 9.329,20.119 8.71,20.108 C8.455,20.103 8.25,19.895 8.25,19.639 L8.25,11.289 C8.25,
112111.164 8.3,11.044 8.389,10.956 C9.936,9.427 10.602,7.808 11.87,6.538 C12.448,5.958 12.659,5.083 12.862,4.237 C13.036,3.514 13.399,1.979 14.188,1.979 C15.125,1.979 17,2.292 17,5.161 z'
1122        ],
1123        archive:[
1124        'M3.877,18.962 C3.877,19.604 4.396,20.123 5.038,20.123 L18.962,20.123 C19.604,20.123 20.123,19.604 20.123,18.962 L20.123,8.519 L3.877,8.519 L3.877,18.962 z M9.679,11.275 C9.679,11.035 9.875,10.84 10.114,10.84 L13.886,10.84 C14.125,10.84 14.321,11.035 14.321,11.275 L14.321,11.565 C14.321,11.804 14.125,12 13.886,12 L10.114,12 C9.875,12 9.679,11.804 9.679,11.565 L9.679,11.275 z M20.123,3.877 L3.877,3.877 C3.235,3.877 2.717,4.396 2.717,5.038 L2.717,6.778 C2.717,7.097 2.978,7.358 3.297,7.358 L20.703,7.358 C21.022,7.358 21.283,7.097 21.283,6.778 L21.283,5.038 C21.283,4.396 20.765,3.877 20.123,3.877 z'
1125        ],
1126        shield:[
1127        'M20.062,5.401 L12.709,2.338 C12.256,2.15 11.748,2.15 11.295,2.338 L3.942,5.401 C3.257,5.685 2.809,6.355 2.809,7.098 C2.809,14.7 7.194,19.954 11.292,21.662 C11.743,21.85 12.253,21.85 12.705,21.662 C15.987,20.295 21.191,15.573 21.191,7.098 C21.191,6.355 20.743,5.685 20.062,5.401 z M12.004,19.288 L12,4.697 L18.736,7.504 C18.61,13.302 15.592,17.503 12.004,19.288 z'
1128        ],
1129        edit:[
1130        'M15.839,6.209 L18.861,9.231 C18.989,9.358 18.989,9.566 18.861,9.693 L11.544,17.01 L8.435,17.355 C8.02,17.402 7.668,17.051 7.715,16.635 L8.06,13.526 L15.377,6.209 C15.504,6.082 15.712,6.082 15.839,6.209 z M21.267,5.442 L19.632,3.807 C19.123,3.298 18.295,3.298 17.783,3.807 L16.597,4.993 C16.469,5.12 16.469,5.328 16.597,5.455 L19.619,8.477 C19.746,8.605 19.954,8.605 20.081,8.477 L21.267,7.291 C21.776,6.779 21.776,5.951 21.267,5.442 z M15.216,15.02 L15.216,18.431 L4.495,18.431 L4.495,7.71 L12.194,7.71 C12.302,7.71 12.402,7.666 12.479,7.593 L13.819,6.253 C14.074,5.998 13.893,5.566 13.534,5.566 L3.959,5.566 C3.072,5.566 2.351,6.286 2.351,7.174 L2.351,18.967 C2.351,19.855 3.072,20.575 3.959,20.575 L15.752,20.575 C16.64,20.575 17.36,19.855 17.36,18.967 L17.36,13.68 C17.36,13.322 16.928,13.144 16.674,13.395 L15.334,14.735 C15.26,14.813 15.216,14.913 15.216,15.02 z'
1131        ],
1132        lock:[
1133        'M18.345,10.846 L17.48,10.846 L17.48,8.251 C17.48,5.23 15.021,2.771 12,2.771 C8.979,2.771 6.52,5.23 6.52,8.251 L6.52,10.846 L5.655,10.846 C4.7,10.846 3.924,11.621 3.924,12.577 L3.924,19.499 C3.924,20.454 4.7,21.229 5.655,21.229 L18.345,21.229 C19.3,21.229 20.076,20.454 20.076,19.499 L20.076,12.577 C20.076,11.621 19.3,10.846 18.345,10.846 z M13.442,16.903 C13.442,17.7 12.797,18.345 12,18.345 C11.203,18.345 10.558,17.7 10.558,16.903 L10.558,15.173 C10.558,14.376 11.203,13.73 12,13.73 C12.797,13.73 13.442,14.376 13.442,15.173 L13.442,16.903 z M14.596,10.846 L9.404,10.846 L9.404,8.251 C9.404,6.819 10.569,5.655 12,5.655 C13.431,5.655 14.596,6.819 14.596,8.251 L14.596,10.846 z'
1134        ],
1135        heart:[
1136        'M20.286,4.231 C18.084,2.354 14.81,2.692 12.789,4.777 L11.998,5.593 L11.206,4.777 C9.189,2.692 5.911,2.354 3.709,4.231 C1.186,6.384 1.053,10.249 3.311,12.584 L11.086,20.611 C11.588,21.13 12.403,21.13 12.906,20.611 L20.68,12.584 C22.942,10.249 22.809,6.384 20.286,4.231 z'
1137        ],
1138        book:[
1139        'M20.312,15.859 L20.312,3.391 C20.312,2.897 19.915,2.5 19.422,2.5 L7.25,2.5 C5.283,2.5 3.687,4.096 3.687,6.062 L3.687,17.938 C3.687,19.904 5.283,21.5 7.25,21.5 L19.422,21.5 C19.915,21.5 20.312,21.103 20.312,20.609 L20.312,20.016 C20.312,19.737 20.183,19.485 19.982,19.322 C19.826,18.75 19.826,17.121 19.982,16.55 C20.183,16.39 20.312,16.138 20.312,15.859 z M8.438,7.473 C8.438,7.35 8.538,7.25 8.66,7.25 L16.527,7.25 C16.65,7.25 16.75,7.35 16.75,7.473 L16.75,8.215 C16.75,8.337 16.65,8.438 16.527,8.438 L8.66,8.438 C8.538,8.438 8.438,8.337 8.438,8.215 L8.438,7.473 z M8.438,9.848 C8.438,9.725 8.538,9.625 8.66,9.625 L16.527,9.625 C16.65,9.625 16.75,9.725 16.75,9.848 L16.75,10.59 C16.75,10.712 16.65,10.812 16.527,10.812 L8.66,10.812 C8.538,10.812 8.438,10.712 8.438,10.59 L8.438,9.848 z M17.841,19.125 L7.25,19.125 C6.593,19.125 6.062,18.594 6.062,17.938 C6.062,17.284 6.597,16.75 7.25,16.75 L17.841,16.75 C17.771,17.385 17.771,18.49 17.841,19.125 z'
1140        ],
1141        bookOpen:[
1142        'M21.71,3.446 C19.617,3.565 15.457,3.997 12.889,5.57 C12.711,5.678 12.611,5.871 12.611,6.073 L12.611,19.971 C12.611,20.412 13.093,20.691 13.5,20.486 C16.142,19.156 19.964,18.793 21.853,18.694 C22.498,18.66 23,18.143 23,17.523 L23,4.619 C23,3.942 22.414,3.407 21.71,3.446 z M11.111,5.5
11427 C8.544,3.997 4.383,3.565 2.29,3.446 C1.587,3.407 1,3.942 1,4.619 L1,17.523 C1,18.143 1.502,18.661 2.147,18.694 C4.037,18.794 7.86,19.157 10.503,20.487 C10.908,20.692 11.389,20.413 11.389,19.973 L11.389,6.066 C11.389,5.864 11.289,5.678 11.111,5.57 z'
1143        ],
1144        plane:[
1145        'M19.879,2.946 L3.28,12.522 C2.632,12.895 2.715,13.797 3.359,14.069 L7.166,15.666 L17.455,6.599 C17.652,6.423 17.931,6.692 17.763,6.896 L9.136,17.407 L9.136,20.29 C9.136,21.135 10.156,21.468 10.658,20.856 L12.932,18.087 L17.394,19.957 C17.902,20.172 18.483,19.853 18.576,19.305 L21.154,3.834 C21.276,3.111 20.499,2.588 19.879,2.946 z'
1146        ],
1147        trunk:[
1148        'M21.491,14.997 L20.991,14.997 L20.991,11.622 C20.991,11.226 20.832,10.845 20.551,10.564 L17.432,7.445 C17.151,7.164 16.77,7.005 16.374,7.005 L14.997,7.005 L14.997,5.506 C14.997,4.679 14.326,4.008 13.499,4.008 L3.508,4.008 C2.681,4.008 2.01,4.679 2.01,5.506 L2.01,15.497 C2.01,16.324 2.681,16.995 3.508,16.995 L4.008,16.995 C4.008,18.65 5.35,19.992 7.005,19.992 C8.66,19.992 10.002,18.65 10.002,16.995 L13.998,16.995 C13.998,18.65 15.34,19.992 16.995,19.992 C18.65,19.992 19.992,18.65 19.992,16.995 L21.491,16.995 C21.765,16.995 21.99,16.77 21.99,16.496 L21.99,15.497 C21.99,15.222 21.765,14.997 21.491,14.997 z M7.005,18.494 C6.178,18.494 5.506,17.822 5.506,16.995 C5.506,16.168 6.178,15.497 7.005,15.497 C7.832,15.497 8.503,16.168 8.503,16.995 C8.503,17.822 7.832,18.494 7.005,18.494 z M16.995,18.494 C16.168,18.494 15.497,17.822 15.497,16.995 C15.497,16.168 16.168,15.497 16.995,15.497 C17.822,15.497 18.494,16.168 18.494,16.995 C18.494,17.822 17.822,18.494 16.995,18.494 z M19.493,12 L14.997,12 L14.997,8.503 L16.374,8.503 L19.493,11.622 L19.493,12 z'
1149        ],
1150        cash:[
1151        'M2.82,17.354 L2.82,18.885 C2.82,20.151 5.904,21.18 9.705,21.18 C13.506,21.18 16.59,20.151 16.59,18.885 L16.59,17.354 
1151C15.109,18.397 12.402,18.885 9.705,18.885 C7.008,18.885 4.301,18.397 2.82,17.354 z M14.295,7.41 C18.096,7.41 21.18,6.381 21.18,5.115 C21.18,3.849 18.096,2.82 14.295,2.82 C10.494,2.82 7.41,3.849 7.41,5.115 C7.41,6.381 10.494,7.41 14.295,7.41 z M2.82,13.592 L2.82,15.443 C2.82,16.708 5.904,17.738 9.705,17.738 C13.506,17.738 16.59,16.708 16.59,15.443 L16.59,13.592 C15.109,14.811 12.398,15.443 9.705,15.443 C7.012,15.443 4.301,14.811 2.82,13.592 z M17.738,13.987 C19.792,13.589 21.18,12.85 21.18,12 L21.18,10.469 C20.348,11.057 19.125,11.459 17.738,11.706 L17.738,13.987 z M9.705,8.557 C5.904,8.557 2.82,9.841 2.82,11.426 C2.82,13.011 5.904,14.295 9.705,14.295 C13.506,14.295 16.59,13.011 16.59,11.426 C16.59,9.841 13.506,8.557 9.705,8.557 z M17.569,10.576 C19.721,10.189 21.18,9.429 21.18,8.557 L21.18,7.026 C19.907,7.926 17.72,8.41 15.417,8.525 C16.475,9.038 17.254,9.726 17.569,10.576 z'
1152        ],
1153        '18app':[
1154        'M11.19,2.79 C8.368,3.309 5.856,5.193 4.581,7.751 C3.862,9.18 3.58,10.4 3.58,12.03 C3.58,14.478 4.436,16.608 6.12,18.411 C7.913,20.313 10.252,21.333 12.874,21.342 C14.03,21.351 14.94,21.196 15.969,20.841 C17.444,20.322 18.272,19.813 19.355,18.784 C20.538,17.655 20.894,16.59 20.42,15.607 C19.91,14.551 18.672,14.478 17.225,15.416 C15.987,16.226 13.757,17.1 12.737,17.191 C12.237,17.237 12.155,17.218 11.9,17 C11.745,16.863 11.59,16.636 11.554,16.49 C11.508,16.29 11.436,16.217 11.208,16.171 C10.78,16.08 10.352,15.716 10.234,15.352 C10.179,15.179 10.152,15.006 10.179,14.961 C10.207,14.915 10.097,14.788 9.952,14.679 C9.597,14.415 9.378,13.914 9.46,13.513 C9.497,13.286 9.479,13.195 9.369,13.158 C9.133,13.067 8.841,12.385 8.832,11.92 C8.823,11.383 9.06,11.119 10.025,10.601 C10.971,10.091 11.508,9.69 11.508,9.499 C11.508,9.308 10.971,8.78 10.489,8.489 C9.524,7.915 8.951,6.459 9.369,5.658 C9.661,5.093 10.006,5.111 10.28,5.694 C10.635,6.44 11.791,7.296 13.411,8.015 C13.948,8.261 14.831,8.689 15.359,8.962 C16.506,9.563 17.016,9.663 17.89,9.444 C20.293,8.825 21.048,7.123 19.637,5.476 C18.909,4.629 17.28,3.6 15.932,3.145 C14.531,2.663 12.628,2.526 11.19,2.79 z'
1155        ],
1156        'new/18app':[
1157        'M11.19,2.79 C8.368,3.309 5.856,5.193 4.581,7.751 C3.862,9.18 3.58,10.4 3.58,12.03 C3.58,14.478 4.436,16.608 6.12,18.411 C7.913,20.313 10.252,21.333 12.874,21.342 C14.03,21.351 14.94,21.196 15.969,20.841 C17.444,20.322 18.272,19.813 19.355,18.784 C20.538,17.655 20.894,16.59 20.42,15.607 C19.91,14.551 18.672,14.478 17.225,15.416 C15.987,16.226 13.757,17.1 12.737,17.191 C12.237,17.237 12.155,17.218 11.9,17 C11.745,16.863 11.59,16.636 11.554,16.49 C11.508,16.29 11.436,16.217 11.208,16.171 C10.78,16.08 10.352,15.716 10.234,15.352 C10.179,15.179 10.152,15.006 10.179,14.961 C10.207,14.915 10.097,14.788 9.952,14.679 C9.597,14.415 9.378,13.914 9.46,13.513 C9.497,13.286 9.479,13.195 9.369,13.158 C9.133,13.067 8.841,12.385 8.832,11.92 C8.823,11.383 9.06,11.119 10.025,10.601 C10.971,10.091 11.508,9.69 11.508,9.499 C11.508,9.308 10.971,8.78 10.489,8.489 C9.524,7.915 8.951,6.459 9.369,5.658 C9.661,5.093 10.006,5.111 10.28,5.694 C10.635,6.44 11.791,7.296 13.411,8.015 C13.948,8.261 14.831,8.689 15.359,8.962 C16.506,9.563 17.016,9.663 17.89,9.444 C20.293,8.825 21.048,7.123 19.637,5.476 C18.909,4.629 17.28,3.6 15.932,3.145 C14.531,2.663 12.628,2.526 11.19,2.79 z'
1158        ],
1159        cartadocente:[
1160        'M20.915,4.911 C21.42,4.911 21.829,5.32 21.829,5.825 L21.829,18.175 C21.829,18.68 21.42,19.089 20.915,19.089 L3.085,19.089 C2.58,19.089 2.171,18.68 2.171,18.175 L2.171,5.825 C2.171,5.32 2.58,4.911 3.085,4.911 L20.915,4.911 z M17.714,15.107 L17.21,15.107 L17.21,16.138 L17.714,16.138 L17.714,15.107 z M15.628,14.075 L14.619,14.075 L14.619,14.579 L15.123,14.579 L15.123,15.107 L14.619,15.107 L14.619,16.138 L15.123,16.138 L15.123,15.107 L15.651,15.107 L15.651,16.138 L16.682,16.138 L16.682,15.107 L17.187,15.107 L17.187,14.602 L16.682,14.602 L16.682,15.107 L16.162,15.102 L15.639,15.095 L15.632,14.584 L15.628,14.075 z M14.092,13.043 L10.996,13.043 L10.996,16.138 L14.092,16.138 L14.092,13.043 z M11.501,13.548 L12.539,13.552 L13.576,13.559 L13.576,15.622 L12.539,15.629 L11.501,15.634 L11.501,13.548 z M13.06,14.075 L12.028,14.075 L12.028,15.10
11607 L13.06,15.107 L13.06,14.075 z M18.746,14.602 L18.241,14.602 L18.241,16.138 L19.273,16.138 L19.273,15.107 L18.746,15.107 L18.746,14.602 z M18.218,14.075 L17.21,14.075 L17.21,14.579 L18.218,14.579 L18.218,14.075 z M16.682,14.075 L16.178,14.075 L16.178,14.579 L16.682,14.579 L16.682,14.075 z M19.273,13.043 L18.241,13.043 L18.241,13.548 L18.746,13.548 L18.746,14.075 L19.273,14.075 L19.273,13.043 z M16.155,13.548 L15.651,13.548 L15.651,14.075 L16.155,14.075 L16.155,13.548 z M15.123,10.98 L14.619,10.98 L14.619,11.484 L15.123,11.484 L15.123,11.989 L15.651,11.989 L15.651,12.516 L14.619,12.516 L14.619,13.548 L15.628,13.548 L15.632,13.036 L15.639,12.527 L16.162,12.52 L16.682,12.516 L16.682,13.043 L16.178,13.043 L16.178,13.548 L17.714,13.548 L17.714,12.516 L16.682,12.516 L16.682,11.484 L15.123,11.484 L15.123,10.98 z M14.596,11.484 L14.094,11.484 L14.087,11.741 L14.08,12 L13.835,12.007 L13.587,12.014 L13.587,12.516 L14.596,12.516 L14.596,11.484 z M12.003,11.484 L10.996,11.484 L10.996,12.516 L12.533,12.516 L12.533,12.014 L12.276,12.007 L12.017,12 L12.01,11.741 L12.003,11.484 z M19.273,11.484 L17.21,11.484 L17.21,11.989 L18.241,11.989 L18.241,12.516 L19.273,12.516 L19.273,11.484 z M13.564,11.484 L12.533,11.484 L12.533,11.989 L13.564,11.989 L13.564,11.484 z M14.092,7.862 L10.996,7.862 L10.996,10.957 L14.092,10.957 L14.092,7.862 z M11.501,8.366 L12.539,8.371 L13.576,8.378 L13.576,10.441 L12.539,10.448 L11.501,10.452 L11.501,8.366 z M13.06,8.893 L12.028,8.893 L12.028,9.925 L13.06,9.925 L13.06,8.893 z M15.123,9.925 L15.123,10.957 L15.628,10.957 L15.628,9.925 L15.121,9.925 L15.128,9.666 L15.135,9.409 L15.382,9.402 L15.628,9.396 L15.628,8.391 L15.382,8.384 L15.135,8.378 L15.128,8.119 L15.121,7.862 L14.619,7.862 L14.619,9.925 L15.123,9.925 z M19.273,7.862 L16.178,7.862 L16.178,10.957 L19.273,10.957 L19.273,7.862 z M18.746,8.366 L18.746,10.452 L16.682,10.452 L16.682,8.366 L18.746,8.366 z M18.218,8.893 L17.21,8.893 L17.21,9.925 L18.218,9.925 L18.218,8.893 z'
1161        ],
1162        'new/cartadocente':[
1163        'M20.915,4.911 C21.42,4.911 21.829,5.32 21.829,5.825 L21.829,18.175 C21.829,18.68 21.42,19.089 20.915,19.089 L3.085,19.089 C2.58,19.089 2.171,18.68 2.171,18.175 L2.171,5.825 C2.171,5.32 2.58,4.911 3.085,4.911 L20.915,4.911 z M17.714,15.107 L17.21,15.107 L17.21,16.138 L17.714,16.138 L17.714,15.107 z M15.628,14.075 L14.619,14.075 L14.619,14.579 L15.123,14.579 L15.123,15.107 L14.619,15.107 L14.619,16.138 L15.123,16.138 L15.123,15.107 L15.651,15.107 L15.651,16.138 L16.682,16.138 L16.682,15.107 L17.187,15.107 L17.187,14.602 L16.682,14.602 L16.682,15.107 L16.162,15.102 L15.639,15.095 L15.632,14.584 L15.628,14.075 z M14.092,13.043 L10.996,13.043 L10.996,16.138 L14.092,16.138 L14.092,13.043 z M11.501,13.548 L12.539,13.552 L13.576,13.559 L13.576,15.622 L12.539,15.629 L11.501,15.634 L11.501,13.548 z M13.06,14.075 L12.028,14.075 L12.028,15.107 L13.06,15.107 L13.06,14.075 z M18.746,14.602 L18.241,14.602 L18.241,16.138 L19.273,16.138 L19.273,15.107 L18.746,15.107 L18.746,14.602 z M18.218,14.075 L17.21,14.075 L17.21,14.579 L18.218,14.579 L18.218,14.075 z M16.682,14.075 L16.178,14.075 L16.178,14.579 L16.682,14.579 L16.682,14.075 z M19.273,13.043 L18.241,13.043 L18.241,13.548 L18.746,13.548 L18.746,14.075 L19.273,14.075 L19.273,13.043 z M16.155,13.548 L15.651,13.548 L15.651,14.075 L16.155,14.075 L16.155,13.548 z M15.123,10.98 L14.619,10.98 L14.619,11.484 L15.123,11.484 L15.123,11.989 L15.651,11.989 L15.651,12.516 L14.619,12.516 L14.619,13.548 L15.628,13.548 L15.632,13.036 L15.639,12.527 L16.162,12.52 L16.682,12.516 L16.682,13.043 L16.178,13.043 L16.178,13.548 L17.714,13.548 L17.714,12.516 L16.682,12.516 L16.682,11.484 L15.123,11.484 L15.123,10.98 z M14.596,11.484 L14.094,11.484 L14.087,11.741 L14.08,12 L13.835,12.007 L13.587,12.014 L13.587,12.516 L14.596,12.516 L14.596,11.484 z M12.003,11.484 L10.996,11.484 L10.996,12.516 L12.533,12.516 L12.533,12.014 L12.276,12.007 L12.017,12 L12.01,11.741 L12.003,11.484 z M19.273,11.484 L17.21,11.484 L17.21,11.989 L18.241,11.989 L18.241,12.516 L19.273,12.516 L19.273,11.484 z M13.564,11.484 L12.533,11.484 L12.533,11.989 L13.564,11.989 L13.564,11.484 z M14.092,7.862 L10.996,7.862 L10.996,10.957 L14.092,10.957 L14.092,7.862 z M11.501,8.366 L12.539,8.371 L13.576,8.378 L13.576,10.441 L12.539,10.448 L11.501,10.452 L11.501,8.366 z M13.06,8.893 L12.028,8.893 L12.028,9.925 L13.06,9.925 L13.06,8.893 z M15.123,9.925 L15.123,10.957 L15.628,10.957 L15.628,9.925 L15.121,9.925 L15.128,9.666 L15.135,9.409 L15.382,9.402 L15.628,9.396 L15.628,8.39
11631 L15.382,8.384 L15.135,8.378 L15.128,8.119 L15.121,7.862 L14.619,7.862 L14.619,9.925 L15.123,9.925 z M19.273,7.862 L16.178,7.862 L16.178,10.957 L19.273,10.957 L19.273,7.862 z M18.746,8.366 L18.746,10.452 L16.682,10.452 L16.682,8.366 L18.746,8.366 z M18.218,8.893 L17.21,8.893 L17.21,9.925 L18.218,9.925 L18.218,8.893 z'
1164        ],
1165        satispay:[
1166        'M15.608,18.909 L17.642,20.943 C17.828,21.129 17.696,21.447 17.433,21.447 L13.07,21.447 L15.608,18.909 z M11.99,2.553 L6.556,2.553 C6.293,2.553 6.161,2.872 6.347,3.058 L8.865,5.575 L12,8.71 L15.086,11.796 L15.295,12.005 L15.086,12.214 L12,15.3 L8.865,18.435 L6.358,20.943 C6.172,21.129 6.303,21.447 6.566,21.447 L12.001,21.447 C12.079,21.447 12.155,21.416 12.21,21.36 L15.135,18.435 L18.43,15.141 L21.356,12.214 C21.472,12.099 21.472,11.912 21.356,11.796 L12.199,2.64 C12.146,2.587 12.075,2.558 12,2.555 C11.997,2.555 11.994,2.553 11.99,2.553 z M8.391,6.049 L5.57,8.87 L2.644,11.796 C2.528,11.912 2.528,12.099 2.644,12.214 L5.57,15.141 L8.391,17.962 L11.526,14.827 L8.914,12.214 L8.705,12.005 L11.526,9.184 L8.391,6.049 z M17.443,2.553 L13.06,2.553 L15.609,5.101 L17.652,3.058 C17.839,2.872 17.707,2.553 17.443,2.553 z'
1167        ],
1168        paypal:[
1169        'M8.532,13.714 C8.382,14.539 7.784,18.388 7.608,19.476 C7.595,19.553 7.565,19.583 7.479,19.583 L4.271,19.583 C3.944,19.583 3.708,19.3 3.751,18.986 L6.27,2.993 C6.335,2.58 6.705,2.267 7.131,2.267 C13.68,2.267 14.23,2.107 15.903,2.757 C18.487,3.759 18.724,6.175 17.795,8.79 C16.87,11.482 14.677,12.639 11.77,12.673 C9.904,12.703 8.782,12.372 8.532,13.714 z M19.098,7.526 C19.021,7.47 18.99,7.448 18.969,7.582 C18.883,8.072 18.75,8.549 18.591,9.026 C16.875,13.92 12.119,13.494 9.797,13.494 C9.534,13.494 9.362,13.636 9.328,13.899 C8.356,19.936 8.163,21.196 8.163,21.196 C8.12,21.501 8.313,21.751 8.618,21.751 L11.349,21.751 C11.719,21.751 12.024,21.48 12.097,21.11 C12.127,20.878 12.05,21.372 12.716,17.184 C12.914,16.238 13.331,16.337 13.976,16.337 C17.03,16.337 19.412,15.098 20.121,11.508 C20.401,10.011 20.319,8.437 19.098,7.526 z'
1170        ],
1171        'new/satispay':[
1172        'M15.608,18.909 L17.642,20.943 C17.828,21.129 17.696,21.447 17.433,21.447 L13.07,21.447 L15.608,18.909 z M11.99,2.553 L6.556,2.553 C6.293,2.553 6.161,2.872 6.347,3.058 L8.865,5.575 L12,8.71 L15.086,11.796 L15.295,12.005 L15.086,12.214 L12,15.3 L8.865,18.435 L6.358,20.943 C6.172,21.129 6.303,21.447 6.566,21.447 L12.001,21.447 C12.079,21.447 12.155,21.416 12.21,21.36 L15.135,18.435 L18.43,15.141 L21.356,12.214 C21.472,12.099 21.472,11.912 21.356,11.796 L12.199,2.64 C12.146,2.587 12.075,2.558 12,2.555 C11.997,2.555 11.994,2.553 11.99,2.553 z M8.391,6.049 L5.57,8.87 L2.644,11.796 C2.528,11.912 2.528,12.099 2.644,12.214 L5.57,15.141 L8.391,17.962 L11.526,14.827 L8.914,12.214 L8.705,12.005 L11.526,9.184 L8.391,6.049 z M17.443,2.553 L13.06,2.553 L15.609,5.101 L17.652,3.058 C17.839,2.872 17.707,2.553 17.443,2.553 z'
1173        ],
1174        'new/paypal':[
1175        'M8.532,13.714 C8.382,14.539 7.784,18.388 7.608,19.476 C7.595,19.553 7.565,19.583 7.479,19.583 L4.271,19.583 C3.944,19.583 3.708,19.3 3.751,18.986 L6.27,2.993 C6.335,2.58 6.705,2.267 7.131,2.267 C13.68,2.267 14.23,2.107 15.903,2.757 C18.487,3.759 18.724,6.175 17.795,8.79 C16.87,11.482 14.677,12.639 11.77,12.673 C9.904,12.703 8.782,12.372 8.532,13.714 z M19.098,7.526 C19.021,7.47 18.99,7.448 18.969,7.582 C18.883,8.072 18.75,8.549 18.591,9.026 C16.875,13.92 12.119,13.494 9.797,13.494 C9.534,13.494 9.362,13.636 9.328,13.899 C8.356,19.936 8.163,21.196 8.163,21.196 C8.12,21.501 8.313,21.751 8.618,21.751 L11.349,21.751 C11.719,21.751 12.024,21.48 12.097,21.11 C12.127,20.878 12.05,21.372 12.716,17.184 C12.914,16.238 13.331,16.337 13.976,16.337 C17.03,16.337 19.412,15.098 20.121,11.508 C20.401,10.011 20.319,8.437 19.098,7.526 z'
1176        ],
1177        comments:[
1178        'M16.586,9.707 C16.586,6.539 13.25,3.974 9.134,3.974 C5.017,3.974 1.681,6.539 1.681,9.707 C1.681,10.936 2.186,12.068 3.042,13.003 C2.562,14.085 1.77,14.945 1.76,14.956 C1.681,15.038 1.659,15.16 1.706,15.268 C1.752,15.375 1.853,15.44 1.967,15.44 C3.279,15.44 4.365,14.999 5.146,14.544 C6.299,15.107 7.665,15.44 9.134,15.44 C13.25,15.44 16.586,12.874 16.586,9.707 z M20.958,17.59 C21.814,16.658 22.319,15.522 22.319,14.293 C22.319,11.896 20.402,9.843 17.686,8.987 C17.719,9.223 17.733,9.463 17.733,9.707 C17.733,13.501 13.874,16.586 9.134,16.586 C8.747,16.586 8.37,16.558 7.998,16.518 C9.126,18.578 11.778,20.026 14.866,20.026 C16.335,20.026 17.701,19.696 18.854,19.13 C19.635,19.585 20.721,20.026 22.033,20.026 C22.147,20.026 22.251,19.958 22.294,19.854 C22.341,19.75 22.319,19.628 22.24,19.542 C22.23,19.532 21.438,18.675 20.958,17.59 z'
1179        ],
1180        refund:[
1181        'M2.648,1.737 C2.922,1.737 3.144,1.96 3.144,2.234 L3.144,6.812 C4.932,3.767 8.244,1.726 12.033,1.737 C17.677,1.755 22.271,6.373 22.263,12.016 C22.254,17.677 17.662,22.263 12,22.263 C9.355,22.263 6.943,21.262 5.123,19.618 C4.912,19.427 4.902,19.098 5.103,18.897 L5.396,18.604 C5.582,18.418 5.882,18.409 6.078,18.585 C7.646,19.997 9.721,20.856 12,20.856 C16.872,20.856 20.856,
118116.911 20.856,12 C20.856,7.128 16.911,3.144 12,3.144 C8.571,3.144 5.597,5.092 4.126,7.945 L8.855,7.945 C9.129,7.945 9.352,8.167 9.352,8.441 L9.352,8.855 C9.352,9.129 9.129,9.352 8.855,9.352 L2.234,9.352 C1.96,9.352 1.737,9.129 1.737,8.855 L1.737,2.234 C1.737,1.96 1.96,1.737 2.234,1.737 L2.648,1.737 z M14.084,6.799 C11.828,6.799 10.007,8.198 9.335,10.142 L8.567,10.142 C8.413,10.143 8.288,10.267 8.288,10.421 L8.288,11.112 C8.288,11.266 8.413,11.391 8.567,11.391 L9.067,11.391 C9.044,11.707 9.04,12.071 9.063,12.371 L8.567,12.371 C8.413,12.372 8.288,12.496 8.288,12.65 L8.288,13.309 C8.288,13.462 8.413,13.587 8.567,13.587 L9.266,13.587 C9.847,15.685 11.661,17.201 14.084,17.201 C14.695,17.201 15.212,17.095 15.503,17.02 C15.646,16.983 15.735,16.841 15.707,16.696 L15.502,15.663 C15.471,15.509 15.32,15.411 15.167,15.445 C14.919,15.502 14.53,15.571 14.112,15.571 C12.794,15.571 11.746,14.763 11.292,13.587 L13.932,13.587 C14.062,13.587 14.175,13.497 14.204,13.37 L14.352,12.711 C14.391,12.537 14.258,12.372 14.08,12.371 L10.963,12.371 C10.935,12.039 10.93,11.715 10.966,11.391 L14.37,11.391 C14.501,11.391 14.614,11.3 14.642,11.172 L14.793,10.481 C14.831,10.307 14.699,10.143 14.521,10.142 L11.311,10.142 C11.79,9.098 12.766,8.401 14.041,8.401 C14.378,8.401 14.705,8.453 14.92,8.497 C15.065,8.526 15.207,8.439 15.245,8.296 L15.524,7.266 C15.566,7.11 15.467,6.95 15.307,6.92 C15.026,6.867 14.573,6.799 14.084,6.799 z'
1182        ],
1183        exchange:[
1184        'M21.76,8.617 L18.043,12.334 C17.75,12.627 17.251,12.417 17.251,12.006 L17.251,9.217 L2.568,9.217 C2.312,9.217 2.104,9.009 2.104,8.753 L2.104,7.825 C2.104,7.569 2.312,7.361 2.568,7.361 L17.251,7.361 L17.251,4.572 C17.251,4.159 17.752,3.952 18.043,4.244 L21.76,7.961 C21.941,8.142 21.941,8.436 21.76,8.617 z M2.24,16.039 L5.957,19.756 C6.248,20.048 6.749,19.841 6.749,19.428 L6.749,16.639 L21.432,16.639 C21.688,16.639 21.896,16.431 21.896,16.175 L21.896,15.247 C21.896,14.991 21.688,14.783 21.432,14.783 L6.749,14.783 L6.749,11.994 C6.749,11.583 6.25,11.373 5.957,11.666 L2.24,15.383 C2.059,15.564 2.059,15.858 2.24,16.039 z'
1185        ],
1186        userTie:[
1187        'M13.738,13.159 L12.579,15.186 L13.182,17.748 L15.468,13.18 C18.05,13.303 20.11,15.414 20.11,18.024 L20.11,19.53 C20.11,20.49 19.332,21.268 18.372,21.268 L5.628,21.268 C4.668,21.268 3.89,20.49 3.89,19.53 L3.89,18.024 C3.89,15.414 5.95,13.303 8.532,13.18 L10.818,17.748 L11.421,15.186 L10.262,13.159 L13.738,13.159 z M12,2.732 C9.441,2.732 7.366,4.807 7.366,7.366 C7.366,9.925 9.441,12 12,12 C14.559,12 16.634,9.925 16.634,7.366 C16.634,4.807 14.559,2.732 12,2.732 z'
1188        ],
1189        card:[
1190        'M2.297,17.93 C2.297,18.823 3.021,19.547 3.914,19.547 L20.086,19.547 C20.979,19.547 21.703,18.823 21.703,17.93 L21.703,12 L2.297,12 L2.297,17.93 z M8.766,15.639 C8.766,15.416 8.948,15.234 9.17,15.234 L13.752,15.234 C13.974,15.234 14.156,15.416 14.156,15.639 L14.156,16.986 C14.156,17.209 13.974,17.391 13.752,17.391 L9.17,17.391 C8.948,17.391 8.766,17.209 8.766,16.986 L8.766,15.639 z M4.453,15.639 C4.453,15.416 4.635,15.234 4.857,15.234 L7.283,15.234 C7.506,15.234 7.687,15.416 7.687,15.639 L7.687,16.986 C7.687,17.209 7.506,17.391 7.283,17.391 L4.857,17.391 C4.635,17.391 4.453,17.209 4.453,16.986 L4.453,15.639 z M21.703,6.07 L21.703,7.688 L2.297,7.688 L2.297,6.07 C2.297,5.177 3.021,4.453 3.914,4.453 L20.086,4.453 C20.979,4.453 21.703,5.177 21.703,6.07 z'
1191        ],
1192        bank:[
1193        'M22.145,6.589 L22.145,7.266 C22.145,7.452 21.994,7.604 21.807,7.604 L20.793,7.604 L20.793,8.111 C20.793,8.391 20.565,8.618 20.285,8.618 L3.715,8.618 C3.435,8.618 3.207,8.391 3.207,8.111 L3.207,7.604 L2.193,7.604 C2.006,7.604 1.855,7.452 1.855,7.266 L1.855,6.589 C1.855,6.452 1.937,6.329 2.064,6.277 L11.871,2.557 C11.953,2.523 12.047,2.523 12.129,2.557 L21.936,6.277 C22.063,6.329 22.145,6.452 22.145,6.589 z M21.131,19.44 L2.869,19.44 C2.309,19.44 1.855,19.894 1.855,20.454 L1.855,21.131 C1.855,21.317 2.006,21.469 2.193,21.469 L21.807,21.469 C21.994,21.469 22.145,21.317 22.145,21.131 L22.145,20.454 C22.145,19.894 21.691,19.44 21.131,19.44 z M5.237,9.295 L5.237,17.411 L3.715,17.411 C3.435,17.411 3.207,17.638 3.207,17.918 L3.207,18.763 L20.793,18.763 L20.793,17.918 C20.793,17.638 20.565,17.411 20.285,17.411 L18.763,17.411 L18.763,9.295 L16.058,9.295 L16.058,17.411 L13.353,17.411 L13.353,9.295 L10.647,9.295 L10.647,17.411 L7.942,17.411 L7.942,9.295 L5.237,9.295 z'
1194        ],
1195        store:[
1196        'M21.976,7.337 L19.774,3.822 C19.577,3.506 19.228,3.312 18.854,3.312 L5.144,3.312 C4.771,3.312 4.422,3.506 4.225,3.822 L2.022,7.337 C0.885,9.153 1.893,11.678 4.018,11.966 C4.17,11.986 4.327,11.997 4.483,11.997 C5.487,11.997 6.376,11.555 6.987,10.873 C7.598,11.555 8.49,11.997 9.491,11.997 C10.496,11.997 11.385,11.555 11.996,10.873 C12.607,11.555 13.499,11.997 14.5,11.997 C15.505,11.997 16.394,11.555 17.005,10.873 C17.619,11.555 18.508,11.997 19.509,11.997 C19.669,11.997 19.821,11.986 19.974,11.966 C22.105,11.681 23.117,9.156 21.976,7.337 z M19.516,13.086 C19.177,13.086 18.841,13.035 18.515,12.957 L18.515,16.344 L5.484,16.344 L5.484,12.957 C5.158,13.032 4.822,13.086 4.483,13.086 C4.279,13.086 4.072,13.072 3.872,13.045 C3.682,13.018 3.495,12.974 3.315,12.923 L3.315,19.602 C3.315,20.202 3.801,20.688 4.401,20.688 L19.604,20.688 C20.205,20.688 20.69,20.202 20.69,19.602 L20.69,12.923 C20.507,12.977 20.324,13.021 20.134,13.045 C19.927,13.072 19.723,13.086 19.516,13.086 z'
1197        ],
1198        headset:[
1199        'M9.498,10.124 C9.498,9.433 8.938,8.873 8.247,8.873 L7.622,8.873 C6.24,8.873 5.12,9.993 5.12,11.375 L5.12,13.251 C5.12,14.633 6.24,15.753 7.622,15.753 L8.247,15.753 C8.938,15.753 9.498,15.192 9.498,14.502 L9.498,10.124 z M16.378,15.753 C1
11997.76,15.753 18.88,14.633 18.88,13.251 L18.88,11.375 C18.88,9.993 17.76,8.873 16.378,8.873 L15.753,8.873 C15.062,8.873 14.502,9.433 14.502,10.124 L14.502,14.502 C14.502,15.192 15.062,15.753 15.753,15.753 L16.378,15.753 z M12,1.993 C6.417,1.993 2.172,6.638 1.993,12 L1.993,12.625 C1.993,12.971 2.273,13.251 2.619,13.251 L3.244,13.251 C3.59,13.251 3.87,12.971 3.87,12.625 L3.87,12 C3.87,7.517 7.517,3.87 12,3.87 C16.483,3.87 20.13,7.517 20.13,12 L20.126,12 C20.129,12.095 20.13,18.478 20.13,18.478 C20.13,19.39 19.39,20.13 18.478,20.13 L14.502,20.13 C14.502,19.094 13.662,18.254 12.625,18.254 L11.375,18.254 C10.338,18.254 9.498,19.094 9.498,20.13 C9.498,21.167 10.338,22.007 11.375,22.007 L18.478,22.007 C20.427,22.007 22.007,20.427 22.007,18.478 L22.007,12 C21.828,6.638 17.583,1.993 12,1.993 z'
1200        ],
1201        receipt:[
1202        'M18.032,2.835 L16.64,4.459 L14.668,2.835 C14.462,2.679 14.178,2.679 13.972,2.835 L12,4.459 L10.028,2.835 C9.822,2.679 9.538,2.679 9.332,2.835 L7.36,4.459 L5.968,2.835 C5.583,2.549 5.039,2.821 5.039,3.299 L5.039,20.701 C5.039,21.179 5.583,21.451 5.968,21.165 L7.36,19.541 L9.332,21.165 C9.538,21.321 9.822,21.321 10.028,21.165 L12,19.541 L13.972,21.165 C14.178,21.321 14.462,21.321 14.668,21.165 L16.64,19.541 L18.032,21.165 C18.413,21.451 18.961,21.179 18.961,20.701 L18.961,3.299 C18.961,2.821 18.417,2.549 18.032,2.835 z M16.64,15.77 C16.64,15.93 16.51,16.06 16.35,16.06 L7.65,16.06 C7.49,16.06 7.36,15.93 7.36,15.77 L7.36,15.19 C7.36,15.031 7.49,14.9 7.65,14.9 L16.35,14.9 C16.51,14.9 16.64,15.031 16.64,15.19 L16.64,15.77 z M16.64,12.29 C16.64,12.45 16.51,12.58 16.35,12.58 L7.65,12.58 C7.49,12.58 7.36,12.45 7.36,12.29 L7.36,11.71 C7.36,11.55 7.49,11.42 7.65,11.42 L16.35,11.42 C16.51,11.42 16.64,11.55 16.64,11.71 L16.64,12.29 z M16.64,8.81 C16.64,8.969 16.51,9.1 16.35,9.1 L7.65,9.1 C7.49,9.1 7.36,8.969 7.36,8.81 L7.36,8.23 C7.36,8.07 7.49,7.94 7.65,7.94 L16.35,7.94 C16.51,7.94 16.64,8.07 16.64,8.23 L16.64,8.81 z'
1203        ],
1204        pdf:[
1205        'M18.519,6.208 L15.445,3.134 C15.115,2.804 14.668,2.617 14.202,2.617 L6.723,2.617 C5.752,2.621 4.964,3.409 4.964,4.38 L4.964,19.624 C4.964,20.595 5.752,21.383 6.723,21.383 L17.277,21.383 C18.248,21.383 19.036,20.595 19.036,19.624 L19.036,7.454 C19.036,6.989 18.849,6.538 18.519,6.208 z M17.134,7.311 L14.345,7.311 L14.345,4.523 L17.134,7.311 z M6.723,19.624 L6.723,4.38 L12.586,4.38 L12.586,8.191 C12.586,8.678 12.978,9.07 13.466,9.07 L17.277,9.07 L17.277,19.624 L6.723,19.624 z M15.892,14.358 C15.445,13.918 14.169,14.039 13.532,14.12 C12.901,13.735 12.48,13.204 12.183,12.423 C12.326,11.833 12.553,10.935 12.381,10.371 C12.227,9.411 10.996,9.506 10.82,10.155 C10.659,10.745 10.805,11.566 11.077,12.614 C10.71,13.49 10.164,14.666 9.779,15.34 C9.046,15.718 8.057,16.3 7.91,17.033 C7.79,17.612 8.863,19.056 10.699,15.89 C11.52,15.619 12.414,15.285 13.206,15.153 C13.898,15.527 14.708,15.776 15.25,15.776 C16.185,15.776 16.276,14.743 15.892,14.358 z M8.632,17.209 C8.819,16.707 9.53,16.128 9.746,15.926 C9.05,17.037 8.632,17.235 8.632,17.209 z M11.623,10.225 C11.894,10.225 11.868,11.401 11.689,11.72 C11.527,11.21 11.531,10.225 11.623,10.225 z M10.728,15.23 C11.084,14.611 11.388,13.874 11.634,13.226 C11.938,13.779 12.326,14.222 12.737,14.527 C11.974,14.684 11.311,15.007 10.728,15.23 z M15.551,15.047 C15.551,15.047 15.368,15.267 14.184,14.761 C15.47,14.666 15.683,14.959 15.551,15.047 z'
1206        ],
1207        eye:[
1208        'M12,7.661 C11.589,7.668 11.182,7.733 10.79,7.855 C10.971,8.174 11.068,8.534 11.07,8.901 C11.07,10.099 10.099,11.07 8.901,11.07 C8.534,11.068 8.174,10.971 7.855,10.79 C7.339,12.58 8.026,14.499 9.561,15.554 C11.095,16.61 13.133,16.565 14.62,15.443 C16.107,14.321 16.708,12.373 16.114,10.608 C15.52,8.843 13.863,7.656 12,7.661 z M23.021,11.434 C20.921,7.336 16.762,4.562 12,4.562 C7.238,4.562 3.078,7.338 0.979,11.435 C0.799,11.79 0.799,12.21 0.979,12.566 C3.079,16.664 7.238,19.438 12,19.438 C16.762,19.438 20.922,16.662 23.021,12.565 C23.201,12.21 23.201,11.79 23.021,11.434 z M12,17.578 C8.179,17.578 4.675,15.448 2.783,12 C4.675,8.552 8.178,6.422 12,6.422 C15.822,6.422 19.325,8.552 21.217,12 C19.325,15.448 15.822,17.578 12,17.578 z'
1209        ],
1210        stripe:[
1211        'M6.385,7.971 L4.817,8.305 L4.81,13.461 C4.81,14.414 5.527,15.029 6.48,15.029 C7.008,15.029 7.396,14.931 7.609,14.815 L7.609,13.592 C7.403,13.675 6.389,13.972 6.389,13.023 L6.389,10.734 L7.609,10.734 L7.609,9.366 L6.389,9.366 z M9.612,9.84 L9.514,9.366 L8.124,9.366 L8.124,14.913 L9.728,14.913 L9.728,11.18 C10.108,10.68 10.749,10.778 10.955,10.843 L10.955,9.366 C10.738,9.29 9.988,9.148 9.612,9.84 z M12.954,7.222 L11.339,7.566 L11.339,8.877 L12.954,8.533 z M2.036,10.999 C2.036,10.749 2.246,10.651 2.583,10.647 C3.072,10.647 3.695,10.796 4.184,11.06 L4.184,9.547 C3.651,9.337 3.119,9.253 2.587,9.253 C1.283,9.253 0.414,9.934 0.414,11.071 C0.414,12.853 2.858,12.563 2.858,13.331 C2.858,13.628 2.601,13.725 2.243,13.725 C1.71,13.725 1.022,13.505 0.483,13.211 L0.483,14.66 C1.08,14.917 1.685,15.025 2.239,15.025 C3.575,15.025 4.495,14.453 4.495,13.295 C4.495,11.379 2.036,11.723 2.036,10.999 z M23.586,12.205 C23.586,10.557 22.789,9.257 21.261,9.257 C19.733,9.257 18.802,10.557 18.802,12.194 C18.802,14.131 19.9,15.025 21.464,15.025 C22.232,15.025 22.807,14.852 23.246,14.609 L23.246,13.4 C22.807,13.62 22.304,13.754 21.667,13.754 C21.04,13.754 20.49,13.534 20.417,12.78 L23.564,12.78 C23.571,12.697 23.586,12.36 23.586,12.205 z M20.403,11.596 C20.403,10.872 20.848,10.568 21.25,10.568 C21.645,10.568 22.065,10.872 22.065,11.596 z M16.315,9.257 C15.685,9.257 15.279,9.554 15.054,9.76 L14.971,9.362 L13.555,9.362 L13.555,16.778 L15.163,16.438 L15.167,14.62 C15.398,14.79 15.742,15.025 16.304,15.025 C17.455,15.025 18.505,14.185 18.505,12.143 C18.509,10.275 17.444,9.257 16.315,9.257 z M15.931,13.693 C15.554,13.693 15.33,13.555 15.174,13.389 L15.163,10.999 C15.33,10.814 15.561,10.68 15.931,10.68 C16.517,10.68 16.923,11.339 16.923,12.179 C16.927,13.045 16.528,13.693 15.931,13.693 z M11.343,14.913 L12.958,14.913 L12.958,9.366 L11.343,9.366 z'
1212        ],
1213        iolettore:[
1214        'M2.597,18.493 C2.597,18.8 2.655,19.089 2.772,19.36 C2.889,19.63 3.05,19.868 3.255,20.073 C3.46,20.278 3.698,20.439 3.969,20.556 C4.239,20.673 4.528,20.732 4.836,20.732 C5.143,20.732 5.432,20.673 5.703,20.556 C5.973,20.439 6.211,20.278 6.416,20.073 C6.621,19.868 6.782,19.63 6.899,19.36 C7.016,19.089 7.074,18.8 7.074,18.493 C7.074,18.185 7.016,17.896 6.899,17.626 C6.782,17.355 6.621,17.117 6.416,16.912 C6.211,16.707 5.973,16.547 5.703,16.429 C5.432,16.312 5.143,16.254 4.836,16.254 C4.528,16.254 4.239,16.312 3.969,16.429 C3.698,16.547 3.46,16.707 3.255,16.912 C3.05,17.117 2.889,17.355 2.772,17.626 C2.655,17.896 2.597,18.185 2.597,18.493 z M2.597,15.358 L2.597,3.268 L7.074,3.268 L7.074,15.358 z M14.687,6.757 C15.036,6.757 15.366,6.823 15.679,6.955 C15.991,7.086 16.26,7.269 16.486,7.503 C16.711,7.737 16.893,8.011 17.031,8.326 C17.169,8.64 17.238,8.981 17.238,9.346 C17.238,9.697 17.169,10.03 17.031,10.345 C16.893,10.659 16.711,10.933 16.486,11.167 C16.26,11.401 15.991,11.584 15.679,11.716 C15.366,11.848 15.036,11.913 14.687,11.913 C14.338,11.913 14.007,11.848 13.694,11.716 C13.382,11.584 13.113,11.401 12.888,11.167 C12.662,10.933 12.48,10.663 12.342,10.356 C12.204,10.048 12.135,9.719 12.135,9.368 C12.135,8.988 12.204,8.64 12.342,8.326 C12.48,8.011 12.662,7.737 12.888,7.503 C13.113,7.269 13.382,7.086 13.694,6.955 C14.007,6.823 14.338,6.757 14.687,6.757 z M14.621,3.268 C13.662,3.268 12.775,3.415 11.961,3.707 C11.147,4 10.445,4.417 9.856,4.958 C9.268,5.499 8.806,6.146 8.472,6.9 C8.137,7.653 7.97,8.491 7.97,9.412 C7.97,10.246 8.137,11.025 8.472,11.749 C8.806,12.473 9.271,13.102 9.867,13.636 C10.463,14.17 11.172,14.59 11.993,14.898 C12.815,15.205 13.713,15.358 14.687,15.358 C15.646,15.358 16.537,15.208 17.358,14.909 C18.179,14.609 18.892,14.192 19.495,13.658 C20.098,13.124 20.567,12.488 20.902,11.749 C21.236,11.01 21.403,10.195 21.403,9.302 C21.403,8.41 21.232,7.595 20.891,6.856 C20.549,6.117 20.08,5.481 19.484,4.947 C18.888,4.413 18.172,4 17.336,3.707 C16.5,3.415 15.595,3.268 14.621,3.268 z M7.97,20.732 L9.343,20.732 L9.343,20.221 L8.491,20.221 L8.491,16.254 L7.97,16.254 z M9.697,20.732 L11.082,20.732 L11.082,20.221 L10.218,20.221 L10.218,18.693 L10.985,18.693 L10.985,18.182 L10.218,18.182 L10.218,16.764 L11.082,16.764 L11.082,16.254 L9.697,16.254 z M11.436,16.782 L12.038,16.782 L12.038,20.732 L12.549,20.732 L12.549,16.782 L13.133,16.782 L13.133,16.254 L11.436,16.254 z M13.487,16.782 L14.088,16.782 L14.088,20.732 L14.599,20.732 L14.599,16.782 L15.183,16.782 L15.183,16.254 L13.487,16.254 z M17.005,18.664 
1214C17.005,19.248 16.972,19.649 16.907,19.866 C16.842,20.085 16.722,20.194 16.546,20.194 C16.368,20.194 16.246,20.077 16.181,19.843 C16.117,19.596 16.085,19.153 16.085,18.514 C16.085,17.82 16.115,17.358 16.176,17.128 C16.237,16.9 16.361,16.786 16.546,16.786 C16.732,16.786 16.855,16.91 16.915,17.159 C16.975,17.406 17.005,17.908 17.005,18.664 z M17.551,18.602 C17.551,18.051 17.528,17.632 17.481,17.346 C17.434,17.036 17.359,16.798 17.255,16.63 C17.098,16.379 16.858,16.254 16.534,16.254 C16.171,16.254 15.914,16.416 15.762,16.74 C15.612,17.063 15.537,17.613 15.537,18.39 C15.537,19.261 15.613,19.867 15.765,20.208 C15.918,20.557 16.183,20.732 16.559,20.732 C16.916,20.732 17.171,20.569 17.323,20.245 C17.475,19.921 17.551,19.373 17.551,18.602 z M18.426,16.75 L18.514,16.75 C18.596,16.75 18.666,16.764 18.726,16.793 C18.785,16.822 18.833,16.868 18.871,16.93 C18.908,16.991 18.936,17.072 18.954,17.17 C18.971,17.269 18.98,17.388 18.98,17.527 C18.98,17.784 18.938,17.967 18.855,18.075 C18.771,18.183 18.628,18.238 18.426,18.238 z M17.905,20.732 L18.426,20.732 L18.426,18.539 L19.135,20.732 L19.664,20.732 L18.952,18.554 C19.124,18.507 19.257,18.387 19.349,18.193 C19.442,17.998 19.488,17.741 19.488,17.42 C19.488,17.002 19.401,16.692 19.225,16.489 C19.087,16.332 18.875,16.254 18.591,16.254 L17.905,16.254 z M20.018,20.732 L21.403,20.732 L21.403,20.221 L20.539,20.221 L20.539,18.693 L21.306,18.693 L21.306,18.182 L20.539,18.182 L20.539,16.764 L21.403,16.764 L21.403,16.254 L20.018,16.254 z'
1215        ],
1216        marker:[
1217        'M12.001,1.208 C7.528,1.208 3.907,4.834 3.907,9.302 C3.907,12.3 4.918,13.237 10.284,21.84 C11.075,23.11 12.926,23.108 13.717,21.84 C19.086,13.232 20.094,12.3 20.094,9.302 C20.094,4.83 16.468,1.208 12.001,1.208 z M12.001,20.768 C6.629,12.155 5.93,11.612 5.93,9.302 C5.93,5.95 8.648,3.232 12.001,3.232 C15.353,3.232 18.071,5.95 18.071,9.302 C18.071,11.602 17.431,12.06 12.001,20.768 z M8.628,9.302 C8.628,7.44 10.138,5.93 12.001,5.93 C13.863,5.93 15.373,7.44 15.373,9.302 C15.373,11.165 13.863,12.675 12.001,12.675 C10.138,12.675 8.628,11.165 8.628,9.302 z'
1218        ],
1219        repeat:[
1220        'M20.673,8.65 C20.97,8.697 21.226,8.883 21.364,9.15 C21.807,10.025 22.037,10.992 22.036,11.973 C22.036,15.432 19.223,18.246 15.764,18.246 L8.631,18.246 L9.984,19.517 C10.17,19.691 10.277,19.933 10.281,20.188 C10.285,20.443 10.185,20.688 10.005,20.868 L9.583,21.29 C9.215,21.658 8.619,21.658 8.252,21.29 L4.618,17.658 C4.251,17.291 4.251,16.695 4.619,16.327 L8.252,12.692 C8.619,12.325 9.215,12.325 9.583,12.692 L10.005,13.115 C10.185,13.295 10.285,13.54 10.281,13.795 C10.277,14.049 10.17,14.292 9.984,14.466 L8.631,15.737 L15.764,15.737 C17.039,15.736 18.228,15.09 18.922,14.02 C19.615,12.949 19.72,11.6 19.199,10.436 C19.037,10.083 19.111,9.668 19.384,9.392 L19.862,8.914 C20.074,8.702 20.376,8.604 20.673,8.65 z M14.997,2.434 C14.571,2.496 14.764,2.42 14.417,2.656 L13.995,3.079 C13.815,3.26 13.715,3.505 13.719,3.76 C13.723,4.014 13.83,4.256 14.016,4.431 L15.369,5.701 L8.236,5.701 C4.777,5.701 1.964,8.516 1.964,11.974 C1.963,12.955 2.193,13.923 2.636,14.798 C2.774,15.065 3.031,15.251 3.328,15.297 C3.624,15.344 3.926,15.246 4.138,15.033 L4.616,14.555 C4.889,14.28 4.963,13.864 4.801,13.511 C4.28,12.347 4.385,10.998 5.078,9.927 C5.772,8.857 6.961,8.211 8.236,8.21 L15.369,8.21 L14.016,9.482 C13.83,9.656 13.723,9.898 13.719,10.153 C13.715,10.407 13.815,10.653 13.995,10.833 L14.417,11.255 C14.785,11.623 15.381,11.623 15.748,11.255 L19.381,7.62 C19.749,7.253 19.749,6.657 19.381,6.29 L15.748,2.656 L15.436,2.449 L14.997,2.434 z'
1221        ],
1222        back:[
1223        'M6.888,11.308 L14.806,3.391 C15.187,3.009 15.807,3.009 16.188,3.391 L17.112,4.315 C17.493,4.696 17.494,5.314 17.114,5.696 L10.838,12 L17.113,18.304 C17.494,18.686 17.493,19.304 17.112,19.685 L16.188,20.609 C15.806,20.991 15.187,20.991 14.805,20.609 L6.888,12.691 C6.506,12.309 6.506,11.69 6.888,11.308 z'
1224        ],
1225        continue:[
1226        'M17.112,12.692 L9.194,20.609 C8.813,20.991 8.193,20.991 7.812,20.609 L6.888,19.685 C6.507,19.304 6.506,18.686 6.886,18.304 L13.162,12 L6.887,5.696 C6.506,5.314 6.507,4.696 6.888,4.315 L7.812,3.391 C8.194,3.009 8.813,3.009 9.195,3.391 L17.112,11.309 C17.494,11.691 17.494,12.31 17.112,12.692 z'
1227        ],
1228        user:[
1229        'M15.129,13.676 C14.127,13.676 13.645,14.235 12.001,14.235 C10.356,
122914.235 9.877,13.676 8.872,13.676 C6.28,13.676 4.178,15.779 4.178,18.37 L4.178,19.264 C4.178,20.189 4.929,20.94 5.854,20.94 L18.147,20.94 C19.072,20.94 19.823,20.189 19.823,19.264 L19.823,18.37 C19.823,15.779 17.721,13.676 15.129,13.676 z M18.147,19.264 L5.854,19.264 L5.854,18.37 C5.854,16.707 7.209,15.352 8.872,15.352 C9.381,15.352 10.209,15.911 12.001,15.911 C13.806,15.911 14.616,15.352 15.129,15.352 C16.792,15.352 18.147,16.707 18.147,18.37 L18.147,19.264 z M12.001,13.117 C14.777,13.117 17.029,10.865 17.029,8.089 C17.029,5.313 14.777,3.06 12.001,3.06 C9.224,3.06 6.972,5.313 6.972,8.089 C6.972,10.865 9.224,13.117 12.001,13.117 z M12.001,4.736 C13.848,4.736 15.353,6.241 15.353,8.089 C15.353,9.936 13.848,11.441 12.001,11.441 C10.153,11.441 8.648,9.936 8.648,8.089 C8.648,6.241 10.153,4.736 12.001,4.736 z'
1230        ],
1231        signin:[
1232        'M7.417,6.38 L8.262,5.535 C8.621,5.176 9.207,5.172 9.57,5.531 L15.429,11.344 C15.796,11.707 15.796,12.297 15.429,12.66 L9.57,18.469 C9.207,18.828 8.625,18.828 8.262,18.465 L7.417,17.62 C7.043,17.246 7.059,16.64 7.448,16.282 L10.442,13.539 L3.051,13.539 C2.538,13.539 2.125,13.126 2.125,12.613 L2.125,11.379 C2.125,10.866 2.538,10.453 3.051,10.453 L10.438,10.453 L7.444,7.711 C7.059,7.36 7.043,6.75 7.417,6.38 z M21.875,15.703 L21.875,8.297 C21.875,6.252 20.216,4.594 18.172,4.594 L14.932,4.594 C14.677,4.594 14.469,4.802 14.469,5.057 L14.469,6.6 C14.469,6.854 14.677,7.062 14.932,7.062 L18.172,7.062 C18.855,7.062 19.406,7.614 19.406,8.297 L19.406,15.703 C19.406,16.386 18.855,16.938 18.172,16.938 L14.932,16.938 C14.677,16.938 14.469,17.146 14.469,17.4 L14.469,18.943 C14.469,19.198 14.677,19.406 14.932,19.406 L18.172,19.406 C20.216,19.406 21.875,17.748 21.875,15.703 z'
1233        ],
1234        times:[
1235        'M14.621,12 L20.555,6.067 C20.898,5.724 20.898,5.167 20.555,4.823 L19.176,3.445 C18.833,3.102 18.276,3.102 17.932,3.445 L12,9.378 L6.067,3.445 C5.724,3.102 5.167,3.102 4.823,3.445 L3.445,4.823 C3.102,5.166 3.102,5.723 3.445,6.067 L9.378,12 L3.445,17.933 C3.102,18.276 3.102,18.833 3.445,19.177 L4.824,20.555 C5.167,20.898 5.724,20.898 6.067,20.555 L12,14.622 L17.933,20.555 C18.276,20.898 18.833,20.898 19.176,20.555 L20.555,19.176 C20.898,18.833 20.898,18.276 20.555,17.932 L14.621,12 z'
1236        ],
1237        trash:[
1238        'M3.625,21.073 C3.625,22.229 4.562,23.167 5.719,23.167 L18.281,23.167 C19.438,23.167 20.375,22.229 20.375,21.073 L20.375,6.417 L3.625,6.417 z M15.49,9.906 C15.49,9.521 15.802,9.208 16.187,9.208 C16.573,9.208 16.885,9.521 16.885,9.906 L16.885,19.677 C16.885,20.063 16.573,20.375 16.187,20.375 C15.802,20.375 15.49,20.063 15.49,19.677 z M11.302,9.906 C11.302,9.521 11.615,9.208 12,9.208 C12.385,9.208 12.698,9.521 12.698,9.906 L12.698,19.677 C12.698,20.063 12.385,20.375 12,20.375 C11.615,20.375 11.302,20.063 11.302,19.677 z M7.115,9.906 C7.115,9.521 7.427,9.208 7.813,9.208 C8.198,9.208 8.51,9.521 8.51,9.906 L8.51,19.677 C8.51,20.063 8.198,20.375 7.813,20.375 C7.427,20.375 7.115,20.063 7.115,19.677 z M21.073,2.229 L15.839,2.229 L15.429,1.413 C15.251,1.058 14.888,0.833 14.491,0.833 L9.505,0.833 C9.108,0.832 8.746,1.057 8.571,1.413 L8.161,2.229 L2.927,2.229 C2.542,2.229 2.229,2.542 2.229,2.927 L2.229,4.323 C2.229,4.708 2.542,5.021 2.927,5.021 L21.073,5.021 C21.458,5.021 21.771,4.708 21.771,4.323 L21.771,2.927 C21.771,2.542 21.458,2.229 21.073,2.229 z'
1239        ],
1240        shopping:[
1241        'M21.356,5.195 L6.906,5.195 L6.597,3.614 C6.519,3.215 6.169,2.927 5.762,2.927 L2.218,2.927 C1.983,2.927 1.793,3.118 1.793,3.352 L1.793,4.203 C1.793,4.438 1.983,4.628 2.218,4.628 L5.062,4.628 L7.528,17.235 C7.137,17.642 6.896,18.195 6.896,18.805 C6.896,20.058 7.912,21.073 9.165,21.073 C10.417,21.073 11.433,20.058 11.433,18.805 C11.433,18.407 11.328,18.015 11.129,17.671 L16.274,17.671 C16.074,18.015 15.969,18.407 15.969,18.805 C15.969,20.058 16.985,21.073 18.238,21.073 C19.49,21.073 20.506,20.058 20.506,18.805 C20.506,18.162 20.238,17.582 19.809,17.169 L19.845,17.001 C19.961,16.471 19.557,15.97 19.014,15.97 L9.014,15.97 L8.682,14.268 L19.754,14.268 C20.154,14.268 20.5,13.989 20.585,13.598 L22.187,6.227 C22.303,5.696 21.899,5.195 21.356,5.195 z M9.165,19.655 C8.696,19.655 8.314,19.274 8.314,18.805 C8.314,18.336 8.696,17.954 9.165,17.954 C9.634,17.954 10.015,18.336 10.015,18.805 C10.015,19.274 9.634,19.655 9.165,19.655 z M18.238,19.655 C17.769,19.655 17.387,19.274 17.387,18.805 C17.387,18.336 17.769,17.954 18.238,17.954 C18.707,17.954 19.088,18.336 19.088,18.805 C19.088,19.274 18.707,19.655 18.238,19.655 z M19.068,12.567 L8.349,12.567 L7.239,6.897 L20.301,6.897 L19.068,12.567 z'
1242        ],
1243        up:[
1244        'M12.81,6.009 L22.089,15.288 C22.536,15.736 22.536,16.461 22.089,16.908 L21.007,17.991 C20.56,18.437 19.836,18.438 19.388,17.993 L12,10.639 L4.612,17.993 C4.164,18.438 3.44,18.437 2.993,17.991 L1.911,16.908 C1.464,16.461 1.464,15.735 1.911,15.288 L11.19,6.009 C11.637,5.562 12.363,5.562 12.81,6.009 z'
1245        ],
1246        down:[
1247        'M11.19,17.991 L1.911,8.712 C1.464,8.264 1.464,7.539 1.911,7.092 L2.993,6.009 C3.44,5.563 4.164,5.562 4.612,6.007 L12,13.361 L19.388,6.007 C19.836,5.562 20.56,5.563 21.007,6.009 L22.089,7.092 C22.536,7.539 22.536,8.265 22.089,8.712 L12.81,17.991 C12.363,18.438 11.637,18.438 11.19,17.991 z'
1248        ],
1249        checked:[
1250        'M20.573,3.775 L8.034,16.315 L3.427,11.707 C3.203,11.484 2.841,11.484 2.618,11.707 L1.269,13.056 C1.046,13.279 1.046,13.641 1.269,13.865 L7.63,20.225 C7.853,20.448 8.215,20.448 8.439,20.225 L22.731,5.933 C22.954,5.709 22.954,5.347 22.731,5.124 L21.382,3.775 C21.159,3.552 20.797,3.552 20.573,3.775 z'
1251        ],
1252        minus:[
1253        'M19.188,10.203 L4.812,10.203 C4.151,10.203 3.615,10.74 3.615,11.401 L3.615,12.599 C3.615,13.26 4.151,13.797 4.812,13.797 L19.188,13.797 C19.849,13.797 20.385,13.26 20.385,12.599 L20.385,11.401 C20.385,10.74 19.849,10.203 19.188,10.203 z'
1254        ],
1255        plus:[
1256        'M19.188,10.203 L13.797,10.203 L13.797,4.813 C13.797,4.151 13.261,3.615 12.599,3.615 L11.402,3.615 C10.74,3.615 10.204,4.151 10.204,4.813 L10.204,10.203 L4.813,10.203 C4.151,10.203 3.615,10.74 3.615,11.401 L3.615,12.599 C3.615,13.261 4.151,13.797 4.813,13.797 L10.204,13.797 L10.204,19.188 C10.204,19.849 10.74,20.386 11.402,20.386 L12.599,20.386 C13.261,20.386 13.797,19.849 13.797,19.188 L13.797,13.797 L19.188,13.797 C19.85,13.797 20.386,13.261 20.386,12.599 L20.386,11.401 C20.386,10.74 19.85,10.203 19.188,10.203 z'
1257        ]
1258      },
1259      apiUrl: '',
1260      newSite: false,
1261      development:false,
1262      keySession: '_widgetsession',
1263      oauth:{},
1264      urlPrefix:{
1265        order: window.location.pathname+'?orderToken=',
1266        orders: window.location.pathname
1267      },
1268      lookupError:{
1269        properties:{
1270          name:'Nome',
1271          surname:'Surname',
1272          username:'Username',
1273          email:'Email',
1274          oldPassword:'Password Attuale',
1275          newPassword:'Nuova Password',
1276          confirmNewPassword:'Conferma Nuova Password',
1277          password:'Password',
1278          confirmPassword:'Conferma Password'
1279        },
1280        messages:{
1281          'error.empty.user.name':'Il nome non può essere vuoto',
1282          'error.empty.user.surname':'Il cognome non può essere vuoto',
1283          'error.empty.user.username':'Username non può essere vuoto',
1284          'error.conflict.user.username':'Username non disponibile',
1285          'error.empty.user.email':'La e-mail non può essere vuota',
1286          'error.bad.user.email':'E-mail non corretta',
1287          'error.conflict.user.email':'E-mail già utilizzata da un altro utente',
1288          'error.unknown.user.oldPassword':'La password non è corretta',
1289          'error.empty.user.password':'La password non può essere vuota',
1290          'error.empty.user.confirmPassword':'La conferma password non può essere vuota',
1291          'error.empty.user.newPassword':'La nuova password non può essere vuota',
1292          'error.empty.user.confirmNewPassword':'La conferma della nuova password non può essere vuota',
1293          'error.tooShort.user.password':'La password è troppo corta. Inserire almeno 4 caratteri',
1294          'error.tooShort.user.newPassword':'La nuova password è troppo corta. Inserire almeno 4 caratteri',
1295          'error.different.user.confirmPassword':'La conferma password non è corretta',
1296          'error.different.user.confirmNewPassword':'La conferma della nuova password non è corretta'
1297        }
1298      },
1299      listeners: [],
1300      stores:[],
1301      allStores:[],
1302      connectedAccount:{
1303        shop:{},
1304        target:'',
1305        payoutsScheduleInterval:'',
1306        step:1,
1307        formData: new FormData(),
1308      },
1309      account:{
1310        me:{},
1311        cartSize:0,
1312        target:'',
1313        ordersInit: false,
1314        order:{
1315          token:null,
1316          item:{},
1317          messages:[],
1318          refundReasonId:null,
1319          refundReasonNote:null,
1320        }
1321      },
1322      cart:{
1323        init:false,
1324        orderItemsSize:0,
1325        preOrderItemsSize:0,
1326        payment:{},
1327        shipment:{},
1328        store:{},
1329        items:[],
1330        subtotal:0,
1331        total:0,
1332      },
1333      book:{},
1334      domain: null,
1335      waitingTimeout:0,
1336      init: function(callback){
1337        if(!_widgets.apiUrl){
1338          _widgets.error('Api url is mandatory');
1339          return;
1340        }
1341        // RECOVER SESSION
1342        f().api({
1343          channel: 'web',
1344          uri: _widgets.apiUrl+'/handshake',
1345          onsuccess: function(json){
1346            _widgets.domain = json.domain;
1347            _widgets.account.cartSize = json.cart || 0;
1348            if(f().api().authenticated){
1349              _widgets.syncMe(function(){
1350                if(typeof(callback) == 'function'){
1351                  callback();
1352                }
1353              });
1354            }else{
1355              if(typeof(callback) == 'function'){
1356                callback();
1357              }
1358            }
1359          }
1360        })
1361      },
1362      facebookLogin: function(response){
1363        var facebook = _widgets.oauth.facebook || {};
1364        f().api(function(headers){
1365          var responseType = 'code';
1366          var scope = 'public_profile,email';
1367          var state = window.btoa(JSON.stringify({action:'facebook-login', redirect:window.location.href, token:headers.token}
1367));
1368          var url = facebook.url+'?client_id='+facebook.clientId+'&response_type='+responseType+'&redirect_uri='+facebook.callback+'&scope='+scope+'&state='+state;
1369          window.location = url;
1370        });
1371      },
1372      googleLogin: function(){
1373        var google = _widgets.oauth.google || {};
1374        f().api(function(headers){
1375          var responseType = 'code';
1376          var scope = 'profile email';
1377          var prompt = 'select_account';
1378          var state = window.btoa(JSON.stringify({action:'google-login', redirect:window.location.href, token:headers.token}));
1379          var url = google.url+'?client_id='+google.clientId+'&response_type='+responseType+'&redirect_uri='+google.callback+'&scope='+scope+'&state='+state+'&prompt='+prompt;
1380          window.location = url;
1381        });
1382      },
1383      appleLogin: function(){
1384        var apple = _widgets.oauth.apple || {};
1385        f().api(function(headers){
1386          var responseType = 'code';
1387          var scope = 'name email';
1388          var responseMode = 'form_post';
1389          var state = window.btoa(JSON.stringify({action:'apple-login', redirect:window.location.href, token:headers.token}));
1390          var url = apple.url+'?client_id='+apple.clientId+'&response_type='+responseType+'&response_mode='+responseMode+'&redirect_uri='+apple.callback+'&scope='+scope+'&state='+state;
1391          window.location = url;
1392        });
1393      },
1394      windowOpen: function(url, title, width, height){
1395        var left = (window.innerWidth / 2) - (width / 2);
1396        var top = (window.innerHeight / 2) - (height / 2);
1397        left += window.screenX;
1398        top += window.screenY;
1399        var popup = window.open(url, title, 'width='+width+',height='+height+',top='+top+',left='+left+',toolbar=0');
1400        if (popup) {
1401          if (popup.focus) {
1402            popup.focus();
1403          }
1404          _widgets.windowOpenStatus = 'open';
1405          var checkPopupClosed = setInterval(function() {
1406            if (popup.closed) {
1407              clearInterval(checkPopupClosed);
1408              if(_widgets.windowOpenStatus == 'open'){
1409                _widgets.waitingOff();
1410              }
1411              _widgets.windowOpenStatus = '';
1412            }
1413          }, 500);
1414        }
1415      },
1416      secureRequestEncoded: function(uri, callback, formData, mode){
1417        if(mode != 'background'){
1418          _widgets.waitingOn();
1419        }
1420        f().api(function(headers){
1421          var request = new XMLHttpRequest();
1422          request.onload = function(event){
1423            _widgets.xmlHttpRequestLoad(event, callback, mode);
1424          }
1425          request.timeout = 0;
1426          request.open('POST', _widgets.apiUrl+uri);
1427          Object.keys(headers).forEach(function(key){
1428            request.setRequestHeader(key,  headers[key]);
1429          });
1430          request.send(formData);
1431        });
1432      },
1433      _secureRequestEncoded: function(uri, callback, formData, mode){
1434        if(mode != 'background'){
1435          _widgets.waitingOn();
1436        }
1437        f().api(function(headers){
1438          var request = new XMLHttpRequest();
1439          request.onload = function(event){
1440            if(typeof(callback) == 'function'){
1441              callback(event);
1442            }
1443            if(mode != 'background'){
1444              _widgets.waitingOff();
1445            }
1446          }
1447          request.timeout = 0;
1448          request.open('POST', _widgets.apiUrl+uri);
1449          Object.keys(headers).forEach(function(key){
1450            request.setRequestHeader(key,  headers[key]);
1451          });
1452          request.send(formData);
1453        });
1454      },
1455      secureRequest: function(uri, callback, params, mode){
1456        if(mode != 'background'){
1457          _widgets.waitingOn();
1458        }
1459        f().api(function(headers){
1460          headers['Pre-Order'] = (_widgets.get('cartTab') == 'preorderable' ? 1 : 0);
1461          f().http({
1462            url: _widgets.apiUrl+uri,
1463            method: 'POST',
1464            headers: headers,
1465            params: params || {},
1466            onsuccess: function(event){
1467              _widgets.xmlHttpRequestLoad(event, callback, mode);
1468            },
1469            onerror: function(){
1470              _widgets.xmlHttpRequestLoad(event, callback, mode);
1471            }
1472          });
1473        });
1474      },
1475      stepCheckout: function(step){
1476        if(step && typeof(step) == 'number'){
1477          var delivery = _widgets.cart.delivery || {};
1478          var domain = _widgets.domain;
1479          if(delivery.select == 1 && step == 3){ // ritiro in libreria, skippo ( indirizzo spedizione )
1480            step = 4;
1481          }
1482          if(domain != null && step == 1){ // se ha il dominio, la libreria non può essere cambiata
1483            step = 2;
1484          }
1485          if(_widgets.checkCheckout(step)){
1486            _widgets.set('stepCheckout', step);
1487            _widgets.templateUpdateAll('cart-checkout');
1488            _widgets.fire('updateCart', _widgets.cart);
1489          }
1490        }
1491      },
1492      checkCheckout: function(step){
1493        var cart = _widgets.cart || {};
1494        var items = cart.items || [];
1495        var store = cart.store || {};
1496        var shipment = cart.shipment || {};
1497        var delivery = cart.delivery || {};
1498        var payment = cart.payment || {};
1499        var gift = cart.gift || {};
1500        if(step >= 2){
1501          if(!store.id){
1502            _widgets.error('Prima di procedere','Si prega di selezionare una libreria');
1503            return false;
1504          }
1505        }
1506        if(step >= 3){
1507          if(!delivery.select){
1508            _widgets.error('Prima di procedere', 'Si prega di selezionare una modalità di consegna');
1509            return false;
1510          }
1511          if(items.length == 0){
1512            _widgets.error('Prima di procedere','Prima di procedere aggiungi elementi al tuo carrello');
1513            return false;
1514          }
1515        }
1516        if(step >= 4){
1517          if(delivery.select != 1){ // ritiro in libreria, skippo ( indirizzo spedizione )
1518            if(gift.id && gift.type == 1){
1519              if(!(shipment.recipient)){ // regala alla scuola?
1520                _widgets.error('Prima di procedere', 'Si prega di completare tutti i campi');
1521                return false;
1522              }
1523            }else{
1524              if(!(shipment.recipient && shipment.address && shipment.postalCode && shipment.city && shipment.province && shipment.phone)){
1525                _widgets.error('Prima di procedere', 'Si prega di completare indirizzo di spedizione');
1526                return false;
1527              }
1528            }
1529          }
1530        }
1531        if(step >= 5){
1532          if(!payment.select){
1533            _widgets.error('Prima di procedere', 'Si prega di selezionare un metodo di pagamento');
1534            return false;
1535          }
1536        }
1537        return true;
1538      },
1539      setConnectedAccountShop: function(shop){
1540        var formData = _widgets.connectedAccount.formData;
1541        var data = shop.stripe || {};
1542        _widgets.connectedAccount.shop = shop;
1543        if(data.company){
1544          if(data.company.address){
1545            formData.set('companyAddressLine1',data.company.address.line1 || '');
1546            formData.set('companyAddressCity',data.company.address.city || '');
1547            formData.set('companyAddressPostalCode',data.company.address.postal_code || '');
1548            formData.set('companyAddressState',data.company.address.state || '');
1549          }
1550          formData.set('companyName',data.company.name || '');
1551          formData.set('companyPhone',data.company.phone || '');
1552          formData.set('companyVatId',data.company.vat_id || '');
1553          formData.set('companyTaxId',data.company.tax_id || '');
1554        }
1555        if(data.business_profile){
1556          if(data.business_profile.support_address){
1557            formData.set('businessProfileSupportAddressLine1',data.business_profile.support_address.line1 || '');
1558            formData.set('businessProfileSupportAddressCity',data.business_profile.support_address.city || '');
1559            formData.set('businessProfileSupportAddressPostalCode',data.business_profile.support_address.postal_code || '');
1560            formData.set('businessProfileSupportAddressState',data.business_profile.support_address.state || '');
1561          }
1562          formData.set('businessProfileName',data.business_profile.name || '');
1563          formData.set('businessProfileUrl',data.business_profile.url || '');
1564          formData.set('businessProfileSupportEmail',data.business_profile.support_email || '');
1565          formData.set('businessProfileSupportPhone',data.business_profile.support_phone || '');
1566        }
1567        if(data.external_account){
1568          formData.set('externalAccountName',data.external_account.account_holder_name || '');
1569          formData.set('externalAccountNumber',data.external_account.account_number || '');
1570          // formData.set('externalAccountRoutingNumber',data.external_account.routing_number || '');
1571        }
1572        formData.set('email',data.email || '');
1573      },
1574      buildFormData: function(form, onElement, formData){
1575        var onElement = onElement || function(){};
1576        if(!formData){
1577          formData = new FormData();
1578        }
1579        var elements = form.elements;
1580        for(var i=0; i<elements.length; i++){
1581          var element = elements[i];
1582          if(element.name){
1583            if(element.type == 'file'){
1584              if(element.files[0]){
1585                formData.set(element.name, element.files[0], element.files[0].name);
1586              }
1587              onElement(element);
1588            }else if(element.type == 'radio'){
1589              formData.set(element.name, element.form.elements[element.name].value);
1590              onElement(element);
1591            }else if(element.type == 'checkbox'){
1592              formData.set(element.name, element.checked ? 1 : 0);
1593              element.value = element.value || 'on';
1594              onElement(element);
1595            }else if(element.type == 'hidden'){
1596              formData.set(element.name, element.value);
1597            }else if(element.type == 'submit'){
1598            }else{
1599              var cleanValue = element.value || '';
1600              cleanValue = _widgets.ascii7(cleanValue);
1601              cleanValue = _widgets.escapeHtml(cleanValue);
1602              formData.set(element.name, cleanValue);
1603              onElement(element);
1604            }
1605          }
1606        }
1607        return formData;
1608      },
1609      hasEmail: function(value) {
1610        var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
1611        return re.test(String(value).toLowerCase());
1612      },
1613      setup: function(){
1614        _widgets.setupRatings();
1615        _widgets.setupInputs();
1616        clearTimeout(_widgets.setupStripeMethodsTimeout);
1617        _widgets.setupStripeMethodsTimeout = setTimeout(_widgets.setupStripeMethods, 0);
1618      },
1619      setupStripeMethodsTimeout: 0,
1620      setupRatings: function(){
1621        if(typeof(window.cntRating) != 'undefined'){
1622          cntRating.ui('.read-rating-widget', {readOnly: true});
1623          cntRating.ui('.edit-rating-widget', {end: function(item, rating){
1624              var book = widgets.getBook() || {};
1625              if(book.id){
1626                widgets.secureRequest('/iolettore/book/rating/'+book.id, function(event){
1627                  widgets.setBook(JSON.parse(event.target.responseText).response);
1628                  if(typeof(swal) == 'function'){
1629                    if(rating){
1630                      swal({
1631                        title: 'my ubik',
1632                        text: 'Grazie per il tuo contributo',
1633                        icon: 'success',
1634                      });
1635                    }
1636                  }
1637                },{rating:rating});
1638              }
1639          }});
1640        }
1641      },
1642      confirmCardPayment: function(stripe, data){
1643        var order = _widgets.account.order || {};
1644        var orderToken = null;
1645        if(order.item && order.item.token){
1646          orderToken = order.item.token;
1647        }else if(typeof(ux.model) == 'function' && ux.model().iolettore && ux.model().iolettore.order && ux.model().iolettore.order.token){
1648          orderToken = ux.model().iolettore.order.token;
1649        }
1650        _widgets.secureRequest('/ecommerce/checkout', function(event){
1651          var json = JSON.parse(event.target.responseText);
1652          var response = json.response;
1653          if(response.clientSecret){
1654            _widgets.waitingOn();
1655            setTimeout(_widgets.waitingOn, 0);
1656            stripe.confirmCardPayment(response.clientSecret,data).then(function(result) {
1657              if (result.error) {
1658                _widgets.waitingOff();
1659                _widgets.error('Errore',result.error.message);
1660              }else{
1661                if(result.paymentIntent && (result.paymentIntent.status == 'requires_capture' || result.paymentIntent.status == 'succeeded')){
1662                  window.location.href = response.redirectToUrl;
1663                }else{
1664                  _widgets.waitingOff();
1665                  _widgets.error('Stato del pagamento',result.paymentIntent.status);
1666                }
1667              }
1668            });
1669          }
1670        },{orderToken:orderToken});
1671      },
1672      setupStripeMethods: function(){
1673        var stripeCard = document.getElementById('stripe-card');
1674        if(stripeCard && !stripeCard.getAttribute('data-stripe')){
1675          var configuration = {};
1676          var order = _widgets.account.order || {};
1677          var orderToken = null;
1678          if(order.item && order.item.token){
1679            configuration = order.item.paymentConfiguration || {};
1680            orderToken = order.item.token;
1681          }else if(typeof(ux.model) == 'function' && ux.model().iolettore && ux.model().iolettore.order && ux.model().iolettore.order.token){
1682            configuration = ux.model().iolettore.order.paymentConfiguration || {};
1683            orderToken = ux.model().iolettore.order.token;
1684          }else{
1685            var cart = _widgets.cart || {};
1686            var payment = cart.payment || {};
1687            configuration = payment.configuration || {};
1688          }
1689          var selectedPaymentMethodId = null;
1690          var elemPaymentMethods = [];
1691          if(configuration.publicKey && configuration.accountId){
1692            _widgets.secureRequest('/ecommerce/customer', function(event){
1693              var json = JSON.parse(event.target.responseText);
1694              var response = json.response;
1695              var paymentWidget = f(stripeCard).closest('.stripe-payment-widget');
1696              var retrieveWidget = paymentWidget.find('.stripe-retrieve-method-widget');
1697              var createWidget = paymentWidget.find('.stripe-create-method-widget');
1698              var buttonRetrieve = retrieveWidget.find('.button-choose').item;
1699              var buttonCreate = createWidget.find('.button-choose').item;
1700              var submit = retrieveWidget.find('.button-submit').item;
1701              buttonRetrieve.onclick = function(){
1702                paymentWidget.removeClass('retrieve-method');
1703                paymentWidget.addClass('create-method');
1704                _widgets.setupStripeCard();
1705                selectedPaymentMethodId = null;
1706                elemPaymentMethods.forEach(function(aItem){
1707                  aItem.classList.remove('selected');
1708                });
1709                submit.setAttribute('disabled','disabled');
1710              };
1711              buttonCreate.onclick = function(){
1712                paymentWidget.removeClass('create-method');
1713                paymentWidget.addClass('retrieve-method');
1714                selectedPaymentMethodId = null;
1715                elemPaymentMethods.forEach(function(aItem){
1716                  aItem.classList.remove('selected');
1717                });
1718                submit.setAttribute('disabled','disabled');
1719              }
1720              if(response.data && response.data.length){
1721                var paymentMethods = response.data || [];
1722                window.paymentMethodsTemp = paymentMethods;
1723                var html = f().t('ui/widgets/cart-checkout/payment-methods.html').render();
1724                retrieveWidget.find('.stripe-methods').html(html);
1725                paymentWidget.addClass('retrieve-method');
1726                var elemPaymentMethods = retrieveWidget.find('.method-widget').items || [];
1727                elemPaymentMethods.forEach(function(item){
1728                  item.onclick = function(){
1729                    elemPaymentMethods.forEach(function(aItem){
1730                      aItem.classList.remove('selected');
1731                    });
1732                    item.classList.add('selected');
1733                    var index = item.getAttribute('data-index');
1734                    selectedPaymentMethodId = paymentMethods[index].id;
1735                    submit.removeAttribute('disabled');
1736                  };
1737                  f(item).find('.method-detach').item.onclick = function(event){
1738                    event.stopPropagation();
1739                    selectedPaymentMethodId = null;
1740                    elemPaymentMethods.forEach(function(aItem){
1741                      aItem.classList.remove('selected');
1742                    });
1743                    submit.setAttribute('disabled','disabled');
1744                    _widgets.confirm('Rimuovi metodo di pagamento', 'Sei sicuro di voler rimuovere questo metodo di pagamento dal tuo account?', function(ok){
1745                      if(ok){
1746                        var index = item.getAttribute('data-index');
1747                        var id = paymentMethods[index].id;
1748                        _widgets.secureRequest('/ecommerce/payment-method/detach/'+id, function(event){
1749                          _widgets.templateUpdateAll('cart-checkout');
1750                          _widgets.templateUpdateAll('orders');
1751                        });
1752                      }
1753                    });
1754                  };
1755                });
1756                submit.onclick = function(){
1757                  if(selectedPaymentMethodId){
1758                    var stripe = Stripe(configuration.publicKey, {stripeAccount: configuration.accountId});
1759                    _widgets.confirmCardPayment(stripe, {payment_method: selectedPaymentMethodId});
1760                  }else{
1761                    _widgets.error('Errore','Seleziona un metodo di pagamento.');
1762                  }
1763                };
1764              }else{
1765                paymentWidget.addClass('create-method');
1766                paymentWidget.addClass('no-method');
1767                _widgets.setupStripeCard();
1768              }
1769            },{orderToken:orderToken});
1770          }
1771        }
1772      },
1773      setupStripeCard: function(){
1774        var stripeCard = document.getElementById('stripe-card');
1775        if(stripeCard && !stripeCard.getAttribute('data-stripe')){
1776          var configuration = {};
1777          var order = _widgets.account.order || {};
1778          if(order.item && order.item.token){
1779            configuration = order.item.paymentConfiguration || {};
1780          }else if(typeof(ux.model) == 'function' && ux.model().iolettore && ux.model().iolettore.order && ux.model().iolettore.order.token){
1781            configuration =  ux.model().iolettore.order.paymentConfiguration || {};
1782          }else{
1783            var cart = _widgets.cart || {};
1784            var payment = cart.payment || {};
1785            configuration = payment.configuration || {};
1786          }
1787          if(configuration.publicKey && configuration.accountId){
1788            var stripe = Stripe(configuration.publicKey, {stripeAccount: configuration.accountId});
1789            var elements = stripe.elements({
1790              fonts:[{ cssSrc: 'https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@400&display=swap'}],
1791              locale: 'it'
1792            });
1793            var form = f(stripeCard).closest('.stripe-elements-widget');
1794            var inputEmail = form.find('input[name="email"]').item;
1795            var inputName = form.find('input[name="name"]').item;
1796            var submit = form.find('.button-submit').item;
1797            var displayError = form.find('.form-errors-widget').item;
1798            var cardStyle = {
1799              base: {
1800                color: '#48484a',
1801                fontWeight: 400,
1802                fontFamily: 'Roboto Condensed, sans-serif',
1803                fontSize: '16px',
1804                fontSmoothing: 'antialiased',
1805                '::placeholder': { color: "#d7d7d9" }
1806              },
1807              invalid: { color: '#E25950' }
1808            };
1809            if(_widgets.newSite){
1810              cardStyle.base.color = '#63605f';
1811              cardStyle.base['::placeholder'] = { color: "#A19B9B" };
1812              cardStyle.base[':focus'] = { color: "#63605f" };
1813            }
1814            var card = elements.create('card', {
1815              hidePostalCode:true,
1816              style: cardStyle
1817            });
1818            card.mount(stripeCard);
1819            card.on('change', function(event) {
1820              displayError.innerHTML = (event && event.error ? '<div>'+event.error.message+'</div>' : '');
1821            });
1822            submit.onclick = function(){
1823              if(card._complete && inputName.value.length && inputEmail.value.length){
1824                _widgets.confirmCardPayment(stripe, {
1825                  payment_method: { card: card, billing_details: { name: inputName.value, email: inputEmail.value} },
1826                  receipt_email: inputEmail.value,
1827                });
1828              }else{
1829                _widgets.error('Prima di procedere', 'Si prega di completare tutti i campi');
1830              }
1831            };
1832          }
1833          stripeCard.setAttribute('data-stripe', true);
1834        }
1835      },
1836      setupInputs: function(){
1837        {
1838          var items = document.querySelectorAll('.file-widget');
1839          items.forEach(function(item){
1840            if(item.files){
1841              var parent = item.parentElement;
1842              var text = parent.querySelector('span.text');
1843              if(text){
1844                text.innerText = item.getAttribute('data-label') || '';
1845              }else{
1846                var span = document.createElement('span');
1847                span.classList.add('text');
1848                span.innerText = item.getAttribute('data-label') || '';
1849                parent.append(span);
1850              }
1851            }
1852            item.removeEventListener('change', _widgets.inputChange);
1853            item.addEventListener('change', _widgets.inputChange);
1854          });
1855        }
1856        {
1857          var items = document.querySelectorAll('.input-widget[data-password-validation]');
1858          var html = '';
1859          html += '<div class="password-validation-widget">';
1860          html += '<div class="title-widget">La password deve avere almeno:</div>';
1861          html += '<div class="items-widget">';
1862          var labels = { length:'8 caratteri',lower:'una lettera minuscula',upper:'una lettera maiuscola',number:'un numero',special:'un carattere speciale',space:'nessun spazio'};
1863          ['length','lower','upper','number','special','space'].forEach(function(name){
1864            html += '<div class="item-widget" data-name="'+name+'"><span>'+window.widgets.getSvg('checked')+'</span>'+labels[name]+'</div>';
1865          });
1866          html += '</div>';
1867          html += '</div>';
1868          items.forEach(function(item){
1869            if(!item.parentElement.querySelector('.password-validation-widget')){
1870              item.parentElement.insertAdjacentHTML('beforeend', html);
1871            }
1872            item.removeEventListener('focus', _widgets.inputPasswordFocus);
1873            item.addEventListener('focus', _widgets.inputPasswordFocus);
1874            item.removeEventListener('blur', _widgets.inputPasswordBlur);
1875            item.addEventListener('blur', _widgets.inputPasswordBlur);
1876            item.removeEventListener('keyup', _widgets.inputPasswordKeyup);
1877            item.addEventListener('keyup', _widgets.inputPasswordKeyup);
1878          });
1879        }
1880      },
1881      inputPasswordFocus: function(){
1882        try{
1883          var item = this;
1884          var parent = item.closest('.field-widget');
1885          var passwordValidation = parent.querySelector('.password-validation-widget');
1886          passwordValidation.classList.add('show-widget');
1887        }catch(e){
1888          console.log(e);
1889        }
1890      },
1891      inputPasswordBlur: function(){
1892        try{
1893          var item = this;
1894          var parent = item.closest('.field-widget');
1895          var passwordValidation = parent.querySelector('.password-validation-widget');
1896          passwordValidation.classList.remove('show-widget');
1897        }catch(e){
1898          console.log(e);
1899        }
1900      },
1901      checkPassword: function(password){
1902        var keys = [];
1903        var lengthFlag = false;
1904        var upperFlag = false;
1905        var lowerFlag = false;
1906        var numberFlag = false;
1907        var specialFlag = false;
1908        var spaceFlag = false;
1909        if(password.length > 0){
1910          keys.push('space');
1911          if(password.length > 8){
1912            lengthFlag = true;
1913            keys.push('length');
1914          }
1915          for (var i = 0; i < password.length; i++) {
1916            var char = password.charAt(i);
1917            var isSpecial = !(!isNaN(parseInt(char)) || char.toLowerCase() != char.toUpperCase());
1918            if(!isNaN(parseInt(char))){
1919              if(!numberFlag){
1920                numberFlag = true;
1921                keys.push('number');
1922              }
1923            }else if(!isSpecial && char == char.toUpperCase()){
1924              if(!upperFlag){
1925                upperFlag = true;
1926                keys.push('upper');
1927              }
1928            }else if(!isSpecial && char == char.toLowerCase()){
1929              if(!lowerFlag){
1930                lowerFlag = true;
1931                keys.push('lower');
1932              }
1933            }
1934            if(isSpecial){
1935              if(!specialFlag){
1936                specialFlag = true;
1937                keys.push('special');
1938              }
1939            }
1940            if(char == ' '){
1941              if(!spaceFlag){
1942                spaceFlag = true;
1943                var x = keys.indexOf('space');
1944                if(x != -1) {
1945                  keys.splice(x, 1);
1946                }
1947              }
1948            }
1949          }
1950        }
1951        return {
1952          keys: keys,
1953          validation: (lengthFlag && upperFlag && lowerFlag && numberFlag && specialFlag && !spaceFlag)
1954        };
1955      },
1956      inputPasswordKeyup: function(){
1957        try{
1958          var item = this;
1959          var parent = item.closest('.field-widget');
1960          var passwordValidation = parent.querySelector('.password-validation-widget');
1961          var password = (item.value || '');
1962          var result = _widgets.checkPassword(password);
1963          passwordValidation.querySelectorAll('.items-widget .item-widget').forEach(function(item){
1964            item.classList.remove('checked-widget');
1965          });
1966          result.keys.forEach(function(key){
1967            passwordValidation.querySelector('.items-widget .item-widget[data-name='+key+']').classList.add('checked-widget');
1968          });
1969        }catch(e){
1970          console.log(e);
1971        }
1972      },
1973      inputChange: function(){
1974        var item = this;
1975        if(item.files){
1976          _widgets.changeFile(item);
1977        }else{
1978          var parent = f(item).closest('.field-widget').item;
1979          parent.classList.remove('has-error-widget');
1980        }
1981      },
1982      changeFile: function(input){
1983        var byte = 1024;
1984        var allowSizeMax = 10; // MAX MB
1985        var allowType = ['png','jpg','jpeg','pdf'];
1986        var files = input.files;
1987        var label = input.parentElement.querySelector('span');
1988        var parent = f(input).closest('.field-widget').item;
1989        parent.classList.remove('has-error-widget');
1990        parent.classList.remove('has-file-widget');
1991        label.innerText = input.getAttribute('data-label');
1992        if(files.length != 0){
1993          var file = files[0];
1994          var filename = file.name;
1995          var extension = filename.substring(filename.lastIndexOf('.')+1);
1996          if(allowType.indexOf(extension) != -1){
1997            if(file.size <= ((byte*byte)*allowSizeMax)){
1998              label.innerText = filename;
1999              parent.classList.add('has-file-widget');
2000            }else{
2001              input.value = '';
2002              _widgets.fieldAppendError(parent, 'Dimensione del file non valida ('+allowSizeMax+'MB)');
2003            }
2004          }else{
2005            input.value = '';
2006            text = 'Invalid file type<br>(Allow ';
2007            allowType.forEach(function(type,i){
2008              text += type;
2009              if((allowType.length-1) != i){
2010                text += ', ';
2011              }
2012            });
2013            text += ')';
2014            _widgets.fieldAppendError(parent, text);
2015          }
2016        }
2017      },
2018      fieldAppendError: function(field, text){
2019        field.classList.add('has-error-widget');
2020        var div = field.querySelector('div.error-widget');
2021        if(div){
2022          div.innerText = text;
2023        }else{
2024          var error = document.createElement('div');
2025          error.innerText = text;
2026          error.classList.add('error-widget');
2027          field.append(error);
2028        }
2029      },
2030      inputRequired:function(element){
2031        try{
2032          var parent = f(element).closest('.field-widget').item;
2033          parent.classList.remove('has-error-widget');
2034          if(element.hasAttribute('data-required')){
2035            if(element.type == 'file'){
2036              if(!element.files[0]){
2037                _widgets.fieldAppendError(parent,'Seleziona un file.');
2038                return false;
2039              }
2040            }else if(element.type == 'radio'){
2041              if(!element.form.elements[element.name].value){
2042                _widgets.fieldAppendError(parent,'Seleziona una di queste opzioni.');
2043                return false;
2044              }
2045            }else if(element.type == 'checkbox'){
2046              if(!element.checked){
2047                _widgets.fieldAppendError(parent,'Si prega di spuntare questa casella se si desidera procedere.');
2048                return false;
2049              }
2050            }else if(!element.value){
2051              if(element.type == 'select-one'){
2052                _widgets.fieldAppendError(parent,'Si prega di selezionare un elemento nell\'elenco.');
2053                return false;
2054              }else{
2055                _widgets.fieldAppendError(parent,'Si prega di compilare questo campo.');
2056                return false;
2057              }
2058            }
2059          }
2060          if(element.hasAttribute('data-password-validation')){
2061            if(element.type == 'password'){
2062              if(element.value && !_widgets.checkPassword(element.value).validation){
2063                _widgets.fieldAppendError(parent,'Si prega di controllare la password.');
2064                return false;
2065              }
2066            }
2067          }
2068          if(element.hasAttribute('data-email')){
2069            if(element.type == 'text'){
2070              if(element.value && !_widgets.hasEmail(element.value)){
2071                _widgets.fieldAppendError(parent,'Si prega di includere un @ nell\'indirizzo e-mail.');
2072                return false;
2073              }
2074            }
2075          }
2076        }catch(e){
2077        }
2078        return true;
2079      },
2080      escapeHtml: function(text) {
2081        return text.replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#039;');
2082      },
2083      ascii7: function(text) {
2084        var ascii7text = '';
2085        for (var i = 0; i < text.length; i++) {
2086          var charCode = text.codePointAt(i);
2087          if(charCode < 127) {
2088            ascii7text += String.fromCodePoint(charCode);
2089          } else {
2090            var char = String.fromCodePoint(charCode);
2091            i += (char.length-1);
2092            ascii7text += ('&#'+charCode+';');
2093          }
2094        }
2095        return ascii7text;
2096      },
2097      waitingOn: function(){
2098        if(!f('.loader-widget').item){
2099          var div = document.createElement('div');
2100          div.classList.add('loader-widget');
2101          document.body.append(div);
2102        }
2103        clearTimeout(_widgets.waitingTimeout);
2104        _widgets.waitingTimeout = setTimeout(function(){
2105          document.documentElement.classList.add('loader-widget-on');
2106        },100);
2107      },
2108      waitingOff: function(elem){
2109        clearTimeout(_widgets.waitingTimeout);
2110        document.documentElement.classList.remove('loader-widget-on');
2111      },
2112      xmlHttpRequestLoad: function(event, callback, mode){
2113        var skipWaiting = false;
2114        try{
2115          var json = JSON.parse(event.target.responseText);
2116          var response = json.response || {};
2117          if(json.code == 200){
2118            if(response.error){
2119              _widgets.error('Oops! qualcosa è andato storto', response.error);
2120            }else if(response.errors){
2121              var error = '';
2122              response.errors.forEach(function(item){
2123                error += (_widgets.lookupError.properties[item.name] || item.name)+': '+ (_widgets.lookupError.messages[item.error] || item.error) +'\n';
2124              });
2125              _widgets.error('Oops! qualcosa è andato storto', error);
2126            }else if(typeof(callback) == 'function'){
2127              callback(event);
2128            }
2129          }else{
2130            if(response.showLogin){
2131              callback(event);
2132            }else{
2133              _widgets.error(json.message, response.error);
2134            }
2135          }
2136          skipWaiting = response.skipWaiting;
2137        }catch(e){
2138          _widgets.error('xmlHttpRequestLoad',e.toString());
2139        }
2140        if(mode != 'background'){
2141          if(!skipWaiting){
2142            _widgets.waitingOff();
2143          }
2144        }
2145      },
2146      syncMe: function(callback){
2147        _widgets.secureRequest('/me', function(event){
2148          var json = JSON.parse(event.target.responseText);
2149          localStorage.setItem('userId', json.response.id); // ONLY COMMUNITY FEED
2150          _widgets.account.me = json.response;
2151          if(typeof(callback) == 'function'){
2152            callback();
2153          }
2154        });
2155      },
2156      syncCart: function(callback){
2157        _widgets.secureRequest('/ecommerce/cart', function(event){
2158          var json = JSON.parse(event.target.responseText);
2159          _widgets.cart.init = true;
2160          _widgets.setCart(json.response);
2161          if(typeof(callback) == 'function'){
2162            callback();
2163          }
2164        });
2165      },
2166      setCart: function(json){
2167        if(!json.preOrderItemsSize){
2168          _widgets.set('cartTab', null);
2169        }else if(!json.orderItemsSize){
2170          _widgets.set('cartTab', 'preorderable');
2171        }
2172        _widgets.cart.preOrderItemsSize = json.preOrderItemsSize;
2173        _widgets.cart.orderItemsSize = json.orderItemsSize;
2174        _widgets.cart.gift = json.gift;
2175        _widgets.cart.delivery = json.delivery;
2176        _widgets.cart.shipment = json.shipment;
2177        _widgets.cart.payment = json.payment;
2178        _widgets.cart.store = json.store;
2179        _widgets.cart.items = json.items;
2180        _widgets.cart.spendAtLeast = json.spendAtLeast;
2181        _widgets.cart.shipping = json.shipping;
2182        _widgets.cart.subtotal = json.subtotal;
2183        _widgets.cart.total = json.total;
2184        _widgets.templateUpdateAll();
2185      },
2186      setBook: function(book){
2187        if(book && book.id){
2188          _widgets.book = book;
2189          _widgets.templateUpdateAll('book');
2190        }
2191      },
2192      findShop: function(query, search){
2193        if(search){
2194          _widgets.searchStore(query);
2195        }else{
2196          _widgets.secureRequest('/ecommerce/store', function(event){
2197            var json = JSON.parse(event.target.responseText);
2198            _widgets.allStores = json.response.items;
2199            _widgets.stores = json.response.items;
2200            if(!document.getElementById('find-shop-widget')){
2201              _widgets.appendFindStore('shop-append');
2202            }
2203            setTimeout(function(){
2204              document.documentElement.classList.add('show-find-shop');
2205            },100);
2206            document.documentElement.classList.remove('show-find-store');
2207          });
2208        }
2209      },
2210      findStore: function(query, search){
2211        if(search){
2212          _widgets.searchStore(query);
2213        }else{
2214          _widgets.secureRequest('/ecommerce/store', function(event){
2215            var json = JSON.parse(event.target.responseText);
2216            _widgets.allStores = json.response.items;
2217            _widgets.stores = json.response.items;
2218            if(!document.getElementById('find-store-widget')){
2219              _widgets.appendFindStore('store-append');
2220            }
2221            setTimeout(function(){
2222              document.documentElement.classList.add('show-find-store');
2223            },100);
2224            document.documentElement.classList.remove('show-find-shop');
2225          });
2226        }
2227      },
2228      appendFindStore: function(template){
2229        var html = '';
2230        var showIndictions = (template || '').indexOf('shop') >= 0;
2231        if(_widgets.newSite){
2232          html = f().t('ui/widgets/find-store-v2/'+template+'.html').render();
2233        }else{
2234          html = f().t('ui/widgets/find-store/append.html').render();
2235        }
2236        var doc = document.createElement('div');
2237        doc.innerHTML = html;
2238        var findStore = doc.firstChild;
2239        document.body.append(findStore);
2240        f().ui({
2241          target:findStore.querySelector('.find-store'),
2242          onready:function(){
2243            _widgets.initMapFindStore(findStore.querySelector('.store-map'), false, showIndictions);
2244            _widgets.fire('renderUi', {});
2245          }
2246        });
2247      },
2248      initMapFindStore: function(mapElement, skipBtnClose, showIndictions){
2249        if(window.google && window.google.maps){
2250          var map = new google.maps.Map(mapElement, {
2251            mapId:'7bdc4928204e9cc1',
2252            center: {lat:42,lng:12}, zoom: 6
2253          });
2254          google.maps.event.addListener(map,'drag',function() {
2255            if(window.infowindow) window.infowindow.close();
2256          });
2257          google.maps.event.addListener(map,'click',function() {
2258            if(window.infowindow) window.infowindow.close();
2259          });
2260          if(!skipBtnClose){
2261            if(_widgets.newSite){
2262              var btn = document.createElement('div');
2263              btn.classList.add('ux-button');
2264              btn.classList.add('is-icon-only');
2265              btn.onclick = function(){
2266                window.widgets.closeFindStore();
2267              };
2268              btn.innerHTML = '<div class="ux-svg"><svg viewBox="0 0 24 24">
2268<path d="M18.932,4.271 L19.282,4.283 L19.53,4.448 C19.823,4.741 19.823,5.216 19.53,5.509 L13.061,11.979 L19.53,18.448 C19.823,18.741 19.823,19.216 19.53,19.509 C19.237,19.802 18.763,19.802 18.47,19.509 L12,13.039 L5.53,19.509 C5.237,19.802 4.763,19.802 4.47,19.509 C4.177,19.216 4.177,18.741 4.47,18.448 L10.939,11.979 L4.47,5.509 C4.177,5.216 4.177,4.741 4.47,4.448 C4.746,4.26 4.593,4.321 4.932,4.271 L5.282,4.283 L5.53,4.448 L12,10.918 L18.47,4.448 C18.746,4.26 18.593,4.321 18.932,4.271 z" pathLength="100" fill="transparent" stroke="none" stroke-width="1"></path></svg></div>';
2269              map.controls[google.maps.ControlPosition.TOP_RIGHT].push(btn);
2270            }else{
2271              var btn = document.createElement('div');
2272              btn.classList.add('button-widget');
2273              btn.onclick = function(){
2274                window.widgets.closeFindStore();
2275              };
2276              btn.innerHTML = '<span>'+window.widgets.getSvg('times')+'</span>';
2277              btn.style.backgroundColor = 'white';
2278              btn.style.width = '40px';
2279              btn.style.height = '40px';
2280              btn.style.margin = '0';
2281              btn.style.marginTop = '10px';
2282              btn.style.marginRight = '10px';
2283              map.controls[google.maps.ControlPosition.TOP_RIGHT].push(btn);
2284            }
2285          }
2286          _widgets.allStores.forEach(function(store){
2287            if(store.lat && store.lng){
2288              var img = document.createElement('img');
2289              img.src = 'https://www.ubiklibri.it/ui/images/pin-shop.png';
2290              img.style = 'width:20px;height:20px';
2291              var marker = new google.maps.marker.AdvancedMarkerElement({
2292                map: map,
2293                content: img,
2294                title:store.name,
2295                position: {lat: store.lat, lng: store.lng},
2296              });
2297              var infoContent = '';
2298              if(_widgets.newSite){
2299                infoContent += '<div style="padding:12px;border-radius:12px;text-align:center;">';
2300                infoContent += '  <div style="margin-bottom:12px;font-weight:bold;font-size:18px;">'+store.name+'</div>';
2301                if(showIndictions){
2302                  infoContent += '  <div class="ux-button is-small is-black" onclick="window.widgets.fire(\'goTo\',{what:\'shop-address\',id:'+store.id+'})">Indicazioni</div>';
2303                }else{
2304                  infoContent += '  <div class="ux-button is-small is-black" onclick="window.widgets.setCartStore('+store.id+')">Seleziona</div>';
2305                }
2306                infoContent += '</div>';
2307              }else{
2308                infoContent += '<div style="padding:10px;text-align:center;font-weight:bold;font-size:20px;">';
2309                infoContent += '  <div style="margin-bottom:10px;">'+store.name+'</div>';
2310                infoContent += '  <div class="button-widget button-blue button-small button-uppercase" onclick="window.widgets.setCartStore('+store.id+')"><span>'+window.widgets.getSvg('marker')+'</span> Seleziona</div>';
2311                infoContent += '</div>';
2312              }
2313              var infowindow = new google.maps.InfoWindow({
2314                content: infoContent,
2315                headerDisabled: true
2316              });
2317              marker.addListener('gmp-click', function(event) {
2318                var coords = event.latLng;
2319                if(window.infowindow) window.infowindow.close();
2320                window.infowindow = infowindow;
2321                infowindow.open(map, marker);
2322              });
2323            }
2324          });
2325        }
2326      },
2327      searchStore: function(query){
2328        query = query.toLowerCase();
2329        if(query.length){
2330          var items = [];
2331          var stores = _widgets.allStores || [];
2332          for(var i=0; i<stores.length; i++){
2333            var store = stores[i];
2334            if(store.name.toLowerCase().indexOf(query) != -1 || store.address.toLowerCase().indexOf(query) != -1){
2335              items.push(store);
2336            }
2337          }
2338          _widgets.stores = items;
2339        }else{
2340          _widgets.stores = _widgets.allStores;
2341        }
2342        _widgets.templateUpdateAll('find-store-list');
2343        _widgets.fire('renderUi', {});
2344        _widgets.fire('searchStore', {query:query});
2345      },
2346      findStoreCurrentPosition: function(item){
2347        var parent = item.parentElement;
2348        var input = parent.querySelector('input');
2349        if(input != null){
2350          item.style.pointerEvents = 'none';
2351          _widgets.getCurrentPosition(function(result){
2352            if(result && result.long_name){
2353              input.value = result.long_name;
2354              _widgets.findStore(input.value, true);
2355            }
2356            item.removeAttribute('style');
2357          })
2358        }
2359      },
2360      findEvent: function(){
2361        _widgets.secureRequest('/site/events', function(event){
2362          var json = JSON.parse(event.target.responseText);
2363          _widgets.allEvents = json.response.all.items;
2364          if(!document.getElementById('find-event-widget')){
2365            _widgets.appendFindEvent();
2366          }
2367          setTimeout(function(){
2368            document.documentElement.classList.add('show-find-event');
2369          },100);
2370        },{token:'91fe75a94098c2b5136c31d2d10eb414', startDate:new Date().dateAsParam(), limit:999, sort:'date'});
2371      },
2372      appendFindEvent: function(){
2373        var html = f().t('ui/widgets/find-event/append.html').render();
2374        var doc = document.createElement('div');
2375        doc.innerHTML = html;
2376        var findEvent = doc.firstChild;
2377        document.body.append(findEvent);
2378        f().ui({
2379          target:findEvent.querySelector('.find-event'),
2380          onready:function(){
2381            _widgets.initMapFindEvent(findEvent.querySelector('.event-map'));
2382            _widgets.fire('renderUi', {});
2383          }
2384        });
2385      },
2386      initMapFindEvent: function(mapElement){
2387        if(window.google && window.google.maps){
2388          var map = new google.maps.Map(mapElement, {
2389            mapId:'7bdc4928204e9cc1',
2390            center: {lat:42,lng:12},
2391            zoom: 6
2392          });
2393          google.maps.event.addListener(map,'drag',function() {
2394            if(window.infowindow) window.infowindow.close();
2395          });
2396          google.maps.event.addListener(map,'click',function() {
2397            if(window.infowindow) window.infowindow.close();
2398          });
2399          var btn = document.createElement('div');
2400          btn.classList.add('ux-button');
2401          btn.classList.add('is-icon-only');
2402          btn.onclick = function(){
2403            window.widgets.closeFindEvent();
2404          };
2405          btn.innerHTML = '<div class="ux-svg"><svg viewBox="0 0 24 24">
2405<path d="M18.932,4.271 L19.282,4.283 L19.53,4.448 C19.823,4.741 19.823,5.216 19.53,5.509 L13.061,11.979 L19.53,18.448 C19.823,18.741 19.823,19.216 19.53,19.509 C19.237,19.802 18.763,19.802 18.47,19.509 L12,13.039 L5.53,19.509 C5.237,19.802 4.763,19.802 4.47,19.509 C4.177,19.216 4.177,18.741 4.47,18.448 L10.939,11.979 L4.47,5.509 C4.177,5.216 4.177,4.741 4.47,4.448 C4.746,4.26 4.593,4.321 4.932,4.271 L5.282,4.283 L5.53,4.448 L12,10.918 L18.47,4.448 C18.746,4.26 18.593,4.321 18.932,4.271 z" pathLength="100" fill="transparent" stroke="none" stroke-width="1"></path></svg></div>';
2406          map.controls[google.maps.ControlPosition.TOP_RIGHT].push(btn);
2407          var groups = {};
2408          _widgets.allEvents.forEach(function(event){
2409            if(event.latitude && event.longitude){
2410              var key = event.latitude+'_'+event.longitude;
2411              if(!groups[key]){ groups[key] = []; }
2412              groups[key].push(event);
2413            }
2414          });
2415          Object.keys(groups).forEach(function(key){
2416            var events = groups[key];
2417            var img = document.createElement('img');
2418            img.src = 'https://www.ubiklibri.it/ui/images/pin-event.png';
2419            img.style = 'width:20px;height:20px';
2420            var marker = new google.maps.marker.AdvancedMarkerElement({
2421              map: map,
2422              position: {lat: events[0].latitude, lng: events[0].longitude},
2423              content:img,
2424              title: events[0].shopName
2425            });
2426            var infoContent = '';
2427            infoContent += '<div class="event-marker-widget">';
2428            infoContent += '<div class="event-title-widget">'+events[0].shopName+'</div>';
2429            events.forEach(function(event){
2430              infoContent += '<div onclick="window.widgets.goToEvent('+event.id+')" class="event-item-widget"><span class="event-date-widget">'+Date.parse(event.startDate).format({day:'2-digit',month:'short'},'it')+'</span><span>'+event.name.toLowerCase().capitalize()+'</span></div>';
2431            });
2432            infoContent += '</div>';
2433            var infowindow = new google.maps.InfoWindow({
2434              content: infoContent,
2435              maxWidth: 320,
2436              headerDisabled: true
2437            });
2438            marker.addListener('gmp-click', function(event) {
2439              var coords = event.latLng;
2440              if(window.infowindow) window.infowindow.close();
2441              window.infowindow = infowindow;
2442              infowindow.open(map, marker);
2443            });
2444          });
2445        }
2446      },
2447      getCurrentPosition: function(callback, type){
2448        navigator.geolocation.getCurrentPosition(function(result){
2449          var coords = result.coords || {};
2450          new google.maps.Geocoder().geocode({
2451            'latLng': new google.maps.LatLng(coords.latitude, coords.longitude)
2452          }, function (results, status) {
2453            var result = results[0];
2454            var locality = null;
2455            type = type || 'locality';
2456            result.address_components.forEach(function(item){
2457              item.types.forEach(function(aType){
2458                if(aType == type){
2459                  locality = item;
2460                }
2461              });
2462            });
2463            callback(locality, coords);
2464          });
2465        }, function(result){
2466          callback(null);
2467          if(result.code == 1){
2468            _widgets.error('Geolocalizzazione', 'Non hai consentito la geolocalizzazione sul tuo browser.');
2469          }else{
2470            _widgets.error('Geolocalizzazione', 'La geolocalizzazione non è al momento disponibile.');
2471          }
2472        });
2473      },
2474      fire: function(key, object){
2475        if(key && object){
2476          for(var i=0; i<_widgets.listeners.length; i++){
2477            var listener = _widgets.listeners[i];
2478            if(listener.key == key){
2479              listener.callback(object);
2480            }
2481          }
2482        }
2483      },
2484      on: function(key, callback){
2485        if(key && typeof(callback) == 'function'){
2486          _widgets.listeners.push({key:key,callback:callback});
2487        }
2488      },
2489      off: function(key, callback){
2490        if(key && typeof(callback) == 'function'){
2491          for(var i=0; i<_widgets.listeners.length; i++){
2492            var listener = _widgets.listeners[i];
2493            if(listener.key == key && listener.callback === callback){
2494              _widgets.listeners.splice(i, 1);
2495            }
2496          }
2497        }
2498      },
2499      getSession: function(){
2500        try{
2501          var value = localStorage.getItem(_widgets.keySession);
2502          return JSON.parse(window.atob(value) || '{}');
2503        }catch(e){
2504          return {};
2505        }
2506      },
2507      setSession: function(session){
2508        try{
2509          var base64 = window.btoa(JSON.stringify(session));
2510          localStorage.setItem(_widgets.keySession, base64);
2511        }catch(e){
2512        }
2513      },
2514      get: function(key, defaultValue){
2515        try{
2516          var session = _widgets.getSession();
2517          return session[key] || defaultValue;
2518        }catch(e){
2519        }
2520        return defaultValue;
2521      },
2522      set: function(key, value){
2523        try{
2524          var session = _widgets.getSession();
2525          if(value){
2526            session[key] = value;
2527          }else{
2528            delete session[key];
2529          }
2530          _widgets.setSession(session);
2531        }catch(e){
2532        }
2533      },
2534      setCookie: function(name, value, days) {
2535        try{
2536          var expires;
2537          if (days) {
2538            var date = new Date();
2539            date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
2540            expires = "; expires=" + date.toGMTString();
2541          }
2542          else {
2543            expires = "";
2544          }
2545          document.cookie = name + "=" + value + expires + "; path=/";
2546        }catch(e){
2547        }
2548      },
2549      getCookie: function(name) {
2550        try{
2551          if (document.cookie.length > 0) {
2552            c_start = document.cookie.indexOf(name + "=");
2553            if (c_start != -1) {
2554              c_start = c_start + name.length + 1;
2555              c_end = document.cookie.indexOf(";", c_start);
2556              if (c_end == -1) {
2557                c_end = document.cookie.length;
2558              }
2559              return unescape(document.cookie.substring(c_start, c_end));
2560            }
2561          }
2562        }catch(e){
2563        }
2564        return "";
2565      },
2566      templateUpdateAll: function(template){
2567        try{
2568          if(template){
2569            document.querySelectorAll('[data-'+template+'][data-resource]').forEach(function(target){
2570              f().ui({ target:target, onready:function(){ _widgets.setup(target, template); } });
2571            });
2572          }else{
2573            document.querySelectorAll('[data-widget][data-resource]').forEach(function(target){
2574              f().ui({ target:target, onready:function(e){ _widgets.setup(target, template); } });
2575            });
2576          }
2577        }catch(e){
2578        }
2579      },
2580      render: function(template, json){
2581        f().ui({
2582          url:'ui/widgets/'+template+'.html',
2583          target: json.target,
2584          onready:function(){
2585            if(typeof(json.callback) == 'function'){
2586              json.callback();
2587              _widgets.setup(json.target, template);
2588            }
2589          }
2590        });
2591      },
2592      confirm: function(title, message, callback){
2593        if(title && message && typeof(callback) == 'function'){
2594          if(typeof(swal) == 'function'){
2595            swal({
2596              title: title,
2597              text: message,
2598              buttons:['No', 'Conferma']
2599            }).then(function(result){
2600              callback(result);
2601            });
2602          }else{
2603            callback(window.confirm(title+': '+message));
2604          }
2605        }
2606      },
2607      error: function(title, message){
2608        if(typeof(swal) == 'function'){
2609          swal({
2610            title: ( title || 'Messaggio di errore'),
2611            text: (message || ''),
2612            icon: 'error'
2613          });
2614        }else{
2615          window.alert((title || 'Messaggio di errore').toUpperCase(), (message || '').toUpperCase());
2616        }
2617      }
2618    };
2619    this.init = function(callback){
2620      _widgets.init(callback);
2621    };
2622    this.getDevelopment = function(){
2623      return _widgets.development;
2624    };
2625    this.setDevelopment = function(development){
2626      _widgets.development = development;
2627    };
2628    this.setApiUrl = function(apiUrl){
2629      _widgets.apiUrl = apiUrl;
2630    };
2631    this.setNewSite = function(newSite){
2632      _widgets.newSite = newSite;
2633    };
2634    this.waitingOn = function(){
2635      _widgets.waitingOn();
2636    };
2637    this.waitingOff = function(){
2638      _widgets.waitingOff();
2639    };
2640    this.initFindStore = function(json){
2641      if(json.target){
2642        var findStore = json.target;
2643        if(!findStore.querySelector('.find-store-widget')){
2644          _widgets.secureRequest('/ecommerce/store', function(event){
2645            var response = JSON.parse(event.target.responseText);
2646            var html = '';
2647            if(_widgets.newSite){
2648              html = f().t('ui/widgets/find-store-v2/inline-append.html').render();
2649            }else{
2650              html = f().t('ui/widgets/find-store/append.html').render();
2651            }
2652            findStore.innerHTML = html;
2653            _widgets.allStores = response.response.items;
2654            _widgets.stores = response.response.items;
2655            f().ui({
2656              target:findStore.querySelector('.find-store'),
2657              onready:function(){
2658                _widgets.initMapFindStore(findStore.querySelector('.store-map'), true);
2659                _widgets.fire('renderUi', {});
2660              }
2661            });
2662          });
2663        }
2664      }
2665      return this;
2666    }
2667    this.initCart = function(json){
2668      if(json.target){
2669        _widgets.syncCart(function(response){
2670          _widgets.render('cart',json);
2671        })
2672      }
2673      return this;
2674    }
2675    this.initBook = function(json){
2676      if(json.target && json.ean){
2677        _widgets.secureRequest('/iolettore/book/'+json.ean, function(event){
2678          _widgets.book = JSON.parse(event.target.responseText).response;
2679          _widgets.render('book',json);
2680        })
2681      }
2682      return this;
2683    };
2684    this.initCartCheckout = function(json){
2685      if(json.target){
2686        _this = this;
2687        _widgets.syncCart(function(response){
2688          _this.checkCartCheckout(_widgets.cart);
2689          _widgets.render('cart-checkout',json);
2690        })
2691      }
2692    }
2693    this.checkCartCheckout = function(cart){
2694      if(cart){
2695        var step = _widgets.get('stepCheckout', 1);
2696        var store = cart.store || {};
2697        var delivery = cart.delivery || {};
2698        var items = cart.items || [];
2699        if(items.length == 0 || !delivery.select){
2700          _widgets.set('stepCheckout',1);
2701          step = 1;
2702        }
2703        if(step == 1 && store.id){ // se l'utente ha già selezionato lo store skippo lo step 1
2704          _widgets.set('stepCheckout',2);
2705        }
2706      }
2707    }
2708    this.initOrders = function(json){
2709      if(json.target){
2710        var token = json.token;
2711        if(token){
2712          _widgets.secureRequest('/ecommerce/order/'+token, function(event){
2713            _widgets.account.order.token = token;
2714            _widgets.account.order.item = JSON.parse(event.target.responseText).response;
2715            _widgets.set('showOrderPaymentRequest', null);
2716            if(json.goToMessages == '0' || json.goToMessages == '1'){
2717              _widgets.set('showOrderChat', json.goToMessages == '1');
2718            }
2719            if(_widgets.get('showOrderChat')){
2720              _widgets.secureRequest('/ecommerce/order/chat/'+token, function(event2){
2721                _widgets.account.order.messages = (JSON.parse(event2.target.responseText).response || {}).items;
2722                _widgets.render('orders',json);
2723              });
2724            }else{
2725              _widgets.render('orders',json);
2726            }
2727          });
2728        }else{
2729          _widgets.render('orders',json);
2730        }
2731        _widgets.account.ordersInit = true;
2732      }
2733    }
2734    this.initSignin = function(json){
2735      if(json.target){
2736        _widgets.render('signin',json);
2737      }
2738    }
2739    this.initSignup = function(json){
2740      if(json.target){
2741        _widgets.render('signup',json);
2742      }
2743    }
2744    this.initSigninButton = function(json){
2745      if(json.target){
2746        _widgets.render('signin-button',json);
2747      }
2748    }
2749    this.initCartButton = function(json){
2750      if(json.target){
2751        _widgets.render('cart-button',json);
2752      }
2753    }
2754    this.initConnectedAccount = function(json){
2755      if(json.shopId && json.target){
2756        _widgets.secureRequest('/area-riservata/connected-account/'+json.shopId, function(event){
2757          var response = JSON.parse(event.target.responseText);
2758          _widgets.setConnectedAccountShop(response.response);
2759          _widgets.render('connected-account',json);
2760        });
2761      }
2762    }
2763    this.refreshConnectedAccount = function(){
2764      var shop = _widgets.connectedAccount.shop;
2765      if(shop.id){
2766        _widgets.secureRequest('/area-riservata/connected-account/'+shop.id, function(event){
2767          var response = JSON.parse(event.target.responseText);
2768          _widgets.setConnectedAccountShop(response.response);
2769          _widgets.templateUpdateAll('connected-account');
2770        },{forceUpdate: 'yes'});
2771      }
2772    }
2773    this.excelChargesConnectedAccount = function(){
2774      var shop = _widgets.connectedAccount.shop;
2775      if(shop.id){
2776        var charges = _widgets.connectedAccount.shop.stripe.charges || {};
2777        var sheet = {name:'Movementi Ecommerce',header:['DATA','IMPORTO','NETTO','COMMISSIONE','STATO','METODO DI PAGAMENTO', 'INTESTATARIO','RICEVUTA'], types:[], rows:[]};
2778        charges.data.forEach(function(charge){
2779          var transaction = charge.balance_transaction_data || {};
2780          var amount = charge.amount/100;
2781          var net = transaction.net ? (transaction.net/100) : amount;
2782          var fee = transaction.fee ? (transaction.fee/100) : 0;
2783          var state = '';
2784          if(charge.refunded){
2785            if(charge.captured){
2786              state = 'Rimborsato';
2787            }else{
2788              state = 'Annullato';
2789            }
2790          }else if(charge.captured){
2791            state = 'Completato';
2792          }else if(charge.disputed){
2793            state = 'Contestato';
2794          }else{
2795            if(charge.status == 'succeeded' && !charge.captured){
2796              state = 'Da Riscuotere';
2797            }else{
2798              state = charge.status;
2799            }
2800          }
2801          var method = '****'+charge.payment_method_details.card.last4+' - '+charge.payment_method_details.card.exp_month+'/'+charge.payment_method_details.card.exp_year+'\n '+charge.payment_method_details.card.brand.toUpperCase()+' - '+charge.payment_method_details.card.country;
2802          var row = [];
2803          row.push( Date.parse(charge.created*1000).format({day:'numeric',month:'2-digit',year:'2-digit',hour:'2-digit',minute:'2-digit'},'it') );
2804          row.push( amount.toFixed(2).replace('.',',') +' € ' );
2805          row.push( net.toFixed(2).replace('.',',') +' € ' );
2806          row.push( fee.toFixed(2).replace('.',',') +' € ' );
2807          row.push(state);
2808          row.push(method)
2809          row.push(charge.billing_details.name+'\n'+charge.billing_details.email);
2810          row.push(charge.receipt_url ? charge.receipt_url : '');
2811          sheet.rows.push(row);
2812        });
2813        var dataAsString = JSON.stringify({sheets:[sheet]});
2814        var xhr = new XMLHttpRequest();
2815        xhr.open('POST', _widgets.apiUrl+'/free/area-riservata/build-excel');
2816        xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded;charset=UTF-8');
2817        xhr.responseType = 'arraybuffer';
2818        xhr.onload = function () {
2819          if (this.status === 200) {
2820            var filename = 'movimenti-'+new Date().dateAsParam()+'.xlsx';
2821            var blob = new Blob([xhr.response], {type: 'application/vnd.ms-excel;charset=utf-8'});
2822            var objectUrl = URL.createObjectURL(blob);
2823            var anchor = document.createElement('a');
2824            anchor.href = objectUrl;
2825            anchor.download =  filename;
2826            anchor.click();
2827          }
2828        };
2829        xhr.onerror = function(){
2830          _widgets.error('Errore','Errore durante la richiesta, riprova più tardi.');
2831        };
2832        xhr.send('data='+dataAsString);
2833      }
2834    };
2835    this.moreChargesConnectedAccount = function(chargeId){
2836      var shop = _widgets.connectedAccount.shop;
2837      if(shop.id){
2838        _widgets.secureRequest('/area-riservata/connected-account/more-charges/'+shop.id, function(event){
2839          var response = JSON.parse(event.target.responseText).response || {};
2840          var oldCharges = _widgets.connectedAccount.shop.stripe.charges || {};
2841          var newCharges = response || {};
2842          newCharges.data.forEach(function(charge){
2843            oldCharges.data.push(charge);
2844          });
2845          oldCharges.has_more = newCharges.has_more;
2846          oldCharges.count = oldCharges.data.length;
2847          _widgets.templateUpdateAll('connected-account');
2848        },{chargeId: chargeId});
2849      }
2850    };
2851    this.createConnectedAccount = function(){
2852      try{
2853        var shop = _widgets.connectedAccount.shop;
2854        if(shop.id){
2855          var formData = _widgets.connectedAccount.formData;
2856          formData.set('shopToken', shop.id);
2857          _widgets.secureRequestEncoded('/area-riservata/connected-account/create', function(event){
2858            var response = JSON.parse(event.target.responseText);
2859            _widgets.setConnectedAccountShop(response.response);
2860            _widgets.templateUpdateAll('connected-account');
2861          },formData);
2862        }
2863      }catch(e){
2864      }
2865      return false;
2866    }
2867    this.createConnectedAccountPerson = function(form){
2868      try{
2869        var shop = _widgets.connectedAccount.shop;
2870        if(shop.id){
2871          var send = true;
2872          var formData = _widgets.buildFormData(form, function(element){
2873            if(!_widgets.inputRequired(element)) send = false;
2874          });
2875          if(send){
2876            formData.set('shopToken', shop.id);
2877            _widgets.secureRequestEncoded('/area-riservata/connected-account/person/create', function(event){
2878              var response = JSON.parse(event.target.responseText);
2879              _widgets.setConnectedAccountShop(response.response);
2880              _widgets.templateUpdateAll('connected-account');
2881            },formData)
2882          }
2883        }
2884      }catch(e){
2885      }
2886      return false;
2887    }
2888    this.verificationConnectedAccount = function(form){
2889      try{
2890        var shop = _widgets.connectedAccount.shop;
2891        if(shop.id){
2892          var send = true;
2893          var formData = _widgets.buildFormData(form, function(element){
2894            if(!_widgets.inputRequired(element)) send = false;
2895          });
2896          if(send){
2897            formData.set('shopToken', shop.id);
2898            _widgets.secureRequestEncoded('/area-riservata/connected-account/verification', function(event){
2899              var response = JSON.parse(event.target.responseText);
2900              _widgets.setConnectedAccountShop(response.response);
2901              _widgets.templateUpdateAll('connected-account');
2902            },formData)
2903          }
2904        }
2905      }catch(e){
2906      }
2907      return false;
2908    };
2909    this.deleteStripeAccount = function(){
2910      var shop = _widgets.connectedAccount.shop || {};
2911      if(shop.id){
2912        _widgets.confirm('Connected Account', 'Sei sicuro di voler eliminare il tuo account?', function(ok){
2913          if(ok){
2914            _widgets.confirm('Conferma', 'Confermi di voler eliminare il tuo account?', function(ok2){
2915              if(ok2){
2916                _widgets.secureRequest('/area-riservata/connected-account/delete/'+shop.id, function(event){
2917                  var json = JSON.parse(event.target.responseText);
2918                  if(json.code == 200){
2919                    _widgets.connectedAccount.target = '';
2920                    _widgets.connectedAccount.step = 1;
2921                    _widgets.setConnectedAccountShop(json.response);
2922                    _widgets.templateUpdateAll('connected-account');
2923                  }
2924                });
2925              }
2926            })
2927          }
2928        });
2929      }
2930    };
2931    this.scheduleConnectedAccount = function(form){
2932      try{
2933        var shop = _widgets.connectedAccount.shop;
2934        if(shop.id){
2935          var send = true;
2936          var formData = _widgets.buildFormData(form, function(element){
2937            if(!_widgets.inputRequired(element)) send = false;
2938          });
2939          if(send){
2940            formData.set('shopToken', shop.id);
2941            var _this = this;
2942            _widgets.secureRequestEncoded('/area-riservata/connected-account/payouts-schedule', function(event){
2943              var response = JSON.parse(event.target.responseText);
2944              _widgets.setConnectedAccountShop(response.response);
2945              _this.setConnectedAccountTarget(); // vai alla home
2946            },formData);
2947          }
2948        }
2949      }catch(e){
2950      }
2951      return false;
2952    }
2953    this.connectedAccountStep = function(step){
2954      try{
2955        var formData = _widgets.connectedAccount.formData;
2956        if(step instanceof HTMLFormElement){
2957          var send = true;
2958          var form = step;
2959          _widgets.buildFormData(form, function(element){
2960            if(!_widgets.inputRequired(element)) send = false;
2961          });
2962          if(send){
2963            _widgets.buildFormData(form, null, formData);
2964            this.connectedAccountStep(parseInt(form.elements.step.value));
2965          }
2966        }else if(step && typeof(step) == 'number'){
2967          if(step >= 2){
2968            if(!formData.get('email')){
2969              _widgets.error('Prima di procedere','Si prega di completare e salvare "Dati Account"');
2970              return false;
2971            }
2972          }
2973          if(step >= 3){
2974            if(!(formData.get('companyName') && formData.get('companyPhone') && formData.get('companyVatId') && formData.get('companyTaxId') && formData.get('companyAddressLine1') && formData.get('companyAddressCity') && formData.get('companyAddressPostalCode') && formData.get('companyAddressState'))){
2975              _widgets.error('Prima di procedere', 'Si prega di completare e salvare "Dati Aziendali"');
2976              return false;
2977            }
2978          }
2979          if(step >= 4){
2980            if(!(formData.get('businessProfileName') && formData.get('businessProfileUrl') && formData.get('businessProfileSupportPhone') && formData.get('businessProfileSupportEmail') && formData.get('businessProfileSupportAddressLine1') && formData.get('businessProfileSupportAddressCity') && formData.get('businessProfileSupportAddressPostalCode') && formData.get('businessProfileSupportAddressState'))){
2981              _widgets.error('Prima di procedere', 'Si prega di completare e salvare "Dati Attività"');
2982              return false;
2983            }
2984          }
2985          if(step >= 5){
2986            if(!(formData.get('externalAccountName') && formData.get('externalAccountNumber'))){
2987              _widgets.error('Prima di procedere', 'Si prega di completare e salvare "Dati Bancari"');
2988              return false;
2989            }
2990          }
2991          _widgets.connectedAccount.step = step;
2992          _widgets.templateUpdateAll('connected-account');
2993        }
2994      }catch(e){
2995      }
2996      return false;
2997    };
2998    this.setFormErrors = function(form, errors){
2999      if(form){
3000        var errors = (errors || [])
3001        var html = '';
3002        if(errors.length){
3003          errors.forEach(function(error){
3004            html += '<div>'+error+'</div>';
3005          });
3006        }
3007        f(form).find('.form-errors-widget').html(html);
3008      }
3009    }
3010    this.cartCheckout = function(){
3011      var me = _widgets.account.me || {};
3012      var payment = _widgets.cart.payment || {};
3013      if(!me.id){
3014        if(typeof(swal) == 'function'){
3015          swal({
3016            title: 'my ubik',
3017            text: 'Prima di procedere, accedi a my ubik',
3018            icon: 'warning',
3019          });
3020        }
3021        return;
3022      }
3023      if(payment.select == 2){
3024        _widgets.secureRequest('/ecommerce/checkout', function(event){
3025          var json = JSON.parse(event.target.responseText);
3026          var response = json.response;
3027          if(response.stripePublicKey && response.stripeSessionId && response.stripeAccountId){
3028            _widgets.set('stepCheckout', 1);
3029            var stripe = Stripe(response.stripePublicKey, {stripeAccount: response.stripeAccountId} );
3030            stripe.redirectToCheckout({
3031              sessionId: response.stripeSessionId
3032            }).then(function(result) {
3033              _widgets.error(result);
3034            });
3035          }else{
3036            _widgets.error('Errore','Abbiamo riscontrato un errore, Riprova di nuovo');
3037          }
3038        });
3039      }else{
3040        _widgets.confirm('Conferma ordine','Sei sicuro di voler confermare questo ordine?', function(ok){
3041          if(ok){
3042            _widgets.secureRequest('/ecommerce/checkout', function(event){
3043              _widgets.set('stepCheckout', 1);
3044              _widgets.fire('goTo',{what:'orders'});
3045            });
3046          }
3047        });
3048      }
3049    }
3050    this.chatOrder = function(mode){
3051      var order = _widgets.account.order.item || {};
3052      if(order.token){
3053        if(mode){
3054          _widgets.secureRequest('/ecommerce/order/chat/'+order.token, function(event){
3055            var json = JSON.parse(event.target.responseText);
3056            _widgets.account.order.messages = (json.response || {}).items;
3057            _widgets.set('showOrderChat', true);
3058            _widgets.templateUpdateAll('orders');
3059          });
3060        }else{
3061          _widgets.set('showOrderChat', null);
3062          _widgets.account.order.messages = [];
3063          this.selectOrder(order.token, true);
3064        }
3065      }
3066    }
3067    this.sendMessageOrder = function(input){
3068      var order = _widgets.account.order.item || {};
3069      if(order.token && input){
3070        var value = (input.value || '').trim();
3071        if(value.length){
3072          value = _widgets.ascii7(value);
3073          value = _widgets.escapeHtml(value);
3074          _widgets.secureRequest('/ecommerce/order/message/'+order.token, function(event){
3075            var json = JSON.parse(event.target.responseText);
3076            _widgets.account.order.messages = (json.response || {}).items;
3077            _widgets.templateUpdateAll('orders');
3078          },{ message: value });
3079        }
3080      }
3081    }
3082    this.paymentRequestOrder = function(value){
3083      var order = _widgets.account.order.item || {};
3084      if(order.token){
3085        if(typeof(value) == 'boolean'){ // reason section
3086          _widgets.set('showOrderPaymentRequest', value);
3087          _widgets.templateUpdateAll('orders');
3088        }
3089      }
3090    };
3091    this.refundOrder = function(value){
3092      var order = _widgets.account.order.item || {};
3093      if(order.token){
3094        if(typeof(value) == 'boolean'){ // reason section
3095          _widgets.set('showOrderRefund', value);
3096          _widgets.account.order.refundReasonId = null;
3097          _widgets.account.order.refundReasonNote = null;
3098          _widgets.templateUpdateAll('orders');
3099        }else if(typeof(value) == 'number'){ // reason id
3100          _widgets.account.order.refundReasonId = value;
3101          _widgets.account.order.refundReasonNote = null;
3102          _widgets.templateUpdateAll('orders');
3103        }else if(typeof(value) == 'string'){ // reason note
3104          _widgets.account.order.refundReasonNote = value;
3105        }else{
3106          var id = _widgets.account.order.refundReasonId;
3107          var note = _widgets.account.order.refundReasonNote || '';
3108          _widgets.secureRequest('/ecommerce/order/refund/'+order.token, function(event){
3109            var json = JSON.parse(event.target.responseText);
3110            _widgets.account.order.item = json.response;
3111            _widgets.account.order.refundReasonId = null;
3112            _widgets.account.order.refundReasonNote = null;
3113            _widgets.set('showOrderRefund', null);
3114            _widgets.templateUpdateAll('orders');
3115          },{ id:id, note:note });
3116        }
3117      }
3118    };
3119    this.cancelOrder = function(orderToken){
3120      var order = _widgets.account.order.item || {};
3121      if(order.token){
3122        var _this = this;
3123        _widgets.confirm('Annulla Ordine','Sei sicuro di voler annullare questo ordine?', function(ok){
3124          if(ok){
3125            _widgets.secureRequest('/ecommerce/order/cancel/'+order.token, function(event){
3126              var json = JSON.parse(event.target.responseText);
3127              _widgets.syncMe(function(){
3128                if(typeof(swal) == 'function'){
3129                  if(json.response && json.response.message){
3130                    swal({
3131                      title: 'my ubik',
3132                      text: json.response.message,
3133                      icon: 'success'
3134                    });
3135                  }
3136                }
3137                _this.selectOrder(order.token, true);
3138              });
3139            });
3140          }
3141        });
3142      }else if(orderToken){
3143        _widgets.confirm('Annulla Ordine','Sei sicuro di voler annullare questo ordine?', function(ok){
3144          if(ok){
3145            _widgets.secureRequest('/ecommerce/order/cancel/'+orderToken, function(event){
3146              var json = JSON.parse(event.target.responseText);
3147              if(json.response && json.response.message){
3148                ux.message({icon:'check-circle', className:'is-green', description:json.response.message || '-',timer:5000});
3149              }
3150              window.location.reload();
3151            });
3152          }
3153        });
3154      }
3155    };
3156    this.archiveOrder = function(orderToken){
3157      var order = _widgets.account.order.item || {};
3158      if(order.token){
3159        var _this = this;
3160        _widgets.confirm('Archivia Ordine','Sei sicuro di voler archiviare questo ordine?', function(ok){
3161          if(ok){
3162            _widgets.secureRequest('/ecommerce/order/archive/'+order.token, function(event){
3163              _widgets.syncMe(function(){
3164                _this.selectOrder(null);
3165              });
3166            });
3167          }
3168        });
3169      }else if(orderToken){
3170        _widgets.confirm('Archivia Ordine','Sei sicuro di voler archiviare questo ordine?', function(ok){
3171          if(ok){
3172            _widgets.secureRequest('/ecommerce/order/archive/'+orderToken, function(event){
3173              window.location = '/account/orders';
3174            });
3175          }
3176        });
3177      }
3178    };
3179    this.selectOrder = function(token, skipHistory){
3180      if(_widgets.account.ordersInit){
3181        if(token){
3182          _widgets.secureRequest('/ecommerce/order/'+token, function(event){
3183            var json = JSON.parse(event.target.responseText);
3184            _widgets.account.order.token = token;
3185            _widgets.account.order.item = json.response;
3186            _widgets.set('showOrderChat', null);
3187            _widgets.set('showOrderRefund', null);
3188            _widgets.set('showOrderPaymentRequest', null);
3189            if(!skipHistory){
3190              history.pushState({orderToken:token}, null, _widgets.urlPrefix.order+token);
3191            }
3192            _widgets.templateUpdateAll('orders');
3193          });
3194        }else{
3195          _widgets.syncMe(function(){
3196            _widgets.account.order.token = null;
3197            _widgets.account.order.item = {};
3198            if(!skipHistory){
3199              history.pushState({orderToken:token}, null, _widgets.urlPrefix.orders);
3200            }
3201            _widgets.templateUpdateAll('orders');
3202          });
3203        }
3204      }
3205    }
3206    this.sendBookState = function(state){
3207      var book = _widgets.book || {};
3208      if(book.id){
3209        _widgets.secureRequest('/iolettore/book/state/'+book.id, function(event){
3210          _widgets.setBook(JSON.parse(event.target.responseText).response);
3211        },{state:state});
3212      }
3213    };
3214    this.sendBookComment = function(message, parentId){
3215      var book = _widgets.book || {};
3216      var message = message || '';
3217      if(book.id && message.length){
3218        message = _widgets.ascii7(message);
3219        message = _widgets.escapeHtml(message);
3220        _widgets.secureRequest('/iolettore/book/comment/'+book.id, function(event){
3221          _widgets.setBook(JSON.parse(event.target.responseText).response);
3222        },{message:message, parentId:parentId});
3223      }
3224    };
3225    this.sendBookCommentReaction = function(commentId, what){
3226      var book = _widgets.book || {};
3227      if(book.id && commentId && what){
3228        _widgets.secureRequest('/iolettore/book/comment/reaction/'+book.id, function(event){
3229          _widgets.setBook(JSON.parse(event.target.responseText).response);
3230        },{commentId:commentId, what:what});
3231      }
3232    };
3233    this.cartStep = function(step){
3234      try{
3235        if(step instanceof HTMLFormElement){
3236          var send = true;
3237          var formData = _widgets.buildFormData(step, function(element){
3238            if(!_widgets.inputRequired(element)) send = false;
3239          });
3240          if(send){
3241            var nextStep = parseInt(formData.get('nextStep') || '4');
3242            _widgets.secureRequestEncoded('/ecommerce/cart/shipment', function(event){
3243              var json = JSON.parse(event.target.responseText);
3244              _widgets.setCart(json.response);
3245              _widgets.stepCheckout(nextStep);
3246            },formData);
3247          }
3248        }else{
3249          _widgets.stepCheckout(step);
3250        }
3251      }catch(e){
3252      }
3253      return false;
3254    }
3255    this.setCartItem = function(params){
3256      _widgets.secureRequest('/ecommerce/cart/item/add',function(event){
3257        var json = JSON.parse(event.target.responseText);
3258        _widgets.setCart(json.response);
3259        _widgets.fire('ga4_add_to_cart',{method:'add', id:params.id, response:json.response});
3260        if(typeof(swal) == 'function'){
3261          swal({
3262            title: 'my ubik',
3263            text: 'Hai aggiunto un elemento nel tuo carrello, vuoi visualizzarlo?',
3264            icon: 'success',
3265            buttons: ['No', 'Si']
3266          }).then(function(ok){
3267            if(ok){
3268              _widgets.fire('goTo',{what:'cart'});
3269            }
3270          });
3271        }
3272      },params);
3273      return this;
3274    }
3275    this.removeCartItem = function(id){
3276      _widgets.secureRequest('/ecommerce/cart/item/remove',function(event){
3277        var json = JSON.parse(event.target.responseText);
3278        _widgets.setCart(json.response);
3279        _widgets.fire('ga4_remove_from_cart',{method:'remove', id:id, response:json.response});
3280        _widgets.fire('updateCart', json.response || {});
3281      },{id:id});
3282      return this;
3283    };
3284    this.setCartItemsTab = function(tab){
3285      _widgets.set('cartTab', tab);
3286      _widgets.syncCart();
3287    };
3288    this.setCartItemIncrease = function(id){
3289      _widgets.secureRequest('/ecommerce/cart/item/increase',function(event){
3290        var json = JSON.parse(event.target.responseText);
3291        _widgets.setCart(json.response);
3292        _widgets.fire('ga4_add_to_cart',{method:'increase', id:id, response:json.response});
3293        _widgets.fire('updateCart', json.response || {});
3294      },{id:id});
3295      return this;
3296    };
3297    this.setCartItemDecrease = function(id){
3298      _widgets.secureRequest('/ecommerce/cart/item/decrease',function(event){
3299        var json = JSON.parse(event.target.responseText);
3300        _widgets.setCart(json.response);
3301        _widgets.fire('ga4_remove_from_cart',{method:'decrease', id:id, response:json.response});
3302        _widgets.fire('updateCart', json.response || {});
3303      },{id:id});
3304      return this;
3305    };
3306    this.setCartStore = function(id){
3307      var _this = this;
3308      this.closeFindStore();
3309      _widgets.secureRequest('/ecommerce/cart/store/select',function(event){
3310        var json = JSON.parse(event.target.responseText);
3311        _widgets.setCart(json.response);
3312        _widgets.fire('storeChange', (json.response || {}).store || {} );
3313      },{id: id});
3314    };
3315    this.setCartDelivery = function(token){
3316      _widgets.secureRequest('/ecommerce/cart/delivery/select',function(event){
3317        var json = JSON.parse(event.target.responseText);
3318        _widgets.setCart(json.response);
3319        _widgets.fire('updateCart', json.response || {});
3320      },{token:token});
3321    };
3322    this.setCartPayment = function(id){
3323      _widgets.secureRequest('/ecommerce/cart/payment/select',function(event){
3324        var json = JSON.parse(event.target.responseText);
3325        _widgets.setCart(json.response);
3326        _widgets.fire('updateCart', json.response || {});
3327      },{id: id});
3328    };
3329    this.closeFindShop = function(){
3330      document.documentElement.classList.remove('show-find-shop');
3331      document.documentElement.classList.remove('show-find-store');
3332    }
3333    this.closeFindStore = function(){
3334      document.documentElement.classList.remove('show-find-store');
3335      document.documentElement.classList.remove('show-find-shop');
3336    }
3337    this.closeFindEvent = function(){
3338      document.documentElement.classList.remove('show-find-event');
3339    }
3340    this.findShop = function(query, search){
3341      _widgets.findShop(query, search);
3342    };
3343    this.findStore = function(query, search){
3344      _widgets.findStore(query, search);
3345    };
3346    this.findEvent = function(){
3347      _widgets.findEvent();
3348    };
3349    this.findStoreCurrentPosition = function(item){
3350      _widgets.findStoreCurrentPosition(item);
3351    };
3352    this.getCurrentPosition = function(callback, type){
3353      _widgets.getCurrentPosition(callback, type);
3354    };
3355    this.personalData = function(form){
3356      try{
3357        var send = true;
3358        var formData = _widgets.buildFormData(form, function(element){
3359          if(!_widgets.inputRequired(element)) send = false;
3360        });
3361        if(send){
3362          var _this = this;
3363          _widgets.secureRequestEncoded('/change-data',function(event){
3364            _widgets.syncMe(function(){
3365              if(typeof(swal) == 'function'){
3366                swal({
3367                  title: 'my ubik',
3368                  text: 'I tuoi dati personali sono stati aggiornati.',
3369                  icon: 'success',
3370                }).then(function(ok){
3371                  _this.setAccountTarget();
3372                });
3373              }else{
3374                _this.setAccountTarget();
3375              }
3376            });
3377          }, formData);
3378        }
3379      }catch(e){
3380        _widgets.error(e.toString());
3381      }
3382      return false;
3383    };
3384    this.changePassword = function(form){
3385      try{
3386        var send = true;
3387        var formData = _widgets.buildFormData(form, function(element){
3388          if(!_widgets.inputRequired(element)) send = false;
3389        });
3390        if(send){
3391          var _this = this;
3392          _widgets.secureRequestEncoded('/change-password',function(event){
3393            if(typeof(swal) == 'function'){
3394              swal({
3395                title: 'my ubik',
3396                text: 'I tuoi dati di accesso sono stati aggiornati.',
3397                icon: 'success',
3398              }).then(function(ok){
3399                _this.setAccountTarget();
3400              });
3401            }else{
3402              _this.setAccountTarget();
3403            }
3404          }, formData);
3405        }
3406      }catch(e){
3407        _widgets.error(e.toString());
3408      }
3409      return false;
3410    };
3411    this.signup = function(form){
3412      try{
3413        var send = true;
3414        var formData = _widgets.buildFormData(form, function(element){
3415          if(!_widgets.inputRequired(element)) send = false;
3416        });
3417        if(send){
3418          var _this = this;
3419          _widgets.secureRequestEncoded('/signup',function(event){
3420            var json = JSON.parse(event.target.responseText);
3421            if(json.response.signed){
3422              window.location.reload();
3423            }else if(json.response.action){
3424              _this.setAccountTarget(json.response.action);
3425            }
3426          }, formData);
3427        }
3428      }catch(e){
3429        _widgets.error(e.toString());
3430      }
3431      return false;
3432    };
3433    this.signin = function(form){
3434      try{
3435        var elements = form.elements;
3436        _widgets.secureRequest('/signin',function(event){
3437          var json = JSON.parse(event.target.responseText);
3438          if(json.response.signed){
3439            window.location.reload();
3440          }else if(json.response.action){
3441            if(typeof(swal) == 'function'){
3442              swal({
3443                title: 'my ubik',
3444                text: 'Per accedere prima devi confermare la tua email.',
3445                icon: 'warning',
3446              });
3447            }
3448          }else{
3449            var shake = form.querySelector('.animated-widget');
3450            shake = f(shake);
3451            shake.addClass('shake-widget');
3452            setTimeout(function(){
3453              shake.removeClass('shake-widget');
3454            },1000);
3455          }
3456        }, {email:elements.email.value, password:elements.password.value});
3457      }catch(e){
3458        _widgets.error(e.toString());
3459      }
3460      return false;
3461    }
3462    this.signout = function(){
3463      _widgets.confirm('my ubik','Sei sicuro di voler uscire dal tuo account?', function(ok){
3464        if(ok){
3465          _widgets.secureRequest('/signout',function(event){
3466            var json = JSON.parse(event.target.responseText);
3467            if(json.code == 200){
3468              localStorage.removeItem('userId', null);
3469              window.location.reload();
3470            }
3471          });
3472        }
3473      });
3474    };
3475    this.showPasswordChange = function(){
3476      // var me = _widgets.account.me || {};
3477      // if(me.id){
3478        //   var html = '';
3479        //   html += '<div class="title-widget">Aggiorna la tua password</div>';
3480        //   html += '<div class="description-widget">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce placerat ultrices ultricies. Maecenas volutpat vel augue eu dapibus. In hac habitasse platea dictumst <a>Leggi privacy policy</a></div>';
3481        //   html += '<form onsubmit="return widgets.changePassword(this);" class="form-widget nopad-widget" autocomplete="off">';
3482        //   html += '<input type="hidden" name="id" value="'+me.id+'" />';
3483        //   html += '<div class="field-widget"><label class="label-widget">Password attuale</label><input class="input-widget" type="password" name="oldPassword" placeholder="Inserisci la password attuale" autocomplete="off" data-required /></div>';
3484        //   html += '<div class="field-widget"><label class="label-widget">Nuova Password</label><input class="input-widget" type="password" name="newPassword" placeholder="Inserisci la tua nuova password" autocomplete="off" data-required data-password-validation /></div>';
3485        //   html += '<div class="field-widget"><label class="label-widget">Conferma Nuova Password</label><input class="input-widget" type="password" name="confirmNewPassword" placeholder="Ripeti la tua nuova password" autocomplete="off" data-required /></div>';
3486        //   html += '<div class="text-right-widget">';
3487        //   html += '<button class="swal-button swal-button--confirm">Conferma</button>';
3488        //   html += '</div>';
3489        //   html += '</form>';
3490        //   var content = document.createElement('div');
3491        //   content.classList.add('swal-force-password-changed');
3492        //   content.innerHTML = html;
3493        //   swal({
3494          //     title: '',
3495          //     text: '',
3496          //     content: content,
3497          //     showConfirmButton: false,
3498          //     closeOnEsc: false,
3499          //     closeOnClickOutside: false,
3500          //     buttons:['']
3501        //   });
3502        //   _widgets.setupInputs();
3503      // }
3504    };
3505    this.deleteMe = function(){
3506      if(typeof(swal) == 'function'){
3507        swal({
3508          title: 'my ubik',
3509          text: 'Per eliminare il tuo account, devi confermare inserendo la password',
3510          content: {
3511            element: 'input',
3512            attributes: {
3513              placeholder: 'Inserisci la password',
3514              type: 'password',
3515            }
3516          },
3517          buttons:['Annulla','Continua']
3518        }).then(function(password){
3519          if(password != null){
3520            _widgets.confirm('Conferma','Sei sicuro di voler procedere?', function(ok){
3521              if(ok){
3522                _widgets.secureRequest('/delete-me',function(event){
3523                  window.location.reload();
3524                },{password: password});
3525              }
3526            });
3527          }
3528        });
3529      }
3530    };
3531    this.forgotPassword = function(form){
3532      try{
3533        var elements = form.elements;
3534        var _this = this;
3535        _widgets.secureRequest('/forgot-password',function(event){
3536          var json = JSON.parse(event.target.responseText);
3537          if(json.code == 200){
3538            _this.setAccountTarget('forgotPasswordSuccess');
3539          }else{
3540            var shake = form.querySelector('.animated-widget');
3541            shake = f(shake);
3542            shake.addClass('shake-widget');
3543            setTimeout(function(){
3544              shake.removeClass('shake-widget');
3545            },1000);
3546          }
3547        }, {email:elements.email.value});
3548      }catch(e){
3549      }
3550      return false;
3551    }
3552    this.secureRequest = function(uri, callback, params, mode){
3553      _widgets.secureRequest(uri, callback, params, mode);
3554    };
3555    this.secureRequestEncoded = function(uri, callback, formData, mode){
3556      _widgets.secureRequestEncoded(uri, callback, formData, mode);
3557    };
3558    this._secureRequestEncoded = function(uri, callback, formData, mode){
3559      _widgets._secureRequestEncoded(uri, callback, formData, mode);
3560    };
3561    this.setConnectedAccountTarget = function(target){
3562      _widgets.connectedAccount.target = target;
3563      _widgets.templateUpdateAll('connected-account');
3564      return this;
3565    };
3566    this.setConnectedAccountSchedule = function(payoutsScheduleInterval){
3567      _widgets.connectedAccount.payoutsScheduleInterval = payoutsScheduleInterval;
3568      _widgets.templateUpdateAll('connected-account');
3569      return this;
3570    };
3571    this.setAccountTarget = function(target){
3572      _widgets.account.target = target;
3573      _widgets.templateUpdateAll('signin');
3574      _widgets.templateUpdateAll('signup');
3575      _widgets.templateUpdateAll('cart-checkout');
3576      _widgets.templateUpdateAll('book');
3577      return this;
3578    };
3579    this.getSvg = function(what){
3580      var html = '';
3581      html += '<svg viewBox="0, 0, 24, 24">';
3582      (_widgets.svg[what] || []).forEach(function(path){
3583        if(typeof(path) == 'string'){
3584          html += '<path d="'+path+'" fill="var(--color-gray-1)"/>';
3585        }else{
3586          html += '<path d="'+path.path+'" fill="'+path.fill+'"/>';
3587        }
3588      });
3589      html += '</svg>';
3590      return html;
3591    };
3592    this.showError = function(title, error){
3593      _widgets.error(title,error);
3594    }
3595    this.get = function(key, defaultValue){
3596      return _widgets.get(key, defaultValue);
3597    };
3598    this.getAccountCartSize = function(){
3599      if(_widgets.cart.init){
3600        return this.getCartItemSize();
3601      }
3602      return _widgets.account.cartSize;
3603    }
3604    this.getCartItemSize = function(){
3605      return _widgets.cart.orderItemsSize+_widgets.cart.preOrderItemsSize;
3606    }
3607    this.getStores = function(){
3608      return _widgets.stores;
3609    }
3610    this.getCart = function(){
3611      return _widgets.cart;
3612    };
3613    this.getCartItem = function(id){
3614      var cart = _widgets.cart || {};
3615      var items = cart.items || [];
3616      for(var i=0; i<items.length; i++){
3617        var item = items[i];
3618        if(item.id == id){
3619          return item;
3620        }
3621      }
3622      return null;
3623    }
3624    this.hasPrintOnDemand = function(){
3625      var cart = _widgets.cart || {};
3626      var items = cart.items || [];
3627      for(var i=0; i<items.length; i++){
3628        var item = items[i];
3629        if(item.state == 'PRINT ON DEMAND'){
3630          return true;
3631        }
3632      }
3633      return false;
3634    }
3635    this.hasCartWarning = function(){
3636      var cart = _widgets.cart || {};
3637      var items = cart.items || [];
3638      for(var i=0; i<items.length; i++){
3639        var item = items[i];
3640        if(item.state == 'NON ORDINABILE'){
3641          return true;
3642        }
3643      }
3644      return false;
3645    }
3646    this.getStore = function(id){
3647      var stores = _widgets.allStores || [];
3648      for(var i=0; i<stores.length; i++){
3649        var store = stores[i];
3650        if(store.id == id){
3651          return store;
3652        }
3653      }
3654      return null;
3655    }
3656    this.facebookLogin = function(response){
3657      _widgets.facebookLogin(response);
3658    }
3659    this.googleLogin = function(response){
3660      _widgets.googleLogin(response);
3661    }
3662    this.appleLogin = function(response){
3663      _widgets.appleLogin(response);
3664    }
3665    this.setBook = function(book){
3666      _widgets.setBook(book);
3667    }
3668    this.getBook = function(){
3669      return _widgets.book;
3670    }
3671    this.getDomain = function(){
3672      return _widgets.domain;
3673    }
3674    this.getAccount = function(){
3675      return _widgets.account;
3676    }
3677    this.getOAuth = function(){
3678      return _widgets.oauth;
3679    }
3680    this.getConnectedAccount = function(){
3681      return _widgets.connectedAccount;
3682    }
3683    this.getApiUrl = function(){
3684      return _widgets.apiUrl;
3685    }
3686    this.getSession = function(){
3687      return _widgets.getSession();
3688    }
3689    this.setOAuth = function(json){
3690      _widgets.oauth = json;
3691      return this;
3692    }
3693    this.setUrlPrefix = function(json){
3694      _widgets.urlPrefix = json;
3695      return this;
3696    }
3697    this.setup = function(){
3698      _widgets.setup();
3699    }
3700    this.goToEvent = function(id){
3701      _widgets.fire('goTo',{what:'event',id:id});
3702    }
3703    this.fire = function(what,object){
3704      _widgets.fire(what,object);
3705    }
3706    this.on = function(key, callback){
3707      _widgets.on(key, callback);
3708      return this;
3709    }
3710    this.off = function(key, callback){
3711      _widgets.off(key, callback);
3712      return this;
3713    }
3714  };
3715  window.widgets = new widgets();
3716})();

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.