(function(){var a=new Class({SKIP_REMOVE_CHILD:-1,SKIP_CLOSE:0,SKIP_INNER_HTML:3,SKIP_SHOW_AFTER_AJAX:4,isShown:0,classId:"",hasShadow:false,isResizable:false,options:{onBeforeStart:Class.empty,onAfterStart:Class.empty,onBeforeClose:Class.empty,onAfterClose:Class.empty,onCompleteAjax:Class.empty,onErrorAjax:Class.empty,title:"",escclick:false,esckey:false,resizable:false,draggable:false,maximize:true,minimize:true,"style-princDiv":"princDivModalDiv","style-titleDiv":"titleDivModalDiv","style-contentDiv":"contentDivModalDiv","style-imgCloser":"imgCloserModalDiv","style-resizerDiv":"resizerDivModalDiv","style-hiderDiv":"hiderBackGroundModalDiv",enableEffect:false,background:true,autoShow:false,isAjaxCall:false,"dimension-top":"50px","dimension-left":"20px","dimension-width":"300px","dimension-height":"500px",centered:false,"background-title":"rgba(224, 224, 224, 0.9)","background-body":"rgba(255, 255, 255, 0.9)","background-footer":"rgba(224, 224, 224, 0.9)","background-closer":"#ffffff","background-maximize":"#00ff00","background-minimize":"#ffff00","background-sfondo":"#000000","title-text-color":"#999999","canvas-border-radius":8,"drop-shadow":false,"shadow-blur":8,"shadow-alpha":0.9,"shadow-distance":5,"shadow-color":"#000000","smooth-header":22,"smooth-footer":22,"icon-size":14,"border-top-offset":3,"border-right-offset":10,"button-padding":2,"canvas-border-color":"#888888","icon-top-color":"#EEC2CB","icon-bottom-color":"#FF0000","icon-top-color-over":"#FF0505","icon-bottom-color-over":"#FFC8CF","icon-border-color":"#888888","resizer-color":"#444444",debug:false},setClassId:function(d){this.classId=d},getClassId:function(){return this.classId},initialize:function(d){if(!d){return}this.options=$merge(this.options,d);if(window.ie6||window.chrome){this.options["drop-shadow"]=false}this.outerDiv=new Element("div",{"class":"popupOuterDiv withCanvas"});this.princDiv=new Element("div",{"class":"princDivModalDiv"});this.titleDiv=new Element("div",{"class":"titleDivModalDiv"}).setHTML(this.options.title);this.contentDiv=new Element("div",{"class":"contentDivModalDiv"});this.imgCloser=new Element("div",{title:"Close","class":"imgCloserModalDivId"});this.hiderBackGroundDiv=new Element("div",{"class":"hiderBackGroundModalDiv"});this.resizerDiv=new Element("div",{"class":"resizerDivModalDiv"});this.canvas=new Element("canvas");this.minimizeDiv=new Element("div",{"class":"minimizeDiv"});this.maximizeDiv=new Element("div",{"class":"maximizeDiv"});this.titleDiv.setStyle("color",this.options["title-text-color"]);this.princDiv.appendChild(this.titleDiv);this.princDiv.appendChild(this.contentDiv);this.hiderBackGroundDiv.setStyle("background",this.options["background-sfondo"]);this.outerDiv.appendChild(this.canvas);if(window.ie){G_vmlCanvasManager.initElement(this.canvas);this.canvas=this.outerDiv.getElement("canvas");this.options["drop-shadow"]=false}if(this.options["drop-shadow"]){this.c2=new Element("canvas",{"class":"canvas_2"});this.c3=new Element("canvas",{"class":"canvas_3"});this.c4=new Element("canvas",{"class":"canvas_4"});if(window.ie){this.outerDiv.appendChild(this.c2);G_vmlCanvasManager.initElement(this.c2);this.c2=this.outerDiv.getElement("canvas.canvas_2");this.outerDiv.appendChild(this.c3);G_vmlCanvasManager.initElement(this.c3);this.c3=this.outerDiv.getElement("canvas.canvas_3");this.outerDiv.appendChild(this.c4);G_vmlCanvasManager.initElement(this.c4);this.c4=this.outerDiv.getElement("canvas.canvas_4")}}this.outerDiv.appendChild(this.princDiv);this.outerDiv.appendChild(this.imgCloser);if(this.options.resizable){this.outerDiv.appendChild(this.resizerDiv)}if(this.options.minimize){this.outerDiv.appendChild(this.minimizeDiv)}if(this.options.maximize){this.outerDiv.appendChild(this.maximizeDiv)}this.outerDiv.setStyle("height",this.options["dimension-height"]);this.outerDiv.setStyle("width",this.options["dimension-width"]);this.outerDiv.setStyle("left",this.options["dimension-left"]);this.outerDiv.setStyle("top",this.options["dimension-top"]);if(window.ie6){this.outerDiv.setStyle("position","absolute")}if(window.ie6){this.imgCloser.setStyle("margin-right","0")}if(this.options.minimize){this.minimizeDiv.addEvent("click",this.minimize.bind(this))}if(this.options.maximize){this.maximizeDiv.addEvent("click",this.maximize.bind(this));this.titleDiv.addEvent("dblclick",this.maximize.bind(this))}this.effectDiv=null;if(this.options.enableEffect&&this.options.background){this.effectDiv=this.hiderBackGroundDiv.effects({duration:500,transition:Fx.Transitions.Quart.easeOut})}this.getPrincDiv=function(){return this.princDiv};this.getTitle=function(){return this.titleDiv};this.getTitleText=function(){return(this.options.title||"")};this.getContent=function(){return this.contentDiv};this.getClose=function(){return this.imgCloser};this.getPopup=function(){return this.outerDiv};this.getCanvas=function(){return this.canvas};this.getGraphic=function(){return this.canvas.getContext("2d")};this.getAllObject=function(){return[this.getPrincDiv(),this.getTitle(),this.getContent(),this.getClose(),this.getPopup(),this.getCanvas()]};this.addEvents({onBeforeStart:this.options.onBeforeStart,onAfterStart:this.options.onAfterStart,onBeforeClose:this.options.onBeforeClose,onAfterClose:this.options.onAfterClose,onCompleteAjax:this.options.onCompleteAjax,onErrorAjax:this.options.onErrorAjax});if(this.options.autoShow&&this.options.isAjaxCall!=true){this.show()}if(this.options["drop-shadow"]){this.hasShadow=true}if(this.options.resizable){this.isResizable=true}return this},restore:function(){if(this.hasShadow){this.options["drop-shadow"]=true}if(this.isResizable){this.options.resizable=true}this.outerDiv.removeClass("minimized");this.outerDiv.removeClass("maximized");this.outerDiv.setStyles(this.options.oldStyle);this.options.oldStyle=undefined;this.titleDiv.setStyle("background-color","");if(this.options.draggable){this.titleDiv.setStyle("cursor","move")}this.setContentHeight();this.repaint();this.fireEvent("onRestore",[this])},minimize:function(){this.outerDiv.removeClass("maximized");if(this.outerDiv.hasClass("minimized")){this.restore()}else{if(this.hasShadow){this.options["drop-shadow"]=false}if(this.isResizable){this.options.resizable=false}if(!this.options.oldStyle){this.options.oldStyle={top:this.outerDiv.getStyle("top"),left:this.outerDiv.getStyle("left"),height:this.outerDiv.getStyle("height"),width:this.outerDiv.getStyle("width")}}this.outerDiv.addClass("minimized");this.outerDiv.setStyles({height:"",width:""});var e=1;var d=window.getHeight()-this.outerDiv.offsetHeight;this.outerDiv.setStyles({left:e+"px",top:d+"px"});this.titleDiv.setStyle("cursor","normal");this.fireEvent("onMinimize",[this])}this.setContentHeight();this.repaint()},maximize:function(){this.outerDiv.removeClass("minimized");if(this.outerDiv.hasClass("maximized")){this.restore()}else{if(this.hasShadow){this.options["drop-shadow"]=false}if(this.isResizable){this.options.resizable=false}this.outerDiv.addClass("maximized");if(!this.options.oldStyle){this.options.oldStyle={top:this.outerDiv.getStyle("top"),left:this.outerDiv.getStyle("left"),height:this.outerDiv.getStyle("height"),width:this.outerDiv.getStyle("width")}}this.outerDiv.setStyles({left:"",top:"",width:window.getWidth(),height:window.getHeight()});this.titleDiv.setStyle("cursor","normal");this.fireEvent("onMaximize",[this])}this.setContentHeight();this.repaint()},completeAjax:function(e,f){if(e==this.options.errAjaxResponse||e.length==0){this.fireEvent("onErrorAjax",[this,e,f]);return this}var d=this.fireEvent("onCompleteAjax",[this,e,f]);if(d==false){return this}if(d!=this.SKIP_INNER_HTML){this.setContentInnerHTML(e)}if(d==this.SKIP_SHOW_AFTER_AJAX){return this}if(this.options.autoShow){this.show()}},callAjax:function(d){d=$merge({url:false,parameter:false,errResponse:false},d);if(!d.url){return this}if(d.parameter){d.url+="?"+d.parameter}this.options.errAjaxResponse=d.errResponse;this.ajaxObj=new Ajax(d.url,{method:"POST",onComplete:this.completeAjax.bind(this),onFailure:(function(e,f){this.fireEvent("onErrorAjax",[this,e,f])}).bind(this)}).request();return this},setEscKey:function(){document.addEvent("keypress",this.documentListener.bindAsEventListener(this,[true]))},documentListener:function(f,d){if(f.keyCode==27){this.close(f,d)}},setEscClick:function(){this.imgCloser.addEvent("click",this.close.bindAsEventListener(this,[true]))},setDimensionPos:function(g,f,e,d){this.setTop(f+"px");this.setLeft(g+"px");this.setWidth(e+"px");this.setHeight(d+"px");this.setEffects()},setTop:function(d){this.outerDiv.setStyle("top",d)},setLeft:function(d){this.outerDiv.setStyle("left",d)},setHeight:function(d){this.outerDiv.setStyle("height",d)},setWidth:function(d){this.outerDiv.setStyle("width",d)},appendContentDiv:function(d){if(this.contentDiv){if(d){this.contentDiv.appendChild(d)}}},setContentInnerHTML:function(d){if(this.contentDiv){this.contentInnerDiv=new Element("div").setStyles({width:"100%",height:"100%",overflow:"auto"});this.contentInnerDiv.setHTML(d);this.appendContentDiv(this.contentInnerDiv)}},isShowed:function(){return(this.isShown==1)},show:function(){if(this.isShown==1){return this}this.setEffects();this.setContentHeight();if(this.options.escclick){this.setEscClick()}if(this.options.esckey){this.setEscKey()}var d=$(document.body).hasChild(this.outerDiv);if(this.options.background==true){if(!$(document.body).hasChild(this.hiderBackGroundDiv)){document.body.appendChild(this.hiderBackGroundDiv)}}if(!$(document.body).hasChild(this.outerDiv)){document.body.appendChild(this.outerDiv)}this.fireEvent("onBeforeStart",[this,d]);this.hiderBackGroundDiv.setStyle("opacity","0.0");this.hiderBackGroundDiv.setStyle("display","block");if(window.ie6||window.ie8){this.disableSelect()}if(this.effectDiv){this.effectDiv.start({opacity:0.5}).chain((function(){this.outerDiv.setStyle("display","block")}).bind(this))}else{this.hiderBackGroundDiv.setStyle("opacity","0.5");this.outerDiv.setStyle("display","block")}if(this.options.centered){this.outerDiv.setStyles({top:((window.getHeight()/2)-(this.outerDiv.offsetHeight/2)),left:((window.getWidth()/2)-(this.outerDiv.offsetWidth/2))})}else{this.outerDiv.setStyles({top:this.outerDiv.offsetTop,left:this.outerDiv.offsetLeft})}this.fireEvent("onAfterStart",[this]);this.setContentHeight();this.repaint();this.isShown=1;return this},close:function(g,f){var d;d=this.fireEvent("onBeforeClose",[this]);if(d==this.SKIP_CLOSE){return this}this.outerDiv.setStyle("display","none");if(this.effectDiv){this.effectDiv.start({opacity:0}).chain((function(e,h){this.hiderBackGroundDiv.setStyle("display","none");if(e&&h!=this.SKIP_REMOVE_CHILD){document.body.removeChild(this.hiderBackGroundDiv)}}).bind(this,[this.options.background,d]))}else{this.hiderBackGroundDiv.setStyle("display","none");if(this.options.background&&d!=this.SKIP_REMOVE_CHILD){document.body.removeChild(this.hiderBackGroundDiv)}}d=this.fireEvent("onAfterClose",[this]);if(window.ie6){this.enableSelect()}document.body.removeChild(this.outerDiv);document.removeEvents("keypress",this.documentListener);this.imgCloser.removeEvents("click",this.close);if(d!=this.SKIP_REMOVE_CHILD){this.options=null}this.effectDiv=null;this.isShown=undefined;return this},disableSelect:function(){this.allSelectToDisable={};$ES("select",this.princDiv).each(function(e,d){e.addClass("doNotTouchPopup")},this);$ES("select",document.body).each(function(e,d){if(e.hasClass("doNotTouchPopup")){return}if(!e.hasClass("hide")){this.allSelectToDisable[""+d]=e;e.addClass("hide")}},this)},enableSelect:function(){for(var d in this.allSelectToDisable){if($(this.allSelectToDisable[d])){$(this.allSelectToDisable[d]).removeClass("hide")}}},setEffects:function(){var d=this.options["dimension-width"];var e=this.options["dimension-height"];if(this.options.draggable){this.titleDiv.setStyle("cursor","move");this.dragEffect=new Drag.Base(this.outerDiv,{container:document.body,handle:this.titleDiv,onBeforeStart:(function(){return !(this.outerDiv.hasClass("maximized")||this.outerDiv.hasClass("minimized"))}).bind(this)})}if(this.options.resizable){this.resizerDiv.setStyle("cursor","nw-resize");this.outerDiv.makeResizable({limit:{x:[this.options["dimension-width"],5000],y:[this.options["dimension-height"],5500]},handle:this.resizerDiv,onComplete:(function(){this.setContentHeight();this.repaint()}).bind(this)})}},setContentHeight:function(){this.canvas.setProperties({height:this.outerDiv.getStyle("height").toInt()||0,width:this.outerDiv.getStyle("width").toInt()||0});var d=this.princDiv.offsetHeight-(this.titleDiv.offsetHeight*2);if(this.options["drop-shadow"]){d=d-this.options["shadow-distance"]}if(d<0){d=0}this.contentDiv.setStyle("height",d)},setContentInnerDivHeight:function(){if(this.contentInnerDiv){this.contentInnerDiv.setStyle("height",this.contentDiv.getStyle("height").toInt()-(this.contentDiv.getStyle("height").toInt()-(this.resizerDiv.offsetTop-this.titleDiv.offsetHeight)))}},setClickOnOtherObj:function(d){if(d){$(d).addEvent("click",this.close.bindAsEventListener(this))}},repaint:function(){var t=this.options["canvas-border-radius"];var n=t;var e=this.options["button-padding"];var o=this.options["icon-size"];var l=this.options["smooth-header"];var m=this.options["smooth-footer"];var r=this.canvas.getProperty("height").toInt();var g=this.canvas.getProperty("width").toInt();this.ctx=this.canvas.getContext("2d");var d=this.options["border-top-offset"];var s=this.options["border-right-offset"];var q=l;var k=m;var j=0;var i=0;if(this.options["drop-shadow"]){j=this.options["shadow-distance"];i=this.options["shadow-blur"];this.canvas.setProperty("height",r+j+i);this.canvas.setProperty("width",g+j+i);this.ctx.save();this.ctx.translate(this.options["shadow-distance"],this.options["shadow-distance"]);this.dropShadow();this.ctx.restore()}this.ctx.beginPath();var h=this.ctx.createLinearGradient(0,0,0,q);h.addColorStop(0,this.options["background-body"]);h.addColorStop(1,this.options["background-title"]);this.ctx.fillStyle=h;this.ctx.moveTo(0,n);this.ctx.quadraticCurveTo(0,0,n,0);this.ctx.lineTo(g-n,0);this.ctx.quadraticCurveTo(g,0,g,n);this.ctx.lineTo(g,q);this.ctx.lineTo(0,q);this.ctx.lineTo(0,n);this.ctx.closePath();this.ctx.fill();if(this.options["canvas-border-color"]!="transparent"){this.ctx.lineWidth=1;this.ctx.strokeStyle=this.options["canvas-border-color"];this.ctx.stroke()}this.ctx.beginPath();var p=this.ctx.createLinearGradient(0,r-k,0,r);p.addColorStop(0,this.options["background-footer"]);p.addColorStop(1,this.options["background-body"]);this.ctx.fillStyle=p;this.ctx.moveTo(0,r-n);this.ctx.quadraticCurveTo(0,r,n,r);this.ctx.lineTo(g-n,r);this.ctx.quadraticCurveTo(g,r,g,r-n);this.ctx.lineTo(g,r-k);this.ctx.lineTo(0,r-k);this.ctx.closePath();this.ctx.fill();if(this.options["canvas-border-color"]!="transparent"){this.ctx.lineWidth=1;this.ctx.strokeStyle=this.options["canvas-border-color"];this.ctx.stroke()}this.ctx.beginPath();this.ctx.moveTo(0,q);this.ctx.lineTo(0,(r)-k);this.ctx.lineTo(g,(r)-k);this.ctx.lineTo(g,q);this.ctx.fillStyle=this.options["background-body"];this.ctx.closePath();this.ctx.fill();this.ctx.save();this.ctx.translate(g-(s+o),d+1);this.draw_icon("close");this.ctx.restore();this.imgCloser.setStyles({top:d+"px",left:(g-(o+s)-j-i)+"px"});if(this.options.debug){this.imgCloser.setStyles({border:"1px solid red"})}this.imgCloser.addEvent("mouseover",(function(){this.ctx.save();translateW=this.canvas.getProperty("width").toInt();if(this.options["drop-shadow"]){j=this.options["shadow-distance"];i=this.options["shadow-blur"];translateW=this.canvas.getProperty("width").toInt()-j-i}this.ctx.translate(translateW-(s+o),d+1);this.draw_icon("close",true);this.ctx.restore()}).bind(this));this.imgCloser.addEvent("mouseout",(function(){this.ctx.save();translateW=this.canvas.getProperty("width").toInt();if(this.options["drop-shadow"]){j=this.options["shadow-distance"];i=this.options["shadow-blur"];translateW=this.canvas.getProperty("width").toInt()-j-i}this.ctx.translate(translateW-(s+o),d+1);this.draw_icon("close",false);this.ctx.restore()}).bind(this));if(this.options.maximize||this.options.minimize){this.ctx.save();this.ctx.translate(g-((o*2)+s)-e,d+1);this.draw_icon("maximize");this.ctx.restore();var f=(this.imgCloser.getStyle("left").toInt()-(o+e));if(window.ie){f=f-j}this.maximizeDiv.setStyles({top:d+"px",left:f+"px",cursor:"pointer"});if(this.options.debug){this.maximizeDiv.setStyles({border:"1px solid blue"})}this.maximizeDiv.addEvent("mouseover",(function(){this.ctx.save();translateW=this.canvas.getProperty("width").toInt();if(this.options["drop-shadow"]){j=this.options["shadow-distance"];i=this.options["shadow-blur"];translateW=this.canvas.getProperty("width").toInt()-j-i}this.ctx.translate(translateW-((o*2)+s)-e,d+1);this.draw_icon("maximize",true);this.ctx.restore()}).bind(this));this.maximizeDiv.addEvent("mouseout",(function(){this.ctx.save();translateW=this.canvas.getProperty("width").toInt();if(this.options["drop-shadow"]){j=this.options["shadow-distance"];i=this.options["shadow-blur"];translateW=this.canvas.getProperty("width").toInt()-j-i}this.ctx.translate(translateW-((o*2)+s)-e,d+1);this.draw_icon("maximize",false);this.ctx.restore()}).bind(this))}if((this.options.maximize&&this.options.minimize)||this.options.debug){this.ctx.save();this.ctx.translate(g-((o*3)+s+(e*2)),d+1);this.draw_icon("minimize");this.ctx.restore();var f=(this.maximizeDiv.getStyle("left").toInt()-(o+e));if(window.ie){f=f-j}this.minimizeDiv.setStyles({top:d+"px",left:f+"px",cursor:"pointer"});if(this.options.debug){this.minimizeDiv.setStyles({border:"1px solid green"})}this.minimizeDiv.addEvent("mouseover",(function(){this.ctx.save();translateW=this.canvas.getProperty("width").toInt();if(this.options["drop-shadow"]){j=this.options["shadow-distance"];i=this.options["shadow-blur"];translateW=this.canvas.getProperty("width").toInt()-j-i}this.ctx.translate(translateW-((o*3)+s+(e*2)),d+1);this.draw_icon("minimize",true);this.ctx.restore()}).bind(this));this.minimizeDiv.addEvent("mouseout",(function(){this.ctx.save();translateW=this.canvas.getProperty("width").toInt();if(this.options["drop-shadow"]){j=this.options["shadow-distance"];i=this.options["shadow-blur"];translateW=this.canvas.getProperty("width").toInt()-j-i}this.ctx.translate(translateW-((o*3)+s+(e*2)),d+1);this.draw_icon("minimize",false);this.ctx.restore()}).bind(this))}if(this.options.resizable||this.options.debug){this.ctx.save();this.ctx.translate(g-18,r-18);this.draw_resizer();this.ctx.restore();this.resizerDiv.setStyles({top:(this.outerDiv.offsetHeight-this.resizerDiv.offsetHeight-j-i)+"px",left:(this.outerDiv.offsetWidth-this.resizerDiv.offsetWidth-j-i)+"px"});if(this.options.debug){this.resizerDiv.setStyles({border:"1px solid yellow"})}}},draw_icon:function(f,i){var d=this.options["icon-size"];var j=2;var h=d-j;var e=this.ctx.createLinearGradient(0,0,0,d);var g=this.ctx.createLinearGradient(0,0,0,d);g.addColorStop(0,this.options["icon-top-color"]);g.addColorStop(1,this.options["icon-border-color"]);if(window.ie){g=this.options["icon-border-color"]}if(i){e.addColorStop(0,this.options["icon-top-color-over"]);e.addColorStop(1,this.options["icon-bottom-color-over"])}else{e.addColorStop(0,this.options["icon-top-color"]);e.addColorStop(1,this.options["icon-bottom-color"])}this.ctx.lineWidth=1;this.ctx.strokeStyle=g;this.ctx.fillStyle=e;this.ctx.beginPath();this.ctx.moveTo(0,j);this.ctx.quadraticCurveTo(0,0,j,0);this.ctx.lineTo(h,0);this.ctx.quadraticCurveTo(d,0,d,j);this.ctx.lineTo(d,h);this.ctx.quadraticCurveTo(d,d,h,d);this.ctx.lineTo(j,d);this.ctx.quadraticCurveTo(0,d,0,h);this.ctx.closePath();this.ctx.fill();if(!window.ie){this.ctx.stroke()}switch(f){case"maximize":this.draw_maximize_symbol();break;case"minimize":this.draw_minimize_symbol();break;default:this.draw_close_symbol();break}},draw_close_symbol:function(){this.ctx.strokeStyle=this.options["background-closer"];this.ctx.lineCap="round";this.ctx.lineWidth=2;if(window.ie){this.ctx.moveTo(4,4);this.ctx.lineTo(10,10);this.ctx.moveTo(4,10);this.ctx.lineTo(10,4);this.ctx.stroke()}else{this.ctx.beginPath();this.ctx.moveTo(4,4);this.ctx.lineTo(10,10);this.ctx.closePath();this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(4,10);this.ctx.lineTo(10,4);this.ctx.closePath();this.ctx.stroke()}},draw_maximize_symbol:function(){this.ctx.strokeStyle=this.options["background-closer"];this.ctx.lineCap="butt";this.ctx.lineWidth=1;this.ctx.beginPath();this.ctx.moveTo(2,5);this.ctx.lineTo(9,5);this.ctx.lineTo(9,12);this.ctx.lineTo(2,12);this.ctx.lineTo(2,6);this.ctx.lineTo(9,6);this.ctx.moveTo(4,2);this.ctx.lineTo(12,2);this.ctx.lineTo(12,9);this.ctx.lineTo(9,9);this.ctx.lineTo(9,5);this.ctx.lineTo(4,5);this.ctx.lineTo(4,3);this.ctx.lineTo(12,3);this.ctx.lineTo(12,2);this.ctx.closePath();this.ctx.stroke()},draw_minimize_symbol:function(){this.ctx.strokeStyle=this.options["background-closer"];this.ctx.lineCap="butt";this.ctx.lineWidth=2;this.ctx.beginPath();this.ctx.moveTo(3,11);this.ctx.lineTo(11,11);this.ctx.stroke()},draw_resizer:function(){this.ctx.strokeStyle=this.options["resizer-color"];this.ctx.lineWidth=1;this.ctx.beginPath();this.ctx.moveTo(12,0);this.ctx.lineTo(12,1);this.ctx.moveTo(12,6);this.ctx.lineTo(12,7);this.ctx.moveTo(12,12);this.ctx.lineTo(12,13);this.ctx.moveTo(6,6);this.ctx.lineTo(6,7);this.ctx.moveTo(6,12);this.ctx.lineTo(6,13);this.ctx.moveTo(0,12);this.ctx.lineTo(0,13);this.ctx.closePath();this.ctx.stroke()},draw_shape:function(e){var d=this.options["canvas-border-radius"];var f=this.canvas.getProperty("height").toInt()-this.options["shadow-distance"]-this.options["shadow-blur"];var g=this.canvas.getProperty("width").toInt()-this.options["shadow-distance"]-this.options["shadow-blur"];e.beginPath();e.moveTo(0,d);e.quadraticCurveTo(0,0,d,0);e.lineTo(g-d,0);e.quadraticCurveTo(g,0,g,d);e.lineTo(g,f-d);e.quadraticCurveTo(g,f,g-d,f);e.lineTo(d,f);e.quadraticCurveTo(0,f,0,f-d);e.closePath()},gaussian:function(g){var f=(g<=8?g/2:Math.sqrt(g*2));var d=[];for(var e=-g;e<=g;++e){d[e+g]=Math.exp(-e*e/(2*f*f))/(Math.sqrt(2*Math.PI)*f)}return d},dropShadow:function(){var g=this.options["shadow-blur"];var d=this.options["shadow-color"];var h=this.options["shadow-alpha"];var e=this.options["shadow-distance"];var p=this.canvas.getProperty("height").toInt();var f=this.canvas.getProperty("width").toInt();this.c2.width=f-g;this.c2.height=p-g;var m=this.c2.getContext("2d");m.fillStyle=d;m.translate(e,e);this.draw_shape(m);m.fill();var i=this.gaussian(g);this.c3.width=f;this.c3.height=p;var l=this.c3.getContext("2d");l.globalCompositeOperation="lighter";for(var o=-g;o<=g;++o){l.globalAlpha=i[o+g];l.drawImage(this.c2,o,0)}this.c4.width=f;this.c4.height=p;var j=this.c4.getContext("2d");j.globalCompositeOperation="lighter";for(var n=-g;n<=g;++n){j.globalAlpha=i[n+g];j.drawImage(this.c3,0,n)}this.ctx.save();this.ctx.globalAlpha=h;this.ctx.drawImage(this.c4,-e,-e);this.ctx.restore();this.ctx.save();this.ctx.translate(-e,-e);this.ctx.globalCompositeOperation="destination-out";this.draw_shape(this.ctx);this.ctx.fill();this.ctx.restore()}});a.implement(new Options,new Events,Element.Methods.Events);window.LoggerLevels={DEBUG:4,INFO:3,WARN:2,ERROR:1};window.LoggerLevel=LoggerLevels.DEBUG;window.Logger=new Abstract({BUFFER_LEVEL:1,strLog:$A([]),div:null,debug:function(d){if(LoggerLevels.DEBUG<=LoggerLevel){this.write("[DEBUG] "+d)}},info:function(d){if(LoggerLevels.INFO<=LoggerLevel){this.write("[INFO] "+d)}},warn:function(d){if(LoggerLevels.WARN<=LoggerLevel){this.write("[WARN] "+d)}},error:function(d){if(LoggerLevels.ERROR<=LoggerLevel){this.write("[ERROR] "+d)}},write:function(d){if(this.strLog.length>this.BUFFER_LEVEL){this.flush()}this.strLog.push(new Date().getTime()+" - "+d)},flush:function(){if(!this.getDiv()){return}this.strLog.each(function(d){this.getDiv().appendText(d);new Element("br").inject(this.getDiv())},this);this.strLog=$A([])},getDiv:function(){this.div=this.div||new Element("div");return this.div}});function b(d){Logger.write(d)}function c(){if(!this.popupLog){this.popupLog=new a({title:"Javascript log",escclick:true,esckey:true,background:false,enableEffect:false,draggable:true,resizable:true,autoShow:true,maximize:true,minimize:true,"drop-shadow":true,"dimension-width":"650px","dimension-height":"400px",centered:true,"background-title":"#bbbbbb","background-body":"#ffffff","background-footer":"#bbbbbb","background-closer":"#000000","title-text-color":"#000000",onAfterClose:function(d){return d.SKIP_REMOVE_CHILD},onBeforeClose:function(d){return d.SKIP_REMOVE_CHILD},onBeforeStart:function(d,e){if(!e){if(!Logger.getDiv()){alert("An error occurred on Log visualization")}else{Logger.getDiv().inject(d.getContent())}}}})}else{if(this.popupLog.isShowed()){return}this.popupLog.show()}}return;document.addEvent("keydown",(function(d){d=new Event(d);if(d.control&&d.alt&&d.shift&&(d.key=="l")){d.stop();c()}}).bindAsEventListener(document))})();
