function CloneObject(what,recursive,asreference){if($type(what)!='object') return what;var h=$H(what);h.each(function(v,k){if($type(v)==='object'&&recursive===true&&!asreference.contains(k)){this[k]=new CloneObject(v,recursive,asreference);}else{this[k]=v;}}.bind(this));return this;} String.extend({stripScripts:function(option){var scripts='';var text=this.replace(/]*>([\s\S]*?)<\/script>/gi,function(){scripts+=arguments[1]+'\n';return'';});if(option===true)$exec(scripts);else if($type(option)=='function')option(scripts,text);return text;}});function $exec(text){if(!text)return text;if(window.execScript){window.execScript(text);}else{var script=document.createElement('script');script.setAttribute('type','text/javascript');script.text=text;document.head.appendChild(script);document.head.removeChild(script);} return text;};var FbAsset=Asset.extend({javascriptchecked:function(domain,source,properties){var scripturl=domain+source;var found=document.getElements('script').some(function(s){return(scripturl==s.src);});if(found){return;} properties=$merge({'onload':Class.empty},properties);var script=new Element('script',{'src':source}).addEvents({'load':properties.onload,'readystatechange':function(){if(this.readyState=='complete')this.fireEvent('load');}});delete properties.onload;return script.setProperties(properties).inject(document.head);}});Array.extend({flatten:function(){var array=[];for(var i=0,l=this.length;i=elLeft&&x<=elRight){if(y>=elTop&&y<=elBottom){return true;}} return false;}});Fx.Overlay=new Class({options:{'styles':{'position':'absolute','top':0,'left':0}},initialize:function(element,props,tag){this.element=$(element);this.setOptions(props);if([window,$(document.body)].contains(this.element)){this.padding=Fx.Overlay.windowPadding;this.container=$(document.body);this.element=window;}else{this.padding={x:0,y:0};this.container=this.element;} this.overlay=new Element($pick(tag,'div'),{'styles':{'display':'none'}}).inject(this.container);this.update();},show:function(){this.overlay.setStyle('display','block');return this;},update:function(props){this.overlay.set($merge(this.options,{'styles':{width:this.element.getScrollWidth()-this.padding.x,height:this.element.getScrollHeight()-this.padding.y}},props));return this;},hide:function(){this.overlay.setStyle('display','none');return this;},destroy:function(){this.overlay.remove(true);return this;}});Fx.Overlay.implement(new Options);Fx.Overlay.windowPadding=(window.ie6)?{x:21,y:4}:{x:0,y:0};Element.$overlay=function(hide,deltaZ){deltaZ=$pick(deltaZ,1);if(!this.fixOverlayElement)this.fixOverlayElement=new Element('iframe',{'properties':{'frameborder':'0','scrolling':'no','src':'javascript:void(0);'},'styles':{'position':this.getStyle('position'),'border':'none','filter':'progid:DXImageTransform.Microsoft.Alpha(opacity=0)'}}).injectBefore(this);if(hide)return this.fixOverlayElement.setStyle('display','none');var z=this.getStyle('z-index').toInt()||0;if(zmod.$limit[1])){mod.now=mod.$limit[1];mod.out=true;}else if(mod.$limit&&$chk(mod.$limit[0])&&(mod.now"){var d="/"+a.tagName,e;while((e=a.nextSibling)&&e.tagName!=d){e.removeNode()}if(e){e.removeNode()}}a.parentNode.replaceChild(c,a);return c},initElement:function(a){a=this.q(a);a.getContext=function(){if(this.l){return this.l}return this.l=new K(this)};a.attachEvent("onpropertychange",V);a.attachEvent("onresize",W);var b=a.attributes;if(b.width&&b.width.specified){a.style.width=b.width.nodeValue+"px"}else{a.width=a.clientWidth}if(b.height&&b.height.specified){a.style.height=b.height.nodeValue+"px"}else{a.height=a.clientHeight}return a}};function V(a){var b=a.srcElement;switch(a.propertyName){case"width":b.style.width=b.attributes.width.nodeValue+"px";b.getContext().clearRect();break;case"height":b.style.height=b.attributes.height.nodeValue+"px";b.getContext().clearRect();break}}function W(a){var b=a.srcElement;if(b.firstChild){b.firstChild.style.width=b.clientWidth+"px";b.firstChild.style.height=b.clientHeight+"px"}}Q.init();var R=[];for(var E=0;E<16;E++){for(var F=0;F<16;F++){R[E*16+F]=E.toString(16)+F.toString(16)}}function J(){return[[1,0,0],[0,1,0],[0,0,1]]}function G(a,b){var c=J();for(var d=0;d<3;d++){for(var e=0;e<3;e++){var g=0;for(var h=0;h<3;h++){g+=a[d][h]*b[h][e]}c[d][e]=g}}return c}function N(a,b){b.fillStyle=a.fillStyle;b.lineCap=a.lineCap;b.lineJoin=a.lineJoin;b.lineWidth=a.lineWidth;b.miterLimit=a.miterLimit;b.shadowBlur=a.shadowBlur;b.shadowColor=a.shadowColor;b.shadowOffsetX=a.shadowOffsetX;b.shadowOffsetY=a.shadowOffsetY;b.strokeStyle=a.strokeStyle;b.d=a.d;b.e=a.e}function O(a){var b,c=1;a=String(a);if(a.substring(0,3)=="rgb"){var d=a.indexOf("(",3),e=a.indexOf(")",d+1),g=a.substring(d+1,e).split(",");b="#";for(var h=0;h<3;h++){b+=R[Number(g[h])]}if(g.length==4&&a.substr(3,1)=="a"){c=g[3]}}else{b=a}return[b,c]}function S(a){switch(a){case"butt":return"flat";case"round":return"round";case"square":default:return"square"}}function K(a){this.a=J();this.m=[];this.k=[];this.c=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineCap="butt";this.miterLimit=m*1;this.globalAlpha=1;this.canvas=a;var b=a.ownerDocument.createElement("div");b.style.width=a.clientWidth+"px";b.style.height=a.clientHeight+"px";b.style.overflow="hidden";b.style.position="absolute";a.appendChild(b);this.j=b;this.d=1;this.e=1}var j=K.prototype;j.clearRect=function(){this.j.innerHTML="";this.c=[]};j.beginPath=function(){this.c=[]};j.moveTo=function(a,b){this.c.push({type:"moveTo",x:a,y:b});this.f=a;this.g=b};j.lineTo=function(a,b){this.c.push({type:"lineTo",x:a,y:b});this.f=a;this.g=b};j.bezierCurveTo=function(a,b,c,d,e,g){this.c.push({type:"bezierCurveTo",cp1x:a,cp1y:b,cp2x:c,cp2y:d,x:e,y:g});this.f=e;this.g=g};j.quadraticCurveTo=function(a,b,c,d){var e=this.f+0.6666666666666666*(a-this.f),g=this.g+0.6666666666666666*(b-this.g),h=e+(c-this.f)/3,l=g+(d-this.g)/3;this.bezierCurveTo(e,g,h,l,c,d)};j.arc=function(a,b,c,d,e,g){c*=m;var h=g?"at":"wa",l=a+M(d)*c-A,n=b+L(d)*c-A,o=a+M(e)*c-A,f=b+L(e)*c-A;if(l==o&&!g){l+=0.125}this.c.push({type:h,x:a,y:b,radius:c,xStart:l,yStart:n,xEnd:o,yEnd:f})};j.rect=function(a,b,c,d){this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+d);this.lineTo(a,b+d);this.closePath()};j.strokeRect=function(a,b,c,d){this.beginPath();this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+d);this.lineTo(a,b+d);this.closePath();this.stroke()};j.fillRect=function(a,b,c,d){this.beginPath();this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+d);this.lineTo(a,b+d);this.closePath();this.fill()};j.createLinearGradient=function(a,b,c,d){var e=new H("gradient");return e};j.createRadialGradient=function(a,b,c,d,e,g){var h=new H("gradientradial");h.n=c;h.o=g;h.i.x=a;h.i.y=b;return h};j.drawImage=function(a,b){var c,d,e,g,h,l,n,o,f=a.runtimeStyle.width,k=a.runtimeStyle.height;a.runtimeStyle.width="auto";a.runtimeStyle.height="auto";var q=a.width,r=a.height;a.runtimeStyle.width=f;a.runtimeStyle.height=k;if(arguments.length==3){c=arguments[1];d=arguments[2];h=(l=0);n=(e=q);o=(g=r)}else if(arguments.length==5){c=arguments[1];d=arguments[2];e=arguments[3];g=arguments[4];h=(l=0);n=q;o=r}else if(arguments.length==9){h=arguments[1];l=arguments[2];n=arguments[3];o=arguments[4];c=arguments[5];d=arguments[6];e=arguments[7];g=arguments[8]}else{throw"Invalid number of arguments";}var s=this.b(c,d),t=[],v=10,w=10;t.push(" ','","");this.j.insertAdjacentHTML("BeforeEnd",t.join(""))};j.stroke=function(a){var b=[],c=O(a?this.fillStyle:this.strokeStyle),d=c[0],e=c[1]*this.globalAlpha,g=10,h=10;b.push("n.x){n.x=k.x}if(l.y==null||k.yn.y){n.y=k.y}}}b.push(' ">');if(typeof this.fillStyle=="object"){var v={x:"50%",y:"50%"},w=n.x-l.x,x=n.y-l.y,p=w>x?w:x;v.x=i(this.fillStyle.i.x/w*100+50)+"%";v.y=i(this.fillStyle.i.y/x*100+50)+"%";var y=[];if(this.fillStyle.p=="gradientradial"){var z=this.fillStyle.n/p*100,B=this.fillStyle.o/p*100-z}else{var z=0,B=100}var C={offset:null,color:null},D={offset:null,color:null};this.fillStyle.h.sort(function(T,U){return T.offset-U.offset});for(var o=0;oC.offset||C.offset==null){C.offset=u.offset;C.color=u.color}if(u.offset')}else if(a){b.push('')}else{b.push("')}b.push("");this.j.insertAdjacentHTML("beforeEnd",b.join(""));this.c=[]};j.fill=function(){this.stroke(true)};j.closePath=function(){this.c.push({type:"close"})};j.b=function(a,b){return{x:m*(a*this.a[0][0]+b*this.a[1][0]+this.a[2][0])-A,y:m*(a*this.a[0][1]+b*this.a[1][1]+this.a[2][1])-A}};j.save=function(){var a={};N(this,a);this.k.push(a);this.m.push(this.a);this.a=G(J(),this.a)};j.restore=function(){N(this.k.pop(),this);this.a=this.m.pop()};j.translate=function(a,b){var c=[[1,0,0],[0,1,0],[a,b,1]];this.a=G(c,this.a)};j.rotate=function(a){var b=M(a),c=L(a),d=[[b,c,0],[-c,b,0],[0,0,1]];this.a=G(d,this.a)};j.scale=function(a,b){this.d*=a;this.e*=b;var c=[[a,0,0],[0,b,0],[0,0,1]];this.a=G(c,this.a)};j.clip=function(){};j.arcTo=function(){};j.createPattern=function(){return new P};function H(a){this.p=a;this.n=0;this.o=0;this.h=[];this.i={x:0,y:0}}H.prototype.addColorStop=function(a,b){b=O(b);this.h.push({offset:1-a,color:b})};function P(){}G_vmlCanvasManager=Q;CanvasRenderingContext2D=K;CanvasGradient=H;CanvasPattern=P})()};var MochaDesktop=new Class({options:{draggable:true,resizable:true,minimizable:true,maximizable:true,closable:true,headerHeight:25,footerHeight:30,cornerRadius:9,desktopTopOffset:20,desktopLeftOffset:290,mochaTopOffset:70,mochaLeftOffset:70,newWindowPosTop:0,newWindowPosLeft:0,minWidth:250,maxWidth:2500,minHeight:100,maxHeight:2000},initialize:function(options){this.setOptions(options);this.indexLevel=1;this.mochaControlsWidth=0;this.minimizebuttonX=0;this.maximizebuttonX=0;this.closebuttonX=0;this.scrollWidthOffset=6;this.windowIDCount=0;new Element('canvas');Element.implement({oldTop:''});Element.implement({oldLeft:''});Element.implement({oldWidth:''});Element.implement({oldHeight:''});Element.implement({maximizeToggle:'maximize'});Element.implement({modal:''});Element.implement({iframe:''});Element.implement({contentURL:''});$$('div.mocha').setStyle('display','block');if($('mochaDesktop')){this.setDesktopSize();} else{this.options.maximizable=false;} if($('mochaDock')){if(this.options.minimizable==true){$('mochaDock').setStyles({'position':'absolute','top':null,'bottom':0,'left':0});this.initDock($('mochaDock'));this.drawDock($('mochaDock'));} else{$('mochaDock').setStyle('display','none');}} else{this.options.minimizable=false;} this.insertWindowElements($$('div.mocha'));this.drawAll();this.attachDraggable($$('div.mocha'));this.attachResizable($$('div.mocha'));this.attachFocus($$('div.mocha'));this.attachMinimize($$('div.mocha'));this.attachMaximize($$('div.mocha'));this.attachClose($$('div.mocha'));this.arrangeCascade();var mochaModal=new Element('div',{'id':'mochaModalBackground'});if($('mochaDesktop')){mochaModal.injectInside($('mochaDesktop'));} else{mochaModal.injectInside(document.body);} this.setModalSize();mochaModal.setStyle('opacity',.4);this.modalOpenMorph=new Fx.Styles($('mochaModalBackground'),{'duration':200});this.modalCloseMorph=new Fx.Styles($('mochaModalBackground'),{'duration':200,onComplete:function(){$('mochaModalBackground').setStyle('display','none');}.bind(this)});if(window.ie&&$("mochaDesktopNavbar")){var sfEls=$("mochaDesktopNavbar").getElementsByTagName("LI");for(var i=0;i';} var mochaOverlay=new Element('div',{'class':'mochaOverlay'}).injectInside(el);if(window.ie){mochaOverlay.setStyle('zIndex',2)} var mochaTitlebar=new Element('div',{'class':'mochaTitlebar'}).injectTop(mochaOverlay);if(this.options.draggable&&!el.modal){mochaTitlebar.setStyle('cursor','move');} var mochaContent=new Element('div',{'class':'mochaContent'}).injectInside(mochaOverlay);mochaContent.setStyles({width:el.getStyle('width'),height:el.getStyle('height')});var mochaScroller=new Element('div',{'class':'mochaScroller'}).injectTop(mochaContent);var mochaScrollerpad=new Element('div',{'class':'mochaScrollerpad'}).setHTML(mochaTempContents).injectInside(mochaScroller);if(el.iframe){var mochaIframe=new Element('iframe',{'id':el.id+'Iframe','class':'mochaIframe','src':el.contentURL,'marginwidth':0,'marginheight':0,'frameBorder':0,'scrolling':'auto'}).injectInside(mochaScrollerpad);} if(mochaScrollerpad.getElement('h3.mochaTitle')){mochaScrollerpad.getElement('h3.mochaTitle').clone().injectInside(mochaTitlebar);mochaScrollerpad.getElement('.mochaTitle').remove();}else{new Element('h3',{'class':'mochaTitle'}).injectInside(mochaTitlebar);} if(el.contentURL&&!el.iframe){new Ajax(el.contentURL,{evalScripts:true,data:{'ignore':'me'},onFailure:function(){mochaScrollerpad.setHTML('

Error Loading XMLHttpRequest

Make sure all of your content is uploaded to your server, and that you are attempting to load a document from the same domain as this page. XMLHttpRequests will not work on your local machine.

');},onSuccess:function(response){mochaScrollerpad.setHTML(response);if(el.onContentLoaded)el.onContentLoaded();}}).request();} var canvas=new Element('canvas',{'class':'mochaCanvas','width':1,'height':1}).injectInside(el);if(window.ie){G_vmlCanvasManager.initElement(canvas);} if(this.options.resizable&&!el.modal){var resizeHandle=new Element('div',{'class':'resizeHandle'}).injectAfter(mochaOverlay);} if(window.ie&&!el.modal){resizeHandle.setStyle('zIndex',2)} var mochaControls=new Element('div',{'class':'mochaControls'}).injectAfter(mochaOverlay);if(window.ie){mochaControls.setStyle('zIndex',2)} if(this.options.closable||el.modal){new Element('div',{'class':'mochaClose','title':'Close Window'}).injectInside(mochaControls);} if(this.options.maximizable&&!el.modal){new Element('div',{'class':'maximizeToggle','title':'Maximize'}).injectInside(mochaControls);} if(this.options.minimizable){new Element('div',{'class':'minimizeToggle','title':'Minimize'}).injectInside(mochaControls);}}.bind(this));},drawAll:function(){$$('div.mocha').each(function(el){if(el.getStyle('display')!='none'){this.drawWindow(el);}}.bind(this));},drawWindow:function(el,shadows){var mochaIframe=el.getElement('.zIndexFix');var mochaOverlay=el.getElement('.mochaOverlay');var mochaContent=el.getElement('.mochaContent');var mochaScroller=el.getElement('.mochaScroller');var mochaTitlebar=el.getElement('.mochaTitlebar');var mochaCanvas=el.getElement('.mochaCanvas');var mochaControls=el.getElement('.mochaControls');var ctx=mochaCanvas.getContext('2d');if(el.id==""){el.id='win'+(++this.windowIDCount);} this.setMochaControlsWidth(el);if(el.maximizeToggle=='restore'){mochaContent.setStyle('height',(this.getWindowHeight()-this.options.headerHeight-this.options.footerHeight+6));mochaContent.setStyle('width',this.getWindowWidth());} mochaScroller.setStyle('height',mochaContent.getStyle('height'));mochaScroller.setStyle('width',mochaContent.getStyle('width'));if(el.iframe){el.getElement('.mochaIframe').setStyles({'height':mochaContent.getStyle('height')});} mochaHeight=mochaContent.scrollHeight;mochaWidth=mochaContent.scrollWidth+this.scrollWidthOffset;mochaHeight+=this.options.headerHeight+this.options.footerHeight;var sTitleBarTitle=mochaTitlebar.getProperty('title');if(sTitleBarTitle==null){sTitleBarTitle="";} mochaOverlay.setStyle('height',mochaHeight);el.setStyle('height',mochaHeight);if(window.webkit){mochaCanvas.setProperties({'width':4000,'height':2000});}else{mochaCanvas.width=mochaWidth;mochaCanvas.height=mochaHeight;} if(window.ie6){mochaIframe.setStyle('width',mochaWidth);mochaIframe.setStyle('height',mochaHeight);} mochaOverlay.setStyle('width',mochaWidth);el.setStyle('width',mochaWidth);mochaTitlebar.setStyle('width',mochaWidth-6);ctx.clearRect(0,0,this.getWindowWidth(),this.getWindowHeight());if(shadows==null||shadows==false&&!window.ie){this.roundedRect(ctx,0,0,mochaWidth,mochaHeight,this.options.cornerRadius,0,0,0,0.06);this.roundedRect(ctx,1,1,mochaWidth-2,mochaHeight-2,this.options.cornerRadius,0,0,0,0.08);this.roundedRect(ctx,2,2,mochaWidth-4,mochaHeight-4,this.options.cornerRadius,0,0,0,0.3);} this.roundedRect(ctx,3,2,mochaWidth-6,mochaHeight-6,this.options.cornerRadius,246,246,246,1.0);this.topRoundedRect(ctx,3,2,mochaWidth-this.scrollWidthOffset,this.options.headerHeight,this.options.cornerRadius);if(this.options.closable&&this.options.maximizable){this.minimizebuttonX=mochaWidth-53;}else if(this.options.closable||this.options.maximizable){this.minimizebuttonX=mochaWidth-34;}else{this.minimizebuttonX=mochaWidth-15;} if(this.options.closable){this.maximizebuttonX=mochaWidth-34;} else{this.maximizebuttonX=mochaWidth-15;} this.closebuttonX=mochaWidth-15;if(this.options.closable||el.modal){this.closebutton(ctx,this.closebuttonX,15,229,217,217,1.0);} if(this.options.maximizable&&!el.modal){this.maximizebutton(ctx,this.maximizebuttonX,15,217,229,217,1.0);} if(this.options.minimizable&&!el.modal){this.minimizebutton(ctx,this.minimizebuttonX,15,231,231,209,1.0);} if(this.options.resizable&&!el.modal){this.triangle(ctx,mochaWidth-20,mochaHeight-20,12,12,209,209,209,1.0);} this.triangle(ctx,mochaWidth-20,mochaHeight-20,10,10,0,0,0,0);},roundedRect:function(ctx,x,y,width,height,radius,r,g,b,a){ctx.fillStyle='rgba('+r+','+g+','+b+','+a+')';ctx.beginPath();ctx.moveTo(x,y+radius);ctx.lineTo(x,y+height-radius);ctx.quadraticCurveTo(x,y+height,x+radius,y+height);ctx.lineTo(x+width-radius,y+height);ctx.quadraticCurveTo(x+width,y+height,x+width,y+height-radius);ctx.lineTo(x+width,y+radius);ctx.quadraticCurveTo(x+width,y,x+width-radius,y);ctx.lineTo(x+radius,y);ctx.quadraticCurveTo(x,y,x,y+radius);ctx.fill();},topRoundedRect:function(ctx,x,y,width,height,radius){if(window.opera!=null){var lingrad=ctx.createLinearGradient(0,0,0,this.options.headerHeight+2);} else{var lingrad=ctx.createLinearGradient(0,0,0,this.options.headerHeight);} lingrad.addColorStop(0,'rgba(250,250,250,100)');lingrad.addColorStop(1,'rgba(228,228,228,100)');ctx.fillStyle=lingrad;ctx.beginPath();ctx.moveTo(x,y);ctx.lineTo(x,y+height);ctx.lineTo(x+width,y+height);ctx.lineTo(x+width,y+radius);ctx.quadraticCurveTo(x+width,y,x+width-radius,y);ctx.lineTo(x+radius,y);ctx.quadraticCurveTo(x,y,x,y+radius);ctx.fill();},triangle:function(ctx,x,y,width,height,r,g,b,a){ctx.beginPath();ctx.moveTo(x+width,y);ctx.lineTo(x,y+height);ctx.lineTo(x+width,y+height);ctx.closePath();ctx.fillStyle='rgba('+r+','+g+','+b+','+a+')';ctx.fill();},drawCircle:function(ctx,x,y,diameter,r,g,b,a){ctx.beginPath();ctx.moveTo(x,y);ctx.arc(x,y,diameter,0,Math.PI*2,true);ctx.fillStyle='rgba('+r+','+g+','+b+','+a+')';ctx.fill();},maximizebutton:function(ctx,x,y,r,g,b,a){ctx.beginPath();ctx.moveTo(x,y);ctx.arc(x,y,7,0,Math.PI*2,true);ctx.fillStyle='rgba('+r+','+g+','+b+','+a+')';ctx.fill();ctx.beginPath();ctx.moveTo(x,y-4);ctx.lineTo(x,y+4);ctx.stroke();ctx.beginPath();ctx.moveTo(x-4,y);ctx.lineTo(x+4,y);ctx.stroke();},closebutton:function(ctx,x,y,r,g,b,a){ctx.beginPath();ctx.moveTo(x,y);ctx.arc(x,y,7,0,Math.PI*2,true);ctx.fillStyle='rgba('+r+','+g+','+b+','+a+')';ctx.fill();ctx.beginPath();ctx.moveTo(x-3,y-3);ctx.lineTo(x+3,y+3);ctx.stroke();ctx.beginPath();ctx.moveTo(x+3,y-3);ctx.lineTo(x-3,y+3);ctx.stroke();},minimizebutton:function(ctx,x,y,r,g,b,a){ctx.beginPath();ctx.moveTo(x,y);ctx.arc(x,y,7,0,Math.PI*2,true);ctx.fillStyle='rgba('+r+','+g+','+b+','+a+')';ctx.fill();ctx.beginPath();ctx.moveTo(x-4,y);ctx.lineTo(x+4,y);ctx.stroke();},attachDraggable:function(elementArray){elementArray.each(function(el){if(this.options.draggable&&!el.modal){var mochaHandle=el.getElement('.mochaTitlebar');new Drag.Move(el,{handle:mochaHandle,onStart:function(){this.focusWindow(el);if(el.iframe){el.getElement('.mochaIframe').setStyles({'display':'none'});}}.bind(this),onComplete:function(){if(el.iframe){el.getElement('.mochaIframe').setStyles({'display':'block'});}}.bind(this)});}}.bind(this));},attachResizable:function(elementArray){elementArray.each(function(el){if(this.options.resizable&&!el.modal){var mochaContent=el.getElement('.mochaContent');var resizeHandle=el.getElement('.resizeHandle');mochaContent.makeResizable({handle:resizeHandle,modifiers:{x:'width',y:'height'},limit:{x:[this.options.minWidth,this.options.maxWidth],y:[this.options.minHeight,this.options.maxHeight]},onStart:function(){if(el.iframe){el.getElement('.mochaIframe').setStyles({'display':'none'});}}.bind(this),onDrag:function(){this.drawWindow(el);}.bind(this),onComplete:function(){if(el.iframe){el.getElement('.mochaIframe').setStyles({'display':'block'});} if(el.onResize){el.onResize();}}.bind(this)});}}.bind(this));},attachFocus:function(elementArray){elementArray.each(function(element){element.addEvent('click',function(event){if(element.getStyle('zIndex').toInt()(document.body.clientHeight-10)&&$('mochaDock').getProperty('autoHide')){$('mochaDock').setStyle('display','block');}});var canvas=new Element('canvas',{'class':'mochaCanvas','id':'canv1'}).injectInside(el);canvas.setStyles({position:'absolute',top:'4px',left:'2px',zIndex:2});canvas.width=15;canvas.height=18;if(window.ie){G_vmlCanvasManager.initElement(canvas);} $('mochaDockPlacement').setProperty('title','Position Dock Top');$('mochaDockAutoHide').setProperty('title','Turn Auto Hide On');$('mochaDockPlacement').addEvent('click',function(event){var objDock=event.target.parentNode;var ctx=el.getElement('.mochaCanvas').getContext('2d');if(objDock.getStyle('position')!='absolute'){objDock.setStyles({'position':'absolute','bottom':0,'border-top':'1px solid #bbb','border-bottom':'1px solid #fff'}) $('mochaDesktopHeader').setStyle('height',54);objDock.setProperty('dockPosition','Bottom');this.drawCircle(ctx,5,4,3,241,102,116,1.0);if($('mochaDock').getProperty('autoHide')!='true'||$('mochaDock').getProperty('autoHideDisabled')!='true'){this.drawCircle(ctx,5,14,3,241,102,116,1.0);}}else{objDock.setStyles({'position':'relative','bottom':null,'border-top':'1px solid #fff','border-bottom':'1px solid #bbb'}) $('mochaDesktopHeader').setStyle('height',74);objDock.setProperty('dockPosition','Top');this.drawCircle(ctx,5,4,3,0,255,0,1.0);this.drawCircle(ctx,5,14,3,212,208,200,1.0);} if($('mochaDock').getProperty('autoHide')=='true'||$('mochaDock').getProperty('autoHideDisabled')=='true') {if(objDock.getProperty('dockPosition')=='Bottom'){$('mochaDock').setProperty('autoHideDisabled','false');$('mochaDock').setProperty('autoHide','true') this.drawCircle(ctx,5,14,3,0,255,0,1.0);} else{$('mochaDock').setProperty('autoHideDisabled','true');$('mochaDock').setProperty('autoHide','false')}} $('mochaDockPlacement').setProperty('title',(objDock.getStyle('position')=='relative')?'Position Dock Bottom':'Position Dock Top');}.bind(this));$('mochaDockAutoHide').addEvent('click',function(event){var objDock=event.target.parentNode;var ctx=el.getElement('.mochaCanvas').getContext('2d');if(objDock.getProperty('dockPosition')=='Top'){return false;} if(objDock.getProperty('autoHide')=='true'){$('mochaDockAutoHide').setProperty('title','Turn Auto Hide On');this.drawCircle(ctx,5,14,3,241,102,116,1.0);objDock.setProperty('autoHide','false');objDock.setStyle('display','block');} else{$('mochaDockAutoHide').setProperty('title','Turn Auto Hide Off');this.drawCircle(ctx,5,14,3,0,255,0,1.0);objDock.setProperty('autoHide','true');objDock.setStyle('display','none');}}.bind(this));$('mochaDock').addEvent('mouseleave',function(objDock) {if(this.getProperty('autoHide')=='true'){if((objDock.event.clientY<(document.body.clientHeight-this.getStyle('height').toInt()))){this.setStyle('display','none');}}});},drawDock:function(el){var ctx=el.getElement('.mochaCanvas').getContext('2d');this.drawCircle(ctx,5,4,3,241,102,116,1.0);this.drawCircle(ctx,5,14,3,241,102,116,1.0);},newWindowfromElement:function(el,options){if(el&&el.rel)options=$merge(options||{},Json.evaluate(el.rel));options.contentURL=el.href;this.newWindow(options);return(this.windowIDCount);},arrangeCascade:function(){var x=this.options.desktopLeftOffset var y=this.options.desktopTopOffset;$$('div.mocha').each(function(el){if(el.getStyle('display')!='none'){this.focusWindow(el);x+=this.options.mochaLeftOffset;y+=this.options.mochaTopOffset;var mochaMorph=new Fx.Styles(el,{'duration':550});mochaMorph.start({'top':y,'left':x});}}.bind(this));}});MochaDesktop.implement(new Options);var MochaScreens=new Class({options:{defaultScreen:0},initialize:function(options){this.setOptions(options);this.setScreen(this.options.defaultScreen);},setScreen:function(index){if(!$('mochaScreens')) return;$$('#mochaScreens div.screen').each(function(el,i){el.setStyle('display',i==index?'block':'none');});}});MochaScreens.implement(new Options);var fabrikPackage=new Class({initialize:function(){this.options=Object.extend({liveSite:'','mooversion':1.1,'tmpl':'components/com_fabrik/views/package/tmpl/default/images/'},arguments[0]||{});this.blocks=$H();},startLoading:function(senderBlock,msg){msg=$pick(msg,'loading');if($type(senderBlock)!==false){if($type(senderBlock)==='element'){senderBlock=senderBlock.id;} var b=this.blocks.get(senderBlock);if(b.options.winid!==''&&this.options.mooversion>1.1){var win=MochaUI.Windows.instances.get(b.options.winid);win.showSpinner();}else{if($type($(senderBlock).getParent().getElement('.fbPackageStatus'))===false){var i=new Element('img',{'src':this.options.liveSite+this.options.tmpl+'ajax-loader.gif'});var s=new Element('span').appendText(msg);var d=new Element('div',{'class':'fbPackageStatus'}).adopt(i).adopt(s).injectAfter($(senderBlock));} var s=$(senderBlock).getParent().getElement('.fbPackageStatus');s.getElement('img').setStyle('opacity','1');s.getElement('span').setText(msg);s.effect('opacity',{'duration':500}).start(0,1);}}},stopLoading:function(senderBlock,msg){msg=$pick(msg,'complete');if($type(senderBlock)!==false){var b=this.blocks.get($(senderBlock).id);if(b.options.winid!==''&&this.options.mooversion>1.1){var win=MochaUI.Windows.instances.get(b.options.winid);win.hideSpinner();}else{var s=$(senderBlock).getParent().getElement('.fbPackageStatus');s.getElement('span').setText(msg);s.getElement('img').setStyle('opacity','0');var fx=s.effects({duration:1000,transition:Fx.Transitions.Sine.easeInOut});fx.start({'opacity':'0'}).chain(function(){this.start({'opacity':1});}).chain(function(){this.start({'opacity':0});});}}},addBlock:function(blockid,block){this.blocks.set(blockid,block);},removeBlock:function(blockid){this.blocks.set(blockid,null);this.blocks.remove(blockid);},bindListener:function(fromId,toId){this.blocks.each(function(val,key){if(toId==key){val.addListenTo(fromId);}});},sendMessage:function(senderBlock,task,taskStatus,json,msg){msg=$pick(msg,'complete');if($type(json)!=='object'){json=Json.evaluate(json);} this.stopLoading(senderBlock,msg);this.blocks.each(function(block,key){block.receiveMessage(senderBlock,task,taskStatus,json);});},submitfabrikTable:function(tableid,task){this.blocks.each(function(block,key){if(key=='table_'+tableid){this.startLoading($('table_'+tableid));if(block.submitfabrikTable(task)===false){this.stopLoading();}}}.bind(this));},openRedirectInMocha:function(url){opts={};opts.loadMethod='xhr';opts.contentURL=url;if(this.options.mooversion>1.1){var win=new MochaUI.Window(opts);}else{document.mochaDesktop.newWindow(opts);} this.stopLoading();},resizeMocha:function(win) {var myfx=new Fx.Scroll(window).toElement(win);var windowEl=$(win);if(this.options.mooversion>1.1){var currentInstance=MochaUI.Windows.instances.get(windowEl.id);var contentWrapperEl=currentInstance.contentWrapperEl;var contentEl=currentInstance.contentEl;}else{contentWrapperEl=windowEl.getElement('.mochaContent');contentEl=windowEl.getElement('.mochaScrollerpad');} var h=contentEl.offsetHeight1.1){currentInstance.drawWindow(windowEl);}else{document.mochaDesktop.drawWindow(windowEl);}}});var fbTablePlugin=new Class({setOptions:function(tableform,options){window.addEvent('domready',function(){this.tableform=$(tableform);}.bind(this));this.options={};Object.extend(this.options,options||{});}});var TableFilter=new Class({initialize:function(){this.filters=$H({});},addFilter:function(plugin,f){if(this.filters.hasKey(plugin)===false){this.filters.set(plugin,[]);} this.filters.get(plugin).push(f);},update:function(){this.filters.each(function(fs,plugin){fs.each(function(f){f.update();}.bind(this));}.bind(this));}});TableFilter.implement(new Events);TableFilter.implement(new Options);var fabrikTable=new Class({initialize:function(id){this.id=id;this.listenTo=$A([]);this.options=Object.extend({'admin':false,'filterMethod':'onchange','postMethod':'post','form':'tableform_'+this.id,'hightLight':'#ccffff','emptyMsg':'No records found','primaryKey':'','headings':[],'labels':{},'Itemid':0,'formid':0,'canEdit':true,'canView':true,'page':'index.php','formels':[],'data':[],'rowtemplate':''},arguments[1]||{});this.translate=Object.extend({'select_rows':'Select some rows for deletion','confirm_drop':"Do you really want to delete all records and reset this tables key to 0?",'yes':'Yes','no':'No','select_colums_to_export':'Select the columns to export','include_filters':'Include filters:','include_data':'Inclde data:','inlcude_raw_data':'Include raw data:','include_calculations':'Include calculations:','export':'Export','start':'Start','prev':'Prev','next':'Next','end':'End','page':'Page','of':'of'},arguments[2]||{});window.addEvent('domready',function(){this.getForm();this.table=$('table_'+id);if(this.table){this.tbody=this.table.getElement('tbody');if(window.ie){this.options.rowtemplate=this.table.getElement('.fabrik_row');}} this.watchAll();}.bind(this));},watchAll:function() {this.watchNav();this.watchRows();this.watchFilters();this.watchOrder();this.watchEmpty();this.watchButtons();},watchButtons:function() {this.exportWindowOpts={id:'exportcsv',title:'Export CSV',loadMethod:'html',minimizable:false,width:320,height:120,content:''};if(this.form.getElements('.csvExportButton')){this.form.getElements('.csvExportButton').each(function(b){b.addEvent('click',function(e){e=new Event(e).stop();var thisc=this.makeCSVExportForm();this.form.getElements('.fabrik_filter').each(function(f){var fc=new Element('input',{'type':'hidden','name':f.name,'id':f.id,'value':f.getValue()});fc.injectInside(thisc);}.bind(this));this.exportWindowOpts.content=thisc;if(this.options.mooversion>1.1){var win=new MochaUI.Window(this.exportWindowOpts);}else{document.mochaDesktop.newWindow(this.exportWindowOpts);}}.bind(this));}.bind(this));}},makeCSVExportForm:function(){var rad=""+this.translate.yes;var rad2=""+this.translate.yes;var rad3=""+this.translate.yes;var rad4=""+this.translate.yes;var url='index.php?option=com_fabrik&view=table&tableid='+this.id+'&format=csv';var divopts={'styles':{'width':'125px','float':'left'}};var c=new Element('form',{'action':url,'method':'post'}).adopt([new Element('div',divopts).appendText(this.translate.include_filters),new Element('label').setHTML(rad),new Element('label').adopt([new Element('input',{'type':'radio','name':'incfilters','value':'0'}),new Element('span').appendText(this.translate.no)]),new Element('br'),new Element('div',divopts).appendText(this.translate.include_data),new Element('label').setHTML(rad4),new Element('label').adopt([new Element('input',{'type':'radio','name':'inctabledata','value':'0'}),new Element('span').appendText(this.translate.no)]),new Element('br'),new Element('div',divopts).appendText(this.translate.inlcude_raw_data),new Element('label').setHTML(rad2),new Element('label').adopt([new Element('input',{'type':'radio','name':'incraw','value':'0'}),new Element('span').appendText(this.translate.no)]),new Element('br'),new Element('div',divopts).appendText(this.translate.include_calculations),new Element('label').setHTML(rad3),new Element('label').adopt([new Element('input',{'type':'radio','name':'inccalcs','value':'0'}),new Element('span').appendText(this.translate.no)])]);new Element('h4').appendText(this.translate.select_colums_to_export).injectInside(c);for(var i in this.options.labels){if(i.substr(0,7)!='fabrik_'){var rad=""+this.translate.yes;var label=this.options.labels[i].replace(/<\/?[^>]+(>|$)/g,"");var r=new Element('div',divopts).appendText(label);r.injectInside(c);new Element('label').setHTML(rad).injectInside(c);new Element('label').adopt([new Element('input',{'type':'radio','name':'fields['+i+']','value':'0'}),new Element('span').appendText(this.translate.no)]).injectInside(c);new Element('br').injectInside(c);}} if(this.options.formels.length>0){new Element('h5').setText('Form fields').injectInside(c);this.options.formels.each(function(el){var rad=""+this.translate.yes;var r=new Element('div',divopts).appendText(el.label);r.injectInside(c);new Element('label').setHTML(rad).injectInside(c);new Element('label').adopt([new Element('input',{'type':'radio','name':'fields['+el.name+']','value':'0'}),new Element('span').appendText(this.translate.no)]).injectInside(c);new Element('br').injectInside(c);}.bind(this));} new Element('div',{'styles':{'text-align':'right'}}).adopt(new Element('input',{'type':'submit','name':'submit','value':this.translate['export'],'class':'button'})).injectInside(c);new Element('input',{'type':'hidden','name':'view','value':'table'}).injectInside(c);new Element('input',{'type':'hidden','name':'option','value':'com_fabrik'}).injectInside(c);new Element('input',{'type':'hidden','name':'tableid','value':this.id}).injectInside(c);new Element('input',{'type':'hidden','name':'format','value':'csv'}).injectInside(c);new Element('input',{'type':'hidden','name':'c','value':'table'}).injectInside(c);return c;},addPlugins:function(a){this.plugins=a;},watchEmpty:function(e){var b=$E('input[name=doempty]',this.options.form);if(b){b.addEvent('click',function(e){var event=new Event(e).stop();if(confirm(this.translate.confirm_drop)){oPackage.submitfabrikTable(this.id,'doempty');}}.bind(this));}},watchOrder:function(){var hs=$(this.options.form).getElementsBySelector('.fabrikorder, .fabrikorder-asc, .fabrikorder-desc');hs.removeEvents('click');hs.each(function(h){h.addEvent('click',function(event){var e=new Event(event);var orderdir='';var newOrderClass='';switch(h.className){case'fabrikorder-asc':newOrderClass='fabrikorder-desc';orderdir='desc';break;case'fabrikorder-desc':newOrderClass='fabrikorder';orderdir="-";break;case'fabrikorder':newOrderClass='fabrikorder-asc';orderdir='asc';break;} var td=h.getParent().className.replace('_heading','');td=td.replace(/^\s+/g,'').replace(/\s+$/g,'');td=this.options.orderMap[td];h.className=newOrderClass;this.fabrikNavOrder(td,orderdir);e.stop();}.bind(this));}.bind(this));},watchFilters:function(){var e='';if(this.options.filterMethod!='submitform'){$(this.options.form).getElements('.fabrik_filter').each(function(f){e=f.getTag()=='select'?'change':'blur';f.removeEvent(e);f.addEvent(e,function(e){new Event(e).stop();oPackage.submitfabrikTable(this.id,'filter');}.bind(this));}.bind(this));}else{var f=$(this.options.form).getElement('.fabrik_filter_submit');if(f){f.removeEvents();f.addEvent('click',function(e){oPackage.submitfabrikTable(this.id,'filter');}.bind(this));}} $(this.options.form).getElements('.fabrik_filter').addEvent('keydown',function(e){e=new Event(e);if(e.code==13){e.stop();oPackage.submitfabrikTable(this.id,'filter');}}.bind(this));},setActive:function(activeTr){this.table.getElements('.fabrik_row').each(function(tr){tr.removeClass('activeRow');});activeTr.addClass('activeRow');},watchRows:function(){if(!this.table){return;} this.rows=this.table.getElements('.fabrik_row');this.links=this.table.getElements('.fabrik___rowlink');if(this.options.postMethod!='post'){var view='';if(this.options.canEdit==1){view='form';} else{if(this.options.canView==1){view='details';}} var editopts={option:'com_fabrik','Itemid':this.options.Itemid,'view':view,'tableid':this.id,'fabrik':this.options.formid,'rowid':0,'format':'raw','_senderBlock':'table_'+this.id};this.links.each(function(link){link.addEvent('click',function(e){var tr=link.findUp('tr');this.setActive(tr);oPackage.startLoading();editopts.rowid=tr.id.replace('table_'+this.id+'_row_','');var url="index.php?"+Object.toQueryString(editopts);var myAjax=new Ajax(url,{method:'get',onComplete:function(res){oPackage.sendMessage('table_'+this.id,'update','ok',res);}.bind(this)});myAjax.request();e=new Event(e);e.stop();}.bind(this));}.bind(this));} this.links=this.table.getElements('.fabrik___viewrowlink');if(this.options.postMethod!='post'){view='details';opts={option:'com_fabrik','Itemid':this.options.Itemid,'view':view,'tableid':this.id,'fabrik':this.options.formid,'rowid':0,'format':'raw','_senderBlock':'table_'+this.id};this.links.each(function(link){link.addEvent('click',function(e){var tr=link.findUp('tr');this.setActive(tr);oPackage.startLoading();opts.rowid=tr.id.replace('table_'+this.id+'_row_','');var url="index.php?"+Object.toQueryString(opts);var myAjax=new Ajax(url,{method:'get',onComplete:function(res){oPackage.sendMessage('table_'+this.id,'update','ok',res);}.bind(this)});myAjax.request();e=new Event(e);e.stop();}.bind(this));}.bind(this));}},getForm:function(){if(!this.form){this.form=$(this.options.form);}},submitfabrikTable:function(task){this.getForm();if(task=='delete'){var ok=false;this.form.getElements('input[name^=ids]').each(function(c){if(c.checked){ok=true;}});if(!ok){alert(this.translate.select_rows);return false;}} if(task=='filter'){this.form.task.value=task;if(this.form['limitstart'+this.id]){this.form.getElement('#limitstart'+this.id).value=0;}} else{if(task!==''){this.form.task.value=task;}} if(this.options.postMethod=='ajax'){$('tableform_'+this.id).getElement('input[name=option]').value='com_fabrik';$('tableform_'+this.id).getElement('input[name=view]').value='table';$('table_'+this.id+'_format').value='raw';if(this.options.mooversion>1.1){this.form.set('send',{onComplete:function(json){oPackage.sendMessage('table_'+this.id,task,'ok',json);}.bind(this)});this.form.send();}else{this.form.send({onComplete:function(json){oPackage.sendMessage('table_'+this.id,task,'ok',json);}.bind(this)});}} else{this.form.submit();} return false;},fabrikNav:function(limitStart){this.form.getElement('#limitstart'+this.id).value=limitStart;oPackage.submitfabrikTable(this.id,'navigate');return false;},fabrikNavOrder:function(orderby,orderdir){this.form.orderby.value=orderby;this.form.orderdir.value=orderdir;oPackage.submitfabrikTable(this.id,'order');},removeRows:function(rowids){for(i=0;i1){var lis=[];var ls='limitstart'+this.id;lis.push(new Element('li').adopt(new Element('span',{'class':'pagenav'})).setText('<<'));if(data.nav['pages.current']==1){lis.push(new Element('li').adopt(new Element('span',{'class':'pagenav'})).setText(this.translate.start));lis.push(new Element('li').adopt(new Element('span',{'class':'pagenav'})).setText(this.translate.prev));}else{lis.push(new Element('li').adopt(new Element('a',{'class':'pagenav',href:'?&'+ls+'=0'}).setText(this.translate.start)));lis.push(new Element('li').adopt(new Element('a',{'class':'pagenav',href:'?&'+ls+'=0'}).setText(this.translate.prev)));} for(var p=0;p>'));this.form.getElement('.pagination').adopt(lis);} this.form.getElement('.counter').setText(this.translate.page+' '+data.nav['pages.current']+' '+this.translate.of+' '+data.nav['pages.total']);} this.watchAll();} this.stripe();},addRow:function(obj){var r=new Element('tr',{'class':'oddRow1'});var x={test:'hi'};for(var i in obj){if(this.options.headings.indexOf(i)!=-1){var td=new Element('td',{}).appendText(obj[i]);r.appendChild(td);}} r.injectInside(this.tbody);},addRows:function(aData){for(i=0;i