(function(){function log(){if(typeof(console)!='undefined'&&typeof(console.log)=='function'){Array.prototype.unshift.call(arguments,'[Ajax Upload]');console.log(Array.prototype.join.call(arguments,' '));}}
function addEvent(el,type,fn){if(el.addEventListener){el.addEventListener(type,fn,false);}else if(el.attachEvent){el.attachEvent('on'+type,function(){fn.call(el);});}else{throw new Error('not supported or DOM not loaded');}}
function addResizeEvent(fn){var timeout;addEvent(window,'resize',function(){if(timeout){clearTimeout(timeout);}
timeout=setTimeout(fn,100);});}
if(document.documentElement.getBoundingClientRect){var getOffset=function(el){var box=el.getBoundingClientRect();var doc=el.ownerDocument;var body=doc.body;var docElem=doc.documentElement;var clientTop=docElem.clientTop||body.clientTop||0;var clientLeft=docElem.clientLeft||body.clientLeft||0;var zoom=1;if(body.getBoundingClientRect){var bound=body.getBoundingClientRect();zoom=(bound.right-bound.left)/body.clientWidth;}
if(zoom>1){clientTop=0;clientLeft=0;}
var top=box.top/zoom+(window.pageYOffset||docElem&&docElem.scrollTop/zoom||body.scrollTop/zoom)-clientTop,left=box.left/zoom+(window.pageXOffset||docElem&&docElem.scrollLeft/zoom||body.scrollLeft/zoom)-clientLeft;return{top:top,left:left};};}else{var getOffset=function(el){var top=0,left=0;do{top+=el.offsetTop||0;left+=el.offsetLeft||0;el=el.offsetParent;}while(el);return{left:left,top:top};};}
function getBox(el){var left,right,top,bottom;var offset=getOffset(el);left=offset.left;top=offset.top;right=left+el.offsetWidth;bottom=top+el.offsetHeight;return{left:left,right:right,top:top,bottom:bottom};}
function addStyles(el,styles){for(var name in styles){if(styles.hasOwnProperty(name)){el.style[name]=styles[name];}}}
function copyLayout(from,to){var box=getBox(from);addStyles(to,{position:'absolute',left:box.left+'px',top:box.top+'px',width:from.offsetWidth+'px',height:from.offsetHeight+'px'});}
var toElement=(function(){var div=document.createElement('div');return function(html){div.innerHTML=html;var el=div.firstChild;return div.removeChild(el);};})();var getUID=(function(){var id=0;return function(){return'ValumsAjaxUpload'+id++;};})();function fileFromPath(file){return file.replace(/.*(\/|\\)/,"");}
function getExt(file){return(-1!==file.indexOf('.'))?file.replace(/.*[.]/,''):'';}
function hasClass(el,name){var re=new RegExp('\\b'+name+'\\b');return re.test(el.className);}
function addClass(el,name){if(!hasClass(el,name)){el.className+=' '+name;}}
function removeClass(el,name){var re=new RegExp('\\b'+name+'\\b');el.className=el.className.replace(re,'');}
function removeNode(el){el.parentNode.removeChild(el);}
window.AjaxUpload=function(button,options){this._settings={action:'upload.php',name:'userfile',data:{},autoSubmit:true,responseType:false,hoverClass:'hover',disabledClass:'disabled',onChange:function(file,extension){},onSubmit:function(file,extension){},onComplete:function(file,response){}};for(var i in options){if(options.hasOwnProperty(i)){this._settings[i]=options[i];}}
if(button.jquery){button=button[0];}else if(typeof button=="string"){if(/^#.*/.test(button)){button=button.slice(1);}
button=document.getElementById(button);}
if(!button||button.nodeType!==1){throw new Error("Please make sure that you're passing a valid element");}
if(button.nodeName.toUpperCase()=='A'){addEvent(button,'click',function(e){if(e&&e.preventDefault){e.preventDefault();}else if(window.event){window.event.returnValue=false;}});}
this._button=button;this._input=null;this._disabled=false;this.enable();this._rerouteClicks();};AjaxUpload.prototype={setData:function(data){this._settings.data=data;},disable:function(){addClass(this._button,this._settings.disabledClass);this._disabled=true;var nodeName=this._button.nodeName.toUpperCase();if(nodeName=='INPUT'||nodeName=='BUTTON'){this._button.setAttribute('disabled','disabled');}
if(this._input){this._input.parentNode.style.visibility='hidden';}},enable:function(){removeClass(this._button,this._settings.disabledClass);this._button.removeAttribute('disabled');this._disabled=false;},_createInput:function(){var self=this;var input=document.createElement("input");input.setAttribute('type','file');input.setAttribute('name',this._settings.name);addStyles(input,{'position':'absolute','right':0,'margin':0,'padding':0,'fontSize':'480px','cursor':'pointer'});var div=document.createElement("div");addStyles(div,{'display':'block','position':'absolute','overflow':'hidden','margin':0,'padding':0,'opacity':0,'direction':'ltr','zIndex':2147483583});if(div.style.opacity!=="0"){if(typeof(div.filters)=='undefined'){throw new Error('Opacity not supported by the browser');}
div.style.filter="alpha(opacity=0)";}
addEvent(input,'change',function(){if(!input||input.value===''){return;}
var file=fileFromPath(input.value);if(false===self._settings.onChange.call(self,file,getExt(file))){self._clearInput();return;}
if(self._settings.autoSubmit){self.submit();}});addEvent(input,'mouseover',function(){addClass(self._button,self._settings.hoverClass);});addEvent(input,'mouseout',function(){removeClass(self._button,self._settings.hoverClass);input.parentNode.style.visibility='hidden';});div.appendChild(input);document.body.appendChild(div);this._input=input;},_clearInput:function(){if(!this._input){return;}
removeNode(this._input.parentNode);this._input=null;this._createInput();removeClass(this._button,this._settings.hoverClass);},_rerouteClicks:function(){var self=this;addEvent(self._button,'mouseover',function(){if(self._disabled){return;}
if(!self._input){self._createInput();}
var div=self._input.parentNode;copyLayout(self._button,div);div.style.visibility='visible';});},_createIframe:function(){var id=getUID();var iframe=toElement('<iframe src="javascript:false;" name="'+id+'" />');iframe.setAttribute('id',id);iframe.style.display='none';document.body.appendChild(iframe);return iframe;},_createForm:function(iframe){var settings=this._settings;var form=toElement('<form method="post" enctype="multipart/form-data"></form>');form.setAttribute('action',settings.action);form.setAttribute('target',iframe.name);form.style.display='none';document.body.appendChild(form);for(var prop in settings.data){if(settings.data.hasOwnProperty(prop)){var el=document.createElement("input");el.setAttribute('type','hidden');el.setAttribute('name',prop);el.setAttribute('value',settings.data[prop]);form.appendChild(el);}}
return form;},_getResponse:function(iframe,file){var toDeleteFlag=false,self=this,settings=this._settings;addEvent(iframe,'load',function(){if(iframe.src=="javascript:'%3Chtml%3E%3C/html%3E';"||iframe.src=="javascript:'<html></html>';"){if(toDeleteFlag){setTimeout(function(){removeNode(iframe);},0);}
return;}
var doc=iframe.contentDocument?iframe.contentDocument:window.frames[iframe.id].document;if(doc.readyState&&doc.readyState!='complete'){return;}
if(doc.body&&doc.body.innerHTML=="false"){return;}
var response;if(doc.XMLDocument){response=doc.XMLDocument;}else if(doc.body){response=doc.body.innerHTML;if(settings.responseType&&settings.responseType.toLowerCase()=='json'){if(doc.body.firstChild&&doc.body.firstChild.nodeName.toUpperCase()=='PRE'){response=doc.body.firstChild.firstChild.nodeValue;}
if(response){response=eval("("+response+")");}else{response={};}}}else{response=doc;}
settings.onComplete.call(self,file,response);toDeleteFlag=true;iframe.src="javascript:'<html></html>';";});},submit:function(){var self=this,settings=this._settings;if(!this._input||this._input.value===''){return;}
var file=fileFromPath(this._input.value);if(false===settings.onSubmit.call(this,file,getExt(file))){this._clearInput();return;}
var iframe=this._createIframe();var form=this._createForm(iframe);removeNode(this._input.parentNode);removeClass(self._button,self._settings.hoverClass);form.appendChild(this._input);form.submit();removeNode(form);form=null;removeNode(this._input);this._input=null;this._getResponse(iframe,file);this._createInput();}};})();;(function($){$.fn.tipTip=function(options){var defaults={activation:"hover",keepAlive:false,maxWidth:"200px",edgeOffset:3,defaultPosition:"bottom",delay:400,fadeIn:200,fadeOut:200,attribute:"title",content:false,enter:function(){},exit:function(){}};var opts=$.extend(defaults,options);if($("#tiptip_holder").length<=0){var tiptip_holder=$('<div id="tiptip_holder" style="max-width:'+opts.maxWidth+';"></div>');var tiptip_content=$('<div id="tiptip_content"></div>');var tiptip_arrow=$('<div id="tiptip_arrow"></div>');$("body").append(tiptip_holder.html(tiptip_content).prepend(tiptip_arrow.html('<div id="tiptip_arrow_inner"></div>')))}else{var tiptip_holder=$("#tiptip_holder");var tiptip_content=$("#tiptip_content");var tiptip_arrow=$("#tiptip_arrow")}return this.each(function(){var org_elem=$(this);if(opts.content){var org_title=opts.content}else{var org_title=org_elem.attr(opts.attribute)}if(org_title!=""){if(!opts.content){org_elem.removeAttr(opts.attribute)}var timeout=false;if(opts.activation=="hover"){org_elem.hover(function(){active_tiptip()},function(){if(!opts.keepAlive){deactive_tiptip()}});if(opts.keepAlive){tiptip_holder.hover(function(){},function(){deactive_tiptip()})}}else if(opts.activation=="focus"){org_elem.focus(function(){active_tiptip()}).blur(function(){deactive_tiptip()})}else if(opts.activation=="click"){org_elem.click(function(){active_tiptip();return false}).hover(function(){},function(){if(!opts.keepAlive){deactive_tiptip()}});if(opts.keepAlive){tiptip_holder.hover(function(){},function(){deactive_tiptip()})}}function active_tiptip(){opts.enter.call(this);tiptip_content.html(org_title);tiptip_holder.hide().removeAttr("class").css("margin","0");tiptip_arrow.removeAttr("style");var top=parseInt(org_elem.offset()['top']);var left=parseInt(org_elem.offset()['left']);var org_width=parseInt(org_elem.outerWidth());var org_height=parseInt(org_elem.outerHeight());var tip_w=tiptip_holder.outerWidth();var tip_h=tiptip_holder.outerHeight();var w_compare=Math.round((org_width-tip_w)/2);var h_compare=Math.round((org_height-tip_h)/2);var marg_left=Math.round(left+w_compare);var marg_top=Math.round(top+org_height+opts.edgeOffset);var t_class="";var arrow_top="";var arrow_left=Math.round(tip_w-12)/2;if(opts.defaultPosition=="bottom"){t_class="_bottom"}else if(opts.defaultPosition=="top"){t_class="_top"}else if(opts.defaultPosition=="left"){t_class="_left"}else if(opts.defaultPosition=="right"){t_class="_right"}var right_compare=(w_compare+left)<parseInt($(window).scrollLeft());var left_compare=(tip_w+left)>parseInt($(window).width());if((right_compare&&w_compare<0)||(t_class=="_right"&&!left_compare)||(t_class=="_left"&&left<(tip_w+opts.edgeOffset+5))){t_class="_right";arrow_top=Math.round(tip_h-13)/2;arrow_left=-12;marg_left=Math.round(left+org_width+opts.edgeOffset);marg_top=Math.round(top+h_compare)}else if((left_compare&&w_compare<0)||(t_class=="_left"&&!right_compare)){t_class="_left";arrow_top=Math.round(tip_h-13)/2;arrow_left=Math.round(tip_w);marg_left=Math.round(left-(tip_w+opts.edgeOffset+5));marg_top=Math.round(top+h_compare)}var top_compare=(top+org_height+opts.edgeOffset+tip_h+8)>parseInt($(window).height()+$(window).scrollTop());var bottom_compare=((top+org_height)-(opts.edgeOffset+tip_h+8))<0;if(top_compare||(t_class=="_bottom"&&top_compare)||(t_class=="_top"&&!bottom_compare)){if(t_class=="_top"||t_class=="_bottom"){t_class="_top"}else{t_class=t_class+"_top"}arrow_top=tip_h;marg_top=Math.round(top-(tip_h+5+opts.edgeOffset))}else if(bottom_compare|(t_class=="_top"&&bottom_compare)||(t_class=="_bottom"&&!top_compare)){if(t_class=="_top"||t_class=="_bottom"){t_class="_bottom"}else{t_class=t_class+"_bottom"}arrow_top=-12;marg_top=Math.round(top+org_height+opts.edgeOffset)}if(t_class=="_right_top"||t_class=="_left_top"){marg_top=marg_top+5}else if(t_class=="_right_bottom"||t_class=="_left_bottom"){marg_top=marg_top-5}if(t_class=="_left_top"||t_class=="_left_bottom"){marg_left=marg_left+5}tiptip_arrow.css({"margin-left":arrow_left+"px","margin-top":arrow_top+"px"});tiptip_holder.css({"margin-left":marg_left+"px","margin-top":marg_top+"px"}).attr("class","tip"+t_class);if(timeout){clearTimeout(timeout)}timeout=setTimeout(function(){tiptip_holder.stop(true,true).fadeIn(opts.fadeIn)},opts.delay)}function deactive_tiptip(){opts.exit.call(this);if(timeout){clearTimeout(timeout)}tiptip_holder.fadeOut(opts.fadeOut)}}})}})(jQuery);;(function($){var delimiter=new Array();jQuery.fn.addTag=function(value,options){var options=jQuery.extend({focus:false},options);this.each(function(){id=$(this).attr('id');var tagslist=$(this).val().split(delimiter[id]);if(tagslist[0]==''){tagslist=new Array();}
value=jQuery.trim(value);if(value!=''){$('<span class="tag">'+value+'&nbsp;&nbsp;<a href="#" title="Remove tag" onclick="return $(\'#'+id+'\').removeTag(\''+escape(value)+'\');">x</a></span>').insertBefore('#'+id+'_addTag');tagslist.push(value);$('#'+id+'_tag').val('');if(options.focus){$('#'+id+'_tag').focus();}else{$('#'+id+'_tag').blur();}}
jQuery.fn.tagsInput.updateTagsField(this,tagslist);});return false;};jQuery.fn.removeTag=function(value){this.each(function(){id=$(this).attr('id');var old=$(this).val().split(delimiter[id]);$('#'+id+'_tagsinput .tag').remove();str='';for(i=0;i<old.length;i++){if(escape(old[i])!=value){str=str+delimiter[id]+old[i];}}
jQuery.fn.tagsInput.importTags(this,str);});return false;};jQuery.fn.tagsInput=function(options){var settings=jQuery.extend({defaultText:'add a tag',width:'300px',height:'100px','hide':true,'delimiter':',',autocomplete:{selectFirst:false}},options);this.each(function(){if(settings.hide){$(this).hide();}
id=$(this).attr('id')
data=jQuery.extend({pid:id,real_input:'#'+id,holder:'#'+id+'_tagsinput',input_wrapper:'#'+id+'_addTag',fake_input:'#'+id+'_tag',},settings);delimiter[id]=data.delimiter;$('<div id="'+id+'_tagsinput" class="tagsinput"><div id="'+id+'_addTag"><input id="'+id+'_tag" value="" default="'+settings.defaultText+'" /></div><div class="tags_clear"></div></div>').insertAfter(this);$(data.holder).css('width',settings.width);$(data.holder).css('height',settings.height);if($(data.real_input).val()!=''){jQuery.fn.tagsInput.importTags($(data.real_input),$(data.real_input).val());}else{$(data.fake_input).val($(data.fake_input).attr('default'));$(data.fake_input).css('color','#666666');}
$(data.holder).bind('click',data,function(event){$(event.data.fake_input).focus();});$(data.fake_input).bind('keypress',data,function(event){if(event.which==event.data.delimiter.charCodeAt(0)||event.which==13){$(event.data.real_input).addTag($(event.data.fake_input).val(),{focus:true});return false;}});$(data.fake_input).bind('focus',data,function(event){if($(event.data.fake_input).val()==$(event.data.fake_input).attr('default')){$(event.data.fake_input).val('');}
$(event.data.fake_input).css('color','#000000');});if(settings.autocomplete_url!=undefined){$(data.fake_input).autocomplete(settings.autocomplete_url,settings.autocomplete).bind('result',data,function(event,data,formatted){if(data){d=data+"";$(event.data.real_input).addTag(d,{focus:true});}});;$(data.fake_input).bind('blur',data,function(event){if($(event.data.fake_input).val()!=$(event.data.fake_input).attr('default')){$(event.data.real_input).addTag($(event.data.fake_input).val(),{focus:false});}
$(event.data.fake_input).val($(event.data.fake_input).attr('default'));$(event.data.fake_input).css('color','#666666');return false;});}else{$(data.fake_input).bind('blur',data,function(event){var d=$(this).attr('default');if($(event.data.fake_input).val()!=''&&$(event.data.fake_input).val()!=d){event.preventDefault();$(event.data.real_input).addTag($(event.data.fake_input).val(),{focus:true});}else{$(event.data.fake_input).val($(event.data.fake_input).attr('default'));$(event.data.fake_input).css('color','#666666');}
return false;});}
$(data.fake_input).blur();});return this;};jQuery.fn.tagsInput.updateTagsField=function(obj,tagslist){id=$(obj).attr('id');$(obj).val(tagslist.join(delimiter[id]));};jQuery.fn.tagsInput.importTags=function(obj,val){$(obj).val('');id=$(obj).attr('id');var tags=val.split(delimiter[id]);for(i=0;i<tags.length;i++){$(obj).addTag(tags[i],{focus:false});}};})(jQuery);;;(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:'xy',duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!i)return a;var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=='BackCompat'?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=='object'){b=j;j=0}if(typeof b=='function')b={onAfter:b};if(n=='max')n=9e9;b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue)j/=2;b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is('html,body');switch(typeof f){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case'object':if(f.is||f.style)s=(f=d(f)).offset()}d.each(b.axis.split(''),function(a,i){var e=i=='x'?'Left':'Top',h=e.toLowerCase(),c='scroll'+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css('margin'+e))||0;g[c]-=parseInt(f.css('border'+e+'Width'))||0}g[c]+=b.offset[h]||0;if(b.over[h])g[c]+=f[i=='x'?'width':'height']()*b.over[h]}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=='%'?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],m);if(!a&&b.queue){if(l!=g[c])t(b.onAfterFirst);delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=='x'?'Width':'Height',h='scroll'+e;if(!d(a).is('html,body'))return a[h]-d(a)[e.toLowerCase()]();var c='client'+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);;(function($){var pasteEventName=($.browser.msie?'paste':'input')+".mask";var iPhone=(window.orientation!=undefined);$.mask={definitions:{'9':"[0-9]",'a':"[A-Za-z]",'*':"[A-Za-z0-9]"}};$.fn.extend({caret:function(begin,end){if(this.length==0)return;if(typeof begin=='number'){end=(typeof end=='number')?end:begin;return this.each(function(){if(this.setSelectionRange){this.focus();this.setSelectionRange(begin,end);}else if(this.createTextRange){var range=this.createTextRange();range.collapse(true);range.moveEnd('character',end);range.moveStart('character',begin);range.select();}});}else{if(this[0].setSelectionRange){begin=this[0].selectionStart;end=this[0].selectionEnd;}else if(document.selection&&document.selection.createRange){var range=document.selection.createRange();begin=0-range.duplicate().moveStart('character',-100000);end=begin+range.text.length;}
return{begin:begin,end:end};}},unmask:function(){return this.trigger("unmask");},mask:function(mask,settings){if(!mask&&this.length>0){var input=$(this[0]);var tests=input.data("tests");return $.map(input.data("buffer"),function(c,i){return tests[i]?c:null;}).join('');}
settings=$.extend({placeholder:"_",completed:null},settings);var defs=$.mask.definitions;var tests=[];var partialPosition=mask.length;var firstNonMaskPos=null;var len=mask.length;$.each(mask.split(""),function(i,c){if(c=='?'){len--;partialPosition=i;}else if(defs[c]){tests.push(new RegExp(defs[c]));if(firstNonMaskPos==null)
firstNonMaskPos=tests.length-1;}else{tests.push(null);}});return this.each(function(){var input=$(this);var buffer=$.map(mask.split(""),function(c,i){if(c!='?')return defs[c]?settings.placeholder:c});var ignore=false;var focusText=input.val();input.data("buffer",buffer).data("tests",tests);function seekNext(pos){while(++pos<=len&&!tests[pos]);return pos;};function shiftL(pos){while(!tests[pos]&&--pos>=0);for(var i=pos;i<len;i++){if(tests[i]){buffer[i]=settings.placeholder;var j=seekNext(i);if(j<len&&tests[i].test(buffer[j])){buffer[i]=buffer[j];}else
break;}}
writeBuffer();input.caret(Math.max(firstNonMaskPos,pos));};function shiftR(pos){for(var i=pos,c=settings.placeholder;i<len;i++){if(tests[i]){var j=seekNext(i);var t=buffer[i];buffer[i]=c;if(j<len&&tests[j].test(t))
c=t;else
break;}}};function keydownEvent(e){var pos=$(this).caret();var k=e.keyCode;ignore=(k<16||(k>16&&k<32)||(k>32&&k<41));if((pos.begin-pos.end)!=0&&(!ignore||k==8||k==46))
clearBuffer(pos.begin,pos.end);if(k==8||k==46||(iPhone&&k==127)){shiftL(pos.begin+(k==46?0:-1));return false;}else if(k==27){input.val(focusText);input.caret(0,checkVal());return false;}};function keypressEvent(e){if(ignore){ignore=false;return(e.keyCode==8)?false:null;}
e=e||window.event;var k=e.charCode||e.keyCode||e.which;var pos=$(this).caret();if(e.ctrlKey||e.altKey||e.metaKey){return true;}else if((k>=32&&k<=125)||k>186){var p=seekNext(pos.begin-1);if(p<len){var c=String.fromCharCode(k);if(tests[p].test(c)){shiftR(p);buffer[p]=c;writeBuffer();var next=seekNext(p);$(this).caret(next);if(settings.completed&&next==len)
settings.completed.call(input);}}}
return false;};function clearBuffer(start,end){for(var i=start;i<end&&i<len;i++){if(tests[i])
buffer[i]=settings.placeholder;}};function writeBuffer(){return input.val(buffer.join('')).val();};function checkVal(allow){var test=input.val();var lastMatch=-1;for(var i=0,pos=0;i<len;i++){if(tests[i]){buffer[i]=settings.placeholder;while(pos++<test.length){var c=test.charAt(pos-1);if(tests[i].test(c)){buffer[i]=c;lastMatch=i;break;}}
if(pos>test.length)
break;}else if(buffer[i]==test[pos]&&i!=partialPosition){pos++;lastMatch=i;}}
if(!allow&&lastMatch+1<partialPosition){input.val("");clearBuffer(0,len);}else if(allow||lastMatch+1>=partialPosition){writeBuffer();if(!allow)input.val(input.val().substring(0,lastMatch+1));}
return(partialPosition?i:firstNonMaskPos);};if(!input.attr("readonly"))
input.one("unmask",function(){input.unbind(".mask").removeData("buffer").removeData("tests");}).bind("focus.mask",function(){focusText=input.val();var pos=checkVal();writeBuffer();setTimeout(function(){if(pos==mask.length)
input.caret(0,pos);else
input.caret(pos);},0);}).bind("blur.mask",function(){checkVal();if(input.val()!=focusText)
input.change();}).bind("keydown.mask",keydownEvent).bind("keypress.mask",keypressEvent).bind(pasteEventName,function(){setTimeout(function(){input.caret(checkVal(true));},0);});checkVal();});}});})(jQuery);;(function($){$('a[data-reveal-id]').live('click',function(e){e.preventDefault();var modalLocation=$(this).attr('data-reveal-id');$('#'+modalLocation).reveal($(this).data());});$.fn.reveal=function(options){var defaults={animation:'fadeAndPop',animationspeed:300,closeonbackgroundclick:true,dismissmodalclass:'close-reveal-modal'};var options=$.extend({},defaults,options);return this.each(function(){var modal=$(this),topMeasure=parseInt(modal.css('top')),topOffset=modal.height()+topMeasure,locked=false,modalBG=$('.reveal-modal-bg');if(modalBG.length==0){modalBG=$('<div class="reveal-modal-bg" />').insertAfter(modal);}
openModal();var closeButton=$('.'+options.dismissmodalclass).bind('click.modalEvent',closeModal)
if(options.closeonbackgroundclick){modalBG.css({"cursor":"pointer"})
modalBG.bind('click.modalEvent',closeModal)}
function openModal(){modalBG.unbind('click.modalEvent');$('.'+options.dismissmodalclass).unbind('click.modalEvent');if(!locked){lockModal();if(options.animation=="fadeAndPop"){modal.css({'top':$(document).scrollTop()-topOffset,'opacity':0,'visibility':'visible'});modalBG.fadeIn(options.animationspeed/2);modal.delay(options.animationspeed/2).animate({"top":$(document).scrollTop()+topMeasure,"opacity":1},options.animationspeed,unlockModal());}
if(options.animation=="fade"){modal.css({'opacity':0,'visibility':'visible','top':$(document).scrollTop()+topMeasure});modalBG.fadeIn(options.animationspeed/2);modal.delay(options.animationspeed/2).animate({"opacity":1},options.animationspeed,unlockModal());}
if(options.animation=="none"){modal.css({'visibility':'visible','top':$(document).scrollTop()+topMeasure});modalBG.css({"display":"block"});unlockModal()}}}
function closeModal(){if(!locked){lockModal();if(options.animation=="fadeAndPop"){modalBG.delay(options.animationspeed).fadeOut(options.animationspeed);modal.animate({"top":$(document).scrollTop()-topOffset,"opacity":0},options.animationspeed/2,function(){modal.css({'top':topMeasure,'opacity':1,'visibility':'hidden'});unlockModal();});}
if(options.animation=="fade"){modalBG.delay(options.animationspeed).fadeOut(options.animationspeed);modal.animate({"opacity":0},options.animationspeed,function(){modal.css({'opacity':1,'visibility':'hidden','top':topMeasure});unlockModal();});}
if(options.animation=="none"){modal.css({'visibility':'hidden','top':topMeasure});modalBG.css({'display':'none'});}}}
function unlockModal(){locked=false;}
function lockModal(){locked=true;}});}})(jQuery);;$(function(){$(".entry-content object").attr({width:"502",height:"308"});$(".widget-tabbed .tab-links a").click(function(e){e.preventDefault();$(this).parent().addClass("active").siblings().removeClass("active");$(this).parent().parent().parent().find(".tab-is").removeClass("active");$(this).parent().parent().parent().find(".tab-is").eq($(this).parent().index()).addClass("active");});$(".form-tabbed .form-tab-navigation a").click(function(e){e.preventDefault();$(this).addClass("active").parent().siblings().find("a").removeClass("active");$(this).parent().parent().parent().find(".form-tab").removeClass("active");$(this).parent().parent().parent().find(".form-tab").eq($(this).parent().index()).addClass("active");});$(".add-friend-link").click(function(e){e.preventDefault();var uid=$(this).attr("data-uid");if(toggleRelate(uid,"friend")){$(this).text("Request sent");}else{alert("Failed D:");}});$("#next_popular").click(function(){rotateWidget();});$("#thread-likes-item>a").click(function(e){e.preventDefault();heartThread($(this).attr("data-threadid"));});$(".bottom-slideup").hide();$(".remove-friend-link").click(function(e){e.preventDefault();var uid=$(this).attr("data-uid");if(toggleRelate(uid,"fiend")){$(this).text("Unfriended");}else{alert("Failed D:");}});$(".nav-dropdown-link").toggle(function(){$(this).siblings(".nav-dropdown").show();},function(){$(this).siblings(".nav-dropdown").hide();});$(".nav-toggle-link").click(function(){$(this).siblings(".nav-toggle-content").first().slideToggle("slow");$(this).toggleClass("nav-toggle-link-inactive");});$("#user-vcard-more a#user-vcard-more-link").toggle(function(){$(this).text("Less "+$("<div>").html("&larr;").text());$(this).siblings("ul").slideDown("fast");},function(){$(this).text("More "+$("<div>").html("&rarr;").text());$(this).siblings("ul").slideUp("fast");});if($("#postTags")){$("#postTags").tagsInput({width:"98%"});}
if($("#postContent").is("textarea")){if($("#postUpload").is("input")){var textbox=$('#postContent');var upload_ids=$("#postUploadIDs");var upload_list=$("#postUploadList");new AjaxUpload('postUpload',{action:'/upload/single',name:'postUpload',allowedExtensions:['jpg','jpeg','png','gif'],onSubmit:function(file,extension){$('#loader').fadeIn(500);},onComplete:function(file,response){$("#loader").fadeOut(500);var o=$.parseJSON(response);$("<li></li>").html('<img src="http://thecolorless.net/uploads/'+o.filename+'" width="100" /><input type="text" readonly="readonly" value="http://thecolorless.net/uploads/'+o.filename+'" />').appendTo(upload_list);upload_list.find(".nothing").parent().slideUp(500);textbox.val(textbox.val()+"\nhttp://thecolorless.net/uploads/"+o.filename+"\n");upload_ids.val(o.id+","+upload_ids.val());}});$("#postUploadList img[class!=nothing]").live('click',function(){var url=$(this).attr("src");textbox.val(textbox.val()+"\n"+url+"\n");});$("#postUploadList input[type=text]").live('click',function(){$(this).select();});$("#postUploadList input[type=text]").tipTip({defaultPosition:"top",activation:"focus",maxWidth:"400px",content:"This is the URL to the image. Click on the thumbnail beneath to insert this URL into your post"});}
$("#pollAnswersB").tagsInput({'width':'98%','height':'25px','defaultText':'add answer'});$("#eventForm #eventEnd").mask("99/99/9999",{placeholder:"-"});$("#eventForm #eventStart").mask("99/99/9999",{placeholder:"-"});$("#newPost").submit(function(){$("#newPost #eventName").val($("#eventForm #eventName").val());$("#newPost #eventLocation").val($("#eventForm #eventLocation").val());$("#newPost #eventStart").val($("#eventForm #eventStart").val());$("#newPost #eventEnd").val($("#eventForm #eventEnd").val());$("#newPost #eventStatus").val($("#eventForm").is(':visible')?"enabled":"disabled");$("#newPost #pollQuestion").val($("#pollForm #pollQuestion").val());$("#newPost #pollAnswers").val($("#pollForm #pollAnswersB").val());$("#newPost #pollStatus").val($("#pollForm").is(':visible')?"enabled":"disabled");});$("#doPreview").click(function(){$("#loader").fadeIn(500);$.post('/post/preview',{'raw':$('#postContent').val()},function(o){$("#postPreview").html(o);$("#postPreviewContainer").slideDown(800,function(){$(window).scrollTo($("#postPreviewContainer"),800);});$("#loader").fadeOut(500);});});}
tipTip(".tooltipped",{defaultPosition:"top",fadeIn:50,fadeOut:50,delay:50});tipTip(".tooltipped-b",{defaultPosition:"bottom",fadeIn:50,fadeOut:50,delay:50});if($(window).width()>=481){$(window).scroll(function(event){var y=$(this).scrollTop();if(y>=200){$('#back-to-top-master').fadeIn("fast");}else{$('#back-to-top-master').fadeOut("fast");}});}
$("#back-to-top-master").click(function(e){e.preventDefault();$('html, body').animate({scrollTop:0},500);});});setInterval(liveTime,10000);jQuery.extend(jQuery.expr[':'],{focus:function(element){return element==document.activeElement;}});var tipTip=function(selector,options){var elements=jQuery(selector);elements.tipTip(options);$('body').ajaxComplete(function(){elements=jQuery(selector);elements.tipTip(options);});return elements;}
var pos=0;var m=function(i){var min=0;var max=$('.thread-item, .entry').size()-1;var test_pos=pos+i;if(test_pos>=min&&test_pos<=max){pos+=i;$.scrollTo('.thread-item:eq('+pos+'), .entry:eq('+pos+')')}else{return false;}};$(document).keydown(function(e){if($("input, textarea, select").is(":focus")){}else{switch(e.keyCode){case 74:m(1);break;case 75:m(-1);break;}}});function quotePost(o){var postID=$(o).parent().parent().parent().attr("id");var oldContent=$("#postContent").val();var postAuthor=$(o).parent().parent().parent().find(".user>a").text();$("#postContent").val("@"+postAuthor+" "+oldContent).focus();}
function toggleRelate(uid,model){var status=$.get("/profile/relate/"+model+"/"+uid,{},function(o){o=o.toJSON();if(o.status=="ok")
return true;else
return false;});return status;}
function heartThread(id){$("#loader").fadeIn(500);$.getJSON('/thread/toggle_follow/'+id,{},function(o){$("#loader").fadeOut(500);if(o.code=="200"){if(o.status=="following"){$("#thread-likes-item").addClass("is-following");$("#thread-likes").text(o.count);$("#thread-likes-text").text("Unheart it");}else{$("#thread-likes-item").removeClass("is-following");$("#thread-likes").text(o.count);$("#thread-likes-text").text("Heart it");}}else{alert("Your love didn't go through (The request failed)");}});}
function rotateWidget(){$("#loader").fadeIn(500);$.get('/thread/popular_widget?'+Math.random(),function(data){$("#featured-popular").fadeOut(500,function(){$("#featured-popular").html(data);$("#loader").fadeOut(500);$("#featured-popular").fadeIn(500);});});}
function liveTime(){$(".timestamp").each(function(i,e){var stamp=$(e).attr("data-timestamp");$(e).text(Date.relativeTime(stamp));});}
Date.UTCTimestamp=function(o)
{if(!(o&&o instanceof Date))
o=new Date();return Date.UTC(o.getUTCFullYear(),o.getUTCMonth(),o.getUTCDate(),o.getUTCHours(),o.getUTCMinutes(),o.getUTCSeconds())/1000;}
Date.relativeTime=function(ts1,ts2)
{if(!ts2)ts2=Date.UTCTimestamp();var diff=ts2-ts1;if(diff<5)
{return"about 5 sec ago";}
else if(diff<21)
{return"about 20 sec ago";}
else if(diff<60)
{return"about a minute ago";}
else if(diff<3600)
{return Math.floor(diff/60)+" minutes ago";}
else if(diff<5400)
{return"about an hour ago";}
else if(diff<7200)
{return"about two hours ago";}
else if(diff<86400)
{return Math.floor(diff/3600)+" hours ago";}
else if(diff<180000)
{return"Yesterday";}
else
{return Math.floor(diff/86400)+" days ago";}};(function(jQuery,undefined){var stepHooks="backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color outlineColor".split(" "),rplusequals=/^([\-+])=\s*(\d+\.?\d*)/,stringParsers=[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(execResult){return[execResult[1],execResult[2],execResult[3],execResult[4]];}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(execResult){return[2.55*execResult[1],2.55*execResult[2],2.55*execResult[3],execResult[4]];}},{re:/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,parse:function(execResult){return[parseInt(execResult[1],16),parseInt(execResult[2],16),parseInt(execResult[3],16)];}},{re:/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/,parse:function(execResult){return[parseInt(execResult[1]+execResult[1],16),parseInt(execResult[2]+execResult[2],16),parseInt(execResult[3]+execResult[3],16)];}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(execResult){return[execResult[1],execResult[2]/100,execResult[3]/100,execResult[4]];}}],color=jQuery.Color=function(color,green,blue,alpha){return new jQuery.Color.fn.parse(color,green,blue,alpha);},spaces={rgba:{cache:"_rgba",props:{red:{idx:0,min:0,max:255,type:"int",empty:true},green:{idx:1,min:0,max:255,type:"int",empty:true},blue:{idx:2,min:0,max:255,type:"int",empty:true},alpha:{idx:3,min:0,max:1,type:"float",def:1}}},hsla:{cache:"_hsla",props:{hue:{idx:0,mod:360,type:"int",empty:true},saturation:{idx:1,min:0,max:1,type:"float",empty:true},lightness:{idx:2,min:0,max:1,type:"float",empty:true}}}},rgbaspace=spaces.rgba.props,support=color.support={},colors,each=jQuery.each;spaces.hsla.props.alpha=rgbaspace.alpha;function clamp(value,prop,alwaysAllowEmpty){if((prop.empty||alwaysAllowEmpty)&&value==null){return null;}
if(prop.def&&value==null){return prop.def;}
if(prop.type==="int"){value=~~value;}
if(prop.mod){value=(value<0?value+prop.mod*(1+~~(-value/prop.mod)):value)%prop.mod;}
if(prop.type==="float"){value=parseFloat(value);}
if(jQuery.isNaN(value)){value=prop.def;}
return prop.min>value?prop.min:prop.max<value?prop.max:value;}
color.fn=color.prototype={constructor:color,parse:function(red,green,blue,alpha){if(red===undefined){this._rgba=[null,null,null,null];return this;}
if(red instanceof jQuery||red.nodeType){red=red instanceof jQuery?red.css(green):jQuery(red).css(green);green=undefined;}
var inst=this,type=jQuery.type(red),rgba=this._rgba=[],source;if(green!==undefined){red=[red,green,blue,alpha];type="array";}
if(type==="string"){red=red.toLowerCase();each(stringParsers,function(i,parser){var match=parser.re.exec(red),values=match&&parser.parse(match),parsed,spaceName=parser.space||"rgba",cache=spaces[spaceName].cache;if(values){parsed=inst[spaceName](values);if(spaceName!="rgba"){inst[cache]=parsed[cache];}
rgba=inst._rgba=parsed._rgba;return false;}});if(rgba.length!==0){if(Math.max.apply(Math,rgba)===0){$.extend(rgba,colors.transparent);}
return this;}
red=colors[red]||colors._default;return this.parse(red);}
if(type==="array"){each(rgbaspace,function(key,prop){rgba[prop.idx]=clamp(red[prop.idx],prop);});return this;}
if(type==="object"){if(red instanceof color){each(spaces,function(spaceName,space){if(red[space.cache]){inst[space.cache]=red[space.cache].slice();}});}else{each(spaces,function(spaceName,space){each(space.props,function(key,prop){var cache=space.cache;if(!inst[cache]&&space.to){if(red[key]==null||key==="alpha"){return;}
inst[cache]=space.to(inst._rgba);}
inst[cache][prop.idx]=clamp(red[key],prop,true);});});}
return this;}},is:function(compare){var is=color(compare),same=true,that=this;each(spaces,function(_,space){var isCache=is[space.cache],localCache;if(isCache){localCache=that[space.cache]||space.to&&space.to(that._rgba)||[];each(space.props,function(_,prop){if(isCache[prop.idx]!=null){same=(isCache[prop.idx]==localCache[prop.idx]);return same;}});}
return same;});return same;},_space:function(){var used=[],inst=this;each(spaces,function(spaceName,space){if(inst[space.cache]){used.push(spaceName);}});return used.pop();},transition:function(other,distance){var end=color(other),spaceName=end._space(),space=spaces[spaceName],start=this[space.cache]||space.to(this._rgba),arr=start.slice();end=end[space.cache];each(space.props,function(key,prop){var s=start[prop.idx],e=end[prop.idx];if(e===null){return;}
if(s===null){arr[prop.idx]=e;}else{if(prop.mod){if(e-s>prop.mod/2){s+=prop.mod;}else if(s-e>prop.mod/2){s-=prop.mod;}}
arr[prop.idx]=clamp((e-s)*distance+s,prop);}});return this[spaceName](arr);},blend:function(opaque){if(this._rgba[3]===1){return this;}
var rgb=this._rgba.slice(),a=rgb.pop(),blend=color(opaque)._rgba;return color(jQuery.map(rgb,function(v,i){return(1-a)*blend[i]+a*v;}));},toRgbaString:function(){var rgba=jQuery.map(this._rgba,function(v,i){return v==null?(i>2?1:0):v;});if(rgba[3]===1){rgba.length=3;}
return(rgba.length===3?"rgb(":"rgba(")+rgba.join(",")+")";},toHslaString:function(){var hsla=jQuery.map(this.hsla(),function(v,i){v=v==null?(i>2?1:0):v;if(i===1||i===2){v=Math.round(v*100)+"%";}
return v;});if(hsla[3]===1){hsla.length=3;}
return(hsla.length===3?"hsl(":"hsla(")+hsla.join(",")+")";},toHexString:function(includeAlpha){var rgba=this._rgba.slice();if(!includeAlpha){rgba.length=3;}
return"#"+jQuery.map(rgba,function(v,i){var fac=(i===3)?255:1,hex=(v*fac).toString(16);return hex.length===1?"0"+hex:hex.substr(0,2);}).join("");},toString:function(){if(this._rgba[3]===0){return"transparent";}
return this.toRgbaString();}};color.fn.parse.prototype=color.fn;function hue2rgb(p,q,h){h=(h+1)%1;if(h*6<1){return p+(q-p)*6*h;}
if(h*2<1){return q;}
if(h*3<2){return p+(q-p)*((2/3)-h)*6;}
return p;}
spaces.hsla.to=function(rgba){if(rgba[0]==null||rgba[1]==null||rgba[2]==null){return[null,null,null,rgba[3]];}
var r=rgba[0]/255,g=rgba[1]/255,b=rgba[2]/255,a=rgba[3],max=Math.max(r,g,b),min=Math.min(r,g,b),diff=max-min,add=max+min,l=add*0.5,h,s;if(min===max){h=0;}else if(r===max){h=(60*(g-b)/diff)+360;}else if(g===max){h=(60*(b-r)/diff)+120;}else{h=(60*(r-g)/diff)+240;}
if(l===0||l===1){s=l;}else if(l<=0.5){s=diff/add;}else{s=diff/(2-add);}
return[Math.round(h)%360,s,l,a==null?1:a];};spaces.hsla.from=function(hsla){if(hsla[0]==null||hsla[1]==null||hsla[2]==null){return[null,null,null,hsla[3]];}
var h=hsla[0]/360,s=hsla[1],l=hsla[2],a=hsla[3],q=l<=0.5?l*(1+s):l+s-l*s,p=2*l-q,r,g,b;return[Math.round(hue2rgb(p,q,h+(1/3))*255),Math.round(hue2rgb(p,q,h)*255),Math.round(hue2rgb(p,q,h-(1/3))*255),a];};each(spaces,function(spaceName,space){var props=space.props,cache=space.cache,to=space.to,from=space.from;color.fn[spaceName]=function(value){if(to&&!this[cache]){this[cache]=to(this._rgba);}
if(value===undefined){return this[cache].slice();}
var type=jQuery.type(value),arr=(type==="array"||type==="object")?value:arguments,local=this[cache].slice(),ret;each(props,function(key,prop){var val=arr[type==="object"?key:prop.idx];if(val==null){val=local[prop.idx];}
local[prop.idx]=clamp(val,prop);});if(from){ret=color(from(local));ret[cache]=local;return ret;}else{return color(local);}};each(props,function(key,prop){if(color.fn[key]){return;}
color.fn[key]=function(value){var vtype=jQuery.type(value),fn=(key==='alpha'?(this._hsla?'hsla':'rgba'):spaceName),local=this[fn](),cur=local[prop.idx],match;if(vtype==="undefined"){return cur;}
if(vtype==="function"){value=value.call(this,cur);vtype=jQuery.type(value);}
if(value==null&&prop.empty){return this;}
if(vtype==="string"){match=rplusequals.exec(value);if(match){value=cur+parseFloat(match[2])*(match[1]==="+"?1:-1);}}
local[prop.idx]=value;return this[fn](local);};});});each(stepHooks,function(i,hook){jQuery.cssHooks[hook]={set:function(elem,value){value=color(value);if(!support.rgba&&value._rgba[3]!==1){var curElem=hook==="backgroundColor"?elem.parentNode:elem,backgroundColor;do{backgroundColor=jQuery.curCSS(curElem,"backgroundColor");if(backgroundColor!==""&&backgroundColor!=="transparent"){break;}}while((curElem=curElem.parentNode)&&curElem.style);value=value.blend(backgroundColor||"_default");}
value=value.toRgbaString();elem.style[hook]=value;}};jQuery.fx.step[hook]=function(fx){if(!fx.colorInit){fx.start=color(fx.elem,hook);fx.end=color(fx.end);fx.colorInit=true;}
jQuery.cssHooks[hook].set(fx.elem,fx.start.transition(fx.end,fx.pos));};});jQuery(function(){var div=document.createElement("div"),div_style=div.style;div_style.cssText="background-color:rgba(150,255,150,.5)";support.rgba=div_style.backgroundColor.indexOf("rgba")>-1;});colors=jQuery.Color.names={aqua:"#00ffff",azure:"#f0ffff",beige:"#f5f5dc",black:"#000000",blue:"#0000ff",brown:"#a52a2a",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgrey:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkviolet:"#9400d3",fuchsia:"#ff00ff",gold:"#ffd700",green:"#008000",indigo:"#4b0082",khaki:"#f0e68c",lightblue:"#add8e6",lightcyan:"#e0ffff",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightyellow:"#ffffe0",lime:"#00ff00",magenta:"#ff00ff",maroon:"#800000",navy:"#000080",olive:"#808000",orange:"#ffa500",pink:"#ffc0cb",purple:"#800080",violet:"#800080",red:"#ff0000",silver:"#c0c0c0",white:"#ffffff",yellow:"#ffff00",transparent:[null,null,null,0],_default:"#ffffff"};})(jQuery);;(function(){var Snowflakes=function(){var Field=document.getElementById('snowfield');var field=Field.getContext('2d');Field.width=window.innerWidth;Field.height=window.innerHeight;var Flakes=[];var Flake=function(x,y){this.x=x;this.y=y;this.speed_y=Math.floor(Math.random()*3);if(this.speed_y==0)this.speed_y=1;};var generate_flakes=function(number,max_x,max_y){if(number==null)number=100;if(max_x==null)max_x=Field.width;if(max_y==null)max_y=Field.height;for(var i=0;i<number;i++){new_flake(max_x,max_y);}};var new_flake=function(max_x,max_y){Flakes.push(new Flake(Math.floor(Math.random()*max_x),Math.floor(Math.random()*max_y)));};var update_flakes=function(){for(var i=0,length=Flakes.length;i<length;i++){var flake=Flakes[i];flake.y=flake.y+flake.speed_y;if(flake.x>=Field.width||flake.y>=Field.height)Flakes.splice(i,1)&&new_flake(Field.width,10);}};var draw_flakes=function(){field.clearRect(0,0,Field.width,Field.height);field.fillStyle='rgba(255, 255, 255, 0.5)';for(var i=0,length=Flakes.length;i<length;i++){field.fillRect(Flakes[i].x,Flakes[i].y,3,3);}};var animation;this.fall=function(){var count=0;generate_flakes(300);animation=window.setInterval(function(){update_flakes();draw_flakes();count++;},70);};this.stop=function(){window.clearInterval(animation);};this.fall();return this;};$(function(){$("a.enable-snow").toggle(function(){$("#snowfield").css("display","block");if(typeof window.Snowflakes=="undefined")window.Snowflakes=new Snowflakes();else window.Snowflakes.fall();},function(){$("#snowfield").css("display","none");window.Snowflakes.stop();});});}).call(this);
