(function(){var b=function(e,d){this.amount=d||100;this.distance=60;this.interval=60;this.particles=[];this.composition="lighter";this.element=document.getElementById(e);this.canvas=this.element.getContext("2d");this.width=this.element.getAttribute("width");this.height=this.element.getAttribute("height")};b.prototype={setup:function(){this.canvas.globalCompositeOperation=this.composition;for(var d=0;d<this.amount;d++){this.particles[d]=new a(this.canvas);this.particles[d].reset()}},start:function(){var d=this;this.animation=setInterval(function(){d.canvas.clearRect(0,0,d.width,d.height);for(var e=0;e<d.particles.length;e++){d.particles[e].fade();d.particles[e].move();d.particles[e].draw()}},this.interval)},stop:function(){clearInterval(this.animation)}};var a=function(d){this.context=d;this.options={lifetime:8000,random:false,blink:true,range:1,max:{x:5,y:2,range:8,distance:60},defined:{x:920,y:380},bounds:{x:920,y:380},drift:{x:5,y:5}}};a.prototype={reset:function(){this.x=(this.options.random?this.options.bounds.x*Math.random():this.options.defined.x/2);this.y=(this.options.random?this.options.bounds.y*Math.random():this.options.defined.y/2);this.range=((this.options.max.range-1)*Math.random())+1;this.drift_x=(Math.random()*this.options.max.x)*(Math.random()<0.5?-1:1);this.drift_y=(Math.random()*this.options.max.y)*(Math.random()<0.5?-1:1);this.lum=(this.options.lifetime/this.options.max.distance)*(this.range/this.options.max.range);this.illumination=Math.random()*this.lum;this.options.range=Math.random()+1;this.stop=Math.random()*0.2+0.4;this.options.drift.x*=Math.random()*(Math.random()<0.5?-1:1);this.options.drift.y*=Math.random()*(Math.random()<0.5?-1:1)},draw:function(){if(this.options.blink&&(this.illumination<=0||this.illumination>=this.lum)){this.options.range=this.options.range*-1}else{if(this.illumination>=this.lum){this.reset()}}var f=1-(this.illumination/this.lum)*1.2;var d=(this.range*f)*1.2;this.context.beginPath();this.context.arc(this.x,this.y,this.range,0,Math.PI*2,true);var e=this.context.createRadialGradient(this.x,this.y,0,this.x,this.y,(d<=0?1:d));e.addColorStop(0,"rgba(170, 218, 231, "+f+")");e.addColorStop(1,"rgba(170, 218, 231, 0)");this.context.fillStyle=e;this.context.fill()},move:function(){this.x+=(this.illumination/this.lum)*this.drift_x;this.y+=(this.illumination/this.lum)*this.drift_y;if(this.x>this.options.bounds.x||this.x<0){this.drift_x*=-1}if(this.y>this.options.bounds.y||this.y<0){this.drift_y*=-1}},fade:function(){this.illumination+=this.options.range},getCoordinates:function(){return{x:this.x,y:this.y}}};var c=this.Kodlabbet=function(){var d=document.createElement("canvas");var e=document.getElementsByTagName("header")[0];if(document.querySelector&&!!d.getContext!==undefined){d.setAttribute("id","particles");d.setAttribute("width",920);d.setAttribute("height",380);e.appendChild(d);e.appendChild(document.createElement("div"));setTimeout(function(){var f=new b("particles",350);f.setup();f.start()},500)}}}).call(window);
