diff --git a/client/scripts/charts.js b/client/scripts/charts.js deleted file mode 100644 index 653e7cf..0000000 --- a/client/scripts/charts.js +++ /dev/null @@ -1,10 +0,0 @@ -/*! - * Chart.js - * http://chartjs.org/ - * Version: 2.7.3 - * - * Copyright 2018 Chart.js Contributors - * Released under the MIT license - * https://github.com/chartjs/Chart.js/blob/master/LICENSE.md - */ -!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).Chart=t()}}(function(){return function o(r,s,l){function u(e,t){if(!s[e]){if(!r[e]){var i="function"==typeof require&&require;if(!t&&i)return i(e,!0);if(d)return d(e,!0);var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}var a=s[e]={exports:{}};r[e][0].call(a.exports,function(t){return u(r[e][1][t]||t)},a,a.exports,o,r,s,l)}return s[e].exports}for(var d="function"==typeof require&&require,t=0;t');var i=t.data,n=i.datasets,a=i.labels;if(n.length)for(var o=0;o'),a[o]&&e.push(a[o]),e.push("");return e.push(""),e.join("")},legend:{labels:{generateLabels:function(l){var u=l.data;return u.labels.length&&u.datasets.length?u.labels.map(function(t,e){var i=l.getDatasetMeta(0),n=u.datasets[0],a=i.data[e],o=a&&a.custom||{},r=A.valueAtIndexOrDefault,s=l.options.elements.arc;return{text:t,fillStyle:o.backgroundColor?o.backgroundColor:r(n.backgroundColor,e,s.backgroundColor),strokeStyle:o.borderColor?o.borderColor:r(n.borderColor,e,s.borderColor),lineWidth:o.borderWidth?o.borderWidth:r(n.borderWidth,e,s.borderWidth),hidden:isNaN(n.data[e])||i.data[e].hidden,index:e}}):[]}},onClick:function(t,e){var i,n,a,o=e.index,r=this.chart;for(i=0,n=(r.data.datasets||[]).length;i=Math.PI?-1:f<-Math.PI?1:0))+h,p=Math.cos(f),m=Math.sin(f),v=Math.cos(g),b=Math.sin(g),x=f<=0&&0<=g||f<=2*Math.PI&&2*Math.PI<=g,y=f<=.5*Math.PI&&.5*Math.PI<=g||f<=2.5*Math.PI&&2.5*Math.PI<=g,k=f<=-Math.PI&&-Math.PI<=g||f<=Math.PI&&Math.PI<=g,M=f<=.5*-Math.PI&&.5*-Math.PI<=g||f<=1.5*Math.PI&&1.5*Math.PI<=g,w=c/100,C=k?-1:Math.min(p*(p<0?1:w),v*(v<0?1:w)),S=M?-1:Math.min(m*(m<0?1:w),b*(b<0?1:w)),_=x?1:Math.max(p*(0');var i=t.data,n=i.datasets,a=i.labels;if(n.length)for(var o=0;o'),a[o]&&e.push(a[o]),e.push("");return e.push(""),e.join("")},legend:{labels:{generateLabels:function(s){var l=s.data;return l.labels.length&&l.datasets.length?l.labels.map(function(t,e){var i=s.getDatasetMeta(0),n=l.datasets[0],a=i.data[e].custom||{},o=k.valueAtIndexOrDefault,r=s.options.elements.arc;return{text:t,fillStyle:a.backgroundColor?a.backgroundColor:o(n.backgroundColor,e,r.backgroundColor),strokeStyle:a.borderColor?a.borderColor:o(n.borderColor,e,r.borderColor),lineWidth:a.borderWidth?a.borderWidth:o(n.borderWidth,e,r.borderWidth),hidden:isNaN(n.data[e])||i.data[e].hidden,index:e}}):[]}},onClick:function(t,e){var i,n,a,o=e.index,r=this.chart;for(i=0,n=(r.data.datasets||[]).length;i=e.numSteps?(o.callback(e.onAnimationComplete,[e],i),i.animating=!1,n.splice(a,1)):++a}}},{26:26,46:46}],24:[function(t,e,i){"use strict";var s=t(22),l=t(23),c=t(26),h=t(46),a=t(29),o=t(31),f=t(49),g=t(32),p=t(34),n=t(36);e.exports=function(u){function d(t){return"top"===t||"bottom"===t}u.types={},u.instances={},u.controllers={},h.extend(u.prototype,{construct:function(t,e){var i,n,a=this;(n=(i=(i=e)||{}).data=i.data||{}).datasets=n.datasets||[],n.labels=n.labels||[],i.options=h.configMerge(c.global,c[i.type],i.options||{}),e=i;var o=f.acquireContext(t,e),r=o&&o.canvas,s=r&&r.height,l=r&&r.width;a.id=h.uid(),a.ctx=o,a.canvas=r,a.config=e,a.width=l,a.height=s,a.aspectRatio=s?l/s:null,a.options=e.options,a._bufferedRender=!1,(a.chart=a).controller=a,u.instances[a.id]=a,Object.defineProperty(a,"data",{get:function(){return a.config.data},set:function(t){a.config.data=t}}),o&&r?(a.initialize(),a.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var t=this;return g.notify(t,"beforeInit"),h.retinaScale(t,t.options.devicePixelRatio),t.bindEvents(),t.options.responsive&&t.resize(!0),t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t.initToolTip(),g.notify(t,"afterInit"),t},clear:function(){return h.canvas.clear(this),this},stop:function(){return l.cancelAnimation(this),this},resize:function(t){var e=this,i=e.options,n=e.canvas,a=i.maintainAspectRatio&&e.aspectRatio||null,o=Math.max(0,Math.floor(h.getMaximumWidth(n))),r=Math.max(0,Math.floor(a?o/a:h.getMaximumHeight(n)));if((e.width!==o||e.height!==r)&&(n.width=e.width=o,n.height=e.height=r,n.style.width=o+"px",n.style.height=r+"px",h.retinaScale(e,i.devicePixelRatio),!t)){var s={width:o,height:r};g.notify(e,"resize",[s]),e.options.onResize&&e.options.onResize(e,s),e.stop(),e.update({duration:e.options.responsiveAnimationDuration})}},ensureScalesHaveIDs:function(){var t=this.options,e=t.scales||{},i=t.scale;h.each(e.xAxes,function(t,e){t.id=t.id||"x-axis-"+e}),h.each(e.yAxes,function(t,e){t.id=t.id||"y-axis-"+e}),i&&(i.id=i.id||"scale")},buildOrUpdateScales:function(){var r=this,t=r.options,s=r.scales||{},e=[],l=Object.keys(s).reduce(function(t,e){return t[e]=!1,t},{});t.scales&&(e=e.concat((t.scales.xAxes||[]).map(function(t){return{options:t,dtype:"category",dposition:"bottom"}}),(t.scales.yAxes||[]).map(function(t){return{options:t,dtype:"linear",dposition:"left"}}))),t.scale&&e.push({options:t.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"}),h.each(e,function(t){var e=t.options,i=e.id,n=h.valueOrDefault(e.type,t.dtype);d(e.position)!==d(t.dposition)&&(e.position=t.dposition),l[i]=!0;var a=null;if(i in s&&s[i].type===n)(a=s[i]).options=e,a.ctx=r.ctx,a.chart=r;else{var o=p.getScaleConstructor(n);if(!o)return;a=new o({id:i,type:n,options:e,ctx:r.ctx,chart:r}),s[a.id]=a}a.mergeTicksOptions(),t.isDefault&&(r.scale=a)}),h.each(l,function(t,e){t||delete s[e]}),r.scales=s,p.addScalesToLayout(this)},buildOrUpdateControllers:function(){var o=this,r=[],s=[];return h.each(o.data.datasets,function(t,e){var i=o.getDatasetMeta(e),n=t.type||o.config.type;if(i.type&&i.type!==n&&(o.destroyDatasetMeta(e),i=o.getDatasetMeta(e)),i.type=n,r.push(i.type),i.controller)i.controller.updateIndex(e),i.controller.linkScales();else{var a=u.controllers[i.type];if(void 0===a)throw new Error('"'+i.type+'" is not a chart type.');i.controller=new a(o,e),s.push(i.controller)}},o),s},resetElements:function(){var i=this;h.each(i.data.datasets,function(t,e){i.getDatasetMeta(e).controller.reset()},i)},reset:function(){this.resetElements(),this.tooltip.initialize()},update:function(t){var e,i,n=this;if(t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]}),i=(e=n).options,h.each(e.scales,function(t){o.removeBox(e,t)}),i=h.configMerge(u.defaults.global,u.defaults[e.config.type],i),e.options=e.config.options=i,e.ensureScalesHaveIDs(),e.buildOrUpdateScales(),e.tooltip._options=i.tooltips,e.tooltip.initialize(),g._invalidate(n),!1!==g.notify(n,"beforeUpdate")){n.tooltip._data=n.data;var a=n.buildOrUpdateControllers();h.each(n.data.datasets,function(t,e){n.getDatasetMeta(e).controller.buildOrUpdateElements()},n),n.updateLayout(),n.options.animation&&n.options.animation.duration&&h.each(a,function(t){t.reset()}),n.updateDatasets(),n.tooltip.initialize(),n.lastActive=[],g.notify(n,"afterUpdate"),n._bufferedRender?n._bufferedRequest={duration:t.duration,easing:t.easing,lazy:t.lazy}:n.render(t)}},updateLayout:function(){!1!==g.notify(this,"beforeLayout")&&(o.update(this,this.width,this.height),g.notify(this,"afterScaleUpdate"),g.notify(this,"afterLayout"))},updateDatasets:function(){if(!1!==g.notify(this,"beforeDatasetsUpdate")){for(var t=0,e=this.data.datasets.length;t=e[t].length&&e[t].push({}),!e[t][a].type||r.type&&r.type!==e[t][a].type?g.merge(e[t][a],[l.getScaleDefaults(o),r]):g.merge(e[t][a],r)}else g._merger(t,e,i,n)}})},g.where=function(t,e){if(g.isArray(t)&&Array.prototype.filter)return t.filter(e);var i=[];return g.each(t,function(t){e(t)&&i.push(t)}),i},g.findIndex=Array.prototype.findIndex?function(t,e,i){return t.findIndex(e,i)}:function(t,e,i){i=void 0===i?t:i;for(var n=0,a=t.length;n=t.length-1?t[0]:t[e+1]:e>=t.length-1?t[t.length-1]:t[e+1]},g.previousItem=function(t,e,i){return i?e<=0?t[t.length-1]:t[e-1]:e<=0?t[0]:t[e-1]},g.niceNum=function(t,e){var i=Math.floor(g.log10(t)),n=t/Math.pow(10,i);return(e?n<1.5?1:n<3?2:n<7?5:10:n<=1?1:n<=2?2:n<=5?5:10)*Math.pow(10,i)},g.requestAnimFrame="undefined"==typeof window?function(t){t()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){return window.setTimeout(t,1e3/60)},g.getRelativePosition=function(t,e){var i,n,a=t.originalEvent||t,o=t.target||t.srcElement,r=o.getBoundingClientRect(),s=a.touches;n=s&&0i.length){for(var l=0;le&&(e=t.length)}),e},g.color=n?function(t){return t instanceof CanvasGradient&&(t=a.global.defaultColor),n(t)}:function(t){return console.error("Color.js not found!"),t},g.getHoverColor=function(t){return t instanceof CanvasPattern?t:g.color(t).saturate(.5).darken(.1).rgbString()}}},{26:26,3:3,34:34,46:46}],29:[function(t,e,i){"use strict";var n=t(46);function s(t,e){return t.native?{x:t.x,y:t.y}:n.getRelativePosition(t,e)}function l(t,e){var i,n,a,o,r;for(n=0,o=t.data.datasets.length;nt.maxHeight){o--;break}o++,l=r*s}t.labelRotation=o},afterCalculateTickRotation:function(){H.callback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){H.callback(this.options.beforeFit,[this])},fit:function(){var t=this,e=t.minSize={width:0,height:0},i=k(t._ticks),n=t.options,a=n.ticks,o=n.scaleLabel,r=n.gridLines,s=n.display,l=t.isHorizontal(),u=w(a),d=n.gridLines.tickMarkLength;if(e.width=l?t.isFullWidth()?t.maxWidth-t.margins.left-t.margins.right:t.maxWidth:s&&r.drawTicks?d:0,e.height=l?s&&r.drawTicks?d:0:t.maxHeight,o.display&&s){var c=C(o)+H.options.toPadding(o.padding).height;l?e.height+=c:e.width+=c}if(a.display&&s){var h=H.longestText(t.ctx,u.font,i,t.longestTextCache),f=H.numberOfLabelLines(i),g=.5*u.size,p=t.options.ticks.padding;if(l){t.longestLabelWidth=h;var m=H.toRadians(t.labelRotation),v=Math.cos(m),b=Math.sin(m)*h+u.size*f+g*(f-1)+g;e.height=Math.min(t.maxHeight,e.height+b+p),t.ctx.font=u.font;var x=M(t.ctx,i[0],u.font),y=M(t.ctx,i[i.length-1],u.font);0!==t.labelRotation?(t.paddingLeft="bottom"===n.position?v*x+3:v*g+3,t.paddingRight="bottom"===n.position?v*g+3:v*y+3):(t.paddingLeft=x/2+3,t.paddingRight=y/2+3)}else a.mirror?h=0:h+=p+g,e.width=Math.min(t.maxWidth,e.width+h),t.paddingTop=u.size/2,t.paddingBottom=u.size/2}t.handleMargins(),t.width=e.width,t.height=e.height},handleMargins:function(){var t=this;t.margins&&(t.paddingLeft=Math.max(t.paddingLeft-t.margins.left,0),t.paddingTop=Math.max(t.paddingTop-t.margins.top,0),t.paddingRight=Math.max(t.paddingRight-t.margins.right,0),t.paddingBottom=Math.max(t.paddingBottom-t.margins.bottom,0))},afterFit:function(){H.callback(this.options.afterFit,[this])},isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(t){if(H.isNullOrUndef(t))return NaN;if("number"==typeof t&&!isFinite(t))return NaN;if(t)if(this.isHorizontal()){if(void 0!==t.x)return this.getRightValue(t.x)}else if(void 0!==t.y)return this.getRightValue(t.y);return t},getLabelForIndex:H.noop,getPixelForValue:H.noop,getValueForPixel:H.noop,getPixelForTick:function(t){var e=this,i=e.options.offset;if(e.isHorizontal()){var n=(e.width-(e.paddingLeft+e.paddingRight))/Math.max(e._ticks.length-(i?0:1),1),a=n*t+e.paddingLeft;i&&(a+=n/2);var o=e.left+Math.round(a);return o+=e.isFullWidth()?e.margins.left:0}var r=e.height-(e.paddingTop+e.paddingBottom);return e.top+t*(r/(e._ticks.length-1))},getPixelForDecimal:function(t){var e=this;if(e.isHorizontal()){var i=(e.width-(e.paddingLeft+e.paddingRight))*t+e.paddingLeft,n=e.left+Math.round(i);return n+=e.isFullWidth()?e.margins.left:0}return e.top+t*e.height},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var t=this.min,e=this.max;return this.beginAtZero?0:t<0&&e<0?e:0o.width-(o.paddingLeft+o.paddingRight)&&(e=1+Math.floor((c+s.autoSkipPadding)*l/(o.width-(o.paddingLeft+o.paddingRight)))),a&&al.height-e.height&&(c="bottom");var h=(u.left+u.right)/2,f=(u.top+u.bottom)/2;n="center"===c?(i=function(t){return t<=h},function(t){return h=l.width-e.width/2}),a=function(t){return t+e.width+s.caretSize+s.caretPadding>l.width},o=function(t){return t-e.width-s.caretSize-s.caretPadding<0},r=function(t){return t<=f?"top":"bottom"},i(s.x)?(d="left",a(s.x)&&(d="center",c=r(s.y))):n(s.x)&&(d="right",o(s.x)&&(d="center",c=r(s.y)));var g=t._options;return{xAlign:g.xAlign?g.xAlign:d,yAlign:g.yAlign?g.yAlign:c}}(this,I=function(t,e){var i=t._chart.ctx,n=2*e.yPadding,a=0,o=e.body,r=o.reduce(function(t,e){return t+e.before.length+e.lines.length+e.after.length},0);r+=e.beforeBody.length+e.afterBody.length;var s=e.title.length,l=e.footer.length,u=e.titleFontSize,d=e.bodyFontSize,c=e.footerFontSize;n+=s*u,n+=s?(s-1)*e.titleSpacing:0,n+=s?e.titleMarginBottom:0,n+=r*d,n+=r?(r-1)*e.bodySpacing:0,n+=l?e.footerMarginTop:0,n+=l*c,n+=l?(l-1)*e.footerSpacing:0;var h=0,f=function(t){a=Math.max(a,i.measureText(t).width+h)};return i.font=R.fontString(u,e._titleFontStyle,e._titleFontFamily),R.each(e.title,f),i.font=R.fontString(d,e._bodyFontStyle,e._bodyFontFamily),R.each(e.beforeBody.concat(e.afterBody),f),h=e.displayColors?d+2:0,R.each(o,function(t){R.each(t.before,f),R.each(t.lines,f),R.each(t.after,f)}),h=0,i.font=R.fontString(c,e._footerFontStyle,e._footerFontFamily),R.each(e.footer,f),{width:a+=2*e.xPadding,height:n}}(this,C)),n=C,a=I,o=D,r=k._chart,s=n.x,l=n.y,u=n.caretSize,d=n.caretPadding,c=n.cornerRadius,h=o.xAlign,f=o.yAlign,g=u+d,p=c+d,"right"===h?s-=a.width:"center"===h&&((s-=a.width/2)+a.width>r.width&&(s=r.width-a.width),s<0&&(s=0)),"top"===f?l+=g:l-="bottom"===f?a.height+g:a.height/2,"center"===f?"left"===h?s+=g:"right"===h&&(s-=g):"left"===h?s-=p:"right"===h&&(s+=p),P={x:s,y:l}}else C.opacity=0;return C.xAlign=D.xAlign,C.yAlign=D.yAlign,C.x=P.x,C.y=P.y,C.width=I.width,C.height=I.height,C.caretX=A.x,C.caretY=A.y,k._model=C,t&&M.custom&&M.custom.call(k,C),k},drawCaret:function(t,e){var i=this._chart.ctx,n=this._view,a=this.getCaretPosition(t,e,n);i.lineTo(a.x1,a.y1),i.lineTo(a.x2,a.y2),i.lineTo(a.x3,a.y3)},getCaretPosition:function(t,e,i){var n,a,o,r,s,l,u=i.caretSize,d=i.cornerRadius,c=i.xAlign,h=i.yAlign,f=t.x,g=t.y,p=e.width,m=e.height;if("center"===h)s=g+m/2,l="left"===c?(a=(n=f)-u,o=n,r=s+u,s-u):(a=(n=f+p)+u,o=n,r=s-u,s+u);else if(o=(n="left"===c?(a=f+d+u)-u:"right"===c?(a=f+p-d-u)-u:(a=i.caretX)-u,a+u),"top"===h)s=(r=g)-u,l=r;else{s=(r=g+m)+u,l=r;var v=o;o=n,n=v}return{x1:n,x2:a,x3:o,y1:r,y2:s,y3:l}},drawTitle:function(t,e,i,n){var a=e.title;if(a.length){i.textAlign=e._titleAlign,i.textBaseline="top";var o,r,s=e.titleFontSize,l=e.titleSpacing;for(i.fillStyle=h(e.titleFontColor,n),i.font=R.fontString(s,e._titleFontStyle,e._titleFontFamily),o=0,r=a.length;o=i.innerRadius&&o<=i.outerRadius;return l&&u}return!1},getCenterPoint:function(){var t=this._view,e=(t.startAngle+t.endAngle)/2,i=(t.innerRadius+t.outerRadius)/2;return{x:t.x+Math.cos(e)*i,y:t.y+Math.sin(e)*i}},getArea:function(){var t=this._view;return Math.PI*((t.endAngle-t.startAngle)/(2*Math.PI))*(Math.pow(t.outerRadius,2)-Math.pow(t.innerRadius,2))},tooltipPosition:function(){var t=this._view,e=t.startAngle+(t.endAngle-t.startAngle)/2,i=(t.outerRadius-t.innerRadius)/2+t.innerRadius;return{x:t.x+Math.cos(e)*i,y:t.y+Math.sin(e)*i}},draw:function(){var t=this._chart.ctx,e=this._view,i=e.startAngle,n=e.endAngle;t.beginPath(),t.arc(e.x,e.y,e.outerRadius,i,n),t.arc(e.x,e.y,e.innerRadius,n,i,!0),t.closePath(),t.strokeStyle=e.borderColor,t.lineWidth=e.borderWidth,t.fillStyle=e.backgroundColor,t.fill(),t.lineJoin="bevel",e.borderWidth&&t.stroke()}})},{26:26,27:27,46:46}],38:[function(t,e,i){"use strict";var n=t(26),a=t(27),d=t(46),c=n.global;n._set("global",{elements:{line:{tension:.4,backgroundColor:c.defaultColor,borderWidth:3,borderColor:c.defaultColor,borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",capBezierPoints:!0,fill:!0}}}),e.exports=a.extend({draw:function(){var t,e,i,n,a=this._view,o=this._chart.ctx,r=a.spanGaps,s=this._children.slice(),l=c.elements.line,u=-1;for(this._loop&&s.length&&s.push(s[0]),o.save(),o.lineCap=a.borderCapStyle||l.borderCapStyle,o.setLineDash&&o.setLineDash(a.borderDash||l.borderDash),o.lineDashOffset=a.borderDashOffset||l.borderDashOffset,o.lineJoin=a.borderJoinStyle||l.borderJoinStyle,o.lineWidth=a.borderWidth||l.borderWidth,o.strokeStyle=a.borderColor||c.defaultColor,o.beginPath(),u=-1,t=0;t=t.left&&1.01*t.right>=i.x&&i.y>=t.top&&1.01*t.bottom>=i.y)&&(n.strokeStyle=e.borderColor||c,n.lineWidth=d.valueOrDefault(e.borderWidth,u.global.elements.point.borderWidth),n.fillStyle=e.backgroundColor||c,d.canvas.drawPoint(n,a,r,s,l,o))}})},{26:26,27:27,46:46}],40:[function(t,e,i){"use strict";var n=t(26),a=t(27);function l(t){return void 0!==t._view.width}function o(t){var e,i,n,a,o=t._view;if(l(t)){var r=o.width/2;e=o.x-r,i=o.x+r,n=Math.min(o.y,o.base),a=Math.max(o.y,o.base)}else{var s=o.height/2;e=Math.min(o.x,o.base),i=Math.max(o.x,o.base),n=o.y-s,a=o.y+s}return{left:e,top:n,right:i,bottom:a}}n._set("global",{elements:{rectangle:{backgroundColor:n.global.defaultColor,borderColor:n.global.defaultColor,borderSkipped:"bottom",borderWidth:0}}}),e.exports=a.extend({draw:function(){var t,e,i,n,a,o,r,s=this._chart.ctx,l=this._view,u=l.borderWidth;if(r=l.horizontal?(t=l.base,e=l.x,i=l.y-l.height/2,n=l.y+l.height/2,a=t=n.left&&t<=n.right&&e>=n.top&&e<=n.bottom}return i},inLabelRange:function(t,e){if(!this._view)return!1;var i=o(this);return l(this)?t>=i.left&&t<=i.right:e>=i.top&&e<=i.bottom},inXRange:function(t){var e=o(this);return t>=e.left&&t<=e.right},inYRange:function(t){var e=o(this);return t>=e.top&&t<=e.bottom},getCenterPoint:function(){var t,e,i=this._view;return e=l(this)?(t=i.x,(i.y+i.base)/2):(t=(i.x+i.base)/2,i.y),{x:t,y:e}},getArea:function(){var t=this._view;return t.width*Math.abs(t.y-t.base)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y}}})},{26:26,27:27}],41:[function(t,e,i){"use strict";e.exports={},e.exports.Arc=t(37),e.exports.Line=t(38),e.exports.Point=t(39),e.exports.Rectangle=t(40)},{37:37,38:38,39:39,40:40}],42:[function(t,e,i){"use strict";var n=t(43);i=e.exports={clear:function(t){t.ctx.clearRect(0,0,t.width,t.height)},roundedRect:function(t,e,i,n,a,o){if(o){var r=Math.min(o,a/2-1e-7,n/2-1e-7);t.moveTo(e+r,i),t.lineTo(e+n-r,i),t.arcTo(e+n,i,e+n,i+r,r),t.lineTo(e+n,i+a-r),t.arcTo(e+n,i+a,e+n-r,i+a,r),t.lineTo(e+r,i+a),t.arcTo(e,i+a,e,i+a-r,r),t.lineTo(e,i+r),t.arcTo(e,i,e+r,i,r),t.closePath(),t.moveTo(e,i)}else t.rect(e,i,n,a)},drawPoint:function(t,e,i,n,a,o){var r,s,l,u,d,c;if(o=o||0,!e||"object"!=typeof e||"[object HTMLImageElement]"!==(r=e.toString())&&"[object HTMLCanvasElement]"!==r){if(!(isNaN(i)||i<=0)){switch(t.save(),t.translate(n,a),t.rotate(o*Math.PI/180),t.beginPath(),e){default:t.arc(0,0,i,0,2*Math.PI),t.closePath();break;case"triangle":d=(s=3*i/Math.sqrt(3))*Math.sqrt(3)/2,t.moveTo(-s/2,d/3),t.lineTo(s/2,d/3),t.lineTo(0,-2*d/3),t.closePath();break;case"rect":c=1/Math.SQRT2*i,t.rect(-c,-c,2*c,2*c);break;case"rectRounded":var h=i/Math.SQRT2,f=-h,g=-h,p=Math.SQRT2*i;this.roundedRect(t,f,g,p,p,.425*i);break;case"rectRot":c=1/Math.SQRT2*i,t.moveTo(-c,0),t.lineTo(0,c),t.lineTo(c,0),t.lineTo(0,-c),t.closePath();break;case"cross":t.moveTo(0,i),t.lineTo(0,-i),t.moveTo(-i,0),t.lineTo(i,0);break;case"crossRot":l=Math.cos(Math.PI/4)*i,u=Math.sin(Math.PI/4)*i,t.moveTo(-l,-u),t.lineTo(l,u),t.moveTo(-l,u),t.lineTo(l,-u);break;case"star":t.moveTo(0,i),t.lineTo(0,-i),t.moveTo(-i,0),t.lineTo(i,0),l=Math.cos(Math.PI/4)*i,u=Math.sin(Math.PI/4)*i,t.moveTo(-l,-u),t.lineTo(l,u),t.moveTo(-l,u),t.lineTo(l,-u);break;case"line":t.moveTo(-i,0),t.lineTo(i,0);break;case"dash":t.moveTo(0,0),t.lineTo(i,0)}t.fill(),t.stroke(),t.restore()}}else t.drawImage(e,n-e.width/2,a-e.height/2,e.width,e.height)},clipArea:function(t,e){t.save(),t.beginPath(),t.rect(e.left,e.top,e.right-e.left,e.bottom-e.top),t.clip()},unclipArea:function(t){t.restore()},lineTo:function(t,e,i,n){if(i.steppedLine)return"after"===i.steppedLine&&!n||"after"!==i.steppedLine&&n?t.lineTo(e.x,i.y):t.lineTo(i.x,e.y),void t.lineTo(i.x,i.y);i.tension?t.bezierCurveTo(n?e.controlPointPreviousX:e.controlPointNextX,n?e.controlPointPreviousY:e.controlPointNextY,n?i.controlPointNextX:i.controlPointPreviousX,n?i.controlPointNextY:i.controlPointPreviousY,i.x,i.y):t.lineTo(i.x,i.y)}};n.clear=i.clear,n.drawRoundedRectangle=function(t){t.beginPath(),i.roundedRect.apply(i,arguments)}},{43:43}],43:[function(t,e,i){"use strict";var n,d={noop:function(){},uid:(n=0,function(){return n++}),isNullOrUndef:function(t){return null==t},isArray:Array.isArray?Array.isArray:function(t){return"[object Array]"===Object.prototype.toString.call(t)},isObject:function(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)},valueOrDefault:function(t,e){return void 0===t?e:t},valueAtIndexOrDefault:function(t,e,i){return d.valueOrDefault(d.isArray(t)?t[e]:t,i)},callback:function(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)},each:function(t,e,i,n){var a,o,r;if(d.isArray(t))if(o=t.length,n)for(a=o-1;0<=a;a--)e.call(i,t[a],a);else for(a=0;a
';var a=e.childNodes[0],o=e.childNodes[1];e._reset=function(){a.scrollLeft=1e6,a.scrollTop=1e6,o.scrollLeft=1e6,o.scrollTop=1e6};var r=function(){e._reset(),t()};return x(a,"scroll",r.bind(a,"expand")),x(o,"scroll",r.bind(o,"shrink")),e}((o=!(n=function(){if(c.resizer)return t(y("resize",i))}),r=[],function(){r=Array.prototype.slice.call(arguments),a=a||this,o||(o=!0,f.requestAnimFrame.call(window,function(){o=!1,n.apply(a,r)}))}));l=function(){if(c.resizer){var t=e.parentNode;t&&t!==h.parentNode&&t.insertBefore(h,t.firstChild),h._reset()}},u=(s=e)[g]||(s[g]={}),d=u.renderProxy=function(t){t.animationName===v&&l()},f.each(b,function(t){x(s,t,d)}),u.reflow=!!s.offsetParent,s.classList.add(m)}function o(t){var e,i,n,a=t[g]||{},o=a.resizer;delete a.resizer,i=(e=t)[g]||{},(n=i.renderProxy)&&(f.each(b,function(t){r(e,t,n)}),delete i.renderProxy),e.classList.remove(m),o&&o.parentNode&&o.parentNode.removeChild(o)}e.exports={_enabled:"undefined"!=typeof window&&"undefined"!=typeof document,initialize:function(){var t,e,i,n="from{opacity:0.99}to{opacity:1}";e="@-webkit-keyframes "+v+"{"+n+"}@keyframes "+v+"{"+n+"}."+m+"{-webkit-animation:"+v+" 0.001s;animation:"+v+" 0.001s;}",i=(t=this)._style||document.createElement("style"),t._style||(e="/* Chart.js */\n"+e,(t._style=i).setAttribute("type","text/css"),document.getElementsByTagName("head")[0].appendChild(i)),i.appendChild(document.createTextNode(e))},acquireContext:function(t,e){"string"==typeof t?t=document.getElementById(t):t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas);var i=t&&t.getContext&&t.getContext("2d");return i&&i.canvas===t?(function(t,e){var i=t.style,n=t.getAttribute("height"),a=t.getAttribute("width");if(t[g]={initial:{height:n,width:a,style:{display:i.display,height:i.height,width:i.width}}},i.display=i.display||"block",null===a||""===a){var o=l(t,"width");void 0!==o&&(t.width=o)}if(null===n||""===n)if(""===t.style.height)t.height=t.width/(e.options.aspectRatio||2);else{var r=l(t,"height");void 0!==o&&(t.height=r)}}(t,e),i):null},releaseContext:function(t){var i=t.canvas;if(i[g]){var n=i[g].initial;["height","width"].forEach(function(t){var e=n[t];f.isNullOrUndef(e)?i.removeAttribute(t):i.setAttribute(t,e)}),f.each(n.style||{},function(t,e){i.style[e]=t}),i.width=i.width,delete i[g]}},addEventListener:function(o,t,r){var e=o.canvas;if("resize"!==t){var i=r[g]||(r[g]={});x(e,t,(i.proxies||(i.proxies={}))[o.id+"_"+t]=function(t){var e,i,n,a;r((i=o,n=s[(e=t).type]||e.type,a=f.getRelativePosition(e,i),y(n,i,a.x,a.y,e)))})}else a(e,r,o)},removeEventListener:function(t,e,i){var n=t.canvas;if("resize"!==e){var a=((i[g]||{}).proxies||{})[t.id+"_"+e];a&&r(n,e,a)}else o(n)}},f.addEvent=x,f.removeEvent=r},{46:46}],49:[function(t,e,i){"use strict";var n=t(46),a=t(47),o=t(48),r=o._enabled?o:a;e.exports=n.extend({initialize:function(){},acquireContext:function(){},releaseContext:function(){},addEventListener:function(){},removeEventListener:function(){}},r)},{46:46,47:47,48:48}],50:[function(t,e,i){"use strict";e.exports={},e.exports.filler=t(51),e.exports.legend=t(52),e.exports.title=t(53)},{51:51,52:52,53:53}],51:[function(t,e,i){"use strict";var u=t(26),h=t(41),d=t(46);u._set("global",{plugins:{filler:{propagate:!0}}});var f={dataset:function(t){var e=t.fill,i=t.chart,n=i.getDatasetMeta(e),a=n&&i.isDatasetVisible(e)&&n.dataset._children||[],o=a.length||0;return o?function(t,e){return e');for(var i=0;i'),t.data.datasets[i].label&&e.push(t.data.datasets[i].label),e.push("");return e.push(""),e.join("")}});var r=n.extend({initialize:function(t){D.extend(this,t),this.legendHitBoxes=[],this.doughnutMode=!1},beforeUpdate:o,update:function(t,e,i){var n=this;return n.beforeUpdate(),n.maxWidth=t,n.maxHeight=e,n.margins=i,n.beforeSetDimensions(),n.setDimensions(),n.afterSetDimensions(),n.beforeBuildLabels(),n.buildLabels(),n.afterBuildLabels(),n.beforeFit(),n.fit(),n.afterFit(),n.afterUpdate(),n.minSize},afterUpdate:o,beforeSetDimensions:o,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:o,beforeBuildLabels:o,buildLabels:function(){var e=this,i=e.options.labels||{},t=D.callback(i.generateLabels,[e.chart],e)||[];i.filter&&(t=t.filter(function(t){return i.filter(t,e.chart.data)})),e.options.reverse&&t.reverse(),e.legendItems=t},afterBuildLabels:o,beforeFit:o,fit:function(){var n=this,t=n.options,a=t.labels,e=t.display,o=n.ctx,i=_.global,r=D.valueOrDefault,s=r(a.fontSize,i.defaultFontSize),l=r(a.fontStyle,i.defaultFontStyle),u=r(a.fontFamily,i.defaultFontFamily),d=D.fontString(s,l,u),c=n.legendHitBoxes=[],h=n.minSize,f=n.isHorizontal();if(h.height=f?(h.width=n.maxWidth,e?10:0):(h.width=e?10:0,n.maxHeight),e)if(o.font=d,f){var g=n.lineWidths=[0],p=n.legendItems.length?s+a.padding:0;o.textAlign="left",o.textBaseline="top",D.each(n.legendItems,function(t,e){var i=P(a,s)+s/2+o.measureText(t.text).width;g[g.length-1]+i+a.padding>=n.width&&(p+=s+a.padding,g[g.length]=n.left),c[e]={left:0,top:0,width:i,height:s},g[g.length-1]+=i+a.padding}),h.height+=p}else{var m=a.padding,v=n.columnWidths=[],b=a.padding,x=0,y=0,k=s+m;D.each(n.legendItems,function(t,e){var i=P(a,s)+s/2+o.measureText(t.text).width;y+k>h.height&&(b+=x+a.padding,v.push(x),y=x=0),x=Math.max(x,i),y+=k,c[e]={left:0,top:0,width:i,height:s}}),b+=x,v.push(x),h.width+=b}n.width=h.width,n.height=h.height},afterFit:o,isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},draw:function(){var c=this,h=c.options,f=h.labels,g=_.global,p=g.elements.line,m=c.width,v=c.lineWidths;if(h.display){var b,x=c.ctx,y=D.valueOrDefault,t=y(f.fontColor,g.defaultFontColor),k=y(f.fontSize,g.defaultFontSize),e=y(f.fontStyle,g.defaultFontStyle),i=y(f.fontFamily,g.defaultFontFamily),n=D.fontString(k,e,i);x.textAlign="left",x.textBaseline="middle",x.lineWidth=.5,x.strokeStyle=t,x.fillStyle=t,x.font=n;var M=P(f,k),w=c.legendHitBoxes,C=c.isHorizontal();b=C?{x:c.left+(m-v[0])/2,y:c.top+f.padding,line:0}:{x:c.left+f.padding,y:c.top+f.padding,line:0};var S=k+f.padding;D.each(c.legendItems,function(t,e){var i,n,a,o,r,s=x.measureText(t.text).width,l=M+k/2+s,u=b.x,d=b.y;C?m<=u+l&&(d=b.y+=S,b.line++,u=b.x=c.left+(m-v[b.line])/2):d+S>c.bottom&&(u=b.x=u+c.columnWidths[b.line]+f.padding,d=b.y=c.top+f.padding,b.line++),function(t,e,i){if(!(isNaN(M)||M<=0)){x.save(),x.fillStyle=y(i.fillStyle,g.defaultColor),x.lineCap=y(i.lineCap,p.borderCapStyle),x.lineDashOffset=y(i.lineDashOffset,p.borderDashOffset),x.lineJoin=y(i.lineJoin,p.borderJoinStyle),x.lineWidth=y(i.lineWidth,p.borderWidth),x.strokeStyle=y(i.strokeStyle,g.defaultColor);var n=0===y(i.lineWidth,p.borderWidth);if(x.setLineDash&&x.setLineDash(y(i.lineDash,p.borderDash)),h.labels&&h.labels.usePointStyle){var a=k*Math.SQRT2/2,o=a/Math.SQRT2,r=t+o,s=e+o;D.canvas.drawPoint(x,i.pointStyle,a,r,s)}else n||x.strokeRect(t,e,M,k),x.fillRect(t,e,M,k);x.restore()}}(u,d,t),w[e].left=u,w[e].top=d,i=t,n=s,o=M+(a=k/2)+u,r=d+a,x.fillText(i.text,o,r),i.hidden&&(x.beginPath(),x.lineWidth=2,x.moveTo(o,r),x.lineTo(o+n,r),x.stroke()),C?b.x+=l+f.padding:b.y+=S})}},handleEvent:function(t){var e=this,i=e.options,n="mouseup"===t.type?"click":t.type,a=!1;if("mousemove"===n){if(!i.onHover)return}else{if("click"!==n)return;if(!i.onClick)return}var o=t.x,r=t.y;if(o>=e.left&&o<=e.right&&r>=e.top&&r<=e.bottom)for(var s=e.legendHitBoxes,l=0;l=u.left&&o<=u.left+u.width&&r>=u.top&&r<=u.top+u.height){if("click"===n){i.onClick.call(e,t.native,e.legendItems[l]),a=!0;break}if("mousemove"===n){i.onHover.call(e,t.native,e.legendItems[l]),a=!0;break}}}return a}});function s(t,e){var i=new r({ctx:t.ctx,options:e,chart:t});a.configure(t,i,e),a.addBox(t,i),t.legend=i}e.exports={id:"legend",_element:r,beforeInit:function(t){var e=t.options.legend;e&&s(t,e)},beforeUpdate:function(t){var e=t.options.legend,i=t.legend;e?(D.mergeIf(e,_.global.legend),i?(a.configure(t,i,e),i.options=e):s(t,e)):i&&(a.removeBox(t,i),delete t.legend)},afterEvent:function(t,e){var i=t.legend;i&&i.handleEvent(e)}}},{26:26,27:27,31:31,46:46}],53:[function(t,e,i){"use strict";var M=t(26),n=t(27),w=t(46),a=t(31),o=w.noop;M._set("global",{title:{display:!1,fontStyle:"bold",fullWidth:!0,lineHeight:1.2,padding:10,position:"top",text:"",weight:2e3}});var r=n.extend({initialize:function(t){w.extend(this,t),this.legendHitBoxes=[]},beforeUpdate:o,update:function(t,e,i){var n=this;return n.beforeUpdate(),n.maxWidth=t,n.maxHeight=e,n.margins=i,n.beforeSetDimensions(),n.setDimensions(),n.afterSetDimensions(),n.beforeBuildLabels(),n.buildLabels(),n.afterBuildLabels(),n.beforeFit(),n.fit(),n.afterFit(),n.afterUpdate(),n.minSize},afterUpdate:o,beforeSetDimensions:o,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:o,beforeBuildLabels:o,buildLabels:o,afterBuildLabels:o,beforeFit:o,fit:function(){var t=this,e=w.valueOrDefault,i=t.options,n=i.display,a=e(i.fontSize,M.global.defaultFontSize),o=t.minSize,r=w.isArray(i.text)?i.text.length:1,s=w.options.toLineHeight(i.lineHeight,a),l=n?r*s+2*i.padding:0;t.isHorizontal()?(o.width=t.maxWidth,o.height=l):(o.width=l,o.height=t.maxHeight),t.width=o.width,t.height=o.height},afterFit:o,isHorizontal:function(){var t=this.options.position;return"top"===t||"bottom"===t},draw:function(){var t=this,e=t.ctx,i=w.valueOrDefault,n=t.options,a=M.global;if(n.display){var o,r,s,l=i(n.fontSize,a.defaultFontSize),u=i(n.fontStyle,a.defaultFontStyle),d=i(n.fontFamily,a.defaultFontFamily),c=w.fontString(l,u,d),h=w.options.toLineHeight(n.lineHeight,l),f=h/2+n.padding,g=0,p=t.top,m=t.left,v=t.bottom,b=t.right;e.fillStyle=i(n.fontColor,a.defaultFontColor),e.font=c,t.isHorizontal()?(r=m+(b-m)/2,s=p+f,o=b-m):(r="left"===n.position?m+f:b-f,s=p+(v-p)/2,o=v-p,g=Math.PI*("left"===n.position?-.5:.5)),e.save(),e.translate(r,s),e.rotate(g),e.textAlign="center",e.textBaseline="middle";var x=n.text;if(w.isArray(x))for(var y=0,k=0;kr.max&&(r.max=i))})});r.min=isFinite(r.min)&&!isNaN(r.min)?r.min:0,r.max=isFinite(r.max)&&!isNaN(r.max)?r.max:1,this.handleTickRangeOptions()},getTickLimit:function(){var t,e=this.options.ticks;if(this.isHorizontal())t=Math.min(e.maxTicksLimit?e.maxTicksLimit:11,Math.ceil(this.width/50));else{var i=c.valueOrDefault(e.fontSize,n.global.defaultFontSize);t=Math.min(e.maxTicksLimit?e.maxTicksLimit:11,Math.ceil(this.height/(2*i)))}return t},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},getPixelForValue:function(t){var e=this,i=e.start,n=+e.getRightValue(t),a=e.end-i;return e.isHorizontal()?e.left+e.width/a*(n-i):e.bottom-e.height/a*(n-i)},getValueForPixel:function(t){var e=this,i=e.isHorizontal(),n=i?e.width:e.height,a=(i?t-e.left:e.bottom-t)/n;return e.start+(e.end-e.start)*a},getPixelForTick:function(t){return this.getPixelForValue(this.ticksAsNumbers[t])}});a.registerScaleType("linear",i,e)}},{26:26,34:34,35:35,46:46}],56:[function(t,e,i){"use strict";var c=t(46),n=t(33);e.exports=function(t){var e=c.noop;t.LinearScaleBase=n.extend({getRightValue:function(t){return"string"==typeof t?+t:n.prototype.getRightValue.call(this,t)},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;if(e.beginAtZero){var i=c.sign(t.min),n=c.sign(t.max);i<0&&n<0?t.max=0:0=t.max&&(a?t.max=t.min+1:t.min=t.max-1),t.min===t.max&&(t.max++,e.beginAtZero||t.min--)},getTickLimit:e,handleDirectionalChanges:e,buildTicks:function(){var t=this,e=t.options.ticks,i=t.getTickLimit(),n={maxTicks:i=Math.max(2,i),min:e.min,max:e.max,precision:e.precision,stepSize:c.valueOrDefault(e.fixedStepSize,e.stepSize)},a=t.ticks=function(t,e){var i,n,a,o=[];if(t.stepSize&&0r.max&&(r.max=i),0!==i&&(null===r.minNotZero||ir.r&&(r.r=g.end,s.r=h),p.startr.b&&(r.b=p.end,s.b=h)}t.setReductions(o,r,s)}(this):(t=this,e=Math.min(t.height/2,t.width/2),t.drawingArea=Math.round(e),t.setCenterPoint(0,0,0,0))},setReductions:function(t,e,i){var n=e.l/Math.sin(i.l),a=Math.max(e.r-this.width,0)/Math.sin(i.r),o=-e.t/Math.cos(i.t),r=-Math.max(e.b-this.height,0)/Math.cos(i.b);n=s(n),a=s(a),o=s(o),r=s(r),this.drawingArea=Math.min(Math.round(t-(n+a)/2),Math.round(t-(o+r)/2)),this.setCenterPoint(n,a,o,r)},setCenterPoint:function(t,e,i,n){var a=this,o=a.width-e-a.drawingArea,r=t+a.drawingArea,s=i+a.drawingArea,l=a.height-n-a.drawingArea;a.xCenter=Math.round((r+o)/2+a.left),a.yCenter=Math.round((s+l)/2+a.top)},getIndexAngle:function(t){return t*(2*Math.PI/b(this))+(this.chart.options&&this.chart.options.startAngle?this.chart.options.startAngle:0)*Math.PI*2/360},getDistanceFromCenterForValue:function(t){var e=this;if(null===t)return 0;var i=e.drawingArea/(e.max-e.min);return e.options.ticks.reverse?(e.max-t)*i:(t-e.min)*i},getPointPosition:function(t,e){var i=this.getIndexAngle(t)-Math.PI/2;return{x:Math.round(Math.cos(i)*e)+this.xCenter,y:Math.round(Math.sin(i)*e)+this.yCenter}},getPointPositionForValue:function(t,e){return this.getPointPosition(t,this.getDistanceFromCenterForValue(e))},getBasePosition:function(){var t=this.min,e=this.max;return this.getPointPositionForValue(0,this.beginAtZero?0:t<0&&e<0?e:0>1)-1]||null,o=t[n],!a)return{lo:null,hi:o};if(o[e]i))return{lo:a,hi:o};s=n-1}}return{lo:o,hi:null}}(t,e,i),o=a.lo?a.hi?a.lo:t[t.length-2]:t[0],r=a.lo?a.hi?a.hi:t[t.length-1]:t[1],s=r[e]-o[e],l=s?(i-o[e])/s:0,u=(r[n]-o[n])*l;return o[n]+u}function C(t,e){var i=e.parser,n=e.parser||e.format;return"function"==typeof i?i(t):"string"==typeof t&&"string"==typeof n?x(t,n):(t instanceof x||(t=x(t)),t.isValid()?t:"function"==typeof n?n(t):t)}function S(t,e){if(m.isNullOrUndef(t))return null;var i=e.options.time,n=C(e.getRightValue(t),i);return n.isValid()?(i.round&&n.startOf(i.round),n.valueOf()):null}function _(t){for(var e=k.indexOf(t)+1,i=k.length;e=k.indexOf(e);a--)if(o=k[a],y[o].common&&r.as(o)>=t.length)return o;return k[e?k.indexOf(e):0]}(b,m.minUnit,h.min,h.max),h._majorUnit=_(h._unit),h._table=function(t,e,i,n){if("linear"===n||!t.length)return[{time:e,pos:0},{time:i,pos:1}];var a,o,r,s,l,u=[],d=[e];for(a=0,o=t.length;a= 0); //250 - var passed_header2 = ($(this).scrollTop() >= 150); //250 - var footer_reached = ($(this).scrollTop() >= (total_scroll_height - ($(window).height() + 300 ))); - - if (inside_header === true) { - hide_back_to_top_badge(); - hide_scroll_ad(); - $('.header-auto-show').removeClass('header-active'); - - } - else if(passed_header === true){ - show_back_to_top_badge(); - show_scroll_ad(); - $('.header-auto-show').addClass('header-active'); - } - if (footer_reached == true){ - hide_back_to_top_badge(); - hide_scroll_ad(); - } - }); - - //Tabs// - var tab = $('.tab-controls'); - function activate_tabs(){ - var tabTrigger = $('.tab-controls a'); - tab.each(function(){ - var tabItems = $(this).parent().find('.tab-controls').data('tab-items'); - var tabWidth = $(this).width(); - var tabActive = $(this).find('a[data-tab-active]'); - var tabID = $('#'+tabActive.data('tab')); - var tabBg = $(this).data('tab-active'); - $(this).find('a[data-tab]').css("width", (100/tabItems)+'%'); - tabActive.addClass(tabBg); - tabActive.addClass('color-white'); - tabID.slideDown(0); - }); - tabTrigger.on('click',function(){ - var tabData = $(this).data('tab'); - var tabID = $('#'+tabData); - var tabContent = $(this).parent().parent().find('.tab-content'); - var tabContent = $(this).parent().parent().parent().find('.tab-content'); - var tabOrder = $(this).data('tab-order'); - var tabBg = $(this).parent().parent().find('.tab-controls').data('tab-active'); - $(this).parent().find(tabTrigger).removeClass(tabBg).removeClass('color-white'); - $(this).addClass(tabBg).addClass('color-white'); - $(this).parent().find('a').removeClass('no-click'); - $(this).addClass('no-click'); - tabContent.slideUp(250); - tabID.slideDown(250); - }); - } - if(tab.length){activate_tabs()} - - //Text Resizer - $(".text-size-increase").click(function() {$(".text-size-changer *").css("font-size","+=1");}); - $(".text-size-decrease").click(function() {$(".text-size-changer *").css("font-size","-=1");}); - $(".text-size-default").click(function() {$(".text-size-changer *").css("font-size", "");}); - - //Search Menu Functions - function search_menu(){ - $('[data-search]').on('keyup', function() { - var searchVal = $(this).val(); - if (searchVal != '') { - $('.search-header a').removeClass('disabled'); - $('.search-trending').addClass('disabled'); - $('.search-results').removeClass('disabled-search-list'); - $('[data-filter-item]').addClass('disabled-search-item'); - $('[data-filter-item][data-filter-name*="' + searchVal.toLowerCase() + '"]').removeClass('disabled-search-item'); - } else { - $('.search-header a').removeClass('disabled'); - $('.search-trending').removeClass('disabled'); - $('.search-results').addClass('disabled-search-list'); - $('[data-filter-item]').removeClass('disabled-search-item'); - } - - var search_results_error = $('.search-no-results'); - var search_results_active = $('.search-results').find('.search-result-list.disabled-search-item'); - if (search_results_active.length) {search_results_error.removeClass('disabled');}else{search_results_error.addClass('disabled');} - }); - return false; - } - search_menu(); - //Menu Search Values// - $('.search-trending a').on('click',function(){ - var e = jQuery.Event("keydown"); - e.which = 32 - $('.search-trending').addClass('disabled'); - var search_value = $(this).find('span').text().toLowerCase(); - $('.search-header a').removeClass('disabled'); - $('.search-header input').val(search_value); - $('.search-results').removeClass('disabled-search-list'); - $('[data-filter-item]').addClass('disabled-search-item'); - $('[data-filter-item][data-filter-name*="' + search_value.toLowerCase() + '"]').removeClass('disabled-search-item'); - $('.menu-search-trending').addClass('disabled-search-item'); - return false; - }); - - $('.search-header a').on('click',function(){ - $('.search-trending').removeClass('disabled'); - $('.menu-search-trending').removeClass('disabled-search-item'); - $('.search-results').addClass('disabled-search-list'); - $('.search-header input').val(''); - $(this).addClass('disabled'); - return false; - }); - - //Owl Carousel Sliders - setTimeout(function(){ - $('.user-slider').owlCarousel({loop:false, margin:20, nav:false, lazyLoad:true, items:1, autoplay: false, dots:false, autoplayTimeout:4000}); - $('.single-slider').owlCarousel({loop:true, margin:20, nav:false, lazyLoad:true, items:1, autoplay: true, autoplayTimeout:4000}); - $('.cover-slider').owlCarousel({loop:true, margin:0, nav:false, lazyLoad:true, items:1, autoplay: true, autoplayTimeout:6000}); - $('.double-slider').owlCarousel({loop:true, margin:20, nav:false, lazyLoad:false, items:2, autoplay: true, autoplayTimeout:4000}); - $('.task-slider').owlCarousel({loop:true, margin:20, nav:false, stagePadding:50, lazyLoad:true, items:2, autoplay: false, autoplayTimeout:4000}); - $('.next-slide, .next-slide-arrow, .next-slide-text, .cover-next').on('click',function(){$(this).parent().find('.owl-carousel').trigger('next.owl.carousel');}); - $('.prev-slide, .prev-slide-arrow, .prev-slide-text, .cover-prev').on('click',function(){$(this).parent().find('.owl-carousel').trigger('prev.owl.carousel');}); - $('.next-slide-user').on('click',function(){$(this).closest('.owl-carousel').trigger('next.owl.carousel');}); - $('.prev-slide-user').on('click',function(){$(this).closest('.owl-carousel').trigger('prev.owl.carousel');}); - },10); - setTimeout(function(){ - $('.owl-prev, .owl-next').addClass('bg-highlight'); - }) - //Detect Mobile OS// var isMobile = { Android: function() {return navigator.userAgent.match(/Android/i);}, @@ -466,18 +314,6 @@ eraseCookie('sticky_dark_mode'); $('#'+thisData).toast('hide'); }); - //Tooltips - $(function () { - $('[data-toggle="tooltip"]').tooltip() - }) - - //Cancel Collapse Jump on Click - if($('[data-toggle="collapse"]').length){ - $('[data-toggle="collapse"]').on('click',function(e){ - e.preventDefault(); - }); - } - //Switches $('.ios-input, .android-input, .classic-input').on('click',function(){ @@ -499,59 +335,6 @@ eraseCookie('sticky_dark_mode'); } }) - //Working Hours - var businessHours = $('.business-hours'); - function activate_business_hours(){ - if(businessHours.length){ - var getTime = new Date(Date.now()); - var getDay = 'day-' + (new Date().toLocaleDateString('en', {weekday:'long'})).toLowerCase(); - var timeNow = getTime.getHours() + ":" + getTime.getMinutes(); - var currentWorkDay = $('.'+getDay); - var closedMessage = businessHours.data('closed-message').toString(); - var closedMessageUnder = businessHours.data('closed-message-under').toString(); - var openedMessage = businessHours.data('opened-message').toString(); - var openedMessageUnder = businessHours.data('opened-message-under').toString(); - - var mondayOpen = $('[data-monday]').data('open'); - var mondayClose = $('[data-monday]').data('close'); - var mondayTime = "'Monday' : ['"+mondayOpen+"','"+mondayClose+"']," - - - $('.business-hours').openingTimes({ - //SET OPENING HOURS BELOW - openingTimes: { - 'Monday' : ['08:00' ,'17:00' ], - 'Tuesday' : ['08:00' ,'17:30' ], - 'Wednesday' : ['08:00' ,'17:00' ], - 'Thursday' : ['08:00' ,'17:00' ], - 'Friday' : ['09:00' ,'18:55' ], - 'Saturday' : ['09:00' ,'12:00' ] - //Sunday removed, that means it's closed. - }, - openClass:"bg-green1-dark is-business-opened", - closedClass:"bg-red2-dark is-business-closed" - }); - if(businessHours.hasClass('is-business-opened')){ - $('.show-business-opened').removeClass('disabled'); - $('.show-business-closed').addClass('disabled'); - businessHours.find('h1').html(openedMessage); - businessHours.find('p').html(openedMessageUnder); - businessHours.find('#business-hours-mail').remove(); - currentWorkDay.addClass('bg-green1-dark'); - } else { - $('.show-business-opened').addClass('disabled'); - $('.show-business-closed').removeClass('disabled'); - businessHours.find('h1').html(closedMessage); - businessHours.find('p').html(closedMessageUnder); - businessHours.find('#business-hours-call').remove(); - currentWorkDay.addClass('bg-red2-dark'); - } - - currentWorkDay.find('p').addClass('color-white'); - }; - } - if(businessHours.length){activate_business_hours()} - //Adding added-to-homescreen class to be targeted when used as PWA. function ath(){ (function(a, b, c) { @@ -577,319 +360,6 @@ eraseCookie('sticky_dark_mode'); $('.simulate-android-banner').on('click',function(){$('#menu-install-pwa-android, .menu-hider').addClass('menu-active')}) $('.simulate-ios-banner').on('click',function(){$('#menu-install-pwa-ios, .menu-hider').addClass('menu-active')}) - //Extending Card Features - function card_extender(){ - /*Set Page Content to Min 100vh*/ - if($('.is-on-homescreen').length){ - var windowHeight = screen.height; - $('.page-content, #page').css('min-height', windowHeight); - } - if(!$('.is-on-homescreen').length){ - var windowHeight = window.innerHeight - $('.page-content, #page').css('min-height', windowHeight); - } - - $('[data-card-height]').each(function(){ - var cardHeight = $(this).data('card-height'); - var headerHeight = $('.header').height(); - var footerHeight = $('#footer-bar').height(); - $(this).css('height', cardHeight); - if(cardHeight == "cover"){ - if(header.length && menuFooter.length){ - $(this).css('height', windowHeight -headerHeight - footerHeight) - $('.map-full, .map-full iframe').css('height', windowHeight - headerHeight - footerHeight +14) - } else { - $(this).css('height', windowHeight) - $('.map-full, .map-full iframe').css('height', windowHeight) - } - } - }); - } - card_extender(); - - $(window).resize(function(){ - card_extender(); - }); - - //Show Map - $('.show-map, .hide-map').on('click',function(){ - $('.map-full .caption').toggleClass('deactivate-map'); - $('.map-but-1, .map-but-2').toggleClass('deactivate-map'); - $('.map-full .hide-map').toggleClass('activate-map'); - }); - - - //Card Hovers - $('.card-scale').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('img').toggleClass('card-scale-image');}); - $('.card-grayscale').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('img').toggleClass('card-grayscale-image');}); - $('.card-rotate').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('img').toggleClass('card-rotate-image');}); - $('.card-blur').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('img').toggleClass('card-blur-image');}); - $('.card-hide').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('.card-center, .card-bottom, .card-top, .card-overlay').toggleClass('card-hide-image');}); - - - //Reading Time - $('#reading-progress-text').each(function(i) { - var readingWords = $(this).text().split(' ').length; - var readingMinutes = Math.floor(readingWords / 250); - var readingSeconds = readingWords % 60 - $('.reading-progress-words').append(readingWords); - $('.reading-progress-time').append(readingMinutes + ':' + readingSeconds); - }); - - //Timed Ads - if($('[data-auto-show-ad]').length){ - var time = $('[data-auto-show-ad]').data('auto-show-ad'); - setTimeout(function(){ - $('[data-auto-show-ad]').trigger('click'); - },time*1000); - } - $('[data-timed-ad]').on('click', function(){ - var counter = $(this).data('timed-ad'); - var adwin = $('#'+$(this).data('menu')); - menuHider.addClass('no-click'); - adwin.find('.ad-time-close').addClass('no-click'); - adwin.find('.ad-time-close i').addClass('disabled'); - adwin.find('.ad-time-close span').removeClass('disabled'); - - var interval = setInterval(function() { - counter--; - // Display 'counter' wherever you want to display it. - if (counter <= 0) { - menuHider.removeClass('no-click'); - adwin.find('.ad-time-close').removeClass('no-click'); - adwin.find('.ad-time-close i').removeClass('disabled'); - adwin.find('.ad-time-close span').addClass('disabled'); - clearInterval(interval); - return; - }else{ - adwin.find('.ad-time-close span').html(counter); - } - }, 1000); - }); - - //Countdown - function countdown(dateEnd) { - var timer, years, days, hours, minutes, seconds; - dateEnd = new Date(dateEnd); - dateEnd = dateEnd.getTime(); - if (isNaN(dateEnd)) {return;} - timer = setInterval(calculate, 1); - function calculate() { - var dateStart = new Date(); - var dateStart = new Date(dateStart.getUTCFullYear(), dateStart.getUTCMonth(), dateStart.getUTCDate(), dateStart.getUTCHours(), dateStart.getUTCMinutes(), dateStart.getUTCSeconds()); - var timeRemaining = parseInt((dateEnd - dateStart.getTime()) / 1000) - if (timeRemaining >= 0) { - years = parseInt(timeRemaining / 31536000); - timeRemaining = (timeRemaining % 31536000); - days = parseInt(timeRemaining / 86400); - timeRemaining = (timeRemaining % 86400); - hours = parseInt(timeRemaining / 3600); - timeRemaining = (timeRemaining % 3600); - minutes = parseInt(timeRemaining / 60); - timeRemaining = (timeRemaining % 60); - seconds = parseInt(timeRemaining); - if ($('.countdown').length) { - $(".countdown #years")[0].innerHTML = parseInt(years, 10); - $(".countdown #days")[0].innerHTML = parseInt(days, 10); - $(".countdown #hours")[0].innerHTML = ("0" + hours).slice(-2); - $(".countdown #minutes")[0].innerHTML = ("0" + minutes).slice(-2); - $(".countdown #seconds")[0].innerHTML = ("0" + seconds).slice(-2); - } - } else {return;} - } - - function display(days, hours, minutes, seconds) {} - } - countdown('01/19/2030 03:14:07 AM'); - - //Accordion Icons - $('.accordion-btn').on('click',function(){ - $(this).addClass('no-click'); - $('.accordion-icon').removeClass('rotate-180'); - if($(this).attr("aria-expanded") == "true"){ - $(this).parent().find('.accordion-icon').removeClass('rotate-180'); - } else { - $(this).parent().find('.accordion-icon').addClass('rotate-180'); - } - setTimeout(function(){$('.accordion-btn').removeClass('no-click');},250); - }) - - //Caption Hovers - $('.caption-scale').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('img').toggleClass('caption-scale-image');}); - $('.caption-grayscale').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('img').toggleClass('caption-grayscale-image');}); - $('.caption-rotate').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('img').toggleClass('caption-rotate-image');}); - $('.caption-blur').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('img').toggleClass('caption-blur-image');}); - $('.caption-hide').unbind().bind('mouseenter mouseleave touchstart touchend',function(){$(this).find('.caption-center, .caption-bottom, .caption-top, .caption-overlay').toggleClass('caption-hide-image');}); - - //File Upload - var uploadFile = $('.upload-file'); - function activate_upload_file(){ - function readURL(input) { - if (input.files && input.files[0]) { - var reader = new FileReader(); - reader.onload = function(e) { - $('.file-data img').attr('src', e.target.result); - $('.file-data img').attr('class','img-fluid rounded-xs mt-4'); - } - reader.readAsDataURL(input.files[0]); - } - } - $(".upload-file").change(function(e) { - readURL(this); - var fileName = e.target.files[0].name; - $('.upload-file-data').removeClass('disabled'); - $('.upload-file-name').html(e.target.files[0].name) - $('.upload-file-modified').html(e.target.files[0].lastModifiedDate); - $('.upload-file-size').html(e.target.files[0].size/1000+'kb') - $('.upload-file-type').html(e.target.files[0].type) - }); - }; - if(uploadFile.length){activate_upload_file();} - - //Task List Check on Click - var todo = $('.todo-list'); - function activate_todo_list(){ - $('.todo-list a').each(function(){ - if($(this).find('.todo-icon').hasClass('far fa-square')){$(this).removeClass('opacity-70');} else {$(this).addClass('opacity-70');} - }) - $('.todo-list a').on('click',function(){ - $(this).find('.todo-icon').toggleClass('far fa-square fa fa-check-square color-green1-dark'); - if($(this).find('.todo-icon').hasClass('far fa-square')){$(this).removeClass('opacity-70');} else {$(this).addClass('opacity-70');} - }) - } - if(todo.length){activate_todo_list();} - - //Age Verification - var checkAge = $('.check-age'); - function activate_age_checker(){ - log('active'); - $(".check-age").on('click',function(){ - var dateBirghtDay = $("#date-birth-day").val(); - var dateBirthMonth = $("#date-birth-month").val(); - var dateBirthYear = $("#date-birth-year").val(); - var age = 18; - var mydate = new Date(); - mydate.setFullYear(dateBirthYear, dateBirthMonth-1, dateBirghtDay); - - var currdate = new Date(); - var setDate = new Date(); - setDate.setFullYear(mydate.getFullYear() + age, dateBirthMonth-1, dateBirghtDay); - - if ((currdate - setDate) > 0){ - log("above 18"); - $('#menu-age').removeClass('menu-active') - $('#menu-age-okay').addClass('menu-active'); - }else{ - $('#menu-age').removeClass('menu-active') - $('#menu-age-fail').addClass('menu-active'); - } - return true; - }); - } - if(checkAge.length){activate_age_checker();} - - - //Geolocation - var geoLocation = $('.get-location'); - function activate_geolocation(){ - if ("geolocation" in navigator) { - $('.location-support').html('Your browser and device support Geolocation.'); - } else { - $('.location-support').html('Your browser and device support Geolocation.'); - } - function geoLocate() { - const locationCoordinates = document.querySelector('.location-coordinates'); - function success(position) { - const latitude = position.coords.latitude; - const longitude = position.coords.longitude; - locationCoordinates.innerHTML = 'Longitude: ' + longitude + '
Latitude: '+ latitude; - - var mapL1 = 'http://maps.google.com/maps?q='; - var mapL2 = latitude+','; - var mapL3 = longitude; - var mapL4 = '&z=18&t=h&output=embed' - var mapL5 = '&z=18&t=h' - var mapLinkEmbed = mapL1 + mapL2 + mapL3 + mapL4; - var mapLinkAddress = mapL1 + mapL2 + mapL3 + mapL5; - - $('.location-map').after('
'); - $('.location-map').parent().after(' View on Google Maps'); - } - function error() { - locationCoordinates.textContent = 'Unable to retrieve your location'; - } - if (!navigator.geolocation) { - locationCoordinates.textContent = 'Geolocation is not supported by your browser'; - } else { - locationCoordinates.textContent = 'Locating'; - navigator.geolocation.getCurrentPosition(success, error); - } - } - $('.get-location').on('click',function(){ - $(this).addClass('disabled'); - geoLocate(); - }); - }; - if(geoLocation.length){activate_geolocation();} - - var emailValidator = /^[A-Z0-9._%+-]+@([A-Z0-9-]+\.)+[A-Z]{2,4}$/i; - var phoneValidator = /^((\+[1-9]{1,4}[ \-]*)|(\([0-9]{2,3}\)[ \-]*)|([0-9]{2,4})[ \-]*)*?[0-9]{3,4}?[ \-]*[0-9]{3,4}?$/; - var nameValidator = /[A-Za-z]{2}[A-Za-z]*[ ]?[A-Za-z]*/; - var passwordValidator = /[A-Za-z]{2}[A-Za-z]*[ ]?[A-Za-z]*/; - var urlValidator = /^(http|https)?:\/\/[a-zA-Z0-9-\.]+\.[a-z]{2,4}/; - var textareaValidator = /[A-Za-z]{2}[A-Za-z]*[ ]?[A-Za-z]*/; - var validIcon = ""; - var invalidIcon = ""; - - $('.input-required input, .input-required select, .input-required textarea').on('focusin keyup',function(){ - var spanValue = $(this).parent().find('span').text(); - if($(this).val() != spanValue && $(this).val() != ""){ - $(this).parent().find('span').addClass('input-style-1-active').removeClass('input-style-1-inactive'); - } - if($(this).val() === ""){ - $(this).parent().find('span').removeClass('input-style-1-inactive input-style-1-active'); - } - }); - $('.input-required input, .input-required select, .input-required textarea').on('focusout',function(){ - var spanValue = $(this).parent().find('span').text(); - if($(this).val() === ""){ - $(this).parent().find('span').removeClass('input-style-1-inactive input-style-1-active'); - } - $(this).parent().find('span').addClass('input-style-1-inactive') - }); - $('.input-required select').on('focusout',function(){ - var getValue = $(this)[0].value; - if(getValue === "default"){ - $(this).parent().find('em').html(invalidIcon) - $(this).parent().find('span').removeClass('input-style-1-inactive input-style-1-active'); - } - if(getValue != "default"){ - $(this).parent().find('em').html(validIcon) - } - }); - $('.input-required input[type="email"]').on('focusout',function(){if (emailValidator.test($(this).val())){$(this).parent().find('em').html(validIcon);}else{if($(this).val() === ""){$(this).parent().find('em').html("(required)");}else{$(this).parent().find('em').html(invalidIcon);}}}); - $('.input-required input[type="tel"]').on('focusout',function(){if (phoneValidator.test($(this).val())){$(this).parent().find('em').html(validIcon);}else{if($(this).val() === ""){$(this).parent().find('em').html("(required)");}else{$(this).parent().find('em').html(invalidIcon);}}}); - $('.input-required input[type="password"]').on('focusout',function(){if (passwordValidator.test($(this).val())){$(this).parent().find('em').html(validIcon);}else{if($(this).val() === ""){$(this).parent().find('em').html("(required)");}else{$(this).parent().find('em').html(invalidIcon);}}}); - $('.input-required input[type="url"]').on('focusout',function(){if (urlValidator.test($(this).val())){$(this).parent().find('em').html(validIcon);}else{if($(this).val() === ""){$(this).parent().find('em').html("(required)");}else{$(this).parent().find('em').html(invalidIcon);}}}); - $('.input-required input[type="name"]').on('focusout',function(){if (nameValidator.test($(this).val())){$(this).parent().find('em').html(validIcon);}else{if($(this).val() === ""){$(this).parent().find('em').html("(required)");}else{$(this).parent().find('em').html(invalidIcon);}}}); - $('.input-required textarea').on('focusout',function(){if (textareaValidator.test($(this).val())){$(this).parent().find('em').html(validIcon);}else{if($(this).val() === ""){$(this).parent().find('em').html("(required)");}else{$(this).parent().find('em').html(invalidIcon);}}}); - - //Set Today Date to Date Inputs - Date.prototype.toDateInputValue = (function() { - var local = new Date(this); - local.setMinutes(this.getMinutes() - this.getTimezoneOffset()); - return local.toJSON().slice(0,10); - }); - $('input[type="date"]').val(new Date().toDateInputValue()); - - //Set Today Date to Date Inputs - Date.prototype.toDateInputValue = (function() { - var local = new Date(this); - local.setMinutes(this.getMinutes() - this.getTimezoneOffset()); - return local.toJSON().slice(0,10); - }); - $('input[type="date"]').val(new Date().toDateInputValue()); - //Adding Offline Alerts var offlineAlerts = $('.offline-message'); if(!offlineAlerts.length){ @@ -911,9 +381,6 @@ eraseCookie('sticky_dark_mode'); setTimeout(function(){$('.online-message').removeClass('online-message-active');},2000); } - $('.simulate-offline').on('click',function(){isOffline();}) - $('.simulate-online').on('click',function(){isOnline();}) - //Check if Online / Offline function updateOnlineStatus(event) { var condition = navigator.onLine ? "online" : "offline"; @@ -927,41 +394,6 @@ eraseCookie('sticky_dark_mode'); window.addEventListener('online', updateOnlineStatus); window.addEventListener('offline', updateOfflineStatus); - //QR Generator - var generateQR = $('.generate-qr-result, .generate-qr-auto'); - function activate_qr_generator(){ - //QR Code Generator - var qr_auto_link = window.location.href; - var qr_api_address = 'https://api.qrserver.com/v1/create-qr-code/?size=200x200&data='; - - $('.generate-qr-auto').attr('src', qr_api_address+qr_auto_link) - $('.generate-qr-button').on('click',function(){ - if($(this).parent().find('.fa').hasClass('fa-exclamation-triangle')){ - log('Invalid URL'); - } else { - var get_qr_url = $('.generate-qr-input').val(); - if(!get_qr_url == ''){ - $('.generate-qr-result').empty(); - setTimeout(function(){ - $('.generate-qr-result').append('img

'+get_qr_url+'

') - },30); - } - } - }); - } - if(generateQR.length){activate_qr_generator();} - - //Vibrate Buttons - var vibrateButton = $('[data-vibrate]'); - function activate_vibration(){ - $('[data-vibrate]').on('click',function(){var vibrateTime = $(this).data('vibrate'); window.navigator.vibrate(vibrateTime);}); - $('.start-vibrating').on('click',function(){var vibrateTimeInput = $('.vibrate-demo').val(); window.navigator.vibrate(vibrateTimeInput);}) - $('.stop-vibrating').on('click',function(){window.navigator.vibrate(0); $('.vibrate-demo').val(''); }); - } - if(vibrateButton.length){ - activate_vibration(); - } - //Sharing var share_link = window.location.href; var share_title = document.title; @@ -977,299 +409,6 @@ eraseCookie('sticky_dark_mode'); var preloadImages = $('.preload-img'); $(function() {preloadImages.lazyload({threshold : 500});}); - //LightBox - $('[data-lightbox]').addClass('default-link'); - lightbox.option({alwaysShowNavOnTouchDevices:true, 'resizeDuration': 200, 'wrapAround': false}) - $('#lightbox').hammer().on("swipe", function (event) { - if (event.gesture.direction === 4) { - $('#lightbox a.lb-prev').trigger('click'); - } else if (event.gesture.direction === 2) { - $('#lightbox a.lb-next').trigger('click'); - } - }); - - //Filterable - if($('.gallery-filter').length > 0){$('.gallery-filter').filterizr(); $('.gallery-filter-active').addClass('color-highlight');} - $('.gallery-filter-controls li').on('click',function(){ - $('.gallery-filter-controls li').removeClass('gallery-filter-active color-highlight'); - $(this).addClass('gallery-filter-active color-highlight'); - }); - - //Gallery Views // Added in 2.0 - var galleryViews = $('.gallery-views'); - var galleryViewControls = $('.gallery-view-controls a'); - var galleryView1 = $('.gallery-view-1-activate'); - var galleryView2 = $('.gallery-view-2-activate'); - var galleryView3 = $('.gallery-view-3-activate'); - - galleryView1.on('click',function(){ - galleryViewControls.removeClass('color-highlight'); - $(this).addClass('color-highlight'); - galleryViews.removeClass().addClass('gallery-views gallery-view-1'); - }); - galleryView2.on('click',function(){ - galleryViewControls.removeClass('color-highlight'); - $(this).addClass('color-highlight'); - galleryViews.removeClass().addClass('gallery-views gallery-view-2'); - }); - galleryView3.on('click',function(){ - galleryViewControls.removeClass('color-highlight'); - $(this).addClass('color-highlight'); - galleryViews.removeClass().addClass('gallery-views gallery-view-3'); - }); - - - //Search - var search = $('[data-search]'); - function activate_search(){ - search.on('keyup', function() { - var searchVal = $(this).val(); - var filterItems = $(this).parent().parent().find('[data-filter-item]'); - if ( searchVal != '' ) { - $('.search-results').removeClass('disabled-search-list'); - $('[data-filter-item]').addClass('disabled-search'); - $('[data-filter-item][data-filter-name*="' + searchVal.toLowerCase() + '"]').removeClass('disabled-search'); - } else { - $('.search-results').addClass('disabled-search-list'); - $('[data-filter-item]').removeClass('disabled-search'); - } - }); - } - if(search.length){activate_search();} - - //Contact Form - var formSubmitted = "false"; - jQuery(document).ready(function(e) { - function t(t, n) { - formSubmitted = "true"; - var r = e("#" + t).serialize(); - e.post(e("#" + t).attr("action"), r, function(n) { - e("#" + t).addClass('disabled'); - $('.contact-form').addClass('disabled'); - e(".formSuccessMessageWrap").fadeIn(500) - }) - } - function n(n, r) { - e(".formValidationError").hide(); - e(".fieldHasError").removeClass("fieldHasError"); - e("#" + n + " .requiredField").each(function(i) { - if (e(this).val() == "" || e(this).val() == e(this).attr("data-dummy")) { - e(this).val(e(this).attr("data-dummy")); - e(this).focus(); - e(this).addClass("fieldHasError"); - e("#" + e(this).attr("id") + "Error").fadeIn(300); - return false - } - if (e(this).hasClass("requiredEmailField")) { - var s = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/; - var o = "#" + e(this).attr("id"); - if (!s.test(e(o).val())) { - e(o).focus(); - e(o).addClass("fieldHasError"); - e(o + "Error2").fadeIn(300); - return false - } - } - if (formSubmitted == "false" && i == e("#" + n + " .requiredField").length - 1) { - t(n, r) - } - }) - } - e(".formSuccessMessageWrap").hide(0); - e(".formValidationError").fadeOut(0); - e('input[type="text"], input[type="password"], textarea').focus(function() { - if (e(this).val() == e(this).attr("data-dummy")) { - e(this).val("") - } - }); - e("input, textarea").blur(function() { - if (e(this).val() == "") { - e(this).val(e(this).attr("data-dummy")) - } - }); - e(".contactSubmitButton").on('click',function() { - n(e(this).attr("data-formId")); - return false - }) - }); - - - //Charts - if($('.chart').length > 0){ - var loadJS = function(url, implementationCode, location){ - var scriptTag = document.createElement('script'); - scriptTag.src = url; - scriptTag.onload = implementationCode; - scriptTag.onreadystatechange = implementationCode; - location.appendChild(scriptTag); - }; - var call_charts_to_page = function(){ - - var walletChart = $('#wallet-chart'); - var pieChart = $('#pie-chart'); - var doughnutChart = $('#doughnut-chart'); - var polarChart = $('#polar-chart'); - var verticalChart = $('#vertical-chart'); - var horizontalChart = $('#horizontal-chart'); - var lineChart = $('#line-chart'); - - if(walletChart.length){ - var walletDemoChart = new Chart(walletChart, { - type: 'pie', - data: { - labels: ["Expenses", "Income"], - datasets: [{ - backgroundColor: ["#ED5565", "#A0D468"], - borderColor:"rgba(255,255,255,0.5)", - data: [7000,3000] - }] - }, - options: { - responsive: true, maintainAspectRatio:false, - legend: {display: true, position:'bottom', labels:{fontSize:13, padding:15,boxWidth:12},}, - tooltips:{enabled:true}, animation:{duration:1500} - } - }); - } - - if(pieChart.length){ - var pieDemoChart = new Chart(pieChart, { - type: 'pie', - data: { - labels: ["Facebook", "Twitter", "WhatsApp"], - datasets: [{ - backgroundColor: ["#4A89DC", "#4FC1E9", "#A0D468"], - borderColor:"rgba(255,255,255,0.5)", - data: [7000,3000,2000] - }] - }, - options: { - responsive: true, maintainAspectRatio:false, - legend: {display: true, position:'bottom', labels:{fontSize:13, padding:15,boxWidth:12},}, - tooltips:{enabled:true}, animation:{duration:1500} - } - }); - } - - if(doughnutChart.length){ - var doughnutDemoChart = new Chart(doughnutChart, { - type: 'doughnut', - data: { - labels: ["Apple", "Samsung", "Google"], - datasets: [{ - backgroundColor: ["#CCD1D9", "#5D9CEC","#FC6E51"], - borderColor:"rgba(255,255,255,0.5)", - data: [5500,4000,3000] - }] - }, - options: { - responsive: true, maintainAspectRatio:false, - legend: {display: true, position:'bottom', labels:{fontSize:13, padding:15,boxWidth:12},}, - tooltips:{enabled:true}, animation:{duration:1500}, layout:{ padding: {bottom: 30}} - } - }); - } - - if(polarChart.length){ - var polarDemoChart = new Chart(polarChart, { - type: 'polarArea', - data: { - labels: ["Windows", "Mac", "Linux"], - datasets: [{ - backgroundColor: ["#CCD1D9", "#5D9CEC","#FC6E51"], - borderColor:"rgba(255,255,255,0.5)", - data: [7000,10000,5000] - }] - }, - options: { - responsive: true, maintainAspectRatio:false, - legend: {display: true, position:'bottom', labels:{fontSize:13, padding:15,boxWidth:12},}, - tooltips:{enabled:true}, animation:{duration:1500}, layout:{ padding: {bottom: 30}} - } - }); - } - - if (verticalChart.length){ - var verticalDemoChart = new Chart(verticalChart, { - type: 'bar', - data: { - labels: ["2010", "2015", "2020", "2025"], - datasets: [ - { - label: "iOS", - backgroundColor: "#A0D468", - data: [900,1000,1200,1400] - }, { - label: "Android", - backgroundColor: "#4A89DC", - data: [890,950,1100,1300] - } - ] - }, - options: { - responsive: true, maintainAspectRatio:false, - legend: {display: true, position:'bottom', labels:{fontSize:13, padding:15,boxWidth:12},}, - title: {display: false} - } - }); - } - - if(horizontalChart.length){ - var horizontalDemoChart = new Chart(horizontalChart, { - type: 'horizontalBar', - data: { - labels: ["2010", "2013", "2016", "2020"], - datasets: [ - { - label: "Mobile", - backgroundColor: "#BF263C", - data: [330,400,580,590] - }, { - label: "Responsive", - backgroundColor: "#EC87C0", - data: [390,450,550,570] - } - ] - }, - options: { - legend: {display: true, position:'bottom', labels:{fontSize:13, padding:15,boxWidth:12},}, - title: {display: false} - } - }); - } - - if(lineChart.length){ - var lineDemoChart = new Chart(lineChart, { - type: 'line', - data: { - labels: [2000,2005,2010,2015,2010], - datasets: [{ - data: [500,400,300,200,300], - label: "Desktop Web", - borderColor: "#D8334A" - }, { - data: [0,100,300,400,500], - label: "Mobile Web", - borderColor: "#4A89DC" - } - ] - }, - options: { - responsive: true, maintainAspectRatio:false, - legend: {display: true, position:'bottom', labels:{fontSize:13, padding:15,boxWidth:12},}, - title: {display: false} - } - }); - } - } - loadJS('/client/scripts/charts.js', call_charts_to_page, document.body); - } - - - //Local Error Message - if (window.location.protocol === "file:"){$('a').on('mouseover',function(){log("You are seeing these errors because your file is on your local computer. For real life simulations please use a Live Server or a Local Server such as AMPPS or WAMPP or simulate a Live Preview using a Code Editor like http://brackets.io (it's 100% free) - PWA functions and AJAX Page Transitions will only work in these scenarios.");});} - - //Style Generator var generatedStyles = $('.generated-styles'); var generatedHighlight = $('.generated-highlight'); @@ -1314,42 +453,6 @@ eraseCookie('sticky_dark_mode'); } highlight_colors(); - //Change Highlight - $('[data-change-highlight]').on('click',function(changeColor){ - var highlightNew = $(this).data('change-highlight'); - $('body').attr('data-highlight',highlightNew); - $('.generated-highlight').remove(); - createCookie('sticky-color-scheme',highlightNew,1) - var data = colorsArray.map(colorsArray => colorsArray[0]); - if (data.indexOf(highlightNew) > -1) { - var highlightLocated = data.indexOf(highlightNew) - if($(this).data('color-light') !== undefined){ - var highlightColorCode = colorsArray[highlightLocated][1] - } else { - var highlightColorCode = colorsArray[highlightLocated][2] - } - var highlightColor = '.color-highlight{color:'+highlightColorCode+'!important}' - var highlightBg = '.bg-highlight{background-color:'+highlightColorCode+'!important}' - var highlightNav = '.active-nav *{color:'+highlightColorCode+'!important} .active-nav2 strong{background-color:'+highlightColorCode+'!important} .active-nav3 strong{background-color:'+highlightColorCode+'!important} .active-nav4 strong{border-color:'+highlightColorCode+'!important}' - var highlightBorder = '.border-highlight{border-color:'+highlightColorCode+'!important}' - $('body').append('') - $('.generated-highlight').append(highlightColor, highlightBg, highlightNav, highlightBorder); - } - }); - - //Change Background - $('[data-change-background]').on('click',function(changeColor){ - var backgroundNew = $(this).data('change-background'); - createCookie('sticky-bg-scheme',backgroundNew,1) - $('.generated-background').remove(); - var data = colorsArray.map(colorsArray => colorsArray[0]); - var backgroundLocated = data.indexOf(backgroundNew) - var backgroundColorCode = colorsArray[backgroundLocated][3] + ', ' + colorsArray[backgroundLocated][1] - var bodyBG = '#page{background: linear-gradient(0deg, '+backgroundColorCode+')!important;} .bg-page{background: linear-gradient(0deg, '+backgroundColorCode+')!important}' - $('body').append('') - $('.generated-background').append(bodyBG); - }); - if (!generatedStyles.length){ $('body').append(''); $('.generated-styles').append('/*Generated using JS for lower CSS file Size, Easier Editing & Faster Loading*/'); @@ -1385,58 +488,4 @@ eraseCookie('sticky_dark_mode'); //Activating all the plugins setTimeout(init_template, 0); - //Activate AJAX Transitions - if(isAJAX === true){ - $(function(){ - 'use strict'; - var options = { - prefetch: true, - prefetchOn: 'mouseover', - cacheLength: 100, - scroll: true, - blacklist: '.default-link', - forms: 'contactForm', - onStart: { - duration:150, // Duration of our animation - render: function ($container) { - $container.addClass('is-exiting');// Add your CSS animation reversing class - $('.menu, .menu-hider').removeClass('menu-active'); - $('#preloader').removeClass('preloader-hide'); - return false; - } - }, - onReady: { - duration: 10, - render: function ($container, $newContent) { - $container.removeClass('is-exiting');// Remove your CSS animation reversing class - $container.html($newContent);// Inject the new content - setTimeout(init_template, 0)//Timeout required to properly initiate all JS Functions. - $('#preloader').removeClass('preloader-hide'); - } - }, - onAfter: function($container, $newContent) { - setTimeout(function(){ - $('.menu').css('display','block'); - $('#preloader').addClass('preloader-hide'); - },150); - } - }; - var smoothState = $('#page').smoothState(options).data('smoothState'); - smoothState.clear(); - }); - } - - //Activate Development mode. Keeps caches clear. - if(isDevelopment === true){ - if(!$('.reloader').length){$('body').append('Developer Mode - Tap to Reload');} - $('.reloader').on('click',function(){window.location.reload(true);}) - caches.delete('workbox-runtime').then(function(){}); - localStorage.clear(); - sessionStorage.clear() - caches.keys().then(cacheNames => { - cacheNames.forEach(cacheName => { - caches.delete(cacheName); - }); - }); - } }); diff --git a/client/scripts/pwa.js.php b/client/scripts/pwa.js.php index 681fae8..1e3cf20 100644 --- a/client/scripts/pwa.js.php +++ b/client/scripts/pwa.js.php @@ -20,8 +20,6 @@ $(document).ready(function(){ 'use strict' var pwaVersion = ''; //must be identical to _manifest.json version. If not it will create update window loop - var pwaCookie = true; // if set to false, the PWA prompt will appear even if the user selects "maybe later" - var pwaNoCache = false; // always keep the cache clear to serve the freshest possible content $('[data-pwa-version]').data('pwa-version', pwaVersion); @@ -115,93 +113,11 @@ $(document).ready(function(){ } } - - //Creating Update Modal - function updateModal(){ - var body = $('body'); - var updateModal = $('#menu-update'); - var mt = new Date(); - var menuUpdate = mt.getHours() + ":" + mt.getMinutes() + ":" + mt.getSeconds(); - if(!updateModal.length){ - body.append(''); - setTimeout(function(){ - body.find('#menu-update').load('menu-update.html?ver='+menuUpdate); - },250); - } - }; - //Update Version in 5 Seconds After New Version Detected - function updateButton(){ - var counter = 3; - var interval = setInterval(function() { - counter--; - log(counter); - $('.page-update').html('Aktuallisierung in ... '+ counter + ' Sekunden'); - if (counter == 0) { - clearInterval(interval); - window.location.reload(true) - } - }, 1000); - caches.delete('workbox-runtime').then(function() { - log('Content Updated - Cache Removed!'); - }); - //localStorage.clear(); - sessionStorage.clear() - caches.keys().then(cacheNames => { - cacheNames.forEach(cacheName => { - caches.delete(cacheName); - }); - }); - }; - - //Check Version - function check_version(){ - if($('link[data-pwa-version]').length){ - function versionCheck(){ - var dt = new Date(); - var maniTimeVersion = dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds(); - var localVersionNumber = $('link[rel="manifest"]').data('pwa-version'); - var onlineVersionJSON = "/manifest.json.php?ver=" + maniTimeVersion; - var onlineVersionNumber = "Connection Offline. Waiting to Reconect"; - $.getJSON(onlineVersionJSON, function(onlineData) {onlineVersionNumber = onlineData.version;}); - setTimeout(function(){ - //console.log(' Checking PWA Content for updates...\n PWA Server Version: ' + onlineVersionNumber + '\n' + ' PWA Cached Version: ' + localVersionNumber); - if(onlineVersionNumber != localVersionNumber && onlineVersionNumber != "Connection Offline. Waiting to Reconect"){ - updateModal(); - log('New Version of Content Available. Refreshing. On Desktop Browsers a manual refresh maybe required.') - setTimeout(function(){ - $('body').find('#menu-update').addClass('menu-active'); - $('.menu-hider').addClass('menu-active-no-click'); - updateButton(); - },500); - } - if(onlineVersionNumber == localVersionNumber){/*No update required. Versions Identical*/} - if(onlineVersionNumber === "undefined"){/*Error Checking for Updates*/} - if(onlineVersionNumber === "Finding Online Version..."){ - $('.reloadme').addClass('disabled'); - $('body').find('#menu-update').removeClass('menu-active'); - $('.menu-hider').removeClass('menu-active-no-click'); - } - },3000); - } - //Checking for new version every 60 seconds - setInterval(function(){versionCheck()}, 50000); - //Initial Load Version Check in 10 Second After Load - setTimeout(function(){versionCheck();}, 10000); - } - } - - if(pwaCookie == false){ - eraseCookie('Sticky_pwa_rejected_install'); - } - //Reload To Clear Button $('body').on('click', '.page-update, .reloadme', function() { location.reload(); }); - //Check for Version Change if Online If not Kill the Function - if (navigator.onLine) {check_version();} else {function check_version(){}} - //Adding Offline Alerts var offlineAlerts = $('.offline-message'); @@ -224,47 +140,19 @@ $(document).ready(function(){ setTimeout(function(){$('.online-message').removeClass('online-message-active');},2000); } - $('.simulate-offline').on('click',function(){isOffline();}) - $('.simulate-online').on('click',function(){isOnline();}) - - //Disable links to other pages if offline. - //Warning! Enabling offline for iOS can cause issues - //To allow offline functionality delete the next 7 lines - function returnFalse(){ - var detectHREF = $(this).attr('href'); - if(detectHREF.match(/.html/)){ - isOffline(); - return false; - } - } - //Check if Online / Offline function updateOnlineStatus(event) { var condition = navigator.onLine ? "online" : "offline"; isOnline(); log( 'Connection: Online'); - $("a").off( "click", returnFalse ); } function updateOfflineStatus(event) { isOffline(); - $("a").on( "click", returnFalse ); log( 'Connection: Offline'); } window.addEventListener('online', updateOnlineStatus); window.addEventListener('offline', updateOfflineStatus); - if(pwaNoCache == true){ - caches.delete('workbox-runtime').then(function() { - }); - localStorage.clear(); - sessionStorage.clear() - caches.keys().then(cacheNames => { - cacheNames.forEach(cacheName => { - caches.delete(cacheName); - }); - }); - } - }); diff --git a/server/page/menus.php b/server/page/menus.php index 32f60d6..30917c2 100644 --- a/server/page/menus.php +++ b/server/page/menus.php @@ -307,15 +307,3 @@ Nicht erneut anzeigen - -