Ext.app.App=function(a){Ext.apply(this,a);Ext.app.App.app=this;this.addEvents({ready:true,beforeunload:true,sessionexpire:true})};Ext.extend(Ext.app.App,Ext.util.Observable,{isReady:false,modules:{},initApp:function(){this.init();var a=this.getModules();if(a){this.initModules(a)}this.render();if(a){for(var b in a){a[b].el=this.viewport.getEl()}}Ext.EventManager.on(window,"beforeunload",this.onUnload,this);this.fireEvent("ready",this);this.isReady=true},registerModule:function(a){this.modules[a.id]=a},getModules:function(){return this.modules},init:Ext.emptyFn,render:Ext.emptyFn,initModules:function(b){for(var c in b){var a=b[c];a.app=this;a.init()}},onReady:function(b,a,c){if(!this.isReady){this.on("ready",b,a,c)}else{b.call(a,this)}},onUnload:function(a){if(this.fireEvent("beforeunload",this)===false){a.stopEvent()}}});AppCenter.Module=function(a){return Ext.app.App.app.modules[a]};Ext.app.Module=function(a){Ext.apply(this,a);Ext.app.Module.superclass.constructor.call(this);Ext.app.App.app.registerModule(this)
};Ext.extend(Ext.app.Module,Ext.util.Observable,{init:function(){if((Ext.app.ViewportControlCenter&&this.app instanceof Ext.app.ViewportControlCenter)||(Ext.app.ControlCenter&&this.app instanceof Ext.app.ControlCenter)){if(this.getControlPanelChildren==Ext.emptyFn){this.incompatibleError("Control Center")}else{this.initForControlCenter()}}if(Ext.app.Window&&this.app instanceof Ext.app.Window){this.initForWindow()}if((Ext.app.Desktop&&this.app instanceof Ext.app.Desktop)||Ext.app.ViewportDesktop&&this.app instanceof Ext.app.ViewportDesktop){if(this.initForDesktop==Ext.emptyFn){this.incompatibleError("Desktop")}else{this.initForDesktop()}}if(Ext.app.Portal&&this.app instanceof Ext.app.Portal){if(this.initForPortal==Ext.emptyFn){this.incompatibleError("Portal")}else{this.initForPortal()}}},getControlPanelChildren:Ext.emptyFn,initForPortal:Ext.emptyFn,incompatibleError:function(a){Ext.Msg.alert("Failure",this.title+" is not compatible with the "+a+" application type.")},initForControlCenter:function(){this.createPanels();
this.ControlPanel=this.app.ControlPanel;this.MainPanel=this.app.MainPanel;this.finishSetup();var a=this.getControlPanelChildren();Ext.each(a,function(b){b.stateful=true;b.stateId="CC-"+b.itemId;b.stateEvents=["collapse","expand"];b.getState=function(){return{collapsed:this.collapsed}}},this.ControlPanel.items);this.ControlPanel.add.apply(this.ControlPanel,a);this.MainPanel.add.apply(this.MainPanel,this.getMainPanelChildren())},initForWindow:function(){this.createPanels();this.app.CompletePanel=this.CompletePanel;this.finishSetup()},getMainPanelChildren:function(){return[{cls:"x-center-loading"}]},initForDesktop:function(){this.app.launcher.add({text:this.title,iconCls:this.iconCls,handler:this.createDesktopWindow,scope:this})},createWindow:function(){var b=this;if(!this.Window){var a={window:window,document:document,el:Ext.getBody(),getEl:Ext.getBody};this.createPanels({title:undefined,border:false});this.Window=new Ext.Window({closeAction:"hide",title:this.title,iconCls:this.iconCls,border:false,innerBorder:false,width:900,height:480,shim:false,animCollapse:false,collapsible:true,layout:"fit",items:[this.createBorderLayout(this.getControlPanelChildren(),this.getMainPanelChildren())],listeners:{beforehide:function(){var c=this.find("itemId","ThemeCP")[0];
var e=c.themePreviewsWindows;Ext.each(e,function(f){if(f&&f.close){f.close()}e.remove(f)});var d=c.themePreviews;Ext.each(d,function(f){d.remove(f)})},hide:function(){var d;d=document.getElementById("siteCss");if(d){d.disabled=false}Ext.util.CSS.removeStyleSheet("themeEditorStructureExtCss");Ext.util.CSS.removeStyleSheet("themeEditorExtCss");Ext.util.CSS.removeStyleSheet("themeEditorSiteCss");var c=this.find("itemId","ThemeCP")[0];c.themePreviews.remove(a)},show:function(){},afterlayout:{fn:function(){var c=b.getControlPanelChildren()[0];c.themePreviews.push(a);if(c&&c.hasListener("expand")){c.fireEvent("expand",c)}},single:true}}});this.el=this.Window.getEl();this.Window.find("itemId","ThemeCP")[0].saveLocal=true}this.Window.show()},createDesktopWindow:function(){if(!this.Window){this.createPanels({title:undefined,border:false});this.Window=this.app.Desktop.createWindow({title:this.title,iconCls:this.iconCls,border:false,innerBorder:false,width:900,height:480,shim:false,animCollapse:false,constrain:true,layout:"fit",items:[this.createBorderLayout(this.getControlPanelChildren(),this.getMainPanelChildren())]});
this.el=this.Window.getEl()}this.Window.show();var a=this.getControlPanelChildren()[0];if(a&&a.hasListener("expand")){a.fireEvent("expand",a)}},createBorderLayout:function(b,a,c){this.ControlPanel=new Ext.Panel({region:"west",split:true,border:false,width:250,minSize:175,maxSize:400,collapsible:false,layout:"fit",defaults:{border:false,fill:true},items:b});this.MainPanel=new Ext.Panel({region:"center",region:"center",border:false,layout:"card",header:false,activeItem:0,layoutConfig:{},defaults:{border:false,fill:true},items:a});this.panel=new Ext.Panel({layout:"border",border:true,innerBorder:true,items:[this.ControlPanel,this.MainPanel]});this.finishSetup();return this.panel},getEl:function(){return this.el},msg:function(){this.MainPanel.msg.apply(this,arguments)}});Ext.app.ControlCenter=Ext.extend(Ext.app.App,{init:function(){var a=this;this.ControlPanel=new Ext.Panel({region:"west",itemId:"control-panel",cls:"control-panel",split:true,width:230,minWidth:175,maxWidth:300,collapsible:true,animCollapse:false,margins:"5 0 5 5",cmargins:"5 5 5 5",layout:"accordion",stateId:"CC",layoutConfig:{activeOnTop:true,deferredRender:true},defaults:{border:false,fill:true},activeItem:0});
this.MainPanel=new Ext.Panel({region:"center",margins:"5 5 5 0",cmargins:"5 5 5 5",id:"main-panel",title:"center",layout:"card",layoutConfig:{deferredRender:true},border:false,header:false,activeItem:0})},render:function(){var a=this;var c=Ext.get("Content");c.setStyle("padding","0pt");c.setStyle("margin","0pt");c.select("img.loading").remove();var b=function(){var d=Ext.get("mp-PaperBody").getHeight();if(d>0){a.viewport.setHeight(Math.max(a.viewport.minHeight,d-Ext.get("mp-PaperHeader").getHeight()-Ext.get("mp-PaperFooter").getHeight()))}};a.viewport=new Ext.Panel({renderTo:"MainContent",layout:"border",minHeight:450,height:Math.max(450,Ext.get("mp-PaperBody").getHeight()-Ext.get("mp-PaperHeader").getHeight()-Ext.get("mp-PaperFooter").getHeight()),items:[a.ControlPanel,a.MainPanel],listeners:{afterlayout:function(){for(var d=1;d<50;d++){b.defer(100*d)}Ext.EventManager.onWindowResize(b,a,{buffer:55})},delay:5555}})}});Ext.app.ViewportControlCenter=Ext.extend(Ext.app.App,{init:function(){this.HeaderPanel=new Ext.Panel({region:"north",id:"header",height:48,border:false,html:Ext.get("Header").dom.innerHTML});
this.ControlPanel=new Ext.Panel({region:"west",id:"control-panel",title:Translate("Control Panel"),split:true,width:250,minSize:175,maxSize:400,collapsible:true,margins:"2 0 5 5",cmargins:"5 5 5 5",layout:"accordion",layoutConfig:{activeItem:0,animate:true},defaults:{border:false,fill:true}});this.MainPanel=new Ext.Panel({region:"center",margins:"2 5 5 0",cmargins:"5 5 5 5",region:"center",id:"main-panel",title:"center",layout:"card",border:false,header:false,layoutConfig:{activeItem:0,animate:true}});this.onReady(function(){this.viewport=new Ext.Viewport({layout:"border",items:[this.HeaderPanel,this.ControlPanel,this.MainPanel]});var a=function(){this.ControlPanel.items.get(0).fireEvent("expand")}.defer(500,this)},this)}});Ext.app.Window=Ext.extend(Ext.app.App,{isReady:false,init:function(){this.viewport={getEl:Ext.getBody}}});AppCenter.Core.LayoutView={};AppCenter.Core.LayoutView.Config={};AppCenter.Core.LayoutView.Selector=function(a){this.msgId=Ext.id();a=Ext.apply({},a,{singleSelect:true,hideLabel:false,itemSelector:"div.ac-selector-wrap",overClass:"ac-selector-over",cls:"ac-selector ac-layoutview",autoHeight:true,store:AppCenter.Domain.get().Templates,emptyText:Translate("There are no layouts to select."),tpl:new Ext.XTemplate('<tpl for=".">','<div class="ac-selector-wrap">','<div class="icon {IconClass}"></div>','<h4 style="font-weight:normal">{Name}</h4>',"</div>","</tpl>",'<div class="x-clear"></div>'),listeners:{containerclick:function(){return false
},selectionchange:this.setViewValue}});AppCenter.Core.LayoutView.Selector.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.LayoutView.Selector,Ext.ux.DataViewField,{initComponent:function(){AppCenter.Core.LayoutView.Selector.superclass.initComponent.call(this)},showPreview:function(){if(!this.preview){this.preview=new AppCenter.Core.LayoutViewSelectorPreviewWindow({selector:this})}this.preview.show()},setViewValue:function(){var a=this.getSelectedRecords();if(Ext.isArray(a)&&a.length){this.setRawValue(a[0].data.templateId)}else{this.setRawValue(null)}return},validate:function(){if(this.getSelectedIndexes().length){return true}else{return false}},getSelectedIndex:function(){indexes=this.getSelectedIndexes();if(indexes.length){return indexes[0]}else{return false}}});Ext.reg("ac-layoutview-selector",AppCenter.Core.LayoutView.Selector);AppCenter.Core.LayoutView.SelectorPanel=Ext.extend(Ext.form.FormPanel,{tpls:[],constructor:function(a){a=Ext.apply({},a,{items:[{xtype:"ac-layoutview-selector",itemId:"selector",hideLabel:true},{style:"margin-top:16px;",bodyStyle:"padding:12px;",itemId:"info",html:"<b>Select A Template</b><br>Click on any of the above templates to select the type of site you want to create.",border:false},{layout:"card",itemId:"card",border:false}]});
AppCenter.Core.LayoutView.SelectorPanel.superclass.constructor.call(this,a)},initComponent:function(){AppCenter.Core.LayoutView.SelectorPanel.superclass.initComponent.call(this);this.items.get("selector").on("selectionchange",this.selectTemplate,this)},selectTemplate:function(a,e){var c,f;if(!e.length){return}var b=a.getRecord(e[0]);var d=b.data.TemplateUI;if(this.tpls[b.data.TemplateId]){f=this.tpls[b.data.TemplateId]}else{if(Ext.type(d)=="array"){c=d[0]}else{c=d}c.autoHeight=true;f=this.items.get("card").add(c);this.tpls[b.data.TemplateId]=f}this.items.get("info").body.dom.innerHTML="<b>"+b.data.Name+"</b><br>"+b.data.Description;this.items.get("card").layout.setActiveItem(f);this.doLayout()}});Ext.reg("ac-layoutview-selector-panel",AppCenter.Core.LayoutView.SelectorPanel);AppCenter.Core.LayoutView.SelectorCard=function(a){a=Ext.apply({},a,{layout:"card",autoHeight:true,activeItem:0,itemId:"templateCard",border:false,cls:"ac-site-creator-section",style:"margin-bottom:4px;",buttonAlign:"center",items:[{itemId:"template",border:false,autoHeight:true,items:[{border:false,itemId:"layoutDescription",html:"<h1>"+Translate("Web Site Selection")+"</h1><p>"+Translate("Select a web site to create and double click on it to customize its settings.")+"</p>"},{xtype:"ac-layoutview-selector",fieldLabel:Translate("Layout"),name:"templateId",itemId:"selector",listeners:{render:function(){this.select.defer(1,this,[0])
}}}]}],buttons:[{text:Translate("&laquo; Show All"),scope:this,itemId:"TemplateList",hidden:true,hideMode:"visibility",handler:function(){this.buttons[0].hide();this.getLayout().setActiveItem(this.items.get("template"))}}]});AppCenter.Core.LayoutView.SelectorCard.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.LayoutView.SelectorCard,Ext.Panel,{tPanels:[],initComponent:function(){AppCenter.Core.LayoutView.SelectorCard.superclass.initComponent.call(this);this.items.get("template").items.get("selector").on("dblclick",this.selectTemplate,this)},getValues:function(){var a=this.items.get("template").items.get("selector");var b={templateId:a.getSelectedRecords()[0].data.TemplateId};if(this.tPanels[a.getSelectedIndex()]){b.settings=this.tPanels[a.getSelectedIndex()].form.getValues()}return b},selectTemplate:function(a,d,g){var b;this.buttons[0].show();if(typeof this.tPanels[d]!="object"){var c=a.store.getAt(d).data.TemplateUI;var f=this.el.getHeight();if(Ext.type(c)=="array"){b=c[0]}else{b=c}b.autoHeight=true;
this.tPanels[d]=this.add(b);this.doLayout()}this.getLayout().setActiveItem(this.tPanels[d])}});Ext.reg("ac-layoutview-selector-card",AppCenter.Core.LayoutView.SelectorCard);AppCenter.Core.LayoutView.TabbedSelectPanel=function(){config=Ext.apply({},config,{layout:"border",itemId:"border",items:[]})};Ext.extend(AppCenter.Core.LayoutView.TabbedSelectPanel,Ext.TabPanel,{});Ext.reg("ac-layoutview-tabbedselectpanel",AppCenter.Core.LayoutView.TabbedSelectPanel);AppCenter.Core.LayoutViewSelectorPreviewWindow=function(a){a=Ext.apply({},a,{width:480,height:240,closeAction:"hide",title:Translate("Layout Information"),bodyStyle:"padding:10px",buttons:[{text:Translate("Close"),handler:this.hideWindow,scope:this}],tbar:[{text:Translate("Previous"),handler:function(){prev=this.selector.getSelectedIndex()-1;if(prev<0){prev=this.selector.store.getCount()-1}this.selector.select(prev)},scope:this},"-",{text:Translate("Next"),handler:function(){next=this.selector.getSelectedIndex()+1;if(next>=this.selector.store.getCount()){this.selector.select(0)
}else{this.selector.select(next)}},scope:this}],tpl:new Ext.XTemplate("<h1>{Name}</h1>{Description}"),html:"This is where the layout preview information goes.",listeners:{show:this.handleSelectionChange.createDelegate(this,[a.selector])}});AppCenter.Core.LayoutViewSelectorPreviewWindow.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.LayoutViewSelectorPreviewWindow,Ext.Window,{initComponent:function(){AppCenter.Core.LayoutViewSelectorPreviewWindow.superclass.initComponent.call(this);this.selector.on("selectionchange",this.handleSelectionChange,this)},handleSelectionChange:function(a){var b=a.getSelectedRecords();if(this.body){this.body.dom.innerHTML=this.tpl.apply(b[0].data)}},hideWindow:function(){this.hide()}});AppCenter.Core.ThemeView={};AppCenter.Core.ThemeView.Selector=function(b){var a;this.msgId=Ext.id();if(Ext.StoreMgr.get(b.storeId)){a=Ext.StoreMgr.get(b.storeId)}else{a=new Ext.data.JsonStore(AppCenter.Core.ThemeView.Config.Store[b.storeId])}b=Ext.apply({},b,{singleSelect:true,pageRange:50000,allowBlank:false,itemSelector:"div.ac-selector-wrap",overClass:"ac-selector-over",cls:"ac-selector ac-themeview",autoHeight:true,store:a,loadingText:Translate("Loading themes"),emptyText:Translate("There are no themes to load."),originalCssHref:b.livePreview?Ext.get("siteCss").dom.href:undefined,tpl:new Ext.XTemplate('<tpl for=".">',b.align=="right"?'<div class="ac-selector-wrap" style="float:right">':'<div class="ac-selector-wrap">','<div class="preview">','<tpl if="previewId">','<img src="/_/Image/ThemePreview/{themeId}/{previewId}?width=120&amp;height=60"></img>',"</tpl>",'<tpl if="!previewId">',"<span>No Preview</span>","</tpl>","</div>","<h3>{name:ellipsis(18)}</h3>","</div>","</tpl>",'<div class="x-clear"></div>'),listeners:{containerclick:function(d,c){return false
},selectionchange:this.setViewValue}});AppCenter.Core.ThemeView.Selector.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Core.ThemeView.Selector,Ext.ux.DataViewField,{currentPage:0,initComponent:function(){AppCenter.Core.ThemeView.Selector.superclass.initComponent.call(this);this.addEvents({nextpage:true,prevpage:true});if(this.autoLoad){this.on("render",this.load,this)}if(this.selectTheme){this.store.on("load",function(){var b=this.livePreview;var a=this.store.indexOf(this.store.query("themeId",this.selectTheme).get(0));if(a>=this.pageRange){this.currentPage=parseInt(a/this.pageRange,10);this.refresh()}this.livePreview=false;this.select(a%this.pageRange);this.livePreview=b},this)}},load:function(){this.store.load.defer(10,this.store)},getSelectedRecords:function(){var d=[],c=this.selected.elements;for(var b=0,a=c.length;b<a;b++){d[d.length]=this.store.getAt(c[b].viewIndex+(this.currentPage*this.pageRange))}return d},refresh:function(){var a;if(this.pageRange){var b=this.currentPage*this.pageRange;var d=((this.currentPage+1)*this.pageRange)-1
}this.clearSelections(false,true);var c=this.getTemplateTarget();c.update("");if(this.pageRange){a=this.store.getRange(b,d)}else{a=this.store.getRange()}if(a.length<1){if(!this.deferEmptyText||this.hasSkippedEmptyText){c.update(this.emptyText)}this.all.clear()}else{this.tpl.overwrite(c,this.collectData(a,0));this.all.fill(Ext.query(this.itemSelector,c.dom));this.updateIndexes(0)}this.hasSkippedEmptyText=true},nextPage:function(){if(this.cycle&&(this.currentPage+1)*this.pageRange>=this.store.getCount()){this.currentPage=0}else{if((this.currentPage+1)*this.pageRange<this.store.getCount()){this.currentPage++}}this.refresh();var a=(this.currentPage+1)*this.pageRange>=this.store.getCount();this.fireEvent("nextpage",this,a)},prevPage:function(){if(this.currentPage<=0&&this.cycle){this.currentPage=parseInt(this.store.getCount()/this.pageRange,10)}else{if(this.currentPage>0){this.currentPage--}}this.refresh();this.fireEvent("prevpage",this)},setViewValue:function(){var a=this.getSelectedRecord();if(a){this.setRawValue(a.data.themeId)
}else{this.setRawValue(null)}if(a&&this.livePreview){var b=a.data.themeId;var c=Ext.get("siteCss");c.dom.href="/_/stylesheet/site.css?themeId="+b}},restoreLivePreviewTheme:function(){Ext.get("siteCss").dom.href=this.originalCssHref},getSelectedIndex:function(){var a=this.getSelectedIndexes();if(a.length){return a[0]}return null},getSelectedRecord:function(){var a=this.getSelectedRecords();if(a.length){return a[0]}else{return null}}});Ext.reg("ac-themeview-selector",AppCenter.Core.ThemeView.Selector);AppCenter.Core.ThemeInfoConfig={xtype:"form",itemId:"Info",border:false,labelAlign:"top",autoScroll:true,bodyStyle:"padding:10px",items:[{name:"name",xtype:"textfield",fieldLabel:Translate("Theme Name")},{name:"description",xtype:"htmleditor",fieldLabel:Translate("Description"),width:"98%"}]};AppCenter.Core.ThemeInfoWindow=function(a){a=Ext.apply({},a,{width:540,height:320,layout:"fit",modal:true,closable:false,title:Translate("Theme Settings"),buttons:[{text:Translate("Save"),itemId:"saveButton",handler:this.doSave,scope:this},{text:Translate("Cancel"),itemId:"cancelButton",handler:this.doCancel,scope:this}],items:[{xtype:"form",itemId:"Info",border:false,labelAlign:"top",autoScroll:true,bodyStyle:"padding:10px",items:[{name:"name",itemId:"name",xtype:"textfield",fieldLabel:Translate("Theme Name"),anchor:"-40"},{name:"description",xtype:"textarea",fieldLabel:Translate("Description"),anchor:"0 -70"}]}],listeners:{show:this.setValues.createDelegate(this,[a?a:{}])}});
AppCenter.Core.ThemeInfoWindow.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeInfoWindow,Ext.Window,{initComponent:function(){AppCenter.Core.ThemeInfoWindow.superclass.initComponent.call(this);this.cb=new Ext.data.Connection();this.addEvents("save","cancel")},setThemeId:function(a){this.themeId=a},doSave:function(){this.hide();this.fireEvent("save",this.items.get("Info").form.getValues())},doCancel:function(){this.hide();this.fireEvent("cancel")},reset:function(){this.items.get("Info").form.reset()},setValues:function(a){this.items.get("Info").form.setValues(a);this.items.get("Info").items.get("name").focus(true,10)}});AppCenter.Core.ThemeView.Config={Store:{DomainThemes:{storeId:"DomainThemes",url:"/_/Themes",root:"themes",autoLoad:false,fields:["name","images","themeId","description","previewId"],id:"themeId"},UserThemes:{storeId:"UserThemes",url:"/_/UserThemes",root:"themes",autoLoad:false,fields:["name","images","themeId","description","previewId"],id:"themeId"}},TabbedSelectPanel:{TabItems:[{xtype:"ac-themeview-selector",title:Translate("Default Themes"),itemId:"domain",autoLoad:true,storeId:"DomainThemes"},{xtype:"ac-themeview-selector",title:Translate("My Themes"),itemId:"user",emptyText:"You haven't created any themes yet.",autoLoad:true,storeId:"UserThemes"},{xtype:"ac-themeview-selector",title:Translate("MarketPlace"),itemId:"marketplace",emptyText:"None yet available."}],TabItemsDomainOnly:[{xtype:"ac-themeview-selector",title:Translate("Themes"),itemId:"domain",autoLoad:false}],TabItemsDomainOnlyNoAutoload:[{xtype:"ac-themeview-selector",title:Translate("Themes"),itemId:"domain",autoLoad:false}],PreviewPane:{split:true,title:Translate("Theme Preview"),html:"",itemId:"preview",width:240,region:"east"},PreviewPaneNoTitle:{split:false,itemId:"preview",width:240,region:"east",border:false},PreviewPaneNarrowNoTitle:{split:false,itemId:"preview",width:180,region:"east",border:false}},Templates:{ThemePreviewImage:['<tpl if="previewId"><img class="preview" src="/_/Image/ThemePreview/{themeId}/{previewId}?{getParams}"></img></tpl>'],ThemePreviewDescription:["<h3>{name}</h3>","<hr></hr>","<p>{description}</p>"],ThemePreview:['<div class="themepreview">','<tpl if="previewId"><img style="width:{width}px;height:{height}px;margin-bottom:8px;border-width:0px;" src="/_/Image/ThemePreview/{themeId}/{previewId}?width={width}&amp;height={height}" alt="Theme Preview"></img></tpl>',"<h3>{name}</h3>","<p>{description}</p>","</div>"],SelectPanelInvalid:['<div class="preview">','<h3 style="color:red">Select A Theme</h3>',"<p>Please select a theme.</p>"],SelectPanelInit:['<div class="preview">',"<h3>Select A Theme</h3>","<p>Please select a theme.</p>"]},Record:{PreviewImageUpload:[{name:"name"},{name:"themeId"},{name:"fileId"},{name:"status"}]}};
AppCenter.Core.ThemeView.SelectPanelField=function(a){a=Ext.apply({},a,{allowBlank:false,style:"display:none"});AppCenter.Core.ThemeView.SelectPanelField.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeView.SelectPanelField,Ext.form.TextField,{initComponent:function(){AppCenter.Core.ThemeView.SelectPanelField.superclass.initComponent.call(this);this.addEvents("setvalue")},setValue:function(c,a){var b;if(typeof(c)=="string"&&c){b=c;c=Ext.decode(c)}else{b=Ext.encode(c)}AppCenter.Core.ThemeView.SelectPanelField.superclass.setValue.call(this,b);if(!a){this.fireEvent("setvalue",c)}}});Ext.reg("ac-themeview-selectpanel-field",AppCenter.Core.ThemeView.SelectPanelField);AppCenter.Core.ThemeView.SelectPanel=function(a){this.template=new Ext.XTemplate(AppCenter.Core.ThemeView.Config.Templates.ThemePreview);a=Ext.apply({},a,{cls:"ac-themeview selectpanel",defaults:{border:false},items:[{bodyStyle:"padding:10px",html:"",itemId:"preview"},{xtype:"ac-themeview-selectpanel-field",name:a.name,itemId:"field",listeners:{setvalue:this.onFieldSetValue.createDelegate(this)}}],tbar:[{xtype:"button",text:Translate("Select Theme&hellip;"),handler:this.openSelectWindow.createDelegate(this)}]});
AppCenter.Core.ThemeView.SelectPanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeView.SelectPanel,Ext.Panel,{onFieldSetValue:function(c){var d=this.items.get("preview");if(d&&!d.isVisible()){return}var b=this.items.get("preview").body.getWidth(true);var a=Math.round(this.body.getHeight(true)*0.5);if(c){this.items.get("preview").body.dom.innerHTML=this.template.apply(Ext.apply({},c,{width:b,height:a}))}},openSelectWindow:function(){if(this.selectWindow){this.selectWindow.show()}else{this.selectWindow=new AppCenter.Core.ThemeView.SelectWindow({listeners:{select:this.onThemeSelect.createDelegate(this)}});this.selectWindow.show()}},onThemeSelect:function(a){this.items.get("field").setValue(a)}});Ext.reg("ac-themeview-selectpanel",AppCenter.Core.ThemeView.SelectPanel);AppCenter.Core.ThemeView.TabbedSelectPanel=function(b){var a=AppCenter.Core.ThemeView.Config.TabbedSelectPanel;b=(b==null)?{}:b;var d=b.tabItems?a["TabItems"+b.tabItems]:a.TabItems;var c=b.previewPane?a["PreviewPane"+b.previewPane]:a.PreviewPane;
b=Ext.apply({},b,{layout:"border",itemId:"border",border:false,cls:"ac-themeview selectpanel",items:[Ext.apply({},a["PreviewPane"+(b.previewPane||"")],{bodyStyle:"padding:10px;",region:"west",collapsible:true,listeners:{resize:this.handleResize.createDelegate(this)}}),{xtype:"tabpanel",region:"center",plain:true,activeItem:0,itemId:"tabs",columnWidth:1,deferredRender:true,autoScroll:true,items:d,name:"ThemeId"}]});AppCenter.Core.ThemeView.TabbedSelectPanel.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Core.ThemeView.TabbedSelectPanel,Ext.Panel,{initComponent:function(){AppCenter.Core.ThemeView.TabbedSelectPanel.superclass.initComponent.call(this);this.addEvents("selectionchange","alltabsloaded");this.template=new Ext.XTemplate(AppCenter.Core.ThemeView.Config.Templates.ThemePreview);this.errorTemplate=new Ext.XTemplate(AppCenter.Core.ThemeView.Config.Templates.SelectPanelInvalid);this.initTemplate=new Ext.XTemplate(AppCenter.Core.ThemeView.Config.Templates.SelectPanelInit);this.tabs=this.items.get("tabs");
this.field=this.items.get("field");this.preview=this.items.get("preview");this.tabs.items.each(this.attachTabPanelListeners,this);this.tabs.on("tabchange",this.handleTabChange,this)},attachTabPanelListeners:function(a){a.on("selectionchange",this.handleItemSelect,this)},handleResize:function(){if(this.tabs){if(this.tabs.getActiveTab()){this.handleItemSelect(this.tabs.getActiveTab())}}},handleTabChange:function(a,b){this.handleItemSelect(b)},handleItemSelect:function(b){var c=b.getSelectedRecords();if(c.length){var e=c[0].data}var a=this.items.get("preview").body.getHeight(true);var d=this.items.get("preview").body.getWidth(true);if(e){this.preview.body.dom.innerHTML=this.template.apply(Ext.apply({},e,{width:d,height:180}))}else{this.preview.body.dom.innerHTML=this.initTemplate.apply({})}this.fireEvent("selectionchange",e)}});Ext.reg("ac-themeview-tabbed-select-panel",AppCenter.Core.ThemeView.TabbedSelectPanel);AppCenter.Core.ThemeView.TabbedSelectColumns=function(a){this.prefab=AppCenter.Core.ThemeView.Config.TabbedSelectPanel;
a=(a==null)?{}:a;a=Ext.apply({},a,{layout:"column",itemId:"column",border:false});AppCenter.Core.ThemeView.TabbedSelectColumns.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeView.TabbedSelectColumns,AppCenter.Core.ThemeView.TabbedSelectPanel,{});Ext.reg("ac-themeview-tabbed-select-columns",AppCenter.Core.ThemeView.TabbedSelectColumns);AppCenter.Core.ThemeView.SelectWindow=function(a){a=Ext.apply({},a,{width:640,height:480,cls:"ac-themeview select-window",layout:"fit",modal:true,closable:false,title:Translate("Select A Theme"),resizable:false,buttons:[{text:Translate("Select"),itemId:"selectButton",handler:this.doSelect,scope:this,disabled:true},{text:Translate("Cancel"),itemId:"cancelButton",handler:this.doCancel,scope:this}],items:{xtype:"ac-themeview-tabbed-select-panel",border:false,itemId:"selectpanel",listeners:{selectionchange:this.handleItemSelect.createDelegate(this)}},listeners:{show:this.initItemSelect}});AppCenter.Core.ThemeView.SelectWindow.superclass.constructor.call(this,a)};
Ext.extend(AppCenter.Core.ThemeView.SelectWindow,Ext.Window,{initComponent:function(){AppCenter.Core.ThemeView.SelectWindow.superclass.initComponent.call(this);this.selectPanel=this.items.get("selectpanel");this.tabs=this.selectPanel.items.get("tabs");this.addEvents({select:true,cancel:true,browse:true})},initItemSelect:function(){this.selectPanel.handleItemSelect(this.tabs.getActiveTab())},handleTabChange:function(a,b){this.handleItemSelect(b)},handleItemSelect:function(a){if(a){this.fireEvent("browse",a);this.buttons[0].enable()}else{this.buttons[0].disable()}},doSelect:function(d,c){this.hide();this.fireEvent("select",this.tabs.getActiveTab().getSelectedRecord().data)},doCancel:function(){this.hide();this.fireEvent("cancel")}});Ext.reg("ac-themeview-select-window",AppCenter.Core.ThemeView.SelectWindow);AppCenter.Core.ThemeView.PreviewUploadWindow=function(b){var a=new Ext.data.Record.create(AppCenter.Core.ThemeView.Config.Record.PreviewImageUpload);this.themeId=b.themeId;if(!b.store){this.store=new Ext.data.Store({autoLoad:true,url:"/_/Theme/PreviewImages",baseParams:{themeId:this.themeId,append:Ext.encode({status:"complete",progress:100})},reader:new Ext.data.JsonReader({root:"images"},a)})
}else{this.store=b.store}b=Ext.apply({},b,{layout:"fit",width:640,height:480,modal:true,cls:"ac-themeview",closeAction:"hide",items:[{xtype:"ac-imageview-uploadpanel",itemId:"upload",collapsed:false,border:false,uploadUrl:"http://"+location.hostname+(location.port!=""?":"+location.port:"")+"/_/Theme/SwfPreviewUpload",record:a,store:this.store,postParams:{themeId:this.themeId},tpl:new Ext.XTemplate(['<tpl for=".">','<div class="ac-selector-wrap {status}">',"<tpl if=\"status=='uploading'\">",'<div class="preview">','<div class="meter">','<div class="progress" style="width:{progress}%">&nbsp;</div>',"</div>","</div>","<h3>{name:ellipsis(20)}</h3>","</tpl>","<tpl if=\"status=='queued'\">",'<div class="preview"><span>In Queue</span></div>',"<h3>{name:ellipsis(20)}</h3>","</tpl>","<tpl if=\"status=='complete'\">",'<img class="preview" src="/_/Image/ThemePreview/{themeId}/{fileId}?width=120&amp;height=70" alt="{name}"></img>',"<h3>Preview</h3>","</tpl>","<tpl if=\"status=='failed'\">",'<div class="preview">',"<span>{error}</span>","</div>","<h3>{name:ellipsis(20)}</h3>","</tpl>","</div>","</tpl>",'<div class="x-clear"></div>'])}],buttons:[{text:Translate("Close"),handler:this.hideWindow,scope:this}],bbar:[{text:Translate("Reload Originals"),handler:function(){Ext.Msg.confirm("Confirm Reload","Are you sure you want to reload your preview images?  You will lose any changes you have made, including uploaded images.",function(c){if(c=="yes"){this.load()
}},this.store)},scope:this},"->",{xtype:"tbtext",text:Translate("Preview images are not saved until the theme is saved.")}]});AppCenter.Core.ThemeView.PreviewUploadWindow.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Core.ThemeView.PreviewUploadWindow,Ext.Window,{hideWindow:function(){this.hide()},setThemeId:function(a){this.themeId=a;this.items.get("upload").setPostParams({themeId:a})}});Ext.reg("ac-themeview-previewuploadwindow",AppCenter.Core.ThemeView.PreviewUploadWindow);AppCenter.Core.ThemeView.PreviewPanel=function(a){this.imageId=Ext.id();a=Ext.apply({html:"",height:240,cls:"ac-themeview previewpanel",tbar:[{text:Translate("Add/Remove Images&hellip;"),itemId:"edit",handler:this.openUploadWindow,scope:this},"->",{text:Translate("Previous"),handler:this.previousImage,scope:this},"-",{text:Translate("Next"),handler:this.nextImage,scope:this}]},a,{});AppCenter.Core.ThemeView.PreviewPanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeView.PreviewPanel,Ext.Panel,{currentImage:0,isModified:false,initComponent:function(){AppCenter.Core.ThemeView.PreviewPanel.superclass.initComponent.call(this);
this.template=new Ext.XTemplate('<img id={imageId} style="width:{width}px;height:{height}px;background-color:#ccc;" src="/_/Image/ThemePreview/{themeId}/{fileId}?width={width}&amp;height={height}"></img>','<tpl if="isModified">','<span style="position:absolute;top:8px;right:8px;font-size:90%;background-color:goldenrod;padding:4px;opacity:0.7;font-weight:bold;">Unsaved</span>',"</tpl>");this.nullTemplate=new Ext.XTemplate(Translate('<div style="padding:10px;">No images</div>'));this.store=new Ext.data.Store({autoLoad:false,url:"/_/Theme/PreviewImages",reader:new Ext.data.JsonReader({root:"images"},Ext.data.Record.create(AppCenter.Core.ThemeView.Config.Record.PreviewImageUpload)),listeners:{beforeload:this.onStoreBeforeLoad.createDelegate(this),load:this.onStoreLoad.createDelegate(this),add:this.setModified.createDelegate(this),remove:this.setModified.createDelegate(this)}})},getTemplateParams:function(){var a={imageId:this.imageId,isModified:this.isModified,height:this.getEl().getHeight(true),width:this.getEl().getWidth(true)};
return a},loadTheme:function(a){this.theme=a;this.store.baseParams={themeId:this.theme.themeId};if(Ext.isArray(a.images)){this.store.loadData(a)}else{this.store.loadData({images:[]})}if(a.canEdit){this.topToolbar.items.get("edit").show()}else{this.topToolbar.items.get("edit").hide()}},getThemeIdByParent:function(a){if(a.themeId){return true}return false},getThemeByParent:function(a){if(a.theme){return true}return false},setModified:function(){this.isModified=true},onStoreBeforeLoad:function(){this.getEl().mask()},onStoreLoad:function(){this.isModified=false;this.setFirstImage();this.getEl().unmask()},nextImage:function(){if(this.currentImage>=this.store.getCount()-1){this.currentImage=0}else{this.currentImage++}var a=this.store.getAt(this.currentImage);this.body.dom.innerHTML=this.template.apply(Ext.apply({},a.data,this.getTemplateParams()))},previousImage:function(){if(this.currentImage==0){this.currentImage=this.store.getCount()-1}else{this.currentImage--}var a=this.store.getAt(this.currentImage);this.body.dom.innerHTML=this.template.apply(Ext.apply({},a.data,this.getTemplateParams()))
},setFirstImage:function(){this.currentImage=0;if(this.store.getCount()){var a=this.store.getAt(0);this.body.dom.innerHTML=this.template.apply(Ext.apply({},a.data,this.getTemplateParams()));this.getEl().clip()}else{this.body.dom.innerHTML=this.nullTemplate.apply()}},openUploadWindow:function(){if(!this.upWin){this.upWin=new AppCenter.Core.ThemeView.PreviewUploadWindow({store:this.store,title:Translate("Preview Images"),themeId:this.theme.themeId,listeners:{hide:this.setFirstImage.createDelegate(this)}})}this.upWin.setThemeId(this.theme.themeId);this.upWin.show()}});Ext.reg("ac-themeview-previewpanel",AppCenter.Core.ThemeView.PreviewPanel);Ext.namespace("AppCenter.Core.WebSite");AppCenter.Core.WebSiteCreator=Ext.extend(Ext.Container,{constructor:function(a){a=Ext.apply({},a,{minHeight:150,layout:"card",cls:"ac-web-site-creator",activeItem:0,defaults:{border:false},autoHeight:true,items:[new AppCenter.Core.WebSiteCreator.AccountCreate({buttonAlign:"left",labelWidth:100,buttons:[{text:"<div style='font-size:1.4em;font-weight:bold;'>&nbsp;Go!</div>",iconAlign:"right",icon:FixedAsset["iconset/"]+"nuvola,lgpl/32x32/actions/forward.png",scale:"large",disabled:false,handler:this.createAccount,scope:this,style:"margin-left:110px;"}],listeners:{submit:this.createAccount.createDelegate(this)},description:a.description?a.description:undefined}),AppCenter.Core.WebSiteCreator.MessageConfig],listeners:{beforerender:this.setup}});
AppCenter.Core.WebSiteCreator.superclass.constructor.call(this,a)},setup:function(){var a=this.initialConfig;AppCenter.urchin.track("/siteCreator/init");this.callback.ActiveControl.onComplete=this.onCallbackComplete.createDelegate(this);if(a.setMessage){this.setMessagePanel(a.setMessage.html,a.setMessage.button1,a.setMessage.button2)}},createAccount:function(){var a=this.items.get("account");if(!a.form.isValid()){return}this.getEl().mask("<span style='font-size:1.4em;'>Creating New Community&hellip;</span>","x-mask-loading");AppCenter.Core.Auth.create(a.items.get("username").getValue(),a.items.get("password").getValue(),a.items.get("email").getValue(),this.createCallback.createDelegate(this))},createCallback:function(d,a){var c=this.items.get("account");if(a.status){var b=new Date();this.callback.setCallbackParameter({cmpId:this.id,loadMsg:"<span style='font-size:1.4em;'>Creating New Community&hellip;</span>",callback:"createSite",form:this.items.get("account").form.getValues(),GMTOffset:b.getGMTOffset(true),isDST:b.isDST(),language:Ext.isIE?navigator.browserLanguage:navigator.language});
try{AppCenter.urchin.track("/siteCreator/createAttempt");this.getEl().mask("<span style='font-size:1.4em;'>Creating New Community&hellip;</span>");this.callback.dispatch()}catch(f){}}else{Ext.Msg.alert(Translate("An Error Occurred"),Translate(a.message));this.onCreateFail(a)}},onCallbackComplete:function(a,b){this.getEl().unmask();if(b.error){Ext.Msg.alert(Translate("An Error Occurred"),Translate(b.error));this.onCreateFail(b)}this.onCreateSuccess(b)},onCreateSuccess:function(a){AppCenter.urchin.track("/siteCreator/createSuccess");this.getEl().mask("<span style='font-size:1.4em;'><b>New Community Created!</b><br>We are now going to your new community at <b>"+a.url+"</b>&hellip;</span>");AppCenter.Edit.setEditMode(true);var b=function(){window.location="http://"+a.url};b.defer(6000);return},onCreateFail:function(a){},setMessagePanel:function(html,btn1,btn2){var m=this.items.get("message");if(m.rendered){m.body.dom.innerHTML=html;this.layout.setActiveItem(m)}else{m.html=html;this.activeItem="message"}if(btn1){if(typeof btn1.handler=="string"){eval("var h1="+btn1.handler);
btn1.handler=h1}m.buttons[0].setText(btn1.text);m.buttons[0].on("click",btn1.handler,this);m.buttons[0].show()}else{m.buttons[0].hide()}if(btn2){if(typeof btn2.handler=="string"){eval("var h2="+btn2.handler);btn2.handler=h2}m.buttons[1].setText(btn2.text);m.buttons[1].on("click",btn2.handler,this);m.buttons[1].show()}else{m.buttons[1].hide()}}});AppCenter.Core.WebSiteCreator.MessageConfig={html:"",itemId:"message",cls:"ac-site-creator-section",buttonAlign:"center",autoHeight:true,buttons:[{text:"Button1",hidden:true},{text:"Button2",hidden:true}]};AppCenter.Core.WebSiteCreator.AccountCreate=function(a){a=Ext.apply({},a,{itemId:"account",xtype:"form",labelAlign:"right",labelWidth:80,autoHeight:true,defaults:{border:false},items:[{cls:"ac-site-creator-section",html:a.description?a.description:"<h1>Create Your Community</h1><p>To create your new Community, you'll need a username and password to manage it.  Your username will be your site name, e.g. \"<b>username</b>."+AppCenter.getDomainName()+'".</p>',style:"margin-bottom:16px;"},{xtype:"ac-account-create-username",fieldLabel:"Username",width:180,listeners:{checkavailabilitycomplete:function(c,f){var b=this.ownerCt.items.get("status");
if(f){var d=FixedAsset["iconset/"]+"nuvola,lgpl/16x16/actions/apply.png";var g="username will be <b>"+c+"</b>, and your community will be <span style='text-decoration:underline;color:blue;'>"+c+"."+AppCenter.getDomainName()+"</span>";b.el.update('<div style="background-image:url('+d+');background-repeat:no-repeat;padding-left:20px;">'+g+"</div>");AppCenter.urchin.track("/siteCreator/usernameOk")}},invalid:function(d,b){if(!d.isValidating){var c=this.ownerCt.items.get("status");c.el.update(b)}},render:function(){this.focus()},specialkey:function(b,c){if(c.getKey()==c.ENTER){this.items.get("password").focus()}}.createDelegate(this)}},{xtype:"box",itemId:"status",isFormField:true,labelSeparator:"",autoEl:{html:Translate("at least 5 characters, e.g. myusername123"),style:"height:2em;color:#333;"}},{xtype:"ac-account-create-password",enableKeyEvents:true,validationDelay:1000,width:180,listeners:{specialkey:function(b,c){if(c.getKey()==c.ENTER){this.items.get("email").focus()}}.createDelegate(this),valid:function(){var b=FixedAsset["iconset/"]+"nuvola,lgpl/16x16/actions/apply.png";
var c="ok";this.ownerCt.items.get("pwStatus").update('<div style="background-image:url('+b+');background-repeat:no-repeat;padding-left:20px;">'+c+"</div>");AppCenter.urchin.track("/siteCreator/passwordOk")},invalid:function(c,b){this.ownerCt.items.get("pwStatus").update(b)}}},{xtype:"box",itemId:"pwStatus",isFormField:true,labelSeparator:"",autoEl:{html:Translate("at least 6 characters"),style:"height:2em;color:#333"}},{xtype:"ac-account-create-email",width:180,emptyText:"user@example.com",validationEvent:"keyup",validationDelay:1000,listeners:{valid:function(){var b=FixedAsset["iconset/"]+"nuvola,lgpl/16x16/actions/apply.png";var c="ok";this.ownerCt.items.get("emailNote").update('<div style="background-image:url('+b+');background-repeat:no-repeat;padding-left:20px;">'+c+"</div>");AppCenter.urchin.track("/siteCreator/emailOk")},invalid:function(c,b){this.ownerCt.items.get("emailNote").update(b);AppCenter.urchin.track("/siteCreator/emailInvalid")},specialkey:function(b,c){if(c.getKey()==c.ENTER){this.fireEvent("submit")
}}.createDelegate(this)}},{xtype:"box",itemId:"emailNote",isFormField:true,labelSeparator:"",autoEl:{html:"we will not share your email address with anyone",style:"height:1.5em;color:#333;"}}]});AppCenter.Core.WebSiteCreator.AccountCreate.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.WebSiteCreator.AccountCreate,Ext.form.FormPanel,{initComponent:function(){AppCenter.Core.WebSiteCreator.AccountCreate.superclass.initComponent.call(this);this.addEvents("submit")}});Ext.namespace("AppCenter.Core.WebSite");AppCenter.Core.WebSite.Creator=Ext.extend(Ext.Panel,{constructor:function(b){var a=[{xtype:"box",html:"<h3>Create Your Site</h3>Your site name is also your username."},{xtype:"ac-ws-creator-selector",packages:b.packages,style:"margin-bottom:16px;"}];if(AppCenter.Core.CurrentUser.Type=="UserAccount"){a.push({xtype:"box",html:"Your site will be created at <b>myname.studybeat.com</b>"})}else{a[1].listeners={checkavailabilitycomplete:function(e,c,d){if(c){this.username.setValue("<b>"+e+"</b>")}else{this.username.setValue('<span style="color:gray">[same as sitename]</span>')
}},scope:this};a.push({xtype:"box",html:"<h3>Password And Email</h3>You will use your site name to login to manage your site.  Please choose a password and email address."},{xtype:"displayfield",fieldLabel:"Username",value:'<span style="color:gray">[same as sitename]</span>',style:"padding:3px",itemId:"username",ref:"../username"},{xtype:"ac-account-create-password",ref:"../password"},{xtype:"ac-account-create-passwordverify",ref:"../passwordVerify"},{xtype:"ac-account-create-email",ref:"../email"})}b=Ext.apply({},b,{layout:"card",autoHeight:true,activeItem:"create",labelAlign:"right",monitorValid:false,monitorPoll:60000,buttonAlign:"left",items:[{xtype:"form",itemId:"create",autoHeight:true,items:a,buttons:[{text:"Create Site",handler:AppCenter.Core.CurrentUser.Type=="UserAccount"?this.submitToPayPal:this.createAccount,scope:this,scale:"large",cls:"ac-btn-large"}]},{xtype:"panel",itemId:"created",html:"Your site is already created"},{xtype:"panel",itemId:"error",html:b.error||Translate("Sorry, an error occurred")},{xtype:"panel",itemId:"createSuccess",html:"Success!  Your website has been created"}],buttons:[]});
AppCenter.Core.WebSite.Creator.superclass.constructor.call(this,b)},createAccount:function(){if(AppCenter.Core.CurrentUser.Type=="UserAccount"){}},submitToPayPal:function(){var a={sandbox:true};var b=a.sandbox?"https://www.sandbox.paypal.com/cgi-bin/webscr":"https://www.paypal.com/cgi-bin/webscr";AppCenter.submitForm(b,{cmd:"_s-xclick",hosted_button_id:"25Q8SB4G4WDA2","return":window.location.href})}});Ext.reg("ac-ws-creator",AppCenter.Core.WebSite.Creator);AppCenter.Core.WebSite.Creator.Selector=Ext.extend(Ext.Panel,{constructor:function(b){Ext.state.Manager.setProvider(new Ext.state.CookieProvider({expires:new Date(new Date().getTime()+(1000*60*60*24*7))}));b=b||{};this.addEvents("checkavailability","checkavailabilitycomplete");var d=this;b.pVal=Ext.util.Cookies.get("scType")||0;var c=Ext.util.Cookies.get("scSubType")||0;var e=[];Ext.each(b.packages,function(g,f){e.push({templateId:g.templateId,name:g.name,index:f})});var a=[];Ext.each(b.packages[0].modules,function(g,f){a.push({name:g.name,mod:g.mod,index:f})
});b=Ext.apply({},b,{layout:"column",items:[{layout:"form",border:false,style:"margin:8px;",labelAlign:"right",monitorValid:false,width:380,items:[{xtype:"container",fieldLabel:"Name",layout:"hbox",hidden:AppCenter.Core.CurrentUser.Type=="UserAccount",items:[{xtype:"textfield",minLength:4,maxLength:12,width:80,allowBlank:false,blankText:"field required",sitenameCache:{},emptyText:"mysite",name:"sitename",itemId:"sitename",allowEmpty:false,fieldLabel:Translate("Sitename"),msgTarget:"side",msgFx:"slide",vtype:"alphanum",validationEvent:"keyup",validationDelay:1000,validateOnBlur:true,validator:function(){var f;this.clearInvalid();if(!this.getValue().length){f=this.blankText}if(this.getValue().length<this.minLength){f=Translate("Should be at least "+this.minLength+" characters")}if(this.sitenameCache[this.getValue()]){this.clearInvalid();d.fireEvent("checkavailabilitycomplete",this.getValue(),true);return true}if(this.sitenameCache[this.getValue()]===false){f=Translate("<b>{0}</b> not available",[this.getValue()])
}if(!f){AppCenter.api.core.WebSite.getSitenameAvailability(this.getValue(),function(h,g){var l="";if(!g.status){return}if(!h){this.sitenameCache[g.getTransaction().args[0]]=false;l=Translate("<b>{0}</b> not available",[g.getTransaction().args[0]]);this.markInvalid(l)}else{this.sitenameCache[g.getTransaction().args[0]]=true;this.clearInvalid()}d.fireEvent("checkavailabilitycomplete",g.getTransaction().args[0],h,l)},this);return true}d.fireEvent("checkavailabilitycomplete",this.getValue(),f?false:true,f);return f},listeners:{valid:function(){this.ownerCt.domain.show()},invalid:function(){this.ownerCt.domain.hide()}}},{xtype:"box",ref:"domain",autoEl:{tag:"span",html:"."+AppCenter.getDomainName(),style:"padding:3px;"}}]},{xtype:"selectbox",fieldLabel:"Subject",ref:"../siteType",value:b.packages[b.pVal].name,displayField:"name",valueField:"templateId",store:{xtype:"jsonstore",data:b.packages,fields:["name","templateId","index"]},stateful:true,stateEvents:["select"],stateId:"template",listeners:{staterestore:function(h,g){var f=function(){var l=h.store.indexOf(h.store.query("templateId",g.value).get(0));
this.subType.store.loadData(this.packages[l].modules)};f.defer(100,this)},select:function(h,f,g){this.subType.store.loadData(this.packages[g].modules);this.subType.setValue(this.packages[g].modules[0].mod);console.log(this.packages[g].modules[0])},scope:this}},{xtype:"selectbox",fieldLabel:"Curriculum",itemId:"subType",ref:"../subType",value:b.packages[0].modules[0].mod,displayField:"name",valueField:"mod",store:{xtype:"jsonstore",fields:["name","mod"],data:b.packages[0].modules},listeners:{select:function(h,f,g){this.siteTypeStatus.update({title:this.packages[this.pVal].modules[g].name,description:this.packages[this.pVal].modules[g].description})},scope:this}}]},{columnWidth:1,xtype:"container",style:"margin:8px;",items:[{xtype:"displayfield",hidden:AppCenter.Core.CurrentUser.Type=="UserAccount",ref:"../sitenameStatus",html:"Enter a sitename (your home page) on the left.",style:"margin-bottom:8px;"},{xtype:"container",ref:"../siteTypeStatus",data:{title:b.packages[b.pVal].modules[c].name,description:b.packages[b.pVal].modules[c].description||""},tpl:new Ext.XTemplate("<h3>{title}</h3>{description}")}]}]});
this.on("checkavailabilitycomplete",function(h,f,g){if(f){this.sitenameStatus.getEl().update(Translate("Your site will be created at <b>http://{0}.{1}</b>",h,AppCenter.getDomainName()))}else{this.sitenameStatus.getEl().update(g||"&nbsp;")}},this);AppCenter.Core.WebSite.Creator.Selector.superclass.constructor.call(this,b)}});Ext.reg("ac-ws-creator-selector",AppCenter.Core.WebSite.Creator.Selector);Ext.reg("ac-checkbox",Ext.form.Hidden);Ext.reg("ac-textarea",Ext.form.Hidden);Ext.reg("ac-textfield",Ext.form.Hidden);Ext.reg("ac-htmleditor",Ext.form.Hidden);Array.prototype.contains=function(a){for(var b=0;b<this.length;b++){if(a==this[b]){return true}}return false};if(typeof debugging!="undefined"){AppCenter.Core.TreeDefault=Ext.extend(Ext.tree.ColumnTree,{defaultTreeNodeUI:Ext.tree.ColumnTreeNodeUI})}else{AppCenter.Core.TreeDefault=Ext.extend(Ext.tree.TreePanel,{defaultTreeNodeUI:Ext.tree.TreeNodeUI})}AppCenter.Core.SiteTree=Ext.extend(AppCenter.Core.TreeDefault,{rootVisible:false,animate:true,autoScroll:true,useArrows:true,containerScroll:false,actionInProgress:false,columns:[{header:"Name",width:350,dataIndex:"name"},{header:"Path",width:150,dataIndex:"path"},{header:"Type",width:150,dataIndex:"type"},{header:"ID",width:150,dataIndex:"id"}],initComponent:function(){this.loader=new Ext.tree.TreeLoader({dataUrl:this.dataUrl,root:"siteTree",baseAttrs:{uiProvider:"col"},uiProviders:{col:this.defaultTreeNodeUI}});
var a=undefined;if(this.treeData){a=[this.treeData]}this.root=new Ext.tree.AsyncTreeNode({text:Translate("All Domains"),ownerTree:this,allowDrop:false,children:a,listeners:{beforeload:function(){this.ownerTree.getEl().mask("Loading...","x-mask-loading")},load:function(){this.ownerTree.getEl().unmask();delete this.attributes.children}}});this.tools=[{id:"refresh",handler:function(){this.getRootNode().reload()},scope:this}];if(typeof this.initActions=="function"){this.initActions()}AppCenter.Core.SiteTree.superclass.initComponent.call(this);var b=function(){var c=this.getRootNode().item(0);if(this.getSelectionModel().getSelectedNode()==null){if(c){c.select.defer(10,c)}}};this.on("expand",function(){var c=this.getRootNode();if(c.isLoaded()){b.defer(50,this)}c.on("load",b,this,{delay:50})},this);this.on("collapse",function(){var c=this.getRootNode();c.un("load",b,this,{delay:50})},this)},initEvents:function(){AppCenter.Core.SiteTree.superclass.initEvents.call(this);if(typeof this.initActionEvents=="function"){this.initActionEvents()
}this.on("movenode",this.siteTreeMoveNode,this);this.on("nodedragover",this.getSiteTreeDropEnabled,this)},isSectionManager:function(a){if(a==null){return a}return a.attributes.sectionManager},findSectionManager:function(a){if(a==null){return a}if(this.isSectionManager(a)){return a}return this.findParentSectionManager(a)},findParentSectionManager:function(b){var a=b;while(a=a.parentNode){if(a.attributes.sectionManager){break}}return a},fullurl:function(a){if(a==null||a.parentNode==null||a.attributes==null){return"http://"}return this.fullurl(a.parentNode)+(a.attributes.path)},getSelectionData:function(c){if(c==null){return null}var a=this.findSectionManager(c);var b=this.findParentSectionManager(c);var d=c.attributes.module;d.name=c.attributes.name;d.nodeId=c.id;return{node:d,sectionManager:a?a.attributes.module:null,sectionManagerInfo:a?a.attributes.sectionManager:null,parentSectionManager:b?b.attributes.module:null}},getSelectionInfo:function(){var a=this.getSelectionModel().getSelectedNode();return(this.getSelectionData(a))
},siteTreeMoveNode:function(a,e,c,d,b){if(d.attributes.module.module=="WebSite"){return this.setRootModule(e,c)}var g={};g.newManager=this.findSectionManager(d).attributes.module;g.oldManager=this.findSectionManager(c).attributes.module;if(d.attributes.module.module=="WebSiteSection"){g.newManager.path=d.attributes.module.path}g.module=e.attributes.module;g.index=b;g.nodeId=e.id;g.cmpId=this.id;g.callback="moveResource";g.loadMsg="Moving "+e.attributes.module.moduleType+"&hellip;";var f=function(){this.getNodeById(g.nodeId).select()};f.defer(200,this);r=this.getCallback();r.setCallbackParameter(g);r.dispatch();return true},promptRootModule:function(b,a){},setRootModule:function(b,a){var c={};c.module=b.attributes.module;c.oldParent=this.findSectionManager(a).attributes.module;c.callback="setRootModule";c.loadMsg="Setting root module&hellip;";c.cmpId=this.id;r=this.getCallback();r.setCallbackParameter(c);r.dispatch()},getSiteTreeDropEnabled:function(c){if(c.point=="above"||c.point=="below"){return this.getSiteTreeMoveEnabled(c)
}if(c.target.attributes.module.module=="WebSite"&&c.dropNode.attributes.module.module!="WebSiteSection"){return true}var b=this.findSectionManager(c.target);if(!b){return false}if(c.target.attributes.module.module=="WebSiteSection"){var a=b.attributes.sectionManager.moduleTypes.WebSiteSection}else{var a=b.attributes.sectionManager.moduleTypes.root}if(a&&a.contains(c.dropNode.attributes.module.type)){return true}return false},getSiteTreeMoveEnabled:function(c){var b=this.findSectionManager(c.target.parentNode);if(!b){return false}if(c.target.parentNode.attributes.module.module=="WebSiteSection"){var a=b.attributes.sectionManager.moduleTypes.WebSiteSection}else{var a=b.attributes.sectionManager.moduleTypes.root}if(a&&a.contains(c.dropNode.attributes.module.type)){return true}return false}});AppCenter.Data.Config.SiteEditorCallback={Callback:function(a){var b={Module:"WebSiteEditor",Id:this.website.fqdn,Parameter:a.Parameter};this.MaskText=a.Text;this._maskid=[this.ControlPanel.el.id,this.MainPanel.el.id];this.ActiveControl=a.ActiveControl;
this.Redirect=a.Redirect;AppCenter.Callback({Command:a.Command,Parameter:b,Redirect:a.Redirect,ActiveControl:{onFailure:this.onFailure.bind(this),onSuccess:this.onSuccess.bind(this),onLoading:this.onLoading.bind(this),onComplete:this.onComplete.bind(this)}})}};Ext.apply(AppCenter.Data.Config.SiteEditorCallback,AppCenter.Data.Config.CallbackOptions);AppCenter.Core.WebSiteActions={enableDD:true,initActions:function(){var a=this.getSelectionInfo.bind(this);this.Actions={Data:{}};this.Actions.Data.New=[];Ext.each(this.newResources,function(c){if(c=="-"){this.Actions.Data.New.push("-")}else{var b={itemId:c.module,text:c.text,params:[c.module],handler:this.createNewResource,scope:this,iconCls:c.iconCls};this.Actions.Data.New.push(b)}}.createDelegate(this));this.Actions.Data.DeleteResource={itemId:"delete",text:Translate("Delete"),handler:function(c){var b=c.selectionInfo();this.delSel=b;if(b.node.isEditor){Ext.Msg.show({title:Translate("Can't Delete This Resource"),msg:"Sorry, you cannot delete this because this is the Site Editor that you are currently using.",buttons:Ext.Msg.OK});
return}if(b.node.editorInPath){Ext.Msg.show({title:Translate("Can't Delete This Resource"),msg:"Sorry, you cannot delete this because the Site Editor that you are currently using is in the path of this item.  Please move the Site Editor to another path before deleting this item.",buttons:Ext.Msg.OK});return}Ext.Msg.show({title:Translate("Delete this {1}?",b.node.type),msg:Translate('You are about to delete the {0} "{1}", are you sure you want to do this?',b.node.moduleName,b.node.name),buttons:Ext.Msg.OKCANCEL,icon:Ext.Msg.WARNING,fn:this.deleteResource,scope:this,animEl:this.getEl()})},scope:this};this.Actions.AddResources=new Ext.Button({text:Translate("Add"),itemId:"add",menu:{items:this.Actions.Data.New}});this.Actions.AddResources.menu.items.each(function(b){b.selectionInfo=a});this.Actions.DeleteResource=new Ext.Button(this.Actions.Data.DeleteResource);this.Actions.DeleteResource.selectionInfo=a;this.tbar=[this.Actions.AddResources,this.Actions.DeleteResource,"->",{text:Translate("Publish Template"),hidden:AppCenter.Domain.get(this.website.DomainId).Can.PublishWebSiteTemplate?false:true,handler:this.publishTemplate,scope:this}]
},initActionEvents:function(){this.getSelectionModel().on("selectionchange",this.updateToolbar,this);this.on("contextmenu",this.onContextMenu,this)},updateAddMenu:function(f,d){var e=d.node;var c=d.sectionManagerInfo;var b=false;if(c){if(e.module=="WebSiteSection"){var a=c.moduleTypes[e.module]}else{var a=c.moduleTypes.root}f.items.each(function(g){if(a&&a.contains(g.itemId)){b=true;g.enable()}else{g.disable()}})}else{f.items.each(function(g){g.disable()})}return b},updateDeleteMenu:function(c,a){var b=a.node;if(a.node.module=="WebSite"){c.disable()}else{c.enable()}},updateToolbar:function(a,d){if(!d||d.isRoot){this.topToolbar.items.get("add").disable();return}var c=this.getSelectionInfo();if(!c){return}this.updateDeleteMenu(this.Actions.DeleteResource,c);var b=this.updateAddMenu(this.Actions.AddResources.menu,c);if(b){this.topToolbar.items.get("add").enable();this.Actions.AddResources.enable()}else{this.topToolbar.items.get("add").disable();this.Actions.AddResources.disable()}},onContextMenu:function(c,d){var a=this.getContextSelectionInfo.bind(this);
if(!this.menu){this.menu=new Ext.menu.Menu({items:this.Actions.Data.New.concat(["-",this.Actions.Data.DeleteResource]),scope:this});this.menu.items.each(function(e){e.selectionInfo=a});this.menu.items.each(function(e){e.on("contextmenu",e.onClick,e)});this.menu.on("contextmenu",this.menu.onClick,this.menu);this.menu.on("hide",this.onContextHide,this)}this.onContextHide();this.ctxNode=c;var b=this.getContextSelectionInfo();this.updateAddMenu(this.menu,b);this.updateDeleteMenu(this.menu.items.get("delete"),b);this.ctxNode.ui.addClass("x-tree-context-selected");this.menu.showAt(d.getXY())},onContextHide:function(){if(this.ctxNode){this.ctxNode.ui.removeClass("x-tree-context-selected");this.ctxNode=null}},getContextSelectionInfo:function(){return(this.getSelectionData(this.ctxNode))},newResourceSuccess:function(a,b){this.getNodeById(a).appendChild(new Ext.tree.TreeNode(b));this.getNodeById(b.id).select()},deleteSuccess:function(a){var b=this.getNodeById(a).parentNode;b.removeChild(this.getNodeById(a));b.select()},createNewResource:function(c){var a=c.params[0];
var b=c.selectionInfo();this.Callback({Text:Translate("Creating {0}",c.text),Command:"createNewResource",Parameter:{module:a,sectionManager:b.sectionManager,node:b.node,cmpId:this.getId()}})},publishTemplate:function(){this.Callback({Text:Translate("Publishing Template"),Command:"publishWebSiteTemplate",Parameter:{Site:this.website.fqdn}})},deleteResource:function(b){if(b=="cancel"){return}var a=this.delSel;this.Callback({Text:Translate('Deleting {0} "{1}"',a.node.moduleType,a.node.name),Command:"deleteResource",Parameter:{sectionManager:a.parentSectionManager,node:a.node,cmpId:this.getId()},ActiveControl:{onSuccess:this.deleteSuccess.createDelegate(this,[a.node.nodeId])}})}};AppCenter.Core.SiteTreeWithActions=Ext.extend(AppCenter.Core.SiteTree,AppCenter.Core.WebSiteActions);Ext.apply(AppCenter.Core.SiteTreeWithActions.prototype,AppCenter.Data.Config.SiteEditorCallback);AppCenter.Core.ResourceEditor=Ext.extend(Ext.Panel,{border:false,baseCls:"x-border-layout-ct",layout:"card",website:{},resourceData:[],initComponent:function(){AppCenter.Core.ResourceEditor.superclass.initComponent.call(this)
},initEvents:function(){AppCenter.Core.ResourceEditor.superclass.initEvents.call(this);this.ownerTree.getSelectionModel().on("selectionchange",this.showEditorHdl,this);this.ownerTree.loader.on("beforeload",function(){this.getEl().mask()},this);this.ownerTree.loader.on("load",function(){this.getEl().unmask()},this)},showEditorHdl:function(d,b){if(b&&!b.isRoot){var c=this.ownerTree.getSelectionData(b);var a=this.ownerTree.fullurl(b);this.showEditor(c.node,c.parentSectionManager,a)}},editorName:function(a){if(a.moduleType){return"WebSiteEditor."+(a.style||this.website.style||"Ultra")+"."+a.module+"."+a.moduleType}else{return"WebSiteEditor."+(a.style||this.website.style||"Ultra")+"."+a.module}},showEditor:function(b,a,c){var d=this.editorName(b);this.EditorPanel.layout.setActiveItem(this);if(this.getComponent(d)==null){this.createEditor(b,a,c,this.editorPanels[d])}this.loadModuleData(b,a,c)},loadModuleData:function(b,a,c){var g=this.editorName(b);this.layout.setActiveItem(g);var f={website:this.website.fqdn,moduleId:b.moduleId,moduleDomainId:b.moduleDomainId,moduleType:b.moduleType,module:b.module,path:b.path,nodeId:b.nodeId};
if(a){Ext.apply(f,{managerModuleDomainId:a.moduleDomainId,managerModuleId:a.moduleId,managerModule:a.module})}var e=this.getComponent(g).getForm();var d=this.resourceData;if(e.module){d[e.module.nodeId]=e.getValues();d[e.module.nodeId].fullurl=c}e.reset();if(d[b.nodeId]){e.module=b;e.manager=a;e.fullurl=c;e.setValues(d[b.nodeId]);e.setValues({fullurl:c})}else{e.setValues({fullurl:c,Name:b.name});e.load({params:f,url:"/_/LoadResource/",success:function(h,l){h.module=b;h.manager=a;h.fullurl=c;d[l.options.params.nodeId]=Ext.apply({},l.result.data);d[l.options.params.nodeId].fullurl=c;if(l.options.params.nodeId!=b.nodeId){console.error("Got to rethink this... Node ID "+l.options.params.nodeId+" != module.nodeId "+b.nodeId)}},failure:function(h,l){switch(l.failureType){case Ext.form.Action.CLIENT_INVALID:Ext.Msg.alert("Failure","Form fields may not be submitted with invalid values");break;case Ext.form.Action.CONNECT_FAILURE:Ext.Msg.alert("Failure","Ajax communication failed");break;case Ext.form.Action.SERVER_INVALID:Ext.Msg.alert("Failure",l.result.msg);
break;case Ext.form.Action.LOAD_FAILURE:Ext.Msg.alert("Failure","No success signal was given from the server")}}})}},createEditor:function(b,a,c,d){d.itemId=this.editorName(b);var e=new Ext.form.FormPanel(d);e.on("beforeaction",function(f){this.getEl().mask(Translate("Loading..."),"x-mask-loading")},this);e.on("actioncomplete",function(){this.getEl().unmask()},this);e.on("actionfailed",function(){this.getEl().unmask()},this);this.add(e);e.addButton({text:Translate("Save"),handler:this.saveSettings.createDelegate(this,[e])});e.addButton({text:Translate("Reset"),handler:this.resetSettings.createDelegate(this,[e])});this.layout.setActiveItem(e);this.doLayout()},resetSettings:function(e){var d=e.getForm();var b=d.module;var a=d.manager;var c=d.fullurl;delete this.resourceData[b.nodeId];d.module=null;d.manager=null;d.fullurl=null;this.loadModuleData(b,a,c)},saveSettings:function(e){var c=e.getForm();var a=c.getValues();var d={callback:"saveResource",loadMsg:"Saving settings...",settings:a,module:c.module,sectionManager:c.manager,cmpId:this.getId()};
var b=this.ownerTree.getNodeById(c.module.nodeId);if(a.Name){b.setText(a.Name)}if(a.Path){b.attributes.module.path=(a.Path)}r=this.getCallback();r.setCallbackParameter(d);r.dispatch()},getForm:function(){return this.layout.activeItem.getForm()}});AppCenter.Core.ThemeView={};AppCenter.Core.ThemeView.Selector=function(b){var a;this.msgId=Ext.id();if(Ext.StoreMgr.get(b.storeId)){a=Ext.StoreMgr.get(b.storeId)}else{a=new Ext.data.JsonStore(AppCenter.Core.ThemeView.Config.Store[b.storeId])}b=Ext.apply({},b,{singleSelect:true,pageRange:50000,allowBlank:false,itemSelector:"div.ac-selector-wrap",overClass:"ac-selector-over",cls:"ac-selector ac-themeview",autoHeight:true,store:a,loadingText:Translate("Loading themes"),emptyText:Translate("There are no themes to load."),originalCssHref:b.livePreview?Ext.get("siteCss").dom.href:undefined,tpl:new Ext.XTemplate('<tpl for=".">',b.align=="right"?'<div class="ac-selector-wrap" style="float:right">':'<div class="ac-selector-wrap">','<div class="preview">','<tpl if="previewId">','<img src="/_/Image/ThemePreview/{themeId}/{previewId}?width=120&amp;height=60"></img>',"</tpl>",'<tpl if="!previewId">',"<span>No Preview</span>","</tpl>","</div>","<h3>{name:ellipsis(18)}</h3>","</div>","</tpl>",'<div class="x-clear"></div>'),listeners:{containerclick:function(d,c){return false
},selectionchange:this.setViewValue}});AppCenter.Core.ThemeView.Selector.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Core.ThemeView.Selector,Ext.ux.DataViewField,{currentPage:0,initComponent:function(){AppCenter.Core.ThemeView.Selector.superclass.initComponent.call(this);this.addEvents({nextpage:true,prevpage:true});if(this.autoLoad){this.on("render",this.load,this)}if(this.selectTheme){this.store.on("load",function(){var b=this.livePreview;var a=this.store.indexOf(this.store.query("themeId",this.selectTheme).get(0));if(a>=this.pageRange){this.currentPage=parseInt(a/this.pageRange,10);this.refresh()}this.livePreview=false;this.select(a%this.pageRange);this.livePreview=b},this)}},load:function(){this.store.load.defer(10,this.store)},getSelectedRecords:function(){var d=[],c=this.selected.elements;for(var b=0,a=c.length;b<a;b++){d[d.length]=this.store.getAt(c[b].viewIndex+(this.currentPage*this.pageRange))}return d},refresh:function(){var a;if(this.pageRange){var b=this.currentPage*this.pageRange;var d=((this.currentPage+1)*this.pageRange)-1
}this.clearSelections(false,true);var c=this.getTemplateTarget();c.update("");if(this.pageRange){a=this.store.getRange(b,d)}else{a=this.store.getRange()}if(a.length<1){if(!this.deferEmptyText||this.hasSkippedEmptyText){c.update(this.emptyText)}this.all.clear()}else{this.tpl.overwrite(c,this.collectData(a,0));this.all.fill(Ext.query(this.itemSelector,c.dom));this.updateIndexes(0)}this.hasSkippedEmptyText=true},nextPage:function(){if(this.cycle&&(this.currentPage+1)*this.pageRange>=this.store.getCount()){this.currentPage=0}else{if((this.currentPage+1)*this.pageRange<this.store.getCount()){this.currentPage++}}this.refresh();var a=(this.currentPage+1)*this.pageRange>=this.store.getCount();this.fireEvent("nextpage",this,a)},prevPage:function(){if(this.currentPage<=0&&this.cycle){this.currentPage=parseInt(this.store.getCount()/this.pageRange,10)}else{if(this.currentPage>0){this.currentPage--}}this.refresh();this.fireEvent("prevpage",this)},setViewValue:function(){var a=this.getSelectedRecord();if(a){this.setRawValue(a.data.themeId)
}else{this.setRawValue(null)}if(a&&this.livePreview){var b=a.data.themeId;var c=Ext.get("siteCss");c.dom.href="/_/stylesheet/site.css?themeId="+b}},restoreLivePreviewTheme:function(){Ext.get("siteCss").dom.href=this.originalCssHref},getSelectedIndex:function(){var a=this.getSelectedIndexes();if(a.length){return a[0]}return null},getSelectedRecord:function(){var a=this.getSelectedRecords();if(a.length){return a[0]}else{return null}}});Ext.reg("ac-themeview-selector",AppCenter.Core.ThemeView.Selector);AppCenter.Core.ThemeInfoConfig={xtype:"form",itemId:"Info",border:false,labelAlign:"top",autoScroll:true,bodyStyle:"padding:10px",items:[{name:"name",xtype:"textfield",fieldLabel:Translate("Theme Name")},{name:"description",xtype:"htmleditor",fieldLabel:Translate("Description"),width:"98%"}]};AppCenter.Core.ThemeInfoWindow=function(a){a=Ext.apply({},a,{width:540,height:320,layout:"fit",modal:true,closable:false,title:Translate("Theme Settings"),buttons:[{text:Translate("Save"),itemId:"saveButton",handler:this.doSave,scope:this},{text:Translate("Cancel"),itemId:"cancelButton",handler:this.doCancel,scope:this}],items:[{xtype:"form",itemId:"Info",border:false,labelAlign:"top",autoScroll:true,bodyStyle:"padding:10px",items:[{name:"name",itemId:"name",xtype:"textfield",fieldLabel:Translate("Theme Name"),anchor:"-40"},{name:"description",xtype:"textarea",fieldLabel:Translate("Description"),anchor:"0 -70"}]}],listeners:{show:this.setValues.createDelegate(this,[a?a:{}])}});
AppCenter.Core.ThemeInfoWindow.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeInfoWindow,Ext.Window,{initComponent:function(){AppCenter.Core.ThemeInfoWindow.superclass.initComponent.call(this);this.cb=new Ext.data.Connection();this.addEvents("save","cancel")},setThemeId:function(a){this.themeId=a},doSave:function(){this.hide();this.fireEvent("save",this.items.get("Info").form.getValues())},doCancel:function(){this.hide();this.fireEvent("cancel")},reset:function(){this.items.get("Info").form.reset()},setValues:function(a){this.items.get("Info").form.setValues(a);this.items.get("Info").items.get("name").focus(true,10)}});AppCenter.Core.ThemeView.Config={Store:{DomainThemes:{storeId:"DomainThemes",url:"/_/Themes",root:"themes",autoLoad:false,fields:["name","images","themeId","description","previewId"],id:"themeId"},UserThemes:{storeId:"UserThemes",url:"/_/UserThemes",root:"themes",autoLoad:false,fields:["name","images","themeId","description","previewId"],id:"themeId"}},TabbedSelectPanel:{TabItems:[{xtype:"ac-themeview-selector",title:Translate("Default Themes"),itemId:"domain",autoLoad:true,storeId:"DomainThemes"},{xtype:"ac-themeview-selector",title:Translate("My Themes"),itemId:"user",emptyText:"You haven't created any themes yet.",autoLoad:true,storeId:"UserThemes"},{xtype:"ac-themeview-selector",title:Translate("MarketPlace"),itemId:"marketplace",emptyText:"None yet available."}],TabItemsDomainOnly:[{xtype:"ac-themeview-selector",title:Translate("Themes"),itemId:"domain",autoLoad:false}],TabItemsDomainOnlyNoAutoload:[{xtype:"ac-themeview-selector",title:Translate("Themes"),itemId:"domain",autoLoad:false}],PreviewPane:{split:true,title:Translate("Theme Preview"),html:"",itemId:"preview",width:240,region:"east"},PreviewPaneNoTitle:{split:false,itemId:"preview",width:240,region:"east",border:false},PreviewPaneNarrowNoTitle:{split:false,itemId:"preview",width:180,region:"east",border:false}},Templates:{ThemePreviewImage:['<tpl if="previewId"><img class="preview" src="/_/Image/ThemePreview/{themeId}/{previewId}?{getParams}"></img></tpl>'],ThemePreviewDescription:["<h3>{name}</h3>","<hr></hr>","<p>{description}</p>"],ThemePreview:['<div class="themepreview">','<tpl if="previewId"><img style="width:{width}px;height:{height}px;margin-bottom:8px;border-width:0px;" src="/_/Image/ThemePreview/{themeId}/{previewId}?width={width}&amp;height={height}" alt="Theme Preview"></img></tpl>',"<h3>{name}</h3>","<p>{description}</p>","</div>"],SelectPanelInvalid:['<div class="preview">','<h3 style="color:red">Select A Theme</h3>',"<p>Please select a theme.</p>"],SelectPanelInit:['<div class="preview">',"<h3>Select A Theme</h3>","<p>Please select a theme.</p>"]},Record:{PreviewImageUpload:[{name:"name"},{name:"themeId"},{name:"fileId"},{name:"status"}]}};
AppCenter.Core.ThemeView.SelectPanelField=function(a){a=Ext.apply({},a,{allowBlank:false,style:"display:none"});AppCenter.Core.ThemeView.SelectPanelField.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeView.SelectPanelField,Ext.form.TextField,{initComponent:function(){AppCenter.Core.ThemeView.SelectPanelField.superclass.initComponent.call(this);this.addEvents("setvalue")},setValue:function(c,a){var b;if(typeof(c)=="string"&&c){b=c;c=Ext.decode(c)}else{b=Ext.encode(c)}AppCenter.Core.ThemeView.SelectPanelField.superclass.setValue.call(this,b);if(!a){this.fireEvent("setvalue",c)}}});Ext.reg("ac-themeview-selectpanel-field",AppCenter.Core.ThemeView.SelectPanelField);AppCenter.Core.ThemeView.SelectPanel=function(a){this.template=new Ext.XTemplate(AppCenter.Core.ThemeView.Config.Templates.ThemePreview);a=Ext.apply({},a,{cls:"ac-themeview selectpanel",defaults:{border:false},items:[{bodyStyle:"padding:10px",html:"",itemId:"preview"},{xtype:"ac-themeview-selectpanel-field",name:a.name,itemId:"field",listeners:{setvalue:this.onFieldSetValue.createDelegate(this)}}],tbar:[{xtype:"button",text:Translate("Select Theme&hellip;"),handler:this.openSelectWindow.createDelegate(this)}]});
AppCenter.Core.ThemeView.SelectPanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeView.SelectPanel,Ext.Panel,{onFieldSetValue:function(c){var d=this.items.get("preview");if(d&&!d.isVisible()){return}var b=this.items.get("preview").body.getWidth(true);var a=Math.round(this.body.getHeight(true)*0.5);if(c){this.items.get("preview").body.dom.innerHTML=this.template.apply(Ext.apply({},c,{width:b,height:a}))}},openSelectWindow:function(){if(this.selectWindow){this.selectWindow.show()}else{this.selectWindow=new AppCenter.Core.ThemeView.SelectWindow({listeners:{select:this.onThemeSelect.createDelegate(this)}});this.selectWindow.show()}},onThemeSelect:function(a){this.items.get("field").setValue(a)}});Ext.reg("ac-themeview-selectpanel",AppCenter.Core.ThemeView.SelectPanel);AppCenter.Core.ThemeView.TabbedSelectPanel=function(b){var a=AppCenter.Core.ThemeView.Config.TabbedSelectPanel;b=(b==null)?{}:b;var d=b.tabItems?a["TabItems"+b.tabItems]:a.TabItems;var c=b.previewPane?a["PreviewPane"+b.previewPane]:a.PreviewPane;
b=Ext.apply({},b,{layout:"border",itemId:"border",border:false,cls:"ac-themeview selectpanel",items:[Ext.apply({},a["PreviewPane"+(b.previewPane||"")],{bodyStyle:"padding:10px;",region:"west",collapsible:true,listeners:{resize:this.handleResize.createDelegate(this)}}),{xtype:"tabpanel",region:"center",plain:true,activeItem:0,itemId:"tabs",columnWidth:1,deferredRender:true,autoScroll:true,items:d,name:"ThemeId"}]});AppCenter.Core.ThemeView.TabbedSelectPanel.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Core.ThemeView.TabbedSelectPanel,Ext.Panel,{initComponent:function(){AppCenter.Core.ThemeView.TabbedSelectPanel.superclass.initComponent.call(this);this.addEvents("selectionchange","alltabsloaded");this.template=new Ext.XTemplate(AppCenter.Core.ThemeView.Config.Templates.ThemePreview);this.errorTemplate=new Ext.XTemplate(AppCenter.Core.ThemeView.Config.Templates.SelectPanelInvalid);this.initTemplate=new Ext.XTemplate(AppCenter.Core.ThemeView.Config.Templates.SelectPanelInit);this.tabs=this.items.get("tabs");
this.field=this.items.get("field");this.preview=this.items.get("preview");this.tabs.items.each(this.attachTabPanelListeners,this);this.tabs.on("tabchange",this.handleTabChange,this)},attachTabPanelListeners:function(a){a.on("selectionchange",this.handleItemSelect,this)},handleResize:function(){if(this.tabs){if(this.tabs.getActiveTab()){this.handleItemSelect(this.tabs.getActiveTab())}}},handleTabChange:function(a,b){this.handleItemSelect(b)},handleItemSelect:function(b){var c=b.getSelectedRecords();if(c.length){var e=c[0].data}var a=this.items.get("preview").body.getHeight(true);var d=this.items.get("preview").body.getWidth(true);if(e){this.preview.body.dom.innerHTML=this.template.apply(Ext.apply({},e,{width:d,height:180}))}else{this.preview.body.dom.innerHTML=this.initTemplate.apply({})}this.fireEvent("selectionchange",e)}});Ext.reg("ac-themeview-tabbed-select-panel",AppCenter.Core.ThemeView.TabbedSelectPanel);AppCenter.Core.ThemeView.TabbedSelectColumns=function(a){this.prefab=AppCenter.Core.ThemeView.Config.TabbedSelectPanel;
a=(a==null)?{}:a;a=Ext.apply({},a,{layout:"column",itemId:"column",border:false});AppCenter.Core.ThemeView.TabbedSelectColumns.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeView.TabbedSelectColumns,AppCenter.Core.ThemeView.TabbedSelectPanel,{});Ext.reg("ac-themeview-tabbed-select-columns",AppCenter.Core.ThemeView.TabbedSelectColumns);AppCenter.Core.ThemeView.SelectWindow=function(a){a=Ext.apply({},a,{width:640,height:480,cls:"ac-themeview select-window",layout:"fit",modal:true,closable:false,title:Translate("Select A Theme"),resizable:false,buttons:[{text:Translate("Select"),itemId:"selectButton",handler:this.doSelect,scope:this,disabled:true},{text:Translate("Cancel"),itemId:"cancelButton",handler:this.doCancel,scope:this}],items:{xtype:"ac-themeview-tabbed-select-panel",border:false,itemId:"selectpanel",listeners:{selectionchange:this.handleItemSelect.createDelegate(this)}},listeners:{show:this.initItemSelect}});AppCenter.Core.ThemeView.SelectWindow.superclass.constructor.call(this,a)};
Ext.extend(AppCenter.Core.ThemeView.SelectWindow,Ext.Window,{initComponent:function(){AppCenter.Core.ThemeView.SelectWindow.superclass.initComponent.call(this);this.selectPanel=this.items.get("selectpanel");this.tabs=this.selectPanel.items.get("tabs");this.addEvents({select:true,cancel:true,browse:true})},initItemSelect:function(){this.selectPanel.handleItemSelect(this.tabs.getActiveTab())},handleTabChange:function(a,b){this.handleItemSelect(b)},handleItemSelect:function(a){if(a){this.fireEvent("browse",a);this.buttons[0].enable()}else{this.buttons[0].disable()}},doSelect:function(d,c){this.hide();this.fireEvent("select",this.tabs.getActiveTab().getSelectedRecord().data)},doCancel:function(){this.hide();this.fireEvent("cancel")}});Ext.reg("ac-themeview-select-window",AppCenter.Core.ThemeView.SelectWindow);AppCenter.Core.ThemeView.PreviewUploadWindow=function(b){var a=new Ext.data.Record.create(AppCenter.Core.ThemeView.Config.Record.PreviewImageUpload);this.themeId=b.themeId;if(!b.store){this.store=new Ext.data.Store({autoLoad:true,url:"/_/Theme/PreviewImages",baseParams:{themeId:this.themeId,append:Ext.encode({status:"complete",progress:100})},reader:new Ext.data.JsonReader({root:"images"},a)})
}else{this.store=b.store}b=Ext.apply({},b,{layout:"fit",width:640,height:480,modal:true,cls:"ac-themeview",closeAction:"hide",items:[{xtype:"ac-imageview-uploadpanel",itemId:"upload",collapsed:false,border:false,uploadUrl:"http://"+location.hostname+(location.port!=""?":"+location.port:"")+"/_/Theme/SwfPreviewUpload",record:a,store:this.store,postParams:{themeId:this.themeId},tpl:new Ext.XTemplate(['<tpl for=".">','<div class="ac-selector-wrap {status}">',"<tpl if=\"status=='uploading'\">",'<div class="preview">','<div class="meter">','<div class="progress" style="width:{progress}%">&nbsp;</div>',"</div>","</div>","<h3>{name:ellipsis(20)}</h3>","</tpl>","<tpl if=\"status=='queued'\">",'<div class="preview"><span>In Queue</span></div>',"<h3>{name:ellipsis(20)}</h3>","</tpl>","<tpl if=\"status=='complete'\">",'<img class="preview" src="/_/Image/ThemePreview/{themeId}/{fileId}?width=120&amp;height=70" alt="{name}"></img>',"<h3>Preview</h3>","</tpl>","<tpl if=\"status=='failed'\">",'<div class="preview">',"<span>{error}</span>","</div>","<h3>{name:ellipsis(20)}</h3>","</tpl>","</div>","</tpl>",'<div class="x-clear"></div>'])}],buttons:[{text:Translate("Close"),handler:this.hideWindow,scope:this}],bbar:[{text:Translate("Reload Originals"),handler:function(){Ext.Msg.confirm("Confirm Reload","Are you sure you want to reload your preview images?  You will lose any changes you have made, including uploaded images.",function(c){if(c=="yes"){this.load()
}},this.store)},scope:this},"->",{xtype:"tbtext",text:Translate("Preview images are not saved until the theme is saved.")}]});AppCenter.Core.ThemeView.PreviewUploadWindow.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Core.ThemeView.PreviewUploadWindow,Ext.Window,{hideWindow:function(){this.hide()},setThemeId:function(a){this.themeId=a;this.items.get("upload").setPostParams({themeId:a})}});Ext.reg("ac-themeview-previewuploadwindow",AppCenter.Core.ThemeView.PreviewUploadWindow);AppCenter.Core.ThemeView.PreviewPanel=function(a){this.imageId=Ext.id();a=Ext.apply({html:"",height:240,cls:"ac-themeview previewpanel",tbar:[{text:Translate("Add/Remove Images&hellip;"),itemId:"edit",handler:this.openUploadWindow,scope:this},"->",{text:Translate("Previous"),handler:this.previousImage,scope:this},"-",{text:Translate("Next"),handler:this.nextImage,scope:this}]},a,{});AppCenter.Core.ThemeView.PreviewPanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.ThemeView.PreviewPanel,Ext.Panel,{currentImage:0,isModified:false,initComponent:function(){AppCenter.Core.ThemeView.PreviewPanel.superclass.initComponent.call(this);
this.template=new Ext.XTemplate('<img id={imageId} style="width:{width}px;height:{height}px;background-color:#ccc;" src="/_/Image/ThemePreview/{themeId}/{fileId}?width={width}&amp;height={height}"></img>','<tpl if="isModified">','<span style="position:absolute;top:8px;right:8px;font-size:90%;background-color:goldenrod;padding:4px;opacity:0.7;font-weight:bold;">Unsaved</span>',"</tpl>");this.nullTemplate=new Ext.XTemplate(Translate('<div style="padding:10px;">No images</div>'));this.store=new Ext.data.Store({autoLoad:false,url:"/_/Theme/PreviewImages",reader:new Ext.data.JsonReader({root:"images"},Ext.data.Record.create(AppCenter.Core.ThemeView.Config.Record.PreviewImageUpload)),listeners:{beforeload:this.onStoreBeforeLoad.createDelegate(this),load:this.onStoreLoad.createDelegate(this),add:this.setModified.createDelegate(this),remove:this.setModified.createDelegate(this)}})},getTemplateParams:function(){var a={imageId:this.imageId,isModified:this.isModified,height:this.getEl().getHeight(true),width:this.getEl().getWidth(true)};
return a},loadTheme:function(a){this.theme=a;this.store.baseParams={themeId:this.theme.themeId};if(Ext.isArray(a.images)){this.store.loadData(a)}else{this.store.loadData({images:[]})}if(a.canEdit){this.topToolbar.items.get("edit").show()}else{this.topToolbar.items.get("edit").hide()}},getThemeIdByParent:function(a){if(a.themeId){return true}return false},getThemeByParent:function(a){if(a.theme){return true}return false},setModified:function(){this.isModified=true},onStoreBeforeLoad:function(){this.getEl().mask()},onStoreLoad:function(){this.isModified=false;this.setFirstImage();this.getEl().unmask()},nextImage:function(){if(this.currentImage>=this.store.getCount()-1){this.currentImage=0}else{this.currentImage++}var a=this.store.getAt(this.currentImage);this.body.dom.innerHTML=this.template.apply(Ext.apply({},a.data,this.getTemplateParams()))},previousImage:function(){if(this.currentImage==0){this.currentImage=this.store.getCount()-1}else{this.currentImage--}var a=this.store.getAt(this.currentImage);this.body.dom.innerHTML=this.template.apply(Ext.apply({},a.data,this.getTemplateParams()))
},setFirstImage:function(){this.currentImage=0;if(this.store.getCount()){var a=this.store.getAt(0);this.body.dom.innerHTML=this.template.apply(Ext.apply({},a.data,this.getTemplateParams()));this.getEl().clip()}else{this.body.dom.innerHTML=this.nullTemplate.apply()}},openUploadWindow:function(){if(!this.upWin){this.upWin=new AppCenter.Core.ThemeView.PreviewUploadWindow({store:this.store,title:Translate("Preview Images"),themeId:this.theme.themeId,listeners:{hide:this.setFirstImage.createDelegate(this)}})}this.upWin.setThemeId(this.theme.themeId);this.upWin.show()}});Ext.reg("ac-themeview-previewpanel",AppCenter.Core.ThemeView.PreviewPanel);AppCenter.Core.LayoutView={};AppCenter.Core.LayoutView.Config={};AppCenter.Core.LayoutView.Selector=function(a){this.msgId=Ext.id();a=Ext.apply({},a,{singleSelect:true,hideLabel:false,itemSelector:"div.ac-selector-wrap",overClass:"ac-selector-over",cls:"ac-selector ac-layoutview",autoHeight:true,store:AppCenter.Domain.get().Templates,emptyText:Translate("There are no layouts to select."),tpl:new Ext.XTemplate('<tpl for=".">','<div class="ac-selector-wrap">','<div class="icon {IconClass}"></div>','<h4 style="font-weight:normal">{Name}</h4>',"</div>","</tpl>",'<div class="x-clear"></div>'),listeners:{containerclick:function(){return false
},selectionchange:this.setViewValue}});AppCenter.Core.LayoutView.Selector.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.LayoutView.Selector,Ext.ux.DataViewField,{initComponent:function(){AppCenter.Core.LayoutView.Selector.superclass.initComponent.call(this)},showPreview:function(){if(!this.preview){this.preview=new AppCenter.Core.LayoutViewSelectorPreviewWindow({selector:this})}this.preview.show()},setViewValue:function(){var a=this.getSelectedRecords();if(Ext.isArray(a)&&a.length){this.setRawValue(a[0].data.templateId)}else{this.setRawValue(null)}return},validate:function(){if(this.getSelectedIndexes().length){return true}else{return false}},getSelectedIndex:function(){indexes=this.getSelectedIndexes();if(indexes.length){return indexes[0]}else{return false}}});Ext.reg("ac-layoutview-selector",AppCenter.Core.LayoutView.Selector);AppCenter.Core.LayoutView.SelectorPanel=Ext.extend(Ext.form.FormPanel,{tpls:[],constructor:function(a){a=Ext.apply({},a,{items:[{xtype:"ac-layoutview-selector",itemId:"selector",hideLabel:true},{style:"margin-top:16px;",bodyStyle:"padding:12px;",itemId:"info",html:"<b>Select A Template</b><br>Click on any of the above templates to select the type of site you want to create.",border:false},{layout:"card",itemId:"card",border:false}]});
AppCenter.Core.LayoutView.SelectorPanel.superclass.constructor.call(this,a)},initComponent:function(){AppCenter.Core.LayoutView.SelectorPanel.superclass.initComponent.call(this);this.items.get("selector").on("selectionchange",this.selectTemplate,this)},selectTemplate:function(a,e){var c,f;if(!e.length){return}var b=a.getRecord(e[0]);var d=b.data.TemplateUI;if(this.tpls[b.data.TemplateId]){f=this.tpls[b.data.TemplateId]}else{if(Ext.type(d)=="array"){c=d[0]}else{c=d}c.autoHeight=true;f=this.items.get("card").add(c);this.tpls[b.data.TemplateId]=f}this.items.get("info").body.dom.innerHTML="<b>"+b.data.Name+"</b><br>"+b.data.Description;this.items.get("card").layout.setActiveItem(f);this.doLayout()}});Ext.reg("ac-layoutview-selector-panel",AppCenter.Core.LayoutView.SelectorPanel);AppCenter.Core.LayoutView.SelectorCard=function(a){a=Ext.apply({},a,{layout:"card",autoHeight:true,activeItem:0,itemId:"templateCard",border:false,cls:"ac-site-creator-section",style:"margin-bottom:4px;",buttonAlign:"center",items:[{itemId:"template",border:false,autoHeight:true,items:[{border:false,itemId:"layoutDescription",html:"<h1>"+Translate("Web Site Selection")+"</h1><p>"+Translate("Select a web site to create and double click on it to customize its settings.")+"</p>"},{xtype:"ac-layoutview-selector",fieldLabel:Translate("Layout"),name:"templateId",itemId:"selector",listeners:{render:function(){this.select.defer(1,this,[0])
}}}]}],buttons:[{text:Translate("&laquo; Show All"),scope:this,itemId:"TemplateList",hidden:true,hideMode:"visibility",handler:function(){this.buttons[0].hide();this.getLayout().setActiveItem(this.items.get("template"))}}]});AppCenter.Core.LayoutView.SelectorCard.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.LayoutView.SelectorCard,Ext.Panel,{tPanels:[],initComponent:function(){AppCenter.Core.LayoutView.SelectorCard.superclass.initComponent.call(this);this.items.get("template").items.get("selector").on("dblclick",this.selectTemplate,this)},getValues:function(){var a=this.items.get("template").items.get("selector");var b={templateId:a.getSelectedRecords()[0].data.TemplateId};if(this.tPanels[a.getSelectedIndex()]){b.settings=this.tPanels[a.getSelectedIndex()].form.getValues()}return b},selectTemplate:function(a,d,g){var b;this.buttons[0].show();if(typeof this.tPanels[d]!="object"){var c=a.store.getAt(d).data.TemplateUI;var f=this.el.getHeight();if(Ext.type(c)=="array"){b=c[0]}else{b=c}b.autoHeight=true;
this.tPanels[d]=this.add(b);this.doLayout()}this.getLayout().setActiveItem(this.tPanels[d])}});Ext.reg("ac-layoutview-selector-card",AppCenter.Core.LayoutView.SelectorCard);AppCenter.Core.LayoutView.TabbedSelectPanel=function(){config=Ext.apply({},config,{layout:"border",itemId:"border",items:[]})};Ext.extend(AppCenter.Core.LayoutView.TabbedSelectPanel,Ext.TabPanel,{});Ext.reg("ac-layoutview-tabbedselectpanel",AppCenter.Core.LayoutView.TabbedSelectPanel);AppCenter.Core.LayoutViewSelectorPreviewWindow=function(a){a=Ext.apply({},a,{width:480,height:240,closeAction:"hide",title:Translate("Layout Information"),bodyStyle:"padding:10px",buttons:[{text:Translate("Close"),handler:this.hideWindow,scope:this}],tbar:[{text:Translate("Previous"),handler:function(){prev=this.selector.getSelectedIndex()-1;if(prev<0){prev=this.selector.store.getCount()-1}this.selector.select(prev)},scope:this},"-",{text:Translate("Next"),handler:function(){next=this.selector.getSelectedIndex()+1;if(next>=this.selector.store.getCount()){this.selector.select(0)
}else{this.selector.select(next)}},scope:this}],tpl:new Ext.XTemplate("<h1>{Name}</h1>{Description}"),html:"This is where the layout preview information goes.",listeners:{show:this.handleSelectionChange.createDelegate(this,[a.selector])}});AppCenter.Core.LayoutViewSelectorPreviewWindow.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.LayoutViewSelectorPreviewWindow,Ext.Window,{initComponent:function(){AppCenter.Core.LayoutViewSelectorPreviewWindow.superclass.initComponent.call(this);this.selector.on("selectionchange",this.handleSelectionChange,this)},handleSelectionChange:function(a){var b=a.getSelectedRecords();if(this.body){this.body.dom.innerHTML=this.tpl.apply(b[0].data)}},hideWindow:function(){this.hide()}});Ext.namespace("AppCenter.App.Module");AppCenter.App.Module.WebSiteEditor=Ext.extend(Ext.app.Module,{title:Translate("Website Layout"),iconCls:"website-editor-icon",init:function(){AppCenter.App.Module.WebSiteEditor.superclass.init.call(this)},createPanels:function(a){this.ownerTree=new AppCenter.Core.SiteTreeWithActions(Ext.apply({stateId:"WebsiteCP",itemId:"WebsiteCP",title:this.title,iconCls:this.iconCls,dataUrl:"/_/SiteTree/",website:this.website,treeData:this.treeData,newResources:this.newResources},a||{}));
this.resourceEditor=new AppCenter.Core.ResourceEditor({ownerTree:this.ownerTree,website:this.website,editorPanels:this.editorPanels});if(AppCenter.Core.ResourceEditorDesigner){this.resourceEditorDesigner=new AppCenter.Core.ResourceEditorDesigner({ResourceEditor:this.resourceEditor,website:this.website,editorPanels:this.editorPanels})}this.ownerTree.on("expand",function(){this.MainPanel.layout.setActiveItem(this.resourceEditor)},this.ownerTree)},getControlPanelChildren:function(){return[this.ownerTree]},getMainPanelChildren:function(){var a=[];if(this.resourceEditorDesigner){a.push(this.resourceEditorDesigner)}a.push(this.resourceEditor);return a},finishSetup:function(){this.ownerTree.resourceEditor=this.resourceEditor;this.ownerTree.ControlPanel=this.ControlPanel;this.ownerTree.MainPanel=this.MainPanel;this.ownerTree.EditorPanel=this.MainPanel;this.ownerTree.getCallback=this.getCallback;this.resourceEditor.EditorPanel=this.MainPanel;this.resourceEditor.ControlPanel=this.ControlPanel;this.resourceEditor.MainPanel=this.MainPanel;
if(this.resourceEditorDesigner){this.resourceEditorDesigner.EditorPanel=this.MainPanel}this.resourceEditor.getCallback=this.getCallback},initForPortal:function(){this.createPanels();this.app.add(new Ext.ux.Portlet({title:Translate("Website Editor"),layout:"fit",height:400,items:[this.createBorderLayout([this.ownerTree],this.getMainPanelChildren())]}))}});Ext.namespace("AppCenter.App.Module");AppCenter.App.Module.ThemeEditor=Ext.extend(Ext.app.Module,{title:Translate("Theme Editor"),iconCls:"ac-theme-tree",initForWindow:function(){if(Ext.get("siteCss")==null){return}var a=this;Ext.getCmp("mastermenu").addTool({text:Translate("Edit Theme"),handler:a.createWindow,scope:a})},createPanels:function(a){this.Control=new AppCenter.Theme.Admin.ControlPanel({iconCls:"theme-editor-icon",website:this.website,dataUrl:"/_/Theme/",theme:this.themeConfig,app:this.app,labelWidth:140,CallbackID:this.CallbackID});this.Main=new AppCenter.Theme.Admin.MainPanel({ControlPanel:this.Control});this.Control.MainPanel=this.Main;this.Control.on("expand",function(){if(Ext.isObject(this.MainPanel.layout)){this.MainPanel.layout.setActiveItem(this.Main)
}else{}if(!this.Main.dolay){this.Main.doLayout();this.Main.dolay=true}},this)},getControlPanelChildren:function(){return[this.Control]},getMainPanelChildren:function(){return[this.Main]},finishSetup:function(){return}});Ext.namespace("AppCenter.Theme.Admin");AppCenter.Theme.Admin.ThemeCssComponentGroup=function(a){Ext.apply(this,a||{});this.nodes=new Ext.util.MixedCollection(false,function(b){return b.ComponentId});this.originalValues={}};AppCenter.Theme.Admin.ThemeCssComponentGroup.prototype={add:function(a){this.nodes.add(a);a.componentGroup=this},get:function(a){this.nodes.get(a)},instantiatedNode:function(b,a){var c=this;b.formPanel=a;a.on("afterlayout",function(){c.ControlPanel.onhold=true;this.setNodeIncluded(b,b.Kind=="OneOfMany"?this.isOptionalNodeIncluded(b):this.originalValues[b.ComponentId]!=undefined);a.cascade(function(d){if(d instanceof Ext.form.Field&&this.originalValues[b.ComponentId]){d.setValue(this.originalValues[b.ComponentId][d.name])}if(d instanceof Ext.form.FieldSet){d.on("collapse",this.ControlPanel.bufferLoadPreviewStyle,c.ControlPanel);
d.on("expand",this.ControlPanel.bufferLoadPreviewStyle,c.ControlPanel)}if(d instanceof Ext.ux.SplitFieldSet){d.on("change",c.ControlPanel.bufferLoadPreviewStyle,c.ControlPanel)}if(d instanceof Ext.form.TriggerField){d.on("select",this.ControlPanel.bufferLoadPreviewStyle,c.ControlPanel)}if(d instanceof Ext.form.Field){d.on("valid",this.ControlPanel.bufferLoadPreviewStyle,c.ControlPanel)}if(d instanceof Ext.form.Checkbox){d.on("check",this.ControlPanel.bufferLoadPreviewStyle,c.ControlPanel)}if(d instanceof Ext.ux.form.SliderField){d.on("change",this.ControlPanel.bufferLoadPreviewStyle,c.ControlPanel)}if(d instanceof Ext.form.TextField){d.on("specialkey",function(g,f){if(f.getCharCode()==13){g.blur();f.stopEvent()}})}},this);(function(){c.ControlPanel.onhold=false}).defer(50)},this,{buffer:10,single:true});return a},setNodeIncluded:function(b,c){if(b.formPanel&&b.formPanel.rendered&&b.Kind=="Optional"){var a=b.formPanel.items.get(0);a[c?"expand":"collapse"]()}if(b.Kind=="OneOfMany"){b.checked=c}if(b.formPanel&&b.Kind=="OneOfMany"){if(b.formPanel.setChecked){b.formPanel.setChecked(c)
}else{b.formPanel.checked=c}}},isOptionalNodeIncluded:function(a){if(a.formPanel&&a.formPanel.rendered&&a.Kind=="Optional"){return a.formPanel.items.get(0).checkbox.dom.checked}if(a.formPanel&&a.formPanel.rendered&&a.Kind=="OneOfMany"){return a.formPanel.checked}return this.originalValues[a.ComponentId]!=undefined},resetNodeFields:function(b){var a=b.formPanel;if(a&&a.rendered){a.cascade(function(c){})}if(a&&a.rendered){a.form.reset()}this.setNodeFields(b,this.originalValues[b.ComponentId]);if(a&&a.rendered){a.cascade(function(c){})}},setNodeFields:function(c,b){var a=c.formPanel;if(a&&a.rendered&&b){a.form.setValues(b)}this.setNodeIncluded(c,b!=undefined)},shouldIncludeNodeInCss:function(a){return(a.Kind=="Required"||a.Kind=="Always")?true:this.isOptionalNodeIncluded(a)},shouldIncludeNodeForSave:function(a){return a.Kind=="Always"?false:((a.Kind=="Required")?true:this.isOptionalNodeIncluded(a))},getNodeDefaults:function(b){var a={};if(b.items){Ext.each(b.items,function(c){a[c.name]=c.defaultValue||c.emptyText
})}return a},getNodeValues:function(d){var b=d.formPanel;var a;if(b&&b.rendered){switch(d.Kind){case"OneOfMany":a=b.items;break;case"Optional":case"Required":a=b.items.get(0).items;break;case"Always":break}}if(a){var c={};a.each(function(f){if(f.isFormField){var e=f.getValue();c[f.name]=(e===undefined||e===null||e==="")?f.defaultValue:e}});return c}else{return Ext.apply({},this.originalValues[d.ComponentId],this.getNodeDefaults(d))}},getNodeCss:function(a,b){if(!b){b=this.getNodeValues(a)}b.httpserver="";b.staticac="/_/staticac/";return a.cssTemplate.applyTemplate(b)},getComponentsToSave:function(){var a=[];this.nodes.each(function(b){if(this.shouldIncludeNodeForSave(b)&&b.Kind!="Always"){a.push({ComponentId:b.ComponentId,CssOrder:b.CssOrder,Options:this.getNodeValues(b),Css:b.cssChanged?b.css:null})}},this);a.sort(function(d,c){return d.CssOrder-c.CssOrder});return a},getAllCss:function(g){var d=/"((http|https):\/\/[^"]*)"/,f=[],c=this;this.nodes.each(function(h){if(this.shouldIncludeNodeInCss(h)){var l=this.getNodeValues(h);
if(l.ext){c.ext="visual"}else{f.push({Name:h.Name,CssOrder:h.CssOrder,css:this.getNodeCss(h,l)})}}},this);f.sort(function(l,h){return l.CssOrder-h.CssOrder});var b="",a=[],e="";f.each(function(l){b=b+l.css;if(l.CssOrder<10){var h=d.exec(l.css);if(h){a.push(h[0])}else{e=e+l.css}}else{e=e+l.css}});if(g){return{imports:a,text:e}}return b},getExtUrl:function(){return FixedAsset["extjs.com,commercial/Ext3/ccss/"]+this.ext+".css"},loadValueSets:function(b){delete this.originalValues;this.originalValues={};if(Ext.isArray(b)){Ext.each(b,function(d){this.originalValues[d.ComponentId]=d})}else{this.originalValues=b}var c;var a=false;if(true){this.nodes.each(function(d){d.cssChanged=false;if(c&&c.Group!=d.Group){if(!a){this.originalValues[c.ComponentId]={}}a=false;c=null}if(c&&c.Group==d.Group){a=a||(this.originalValues[d.ComponentId]!=undefined)}if(!c&&d.Group){c=d;a=(this.originalValues[c.ComponentId]!=undefined)}},this)}if(c&&!a){this.originalValues[c.ComponentId]={}}this.nodes.each(function(d){this.resetNodeFields(d)
},this)}};Ext.namespace("AppCenter.Theme.Admin");AppCenter.Theme.Admin.DesignGroup=function(a){Ext.apply(this,a);this.cssNodes=new AppCenter.Theme.Admin.ThemeCssComponentGroup({ControlPanel:this.ControlPanel})};AppCenter.Theme.Admin.DesignGroup.prototype={buildDesign:function(){var g=function(o,q){var s=o.groupTabSetName+o.text;var p=this.MainPanel;var m=p.items.get(s);if(m==null){m=new AppCenter.Theme.Admin.GroupPanelComponents({formSet:o,ControlPanel:this.ControlPanel});p.add(m);p.layout.setActiveItem(s)}else{p.layout.setActiveItem(s)}};var h=[];var e=this.components;var l=this.cssNodes;for(var f in e){var c=[];var b=e[f];for(var a in b){var d=b[a];Ext.each(d,function(m){m.cssTemplate=new Ext.XTemplate(m.css.replace(/\n/g," ").replace(/\r/g," "));m.cssTemplate.compile();l.add(m)});c.push({groupTabSetName:f,text:a,enableToggle:true,toggleGroup:"themeDesigner",forms:d,handler:g,scope:this})}if(f!="Always"){h.push({title:f,xtype:"panel",items:[{xtype:"container",autoEl:"div",cls:"vertical x-toolbar x-toolbar-no-bg",defaultType:"button",items:c}]})
}}return h},activate:function(c){var d=this.ControlPanel.items.get("designgroups");var e=this.design;var a=d.items.get(e);if(a==null){var b=d.add({xtype:"container",autoEl:"div",itemId:this.design,defaults:{style:"padding-bottom:10px;",frame:true,collapsible:true,titleCollapse:true},items:this.buildDesign(this),autoHeight:true});d.layout.setActiveItem(e);b.doLayout()}else{d.layout.setActiveItem(e)}this.ControlPanel.cssNodes=this.cssNodes}};AppCenter.Theme.Admin.ControlPanel=function(a){a.items=[{xtype:"panel",frame:false,collapsible:false,title:Translate("Theme Name"),itemId:"themePanel",items:[{xtype:"container",autoEl:"div",cls:"vertical x-toolbar x-panel-mc",style:"padding:7px",defaultType:"button",items:[{itemId:"settings",text:Translate("Settings"),enableToggle:true,pressed:true,toggleGroup:"themeDesigner",handler:function(){this.MainPanel.layout.setActiveItem("settings");var b=this.MainPanel.items.get("settings");if(!b.dolay){this.MainPanel.doLayout();b.dolay=true}},scope:this}]}]},{xtype:"container",autoEl:"div",border:false,frame:false,layout:"card",itemId:"designgroups",autoHeight:true}];
AppCenter.Theme.Admin.ControlPanel.superclass.constructor.call(this,a);this.on("expand",function(){var c=this;var d=this.MainPanel;d.on("afterlayout",c.loadTheme.createDelegate(c,[c.theme]),c,{single:true,delay:10});this.designs={};for(var b in this.theme.designs){this.designs[b]=new AppCenter.Theme.Admin.DesignGroup({style:this.theme.Style,design:b,components:this.theme.designs[b],ControlPanel:c,MainPanel:d})}this.doLayout()},this,{single:true})};Ext.extend(AppCenter.Theme.Admin.ControlPanel,Ext.Panel,{itemId:"ThemeCP",title:Translate("Theme Editor"),border:false,width:165,autoScroll:true,bodyStyle:"padding:10px 10px 0 10px; ",defaults:{style:"padding-bottom:10px;",frame:true,collapsible:true,titleCollapse:true},themePreviews:[],themePreviewsWindows:[],createWindow:function(c){var a=this;if((Ext.app.Desktop&&this.app instanceof Ext.app.Desktop)||(Ext.app.ViewportDesktop&&this.app instanceof Ext.app.ViewportDesktop)){return this.app.Desktop.createWindow(c)}else{var b=new Ext.Window(Ext.apply({listeners:{close:function(){a.themePreviewsWindows.remove(this)
}}},c));a.themePreviewsWindows.push(b);return b}},loadTheme:function(e){this.themeId=e.themeId;this.theme=e;var c=this.items.get("themePanel");c.setTitle(e.name);var b=c.items.get(0).items.get("settings");if(!b.pressed){b.toggle.defer(200,b)}var a=this.MainPanel.findById("previewImages");if(a.store){a.loadTheme(e)}this.designs[e.Designer].activate();b.handler.defer(200,this);this.cssNodes.loadValueSets(e.ValueSets);this.MainPanel.themeEditInfo.form.setValues.defer(100,this.MainPanel.themeEditInfo.form,[e]);var d=this.MainPanel.buttons[2];if(e.canEdit){d.setHandler(this.saveTheme,this);d.setText(Translate("Set &amp; Save Theme"));this.MainPanel.items.get("settings").cascade(this.enableField)}else{d.setHandler(this.setTheme,this);d.setText(Translate("Set Theme"));this.MainPanel.items.get("settings").cascade(this.disableField)}this.bufferLoadPreviewStyle()},disableField:function(a){if(a.isFormField){a.disable()}},enableField:function(a){if(a.isFormField){a.enable()}},loadPreviewComplete:function(d){if(d==null){return
}try{d.getEl().unmask();var c=d.getFrameDocument?d.getFrameDocument():d.document;var b=d.getFrameWindow?d.getFrameWindow():d.window}catch(a){this.themePreviews.remove.defer(10,this.themePreviews,[d]);return}this.themePreviews.push(d);this.loadPreviewStyleForWindow.defer(10,this,[b,c])},bufferLoadPreviewStyle:function(){if(!this.loadPreviewTask){this.loadPreviewTask=new Ext.util.DelayedTask(this.loadPreviewStyle,this)}var a=1000;if(Ext.isIE6){a=a*3}else{if(Ext.isIE7){a=a*2}}if(!this.onhold){this.loadPreviewTask.delay(a,this.loadPreviewStyle,this,arguments)}},loadPreviewStyle:function(h){var g,f,d,b,a,c=this;Ext.each(this.themePreviews,function(q){try{f=q.getFrameWindow?q.getFrameWindow():q.window;d=q.getFrameDocument?q.getFrameDocument():q.document;b=d.getElementById("themeEditorSiteCss")}catch(p){this.themePreviews.remove.defer(10,this.themePreviews,[q]);return}if(h&&h.fx&&h.fxSelect){h.fxStyleReset=h.fx;a=h.getValue()||h.defaultValue||h.emptyText;switch(h.fx){case"width":var l=/^(\d+)(px)?$/.exec(a);if(l&&l[1]){a=l[1];
h.fxFn="setWidth";break}l=/^(\d+)(%)?$/.exec(a);if(l&&l[1]){a=parseInt(l[1]/100*f.Ext.select(h.fxSelect).item(0).parent().getWidth());h.fxFn="setWidth";break}break;case"height":var l=/^(\d+)(px)?$/.exec(a);if(l&&l[1]){a=l[1];h.fxFn="setHeight";break}l=/^(\d+)(%)?$/.exec(a);if(l&&l[1]){a=parseInt(l[1]/100*f.Ext.select(h.fxSelect).item(0).parent().getHeight());h.fxFn="setHeight";break}break;case"opacity":h.fxFn="setOpacity";break;case"display":if(a=="none"){h.fxFn="hide"}else{h.fxFn="show"}break}var o=0.5;var m={duration:o,scope:this};(function(){this.loadPreviewStyleForWindow(f,d);if(h.fxStyleReset){if(f.Ext){f.Ext.select(h.fxSelect).setStyle(h.fxStyleReset,null)}}}).defer(o*1100,this);if(h.fxFn){f.Ext.select(h.fxSelect)[h.fxFn](a,m)}else{this.loadPreviewStyleForWindow(f,d)}}else{this.loadPreviewStyleForWindow(f,d)}},this);Ext.each(this.themePreviews,function(e){e.el.unmask()})},loadPreviewStyleForWindow:function(d,c){if(this.cssNodes==null){return}var a=this.cssNodes.getAllCss(),b=this.cssNodes.getExtUrl();d.Ext.util.CSS.swapStyleSheet("themeEditorStructureExtCss",FixedAsset["extjs.com,commercial/Ext3/ccss/"]+"structure.css");
d.Ext.util.CSS.swapStyleSheet("themeEditorExtCss",b);d.Ext.util.CSS.createStyleSheet(a,"themeEditorTemp");d.Ext.util.CSS.removeStyleSheet("themeEditorSiteCss");d.Ext.fly("themeEditorTemp").dom.id="themeEditorSiteCss";d.Ext.util.CSS.refreshCache();(function(){if(c){var e;e=c.getElementById("siteCss");if(e){e.disabled=true}}}).defer(250)},getCallback:function(){var a=new Prado.CallbackRequest(this.CallbackID,{onPreDispatch:this.onCallbackPreDispatch.createDelegate(this),onComplete:this.onCallbackComplete.createDelegate(this)});return a},sendCallback:function(b){var a=this.getCallback();a.setCallbackParameter(b);a.dispatch()},onCallbackPreDispatch:function(b){var a=b.getCallbackParameter().loadMsg;var c=this.findParentBy(function(e){return e.initialConfig.layout=="border"});c.getEl().mask(a,"x-mask-loading");var d=b.getCallbackParameter().callback+"PreDispatch";if(this[d]){this[d].call(this,b)}},onCallbackComplete:function(b,a){var c=this.findParentBy(function(e){return e.initialConfig.layout=="border"});c.getEl().unmask();
if(this.saveLocal){Ext.util.CSS.removeStyleSheet("siteCss");Ext.util.CSS.createStyleSheet(this.cssNodes.getAllCss(),"siteCss");Ext.get("siteCss").dom.disabled=true}var d=b.getCallbackParameter().callback+"Complete";if(this[d]){this[d].call(this,b,a)}if(a.success&&b.getCallbackParameter().successMsg){this.MainPanel.getEl().msg(Translate("Success!"),b.getCallbackParameter().successMsg,3)}else{this.MainPanel.getEl().msg(Translate("Error"),Translate(a.error),6)}},saveThemeAs:function(a){Ext.apply(a,{components:this.cssNodes.getComponentsToSave(),style:this.theme.Style,designer:this.theme.Designer,callback:"saveThemeAs",loadMsg:Translate("Saving new theme&hellip;"),successMsg:Translate("New theme was saved successfully.")});this.sendCallback(a)},saveThemeAsComplete:function(c,b){var a=Ext.StoreMgr.get("UserThemes");if(a&&b.theme){a.loadData({themes:[b.theme]},true)}if(b.theme){this.loadTheme(b.theme)}},saveTheme:function(){var b={settings:this.MainPanel.items.get("settings").getForm().getValues(),themeId:this.themeId,components:this.cssNodes.getComponentsToSave(),callback:"saveTheme",loadMsg:Translate("Saving theme&hellip;"),successMsg:Translate("Theme was saved successfully.")};
var a=this.MainPanel.items.get("settings").findById("previewImages");if(a.isModified){b.settings.previewImages=new Array();a.store.query("status","complete").each(function(c){b.settings.previewImages.push(c.data.fileId)})}this.sendCallback(b)},saveThemeComplete:function(f,b){if(b.theme){this.loadTheme(b.theme)}var e=Ext.StoreMgr.get("UserThemes");if(e&&b.theme){var a=e.getById(b.theme.themeId);if(a){for(var d in b.theme){a.set(d,b.theme[d])}e.commitChanges();return}}var c=Ext.StoreMgr.get("DomainThemes");if(c&&b.theme){var a=c.getById(b.theme.themeId);if(a){for(var d in b.theme){a.set(d,b.theme[d])}c.commitChanges();return}}},setTheme:function(){var a={themeId:this.themeId,callback:"setTheme",loadMsg:Translate("Setting theme to {0}&hellip;",[this.theme.name]),successMsg:Translate("Theme has been set to {0}.",[this.theme.name])};this.sendCallback(a)}});Ext.namespace("AppCenter.Theme.Admin");AppCenter.Theme.Admin.ThemeEditConfig={itemId:"settings",border:false,labelAlign:"top",bodyStyle:"padding:0px",height:"100%",items:[{xtype:"ac-themeview-previewpanel",title:Translate("Theme Preview"),id:"previewImages",itemId:"previewImages",border:false,height:160,style:"border-bottom:1px solid #ccc"},{itemId:"form",bodyStyle:"padding:10px;",layout:"form",border:false,items:[{layout:"column",border:false,items:[{columnWidth:0.5,border:false,layout:"form",items:[{xtype:"textfield",fieldLabel:Translate("Theme Name"),name:"name",anchor:"80%"}]},{columnWidth:0.25,border:false,layout:"form",items:[{xtype:"textfield",fieldLabel:Translate("HTML Style"),name:"Style",readOnly:true,anchor:"80%",style:"background: none;border:1px solid #DDD;color:#333;"}]},{columnWidth:0.25,border:false,layout:"form",items:[{xtype:"textfield",fieldLabel:Translate("CSS Designer"),name:"Designer",readOnly:true,anchor:"80%",style:"background: none;border:1px solid #DDD;color:#333;"}]}]},{fieldLabel:Translate("Theme Description"),name:"description",xtype:"textarea",anchor:"0",height:100},{fieldLabel:Translate("Domain Theme"),xtype:"checkbox",name:"isdomaintheme",hideLabel:true,boxLabel:"Make this a domain theme (available to all users)",itemId:"isdomaintheme",hideMode:"offsets",listeners:{beforerender:function(){if(!AppCenter.Domain.get().Can.CreateDomainTheme){this.hide();
this.boxLabel=undefined}}}}],anchor:"0 0"}],listeners:{afterlayout:function(){this.items.get("previewImages").setFirstImage()}}};AppCenter.Theme.Admin.GroupPanelComponents=function(b){this.itemId=b.formSet.groupTabSetName+b.formSet.text;var d=[];var a=false;var c=b.ControlPanel;Ext.each(b.formSet.forms,function(e){e.MainPanel=this;if(e.Group){if(a&&e.Group!=a.title){d.push(a);a=false}if(!a){a={xtype:"splitfieldset",layoutConfig:{deferredRender:true},autoHeight:true,iconCls:"ac-theme-icon ac-theme-icon-"+e.Type,title:e.Group,items:[],listeners:{change:c.bufferLoadPreviewStyle,scope:c}}}a.items.push(c.cssNodes.instantiatedNode(e,new Ext.FormPanel({border:false,plain:true,labelAlign:c.labelAlign,labelWidth:c.labelWidth,defaults:{width:c.fieldWidth||175},itemId:"TC_"+e.ComponentId,btitle:e.Name,checked:c.cssNodes.isOptionalNodeIncluded(e),items:e.items||[{xtype:"box",autoEl:"div"}],buttons:AppCenter.Domain.get().Can.EditCssComponents?[new AppCenter.Theme.Admin.CSSEditButton({scope:e})]:null})))}else{if(a){d.push(a)
}a=false;var f={xtype:"fieldset",layout:"form",buttonAlign:"center",plain:true,labelWidth:c.labelWidth,labelAlign:c.labelAlign,defaults:{width:c.fieldWidth||175},itemId:"TC_"+e.ComponentId,autoHeight:true,iconCls:"ac-theme-editor-icon ac-theme-editor-icon-"+e.Type,title:e.Name,checkboxToggle:e.Kind=="Optional",checked:e.Kind=="Optional"?c.cssNodes.isOptionalNodeIncluded(e):undefined,items:e.items||[{xtype:"box",autoEl:"div"}],buttons:AppCenter.Domain.get().Can.EditCssComponents?[new AppCenter.Theme.Admin.CSSEditButton({scope:e})]:null};d.push(c.cssNodes.instantiatedNode(e,new Ext.FormPanel({border:false,items:[f]})))}},this);if(a){d.push(a)}b.items=d;AppCenter.Theme.Admin.GroupPanelComponents.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Theme.Admin.GroupPanelComponents,Ext.Panel,{border:false,autoScroll:true,bodyStyle:"padding:10px 10px 0px 10px;",defaults:{style:"padding-bottom:10px;"},initComponent:function(){AppCenter.Theme.Admin.GroupPanelComponents.superclass.initComponent.call(this)}});AppCenter.Theme.Admin.MainPanel=function(d){var e=this;
var c=d.ControlPanel;var a=[];var b={};Ext.each(c.theme.previews,function(f){a.push({text:f.Name,previewUrl:"/_proxy/"+c.website.fqdn+f.Path})});e.themeEditInfo=new Ext.FormPanel(Ext.apply({},AppCenter.Theme.Admin.ThemeEditConfig,c.theme));Ext.apply(d,{items:[e.themeEditInfo],buttons:[{text:Translate("Preview Window"),menu:{items:a,listeners:{itemclick:function(f){Ext.menu.MenuMgr.hideAll();if(!b[f.id]){b[f.id]=e.ControlPanel.createWindow({width:600,height:400,title:Translate("Theme Sample: ")+f.text,collapsible:true,constrain:true,maximizable:true,animCollapse:false,layout:"fit",items:[{border:false,xtype:"iframepanel",itemId:"themepreview",listeners:{render:function(){this.el.mask(Translate("Loading..."),"x-mask-loading");this.setSrc(f.previewUrl);this.on("documentloaded",c.loadPreviewComplete.createDelegate(c,[this]))}}}],listeners:{close:function(){delete b[f.id]}}})}b[f.id].show(f)},scope:this}}},{text:Translate("Load Theme..."),handler:function(){if(!this.themeSelect){this.themeSelect=new AppCenter.Core.ThemeView.SelectWindow();
this.themeSelect.on("select",function(f){this.ControlPanel.el.mask();this.el.mask(Translate("Loading..."),"x-mask-loading");if(!this.ControlPanel.themeLoader){this.ControlPanel.themeLoader=new Ext.ux.SimpleJsonLoader({dataUrl:"/_/Theme",baseParams:{themeId:f.themeId},listeners:{load:function(g,h){this.ControlPanel.loadTheme(g.result);this.ControlPanel.el.unmask();this.el.unmask()},scope:this}})}else{this.ControlPanel.themeLoader.baseParams.themeId=f.themeId}this.ControlPanel.themeLoader.load()},this)}this.themeSelect.show()},scope:this},{text:Translate("Save Theme"),itemId:"saveTheme",handler:function(){this.ControlPanel.saveTheme()},scope:this},{text:Translate("Set &amp; Save Theme As..."),handler:function(){if(!this.saveAsWindow){this.saveAsWindow=new AppCenter.Core.ThemeInfoWindow({title:Translate("Set &amp; Save Theme As&hellip;"),name:"New Theme"});this.saveAsWindow.on("save",this.ControlPanel.saveThemeAs,this.ControlPanel)}this.saveAsWindow.show()},scope:this}]});AppCenter.Theme.Admin.MainPanel.superclass.constructor.call(this,d)
};Ext.extend(AppCenter.Theme.Admin.MainPanel,Ext.Panel,{border:true,bodyStyle:"padding:0px;",layout:"card",activeItem:0});AppCenter.Theme.Admin.CSSEditButton=function(a){a=Ext.apply({},a,{text:Translate("Edit CSS"),handler:this.loadCssEditor});AppCenter.Theme.Admin.CSSEditButton.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Theme.Admin.CSSEditButton,Ext.Button,{loadCssEditor:function(a){if(!this.CssEditor){this.CssEditor=new Ext.form.FormPanel({layout:"fit",items:[{xtype:"editarea",itemId:"cp",syntax:"css",value:this.css,listeners:{keyup:a.applyCss.createDelegate(this)}}],buttons:[{text:Translate("Save CSS"),scope:this,handler:a.saveCss},{text:Translate("Test Selection"),scope:this,handler:a.applyToSelectedCss},{text:Translate("Cancel"),scope:this,handler:a.cancel}]});this.MainPanel.ownerCt.ownerCt.add(this.CssEditor)}this.originalCss=this.css;this.MainPanel.ownerCt.ownerCt.layout.setActiveItem(this.CssEditor)},saveCss:function(){this.css=this.CssEditor.items.get("cp").getValue();this.cssChanged=true;
this.cssTemplate=new Ext.XTemplate(this.css.replace(/\n/g," ").replace(/\r/g," "));this.cssTemplate.compile();this.MainPanel.ControlPanel.loadPreviewStyleForWindow(window,document);this.MainPanel.ownerCt.ownerCt.layout.setActiveItem(this.MainPanel.ownerCt)},applyCss:function(){this.css=this.CssEditor.items.get("cp").getValue();this.cssTemplate=new Ext.XTemplate(this.css.replace(/\n/g," ").replace(/\r/g," "));this.cssTemplate.compile();this.MainPanel.ControlPanel.loadPreviewStyleForWindow(window,document)},applyToSelectedCss:function(){var c=this.CssEditor.items.get("cp").getEl().dom;if(typeof(c.selectionStart)!="undefined"){var b=c.value.substr(c.selectionStart,c.selectionEnd-c.selectionStart);var a=new Ext.XTemplate(b);var d=this.componentGroup.getNodeValues(this);Ext.Msg.alert("CSS Snippet",a.apply(d))}},cancel:function(){this.css=this.originalCss;this.cssTemplate=new Ext.XTemplate(this.css.replace(/\n/g," ").replace(/\r/g," "));this.cssTemplate.compile();this.MainPanel.ControlPanel.loadPreviewStyleForWindow(window,document);
this.MainPanel.ownerCt.ownerCt.layout.setActiveItem(this.MainPanel.ownerCt);this.CssEditor.items.get("cp").setValue(this.originalCss)}});Ext.ux.TabbableTextArea=function(a){a=Ext.apply({},a,{enableKeyEvents:true,id:Ext.id()});Ext.ux.TabbableTextArea.superclass.constructor.call(this,a)};Ext.extend(Ext.ux.TabbableTextArea,Ext.form.TextArea,{autoCreate:{tag:"textarea",style:"width:500px;height:300px;",autocomplete:"off",spellcheck:"false"},initComponent:function(){Ext.ux.TabbableTextArea.superclass.initComponent.call(this);this.on("specialkey",this.specialKeyHandler,this)},specialKeyHandler:function(a,b){switch(b.getKey()){case b.TAB:this.tabKeyHandler(a,b);break}},tabKeyHandler:function(l,d){var g=l.getEl().dom;var a=function(o,p,q){if(o.setSelectionRange){o.focus();o.setSelectionRange(p,q)}else{if(o.createTextRange){var e=o.createTextRange();e.collapse(true);e.moveEnd("character",q);e.moveStart("character",p);e.select()}}};var f="\t";if(g.setSelectionRange){var h=g.selectionStart;var m=g.selectionEnd;g.value=g.value.substring(0,h)+f+g.value.substring(m);
if(h!=m){a(g,h,h+f.length)}else{a(g,h+f.length,h+f.length)}}else{if(document.selection){var c=document.selection.createRange();if(c.parentElement()==g){var b=c.text=="";c.text=f;if(!b){c.moveStart("character",-f.length);c.select()}}}}d.stopEvent()}});Ext.reg("textarea-tabbable",Ext.ux.TabbableTextArea);AppCenter.Core.RoleSelector=function(a){a=Ext.apply(a||{},{bodyStyle:"padding:0px",autoExpandColumn:"description",clicksToEdit:1,columns:[{header:"Group Name",dataIndex:"groupName",width:160},{header:"Group ID",dataIndex:"groupId",hidden:true},{header:"Role Name",dataIndex:"roleName",hidden:true},{header:"Role ID",dataIndex:"roleId",hidden:false,id:"roleId",hidden:true},{header:"Role (edit)",width:120,dataIndex:"roleId",renderer:function(e,d,b,f,c){store=this.getColumnModel().getCellEditor(c,f).field.store;index=store.find("roleId",e);if(index>=0){return(store.getAt(index).data.roleName)}else{return Translate("No Role Set")}}.createDelegate(this),editor:new Ext.ux.SelectBox({allowBlank:true,typeAhead:true,triggerAction:"all",lazyRender:true,listClass:"x-combo-list-small",displayField:"roleName",valueField:"roleId",mode:"local",forceSelection:true,store:new Ext.data.JsonStore({autoLoad:true,url:"/_/RolesByModule",baseParams:{module:a.module,moduleType:a.moduleType},fields:[{name:"roleName"},{name:"roleId"},{name:"roleDescription"}],root:"roles"})})},{header:"Description",dataIndex:"roleId",id:"description",renderer:function(e,d,b,f,c){store=this.getColumnModel().getCellEditor(4,f).field.store;
index=store.find("roleId",e);if(index>=0){return(store.getAt(index).data.roleDescription)}else{return"No Access"}}.createDelegate(this)}],viewConfig:{autoFill:true},enableColumnMove:false,store:new Ext.data.JsonStore({fields:[{name:"groupName"},{name:"roleName"},{name:"roleId"},{name:"groupId"}],root:"rows"}),listeners:{afteredit:function(){var c=this.items.get("field"),b=[];this.store.data.items.each(function(d){b.push({groupName:d.data.groupName,groupId:d.data.groupId,roleId:d.data.roleId})});c.setValue(Ext.encode(b))}},items:[{xtype:"roleselectorfield",name:a.name,itemId:"field"}]});AppCenter.Core.RoleSelector.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.RoleSelector,Ext.grid.EditorGridPanel,{});Ext.reg("roleselector",AppCenter.Core.RoleSelector);AppCenter.Core.RoleSelectorField=function(a){a=Ext.apply(a||{},{hidden:true});AppCenter.Core.RoleSelector.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.RoleSelectorField,Ext.form.TextArea,{setValue:function(value){if(this.el){if(typeof value=="object"){this.el.dom.value=Ext.encode(value)
}else{if(typeof value=="string"){this.el.dom.value=value;value=eval(value)}else{this.el.dom.value="[]"}}}this.ownerCt.store.removeAll();if(value){this.ownerCt.store.loadData({rows:value})}}});Ext.reg("roleselectorfield",AppCenter.Core.RoleSelectorField);AppCenter.Core.RoleSelectorComboBox=function(a){a=Ext.apply(a||{},{})};Ext.namespace("AppCenter.Accounts.Admin");AppCenter.App.Module.AccountsEditor=Ext.extend(Ext.app.Module,{createPanels:function(b){this.store=new Ext.data.Store({reader:new Ext.data.JsonReader({},Ext.data.Record.create([{name:"id"},{name:"name"},{name:"image"},{name:"detailXType"},{name:"detailData"},{name:"width"},{name:"height"}])),data:this.records});this.Control=new AppCenter.Accounts.Admin.ControlPanel({iconCls:"accounts-editor-icon",website:this.website,accounts:this.accounts,app:this.app,store:this.store,items:[{xtype:"ac-manager-control-accounts",store:this.store}]});var a=[];Ext.each(this.records,function(c){a.push({xtype:c.detailXType,itemId:c.id,title:c.name,data:c.detailData,callback:c.callback,record:c})
});this.Main=new AppCenter.Accounts.Admin.MainPanel({ControlPanel:this.Control,accounts:this.accounts,store:this.store,items:a});this.Control.MainPanel=this.Main;this.Control.on("expand",function(){this.MainPanel.layout.setActiveItem(this.Main);if(!this.Main.dolay){this.Main.doLayout();this.Main.dolay=true}},this)},getControlPanelChildren:function(){return[this.Control]},getMainPanelChildren:function(){return[this.Main]},finishSetup:function(){}});AppCenter.Accounts.Admin.ControlPanel=function(b){var a=this;AppCenter.Accounts.Admin.ControlPanel.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Accounts.Admin.ControlPanel,Ext.Panel,{stateId:"AccountsCP",itemId:"AccountsCP",title:Translate("External"),border:false,width:165,autoScroll:true,bodyStyle:"padding:10px 10px 0 10px; ",defaults:{style:"padding-bottom:10px;",frame:true,collapsible:true}});AppCenter.Accounts.View=function(a){a=Ext.apply({},a,{emptyText:Translate("Accounts"),singleSelect:true,itemSelector:"div.ac-selector-wrap",overClass:"ac-selector-over",cls:"ac-selector ac-accountlist",tpl:new Ext.XTemplate('<tpl for=".">','<div class="ac-selector-wrap">','<div class="preview">','<img style="width:{width}px;height:{height}px;" src="{image}" title="{name}"/>',"</div>","</div>","</tpl>",'<div class="x-clear"></div>')});
AppCenter.Accounts.View.superclass.constructor.call(this,a);this.on("render",function(){this.select(0,false,true)},this,{delay:1});this.on("selectionchange",function(){this.selectedRecords=this.getSelectedRecords();if(this.selectedRecords[0]){var b=this.selectedRecords[0].data.id;this.ownerCt.MainPanel.layout.setActiveItem(b);this.ownerCt.MainPanel.items.get(b).doLayout()}},this)};Ext.extend(AppCenter.Accounts.View,Ext.DataView,{});Ext.reg("ac-manager-control-accounts",AppCenter.Accounts.View);AppCenter.Accounts.Admin.MainPanel=Ext.extend(Ext.Panel,{border:false,baseCls:"x-border-layout-ct",bodyStyle:"padding:0px;",layout:"card",activeItem:0});Ext.namespace("AppCenter.Google.AdSense");AppCenter.Google.AdSense.AdCode=Ext.extend(Ext.ux.ManagedIframePanel,{defaultSrc:"/_/staticac/blank.html",border:false,frameStyle:"overflow:hidden",listeners:{documentloaded:function(){this.iframe.update(this.code,true)},delay:50,single:true}});Ext.reg("ac-g-adsense-adcode",AppCenter.Google.AdSense.AdCode);AppCenter.Google.AdSense.WebsiteLangs=[["at","Arabic"],["bg","Bulgarian"],["zh-cn","Chinese (Simplified)"],["zh-tw","Chinese (Traditional)"],["hr","Croatian"],["cs","Czech"],["da","Danish"],["nl","Dutch"],["en","English"],["fi","Finnish"],["fr","French"],["de","German"],["el","Greek"],["he","Hebrew"],["hu","Hungarian"],["it","Italian"],["ja","Japanese"],["ko","Korean"],["no","Norwegian"],["pl","Polish"],["pt","Portuguese"],["ro","Romanian"],["ru","Russian"],["sk","Slovak"],["es","Spanish"],["sv","Swedish"],["tr","Turkish"]];
AppCenter.Google.AdSense.UserLangs=[["at","Arabic"],["bg","Bulgarian"],["zh-cn","Chinese (Simplified)"],["zh-tw","Chinese (Traditional)"],["hr","Croatian"],["cs","Czech"],["da","Danish"],["nl","Dutch"],["en_GB","English (United Kingdom)"],["en_US","English (United States)"],["fi","Finnish"],["fr","French"],["de","German"],["el","Greek"],["he","Hebrew"],["hu","Hungarian"],["it","Italian"],["ja","Japanese"],["ko","Korean"],["no","Norwegian"],["pl","Polish"],["pt_BR","Portuguese (Brazil)"],["ro","Romanian"],["ru","Russian"],["sk","Slovak"],["es","Spanish"],["sv","Swedish"],["tr","Turkish"]];AppCenter.Google.AdSense.StartOver={xtype:"button",text:Translate("Start Over"),style:"margin: 10px auto",handler:function(){Ext.getCmp("adsense").layout.setActiveItem("NotAssociated")}};AppCenter.Google.AdSense.CheckStatus=Ext.extend(Ext.Button,{text:Translate("Update Status from Google AdSense"),iconCls:"ac-i-reload",unknownError:Translate("There was a network error or the server said something we don't understand. Please try again."),handler:function(){var b=this;
var a=Ext.MessageBox.wait("Asking Google for an update.","Connecting...");this.callback({Command:"UpdateStatus",ActiveControl:{RequestTimeOut:65000,EnablePageStateUpdate:false,HasPriority:true,CausesValidation:false,onSuccess:function(c,d){a.hide();if(d.success){Ext.getCmp("adsense").layout.setActiveItem(d.status.Status);Ext.getCmp("adsense").body.highlight();if(b.onSuccess&&typeof b.onSuccess=="function"){b.onSuccess(c,d)}}else{Ext.MessageBox.alert(Translate("Error"),d.error||b.unknownError)}},onFailure:function(c,d){a.hide();Ext.MessageBox.alert(Translate("Error"),b.unknownError)}}})}});Ext.reg("ac-g-adsense-checkstatus",AppCenter.Google.AdSense.CheckStatus);AppCenter.Google.AdSense.Create=function(a){var b=190;AppCenter.Google.AdSense.Create.superclass.constructor.call(this,Ext.apply({title:Translate("AdSense Signup"),iconCls:"ac-manager-accounts-google-icon",modal:true,height:400,width:380,center:true,bodyStyle:"background:#eee;",items:[{xtype:"box",autoEl:{tag:"div",html:'<img src="'+FixedAssetBase+'misc/logos/google-adsense.png" style="width:143px;height:59px;float:left;padding-right:15px;"/><b style="line-height:2em;">Account Creation</b><br><p >Please enter the following information to be sent to Google:</p>',style:"background:#fff;padding:10px;border-bottom:1px solid #ddd;height:62px;"}},{xtype:"form",labelWidth:135,itemId:"formpanel",monitorValid:true,border:false,bodyStyle:"background:#eee;padding:10px;",items:[{fieldLabel:Translate("Login Email"),name:"GAdSenseEmail",xtype:"textfield",vtype:"email",allowBlank:false,grow:true,growMin:b,growMax:b+100,value:a.data.defaultEmail},{fieldLabel:Translate("Entity Type"),name:"GAdSenseEntity",xtype:"radio",boxLabel:Translate("Individual"),inputValue:"Individual",checked:true},{labelSeparator:"",name:"GAdSenseEntity",xtype:"radio",inputValue:"Business",boxLabel:Translate("Business")},{fieldLabel:Translate("Linked Website"),name:"GAdSenseWebSite",xtype:"textfield",readOnly:true,value:a.data.Website},{fieldLabel:Translate("Website Language"),name:"GAdSenseWSLanguage",xtype:"language",languages:AppCenter.Google.AdSense.WebsiteLangs,allowBlank:false,value:a.data.defaultWebsiteLanguage||"en"},{fieldLabel:Translate("Contact Language"),name:"GAdSenseAccountLanguage",xtype:"language",languages:AppCenter.Google.AdSense.UserLangs,allowBlank:false,value:a.data.defaultUserLanguage||"en_US"},{fieldLabel:Translate("Email promotions"),name:"GAdSensePromotion",xtype:"selectbox",store:[[true,"Yes"],[false,"No"]],value:"Yes",hiddenValue:true},{name:"GAdSenseTOS",xtype:"hidden",inputValue:"true",checked:false}],listeners:{clientvalidation:function(d,c){this.ownerCt.buttons[1].setDisabled(!c)
}}}],buttonAlign:"right",buttons:[{text:Translate("Cancel"),handler:function(){this.ownerCt.close.defer(1,this.ownerCt)}},{text:Translate("Create Google AdSense Account"),iconCls:"ac-i-add",handler:function(){var c=Ext.MessageBox.wait("Sending data to Google","Connecting...");var d=this.ownerCt;d.hide();d.callback({Command:"CreateAccount",Parameter:d.items.get("formpanel").form.getValues(),ActiveControl:{RequestTimeOut:65000,EnablePageStateUpdate:false,HasPriority:true,CausesValidation:false,onSuccess:function(e,f){c.hide();if(f.success){d.close();Ext.getCmp("adsense").layout.setActiveItem("PendingOnCreate");Ext.getCmp("adsense").body.highlight()}else{Ext.MessageBox.alert(Translate("Error"),f.error,d.show,d)}},onFailure:function(e,f){c.hide();d.show();Ext.MessageBox.alert(Translate("Error"),Translate("There was a network error or the server said something we don't understand. Please try again."))}}})}}]},a))};Ext.extend(AppCenter.Google.AdSense.Create,Ext.Window,{});AppCenter.Google.AdSense.Associate=function(a){var b=190;
AppCenter.Google.AdSense.Associate.superclass.constructor.call(this,Ext.apply({title:Translate("AdSense Association"),iconCls:"ac-manager-accounts-google-icon",modal:true,height:300,width:380,center:true,bodyStyle:"background:#eee;",items:[{xtype:"box",autoEl:{tag:"div",html:'<img src="'+FixedAssetBase+'misc/logos/google-adsense.png" style="width:143px;height:59px;float:left;padding-right:15px;"/><b style="line-height:1.8em;">Account Association</b><br><p >Please enter your Google AdSense account email, and verify the associated phone and postal code:</p>',style:"background:#fff;padding:10px;border-bottom:1px solid #ddd;height:62px;"}},{xtype:"form",itemId:"formpanel",monitorValid:true,border:false,bodyStyle:"background:#eee;padding:10px;",items:[{fieldLabel:Translate("Login Email"),name:"GAdSenseEmail",xtype:"textfield",vtype:"email",allowBlank:false,grow:true,growMin:b,growMax:b+100,value:a.data.defaultEmail},{fieldLabel:Translate("Postal Code"),name:"GAdSensePostalCode",xtype:"textfield"},{fieldLabel:Translate("Phone Number"),name:"GAdSensePhoneNumber",xtype:"textfield"}],listeners:{clientvalidation:function(d,c){d.ownerCt.buttons[1].setDisabled(!(d.form.findField("GAdSensePostalCode").getValue()||d.form.findField("GAdSensePhoneNumber").getValue()))
}}}],buttonAlign:"right",buttons:[{text:Translate("Cancel"),handler:function(){this.ownerCt.close.defer(1,this.ownerCt)}},{text:Translate("Associate Account"),iconCls:"ac-i-arrow-refresh",disabled:true,handler:function(){var c=Ext.MessageBox.wait("Sending data to Google",this.text);var d=this.ownerCt;d.hide();d.callback({Command:"AssociateAccount",Parameter:d.items.get("formpanel").form.getValues(),ActiveControl:{RequestTimeOut:65000,EnablePageStateUpdate:false,HasPriority:true,CausesValidation:false,onSuccess:function(e,f){c.hide();if(f.success){d.close();Ext.getCmp("adsense").layout.setActiveItem("PendingOnAssociate");Ext.getCmp("adsense").body.highlight()}else{Ext.MessageBox.alert(Translate("Error"),f.error,d.show,d)}},onFailure:function(e,f){c.hide();d.show();Ext.MessageBox.alert(Translate("Error"),Translate("There was a network error or the server said something we don't understand. Please try again."))}}})}}]},a))};Ext.extend(AppCenter.Google.AdSense.Associate,Ext.Window,{});AppCenter.Google.AdSense.AccountPanel=function(a){var b=190;
var c=[["Min","Minimal"],["Normal","Normal"],["Max","Max (best results)"]];AppCenter.Google.AdSense.AccountPanel.superclass.constructor.call(this,Ext.apply({title:Translate("AdSense"),id:"adsense",layout:"card",activeItem:a.data.AdSenseStatus||"NotAssociated",border:false,defaults:{border:false,autoScroll:true},items:[{itemId:"NotAssociated",items:[{xtype:"panel",frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href="http://www.google.com/adsense/"><img src="'+FixedAssetBase+'misc/logos/google-adsense.png" style="width:143px;height:59px;float:left;padding:5px;"/></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: Ready to start</p>'},{xtype:"box",autoEl:{tag:"div",html:'<p><h3>Google AdSense</h3><p>Google AdSense is an advertising network that serves contextual text ads to websites. AdSense for content automatically crawls the content of your pages and delivers ads that are relevant to your audience and your site content — ads so well-matched, in fact, that your readers will actually find them useful. </p><h3>Your Share</h3><p>We are not "free" hosting, we have teamed up with Google AdSense to offer you a revenue share on the Google AdSense for Content program utilized by this site. Your share is 60% of the revenue from the AdSense for Content advertisements we place throughout your site (we will receive a 40% share to cover hosting and invest in new features).</p><h3>Getting Started</h3><p>In order to do this, you will need either to create a Google AdSense account, or associate it with one you already have.</p></p>'}},{xtype:"button",style:"margin:0 auto; padding:5px;",iconCls:"ac-i-add",text:Translate("I Need a Google AdSense Account"),data:a.data,callback:a.callback,handler:function(){var d=new AppCenter.Google.AdSense.Create({data:this.data,callback:this.callback});
d.show(this)}},{xtype:"button",style:"margin:0 auto; padding:5px;",iconCls:"ac-i-arrow-refresh",text:Translate("I Already Have a Google AdSense Account"),data:a.data,callback:a.callback,handler:function(){var d=new AppCenter.Google.AdSense.Associate({data:this.data,callback:this.callback});d.show(this)}}]},{itemId:"PendingOnCreate",items:[{xtype:"panel",frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href="http://www.google.com/adsense/"><img src="'+FixedAssetBase+'misc/logos/google-adsense.png" style="width:143px;height:59px;float:left;padding:5px;"/></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: <span style="color:#805a59">Action required</span></p>'},{xtype:"box",autoEl:{tag:"div",html:(new Ext.Template("<p><h3>Check Your Email...</h3><p>Congratulations, you have successfully created your Google AdSense account! You should now check your email for a message from Google that will allow you to complete the application process. A link in that email will prompt you to give Google your contact and payment information, as well as request confirmation to associate your account with {website}. You must complete this step before we can begin showing your live Google Ads and before you can begin accruing revenue.</p></p><p><h3>Then Update Status...</h3><p>After you have finished creating your account and linking it to {website} you may update the status by clicking the button below.</p></p>")).apply({website:a.data.Owner})}},{xtype:"ac-g-adsense-checkstatus",style:"margin: 10px auto",data:a.data,callback:a.callback},AppCenter.Google.AdSense.StartOver]},{itemId:"PendingOnAssociate",items:[{xtype:"panel",frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href="http://www.google.com/adsense/"><img src="'+FixedAssetBase+'misc/logos/google-adsense.png" style="width:143px;height:59px;float:left;padding:5px;"/></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: <span style="color:#805a59">Action required</span></p>'},{xtype:"box",autoEl:{tag:"div",html:(new Ext.Template("<p><h3>Check Your Email...</h3><p>Congratulations, you have associated your Google AdSense account with {website}. Before you can begin showing live ads on our pages, you must verify with Google that you have granted {website} access to your ad code and performance information in your account. Please check your email for a message from Google AdSense and verify this by following the link in that email.</p></p><p><h3>Then Update Status...</h3><p>After you have finished linking your account to {website} you may update the status by clicking the button below.</p></p>")).apply({website:a.data.Owner})}},{xtype:"ac-g-adsense-checkstatus",style:"margin: 10px auto",data:a.data,callback:a.callback},AppCenter.Google.AdSense.StartOver]},{itemId:"Disabled",items:[{xtype:"panel",frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href="http://www.google.com/adsense/"><img src="'+FixedAssetBase+'misc/logos/google-adsense.png" style="width:143px;height:59px;float:left;padding:5px;"/></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: <span style="color:#805a59">Disabled</span></p>'},{xtype:"box",autoEl:{tag:"div",html:"<p><h3>Disabled</h3><p>Your account appears to have been disabled. Typically this is due to a Terms of Service violation.</p></p>"}},AppCenter.Google.AdSense.StartOver]},{itemId:"Refused",items:[{xtype:"panel",frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href="http://www.google.com/adsense/"><img src="'+FixedAssetBase+'misc/logos/google-adsense.png" style="width:143px;height:59px;float:left;padding:5px;"/></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: <span style="color:#805a59">Refused</span></p>'},{xtype:"box",autoEl:{tag:"div",html:'<p><h3>Refused</h3><p>You refused to make the account association through the Google AdSense website. If you wish to associate your account with this site in Google AdSense at this time, in a separate browser window login to Google AdSense, select the "My Account" tab, and select the "Account Access" subsection. You should be able to allow this site from there. Once you have done so, select Update Status below. If you need to start from scratch, click the Start Over button.</p></p>'}},{xtype:"ac-g-adsense-checkstatus",style:"margin: 10px auto",data:a.data,callback:a.callback},AppCenter.Google.AdSense.StartOver]},{itemId:"Active",xtype:"panel",items:[{xtype:"panel",frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href="http://www.google.com/adsense/"><a target="_new" href="http://www.google.com/adsense/"><img src="'+FixedAssetBase+'misc/logos/google-adsense.png" style="width:143px;height:59px;float:left;padding:5px;"/></a></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: <span style="color:#4e6647">Active</span></p>'},{xtype:"box",autoEl:{tag:"div",html:"<h3>Quick Revenue Report</h3>"}},{xtype:"form",layout:"column",bodyStyle:"padding:10px;",border:false,items:[{layout:"form",width:200,border:false,defaults:{width:80},labelAlign:"right",items:[{fieldLabel:Translate("Today"),name:"GAdSenseRevenueToday",xtype:"staticfield",value:Ext.util.Format.usMoney(0)},{fieldLabel:Translate("Yesterday"),name:"GAdSenseRevenueYesterday",xtype:"staticfield",value:Ext.util.Format.usMoney(0)},{fieldLabel:Translate("This Month"),name:"GAdSenseRevenueMonth",xtype:"staticfield",value:Ext.util.Format.usMoney(0)}]},{columnwidth:1,border:false,items:[{xtype:"googlechart",tip:Translate("Chart of the last 30 days"),id:"monthchart",chartType:"linexy",chartColors:["00CC33","FF9F80","AF9FF0","80FFDF"],legend:["Earnings","Page impressions","Page CTR","Page eCPM"],xaxis:"Date",dataType:"text",height:67,width:250}]}]},{xtype:"box",autoEl:{tag:"div",html:"<h3>Advertising Options</h3>"}},{xtype:"form",border:false,bodyStyle:"padding:10px;",defaults:{width:200},labelAlign:"right",items:[{xtype:"selectbox",fieldLabel:Translate("Amount of Ads"),value:a.data.GAdAmountVal||"Normal",hiddenName:"GAdAmountVal",store:c,data:a.data,callback:a.callback,listeners:{select:function(d){var e=this;
this.callback({Command:"SetAmountOfAds",Parameter:this.ownerCt.form.getValues(),ActiveControl:{RequestTimeOut:65000,EnablePageStateUpdate:false,HasPriority:true,CausesValidation:false,onSuccess:function(f,g){e.el.frame()},onFailure:function(f,g){Ext.MessageBox.alert(Translate("Error"),Translate("There was a network error or the server said something we don't understand. Value not saved."))}}})},buffer:250}}]},{xtype:"box",autoEl:{tag:"div",html:"<h3>Google AdSense Account Information</h3>"}},{xtype:"form",border:false,bodyStyle:"padding:10px;",defaults:{width:200},labelAlign:"right",items:[{fieldLabel:Translate("Publisher Id"),name:"GAdSenseClientIdDummy",xtype:"staticfield",value:a.data.ContentAdsId},{fieldLabel:Translate("Account"),isFormField:true,xtype:"ac-g-adsense-checkstatus",data:a.data,callback:a.callback,onSuccess:function(e,g){var f=Ext.getCmp("monthchart");var d=new Ext.data.SimpleStore({fields:[{name:"Date",type:"date",dateFormat:"Y-m-d"},{name:"Page impressions",type:"int"},{name:"Clicks",type:"int"},{name:"Page CTR",convert:function(h){return 1*h.substr(0,h.length-1)
}},{name:"Page eCPM",type:"float"},{name:"Earnings",type:"float"}],data:g.status.Report.rows});f.setStore(d)}},{isFormField:true,labelSeparator:"",isFormField:true,xtype:"button",text:Translate("Change Google AdSense Account"),iconCls:"ac-i-arrow-refresh",data:a.data,callback:a.callback,handler:function(){var d=new AppCenter.Google.AdSense.Associate({data:this.data,callback:this.callback});d.show(this)}},{xtype:"button",labelSeparator:"",isFormField:true,text:Translate("Remove Association"),iconCls:"ac-i-delete",data:a.data,callback:a.callback,handler:function(){var d=Ext.MessageBox.wait(Translate("Removing Association"),Translate("Connecting..."));this.callback({Command:"RemoveAssociation",ActiveControl:{RequestTimeOut:65000,EnablePageStateUpdate:false,HasPriority:true,CausesValidation:false,onSuccess:function(e,f){d.hide();if(f.success){Ext.getCmp("adsense").layout.setActiveItem("NotAssociated");Ext.getCmp("adsense").body.highlight();Ext.MessageBox.alert(Translate("Alert"),Translate("Your adcode is no longer being used. You will also need to remove the association at the Google AdSense site in order to not see it there either."))
}else{Ext.MessageBox.alert(Translate("Error"),f.error)}},onFailure:function(e,f){d.hide();Ext.MessageBox.alert(Translate("Error"),Translate("There was a network error or the server said something we don't understand. Please try again."))}}})}}]}]}],bbar2:[{text:Translate("Start"),handler:function(){Ext.getCmp("adsense").layout.setActiveItem("NotAssociated")}},{text:Translate("Pending (via Create Account)"),handler:function(){Ext.getCmp("adsense").layout.setActiveItem("PendingOnCreate")}},{text:Translate("Pending (via Associate Account)"),handler:function(){Ext.getCmp("adsense").layout.setActiveItem("PendingOnAssociate")}},{text:Translate("Refused "),handler:function(){Ext.getCmp("adsense").layout.setActiveItem("Refused")}},{text:Translate("Disabled "),handler:function(){Ext.getCmp("adsense").layout.setActiveItem("Disabled")}},{text:Translate("Active "),handler:function(){Ext.getCmp("adsense").layout.setActiveItem("Active")}}]},a))};Ext.extend(AppCenter.Google.AdSense.AccountPanel,Ext.Panel,{});Ext.reg("ac-g-adsense-account",AppCenter.Google.AdSense.AccountPanel);
AppCenter.GoogleAdWords=function(a){var b=190;AppCenter.GoogleAdWords.superclass.constructor.call(this,Ext.apply({layout:"anchor",border:false,title:Translate("Apps"),items:[{frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href2="http://www.google.com/a/"><img src="'+FixedAssetBase+'misc/logos/google-apps.png" style="width:143px;height:59px;float:left;padding:5px;"/></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: Ready to start</p>'}],listeners:{afterlayout:function(){},delay:1,single:true}},a))};Ext.extend(AppCenter.GoogleAdWords,Ext.Panel,{});Ext.reg("ac-g-apps",AppCenter.GoogleAdWords);AppCenter.GoogleAnalytics=function(a){var b=190;AppCenter.GoogleAnalytics.superclass.constructor.call(this,Ext.apply({layout:"anchor",border:false,title:Translate("Analytics"),items:[{frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href="http://www.google.com/analytics/"><img src="'+FixedAssetBase+'misc/logos/google-analytics.png" style="width:143px;height:59px;float:left;padding:5px;"/></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: Ready to start</p>'},{xtype:"form",border:false,bodyStyle:"padding:10px;",items:[{fieldLabel:Translate("Analytics ID"),name:"GAnalytics",xtype:"textfield",vtype:"ganalytics",grow:true,readOnly:true,disabled:true,growMin:b,growMax:b+100,emptyText:Translate("not set in website layout"),value:a.data.GAnalytics||""}]}]},a))
};Ext.extend(AppCenter.GoogleAnalytics,Ext.Panel,{});Ext.reg("ac-g-analytics",AppCenter.GoogleAnalytics);AppCenter.GoogleWebmasters=function(a){var b=190;AppCenter.GoogleWebmasters.superclass.constructor.call(this,Ext.apply({itemId:"gwebmasters",layout:"anchor",border:false,title:Translate("Webmaster Tools"),items:[{frame:true,style:"padding:0 10px 20px 10px;margin-top:-1px;",html:'<a target="_new" href="http://www.google.com/webmasters/"><img src="'+FixedAssetBase+'misc/logos/google-webmaster-tools.png" style="width:143px;height:59px;float:left;padding:5px;"/></a><p style="padding:25px 0 0 180px;font-size:1.8em;color:#666">Status: Ready</p>'},{xtype:"form",border:false,bodyStyle:"padding:10px;",items:[{fieldLabel:Translate("Verification META"),name:"GVerifyMETA",xtype:"textfield",grow:true,readOnly:true,disabled:true,growMin:b,growMax:b+100,emptyText:Translate("not set in website layout"),value:a.data.GVerifyMETA||""},{fieldLabel:Translate("Sitemap URL"),xtype:"textfield",grow:true,readOnly:true,value:"http://"+a.data.Website+"/sitemap-index.xml"}]}]},a))
};Ext.extend(AppCenter.GoogleWebmasters,Ext.Panel,{});Ext.reg("ac-g-webmasters",AppCenter.GoogleWebmasters);AppCenter.Google.AllAcountsPanel=function(a){var b=190;AppCenter.Google.AllAcountsPanel.superclass.constructor.call(this,Ext.apply({iconCls:"ac-manager-accounts-google-icon",layout:"fit",items:[{xtype:"tabpanel",layoutConfig:{deferredRender:true},border:false,layoutOnTabChange:true,defaults:{border:false,cls:"ac-account-view-form",data:a.data,callback:a.callback},items:[{xtype:"ac-g-adsense-account"},{xtype:"ac-g-apps"},{xtype:"ac-g-analytics"},{xtype:"ac-g-webmasters"}]}],listeners:{show:function(){var c=this.items.get(0);if(c.activeTab==null){c.setActiveTab(0)}}}},a))};Ext.extend(AppCenter.Google.AllAcountsPanel,Ext.Panel,{});Ext.reg("ac-manager-accounts-google",AppCenter.Google.AllAcountsPanel);Ext.namespace("AppCenter.Files.Admin");AppCenter.App.Module.FileEditor=Ext.extend(Ext.app.Module,{title:"File Editor",iconCls:"ac-file-tree",createPanels:function(a){this.Control=new AppCenter.Files.Admin.ControlPanel({iconCls:"file-editor-icon",website:this.website,dataUrl:"/_/File/",file:this.fileConfig,app:this.app,CallbackID:this.CallbackID});
this.Main=new AppCenter.Files.Admin.MainPanel({ControlPanel:this.Control});this.Control.MainPanel=this.Main;this.Control.on("expand",function(){this.MainPanel.layout.setActiveItem(this.Main);if(!this.Main.dolay){this.Main.doLayout();this.Main.dolay=true}},this)},getControlPanelChildren:function(){return[this.Control]},getMainPanelChildren:function(){return[this.Main]},finishSetup:function(){}});Ext.namespace("AppCenter.Files.Admin");AppCenter.Files.Admin.ControlPanel=function(b){var a=this;b.loader=new Ext.tree.TreeLoader({url:b.url||this.url,baseParams:{cmd:"get"},listeners:{beforeload:{scope:this,fn:function(c,d){c.baseParams.path=this.getPath(d)}}},preloadChildren:true,children:null});AppCenter.Files.Admin.ControlPanel.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Files.Admin.ControlPanel,Ext.Panel,{itemId:"FilesCP",title:Translate("Media Files"),url:"test.php",border:false,topMenu:true,enableProgress:true,autoScroll:true});Ext.grid.dummyData=[["Program Files","2008-01-01 00:00","File Folder",0,"folder.png"],["Program Files (x86)","2008-01-01 00:03","File Folder",0,"folder.png"],["ProgramData","2008-02-06 13:21","File Folder",0,"folder.png"],["temp","2007-12-05 00:59","File Folder",0,"folder.png"],["Users","2008-05-01 18:08","File Folder",0,"folder.png"],["Windows","2008-01-01 04:57","File Folder",0,"folder.png"],["install.exe","2008-08-17 03:42","Application",561671,"application.png"],["globdata.ini","2008-10-01 16:01","Configuration Settings",3214,"application-settings.png"],["VC_RED.MSI","2008-10-09 07:31","Application",9498742,"application-installer.png"],["VC_RED.cab","2008-10-09 07:31","WinRAR Archive",65789416,"winrar-archive.png"]];
AppCenter.Files.Admin.MainPanel=function(b){var c=this;var a=b.ControlPanel;AppCenter.Files.Admin.MainPanel.superclass.constructor.call(this,b)};Ext.extend(AppCenter.Files.Admin.MainPanel,Ext.Panel,{});Ext.namespace("AppCenter.App.Module");AppCenter.App.Module.DomainEditor=Ext.extend(Ext.app.Module,{iconCls:"domain-editor-icon",init:function(){AppCenter.App.Module.DomainEditor.superclass.init.call(this)},createPanels:function(a){this.panels=[];Ext.each(this.panelConfig,function(c){if(c.type){var b=new AppCenter.Core.DomainEditor[c.type](null,this,c.data);this.panels.push(b);c.panel=b;c.leaf=true;c.text=b.title}},this);this.control=new Ext.tree.ColumnTree({stateId:"DomainCP",stateful:true,title:Translate("Domain Manager"),columns:[{header:this.DomainName,dataIndex:"name"}],rootVisible:false,root:{text:this.DomainName,expanded:true,children:this.panelConfig},listeners:{render:function(){this.getSelectionModel().on("selectionchange",function(c,b){if(b.attributes.panel){this.MainPanel.layout.setActiveItem(b.attributes.panel)
}},this)},expand:function(){this.getSelectionModel().select(this.getRootNode().firstChild)}}});this.editor=new Ext.Panel()},getControlPanelChildren:function(){return[this.control]},getMainPanelChildren:function(){return this.panels},finishSetup:function(){this.control.MainPanel=this.MainPanel},getCallback:function(){var a=new Prado.CallbackRequest(this.CallbackID,{});return a},sendCallback:function(b){var a=this.getCallback();a.setCallbackParameter(b);a.dispatch()}});AppCenter.Core.DomainEditor={};AppCenter.Core.DomainEditor.SettingsPanel=function(a,b,c){this.module=b;this.data=c;a={title:Translate("Settings"),activeItem:0,deferredRender:true,items:[{title:Translate("Branding"),itemId:"Brand",xtype:"form",labelAlign:"left",items:[{xtype:"textfield",fieldLabel:"Name",name:"Name"}]},{title:Translate("Subdomains"),itemId:"SubDomains",xtype:"form",labelAlign:"left",items:[{xtype:"textfield",name:"minLength",fieldLabel:"Minimum Length"},{xtype:"textfield",name:"maxLength",fieldLabel:"Maximum Length"},{xtype:"textfield",name:"defaultManagerUrl",fieldLabel:"Manager URL"}]},{title:Translate("Web Services"),itemId:"WebServices",xtype:"form",labelAlign:"left",style:"padding:16px;",items:[{xtype:"container",layout:"form",style:"margin-bottom:18px;",items:[{xtype:"box",html:"<b>Amazon Web Services</b>",style:"margin-bottom:2px;"},{xtype:"textfield",name:"AwsAccessKey",fieldLabel:Translate("Access Key")},{xtype:"textfield",name:"AwsSecretKey",fieldLabel:Translate("Secret Key")},{xtype:"textfield",name:"AwsBucket",fieldLabel:Translate("S3 Bucket")},{xtype:"textfield",name:"AwsDistribution",fieldLabel:Translate("CF Distribution")},{xtype:"textfield",name:"AwsStreaming",fieldLabel:Translate("CF Streaming")}]},{xtype:"container",layout:"form",style:"margin-bottom:18px;",items:[{xtype:"box",html:"<b>Twitter API</b>",style:"margin-bottom:2px;"},{xtype:"textfield",name:"TwitterConsumerKey",fieldLabel:Translate("Consumer Key")},{xtype:"textfield",name:"TwitterConsumerSecret",fieldLabel:Translate("Consumer Secret")}]},{xtype:"container",layout:"form",style:"margin-bottom:18px;",items:[{xtype:"box",html:"<b>Bit.ly</b>",style:"margin-bottom:2px;"},{xtype:"textfield",name:"BitlyLogin",fieldLabel:Translate("Login")},{xtype:"textfield",name:"BitlyApiKey",fieldLabel:Translate("Api Key")}]},{xtype:"container",layout:"form",style:"margin-bottom:18px;",items:[{xtype:"box",html:"<b>PayPal Website Payments Standard</b>",style:"margin-bottom:2px"},{xtype:"textfield",name:"PayPalWPSIdentityToken",fieldLabel:Translate("Identity Token")}]}]},{title:Translate("Comm"),xtype:"ac-domain-edit-message",itemId:"CommunicationMessage"},new AppCenter.Core.DomainEditor.ThemePanel({title:Translate("Themes"),itemId:"Themes"}),{title:Translate("Templates"),itemId:"Templates",autoExpandColumn:"name",enableDragDrop:true,ddGroup:"TestDDGroup",xtype:"grid",columns:[{header:"Template Name",id:"name",dataIndex:"Name"},{header:"Publish Date",id:"published",dataIndex:"PublishDate",width:80,renderer:function(e){var f=new Date();
f.setTime(e*1000);return e?f.format("n/j/Y"):'<span style="color:#777">no date</span>'}},{header:"Publish Site",id:"website",dataIndex:"PublishSite",width:150,renderer:function(d){return d?'<a href="http://'+d+'">'+d+"</a>":'<span style="color:#777">unpublished</span>'}}],store:AppCenter.Domain.get(this.module.DomainId).Templates,tbar:[{text:Translate("Publish A Site"),xtype:"button",scope:this,handler:function(){this.items.get("Templates").store.commitChanges()}},{text:Translate("Delete"),xtype:"button",scope:this,handler:this.deleteTemplate}],listeners:{rowdblclick:function(f,d,h){var l=f.store.getAt(d);var g=new AppCenter.Core.WebSiteTemplate.EditWindow({DomainId:l.data.DomainId,TemplateId:l.data.TemplateId,listeners:{save:function(m){g.close();var e=new Prado.CallbackRequest(this.ownerCt.module.CallbackID);Ext.apply(m,{callback:"saveTemplateSettings"});e.setCallbackParameter(m);e.dispatch()}.createDelegate(this)}});g.show()},render:function(){var d=new Ext.ux.dd.GridReorderDropTarget(this,{copy:false,listeners:{beforerowmove:function(g,h,f,e){},afterrowmove:function(g,h,f,e){},beforerowcopy:function(g,h,f,e){},afterrowcopy:function(g,h,f,e){}}});
Ext.dd.ScrollManager.register(this.getView().getEditorParent())},beforedestroy:function(){Ext.dd.ScrollManager.unregister(this.getView().getEditorParent())}}}],listeners:{afterlayout:function(){this.items.get("Brand").form.setValues(this.data.Brand);this.items.get("SubDomains").form.setValues(this.data.SubDomains);this.items.get("WebServices").form.setValues(this.data.WebServices)}},buttons:[{text:Translate("Save Settings"),handler:function(){this.fireEvent("save",this);this.items.get("Templates").store.commitChanges();var e=[];Ext.each(this.items.get("Templates").store.data.items,function(f){e.push(f.json)});var d=new Prado.CallbackRequest(this.module.CallbackID);d.setCallbackParameter({callback:"saveDomainSettings",Brand:this.items.get("Brand").form.getValues(),SubDomains:this.items.get("SubDomains").rendered?this.items.get("SubDomains").form.getValues():undefined,WebServices:this.items.get("WebServices").rendered?this.items.get("WebServices").form.getValues():undefined,Templates:e,loadMask:Translate("Saving Domain Settings&hellip;")});
d.dispatch()},scope:this},{text:Translate("Revert Settings")}]};AppCenter.Core.DomainEditor.SettingsPanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainEditor.SettingsPanel,Ext.TabPanel,{initComponent:function(){AppCenter.Core.DomainEditor.SettingsPanel.superclass.initComponent.call(this)},deleteTemplate:function(){}});AppCenter.Core.DomainEditor.ThemePanel=Ext.extend(Ext.grid.GridPanel,{constructor:function(a){a=Ext.apply({},a,{autoExpandColumn:"name",singleSelect:true,enableDragDrop:true,ddGroup:"ThemePanelDD",columns:[{header:Translate("Name"),id:"name",dataIndex:"name"}],tbar:[{text:Translate("Save Order"),handler:function(){var c=new Ext.data.Connection({url:"/_/Domain/ThemeOrderSave"});var b=[];this.store.getRange().each(function(d){b.push(d.data.themeId)});c.request({params:{ThemeOrder:Ext.encode(b)}})},scope:this}],store:new Ext.data.JsonStore({root:"themes",fields:["name","themeId"],url:"/_/Themes"}),listeners:{render:function(){var b=new Ext.ux.dd.GridReorderDropTarget(this,{copy:false,listeners:{beforerowmove:function(e,f,d,c){},afterrowmove:function(e,f,d,c){},beforerowcopy:function(e,f,d,c){},afterrowcopy:function(e,f,d,c){}}});
Ext.dd.ScrollManager.register(this.getView().getEditorParent());this.store.load()},beforedestroy:function(){Ext.dd.ScrollManager.unregister(this.getView().getEditorParent())},afterlayout:function(){}}});AppCenter.Core.DomainEditor.ThemePanel.superclass.constructor.call(this,a)}});AppCenter.Core.DomainEditor.CommunicationMessagePanel=function(a){a=Ext.apply({},a,{layout:"card",activeItem:0,items:[{xtype:"ac-domain-edit-communication-message-grid",border:false,itemId:"grid",tbar:["->",{text:Translate("Edit Message Wrapper"),handler:function(){var b;b=new Ext.Window({title:Translate("Message Wrapper"),width:940,height:800,layout:"fit",modal:true,items:[{xtype:"htmleditor",itemId:"editor"}],buttons:[{text:Translate("Save"),handler:function(){var d=this.ownerCt.ownerCt;var c=new Ext.data.Connection({url:"/_/Domain/CommunicationMessageWrapperSave"});d.getEl().mask("Saving&hellip;");c.request({params:{wrapper:d.items.get("editor").getValue()},scope:d,callback:function(){this.getEl().unmask();this.destroy()}})}},{text:Translate("Cancel"),handler:function(){var c=this.ownerCt.ownerCt;
c.destroy()}}],listeners:{show:function(){var c=new Ext.data.Connection({url:"/_/Domain/CommunicationMessageWrapper"});this.getEl().mask("Loading Message Wrapper&hellip;");c.request({callback:function(f,d,e){this.items.get("editor").setValue(Ext.decode(e.responseText));this.getEl().unmask()},scope:this})}}});b.show()}}]},{xtype:"form",itemId:"form",labelAlign:"top",bodyStyle:"padding:16px",items:[{fieldLabel:Translate("Title"),xtype:"textfield",width:"98%",name:"Title"},{fieldLabel:Translate("Text Format"),xtype:"textarea",width:"98%",height:"240",name:"Text"},{fieldLabel:Translate("Html Format"),xtype:"htmleditor",width:"100%",height:480,name:"Html",itemId:"Html"},{xtype:"hidden",name:"Id"},{xtype:"checkbox",hideLabel:true,boxLabel:"Set As The Default Communication Message",itemId:"setDefault",name:"setDefault"}],buttons:[{text:Translate("Save"),handler:function(){var d=this.items.get("form").form.getValues();var b=this.items.get("grid").getSelectionModel().getSelected();b.set("Text",d.Text);b.set("Html",d.Html);
var c=new Ext.data.Connection({url:"/_/Domain/CommunicationMessageSave"});c.request({params:d,callback:b.commit.createDelegate(b)});this.items.get("form").items.get("setDefault").setValue(false);this.layout.setActiveItem("grid")},scope:this},{text:Translate("Cancel"),handler:function(){this.layout.setActiveItem("grid")},scope:this}]}],listeners:{show:function(){if(!this.isLoaded){this.items.get("grid").store.load()}this.isLoaded=true}}});AppCenter.Core.DomainEditor.CommunicationMessagePanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainEditor.CommunicationMessagePanel,Ext.Panel,{initComponent:function(){AppCenter.Core.DomainEditor.CommunicationMessagePanel.superclass.initComponent.call(this);this.items.get("grid").on("rowdblclick",function(c,b,d){var a=c.store.getAt(b);this.layout.setActiveItem("form");this.items.get("form").form.setValues(a.data)},this)}});Ext.reg("ac-domain-edit-message",AppCenter.Core.DomainEditor.CommunicationMessagePanel);AppCenter.Core.DomainEditor.CommunicationMessagePanelGrid=function(a){a=Ext.apply({},a,{autoExpandColumn:"Title",singleSelect:true,columns:[{header:Translate("Id"),id:"Id",dataIndex:"Id",width:200},{header:Translate("Title"),id:"Title",dataIndex:"Title"}],store:new Ext.data.JsonStore({root:"Messages",fields:["Id","Title","Text","Html"],url:"/_/Domain/CommunicationMessage"}),scope:this});
AppCenter.Core.DomainEditor.CommunicationMessagePanelGrid.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainEditor.CommunicationMessagePanelGrid,Ext.grid.GridPanel,{});Ext.reg("ac-domain-edit-communication-message-grid",AppCenter.Core.DomainEditor.CommunicationMessagePanelGrid);AppCenter.Core.DomainEditor.UserAccountPanel=function(a,b){a=Ext.apply({},a,{autoExpandColumn:"Username",columns:[{header:"Username",id:"Username",dataIndex:"Username"},{header:"Password",dataIndex:"Password",renderer:function(c){return'<span style="color:#777">(hidden)</span>'}},{header:"Creation Date",dataIndex:"Created",renderer:function(e){var c=new Date();c.setTime(e*1000);return c.format("n/j/Y")}}],store:new Ext.data.JsonStore({root:"accounts",fields:["Username","Password","Status","Created"],url:"/_/DomainUserAccounts",listeners:{load:function(){this.getEl().unmask()}.createDelegate(this)},scope:this}),listeners:{show:function(){this.store.load()}},title:Translate("Accounts")});AppCenter.Core.DomainEditor.UserAccountPanel.superclass.constructor.call(this,a)
};Ext.extend(AppCenter.Core.DomainEditor.UserAccountPanel,Ext.grid.GridPanel,{});AppCenter.Core.DomainEditor.WebSitePanel=function(a,b,c){this.module=b;a=Ext.apply({},a,{autoExpandColumn:"SubDomain",columns:[{header:"SubDomain",id:"SubDomain",dataIndex:"SubDomain"},{header:"Published As",id:"PublishedAs",dataIndex:"TemplateName"}],store:new Ext.data.JsonStore({root:"WebSites",fields:["SubDomain","DomainId","SubDomainId","TemplateDomainId","TemplateId","TemplateName"],url:"/_/Domain/WebSites",listeners:{load:function(){this.getEl().unmask()}.createDelegate(this)}}),listeners:{show:function(){this.store.load()}},title:Translate("Sites"),selModel:new Ext.grid.RowSelectionModel({singleSelect:true,listeners:{rowselect:function(d,f,e){if(AppCenter.Domain.get(e.data.TemplateDomainId).Can.PublishWebSiteTemplate){this.topToolbar.items.get("publish").enable()}else{this.topToolbar.items.get("publish").disable()}}.createDelegate(this)}}),tbar:[{xtype:"tbtext",text:Translate("SubDomain:&nbsp;")},{itemId:"filter",xtype:"textfield",emptyText:Translate("all"),enableKeyEvents:true,listeners:{specialkey:function(d,f){if(f.getKey()==f.RETURN){this.loadByFilter()
}return}.createDelegate(this)}},"-",{text:Translate("All"),xtype:"splitbutton",menu:{items:[{text:Translate("All Sites")},{text:Translate("Published Sites")}]}},"->",{text:Translate("Publish Template"),scope:this,itemId:"publish",hidden:!AppCenter.Domain.get().Can.PublishWebSiteTemplate,disabled:true,handler:function(){var e=this.getSelectionModel().getSelected();var d=new AppCenter.Core.WebSiteTemplate.EditWindow({DomainId:e.data.TemplateDomainId,TemplateId:e.data.TemplateId,listeners:{save:function(g){d.close();var f=new Prado.CallbackRequest(this.module.CallbackID);Ext.apply(g,{callback:e.data.TemplateDomainId&&e.data.TemplateId?"saveTemplateSettings":"publishWebSiteTemplate",SubDomain:e.data.SubDomain,DomainId:e.data.DomainId,SubDomainId:e.data.SubDomainId});f.setCallbackParameter(g);f.dispatch()}.createDelegate(this)}});if(!e.data.TemplateDomainId||!e.data.TemplateId){d.on("render",function(){var f=new Ext.data.Connection({url:"/_/Domain/TemplateXml"});f.request({params:{SubDomain:e.data.SubDomain},callback:function(m,g,h){var l=Ext.decode(h.responseText);
d.items.get("tabs").items.get("Xml").setValue(l.Xml)}})})}d.show()}}]});AppCenter.Core.DomainEditor.WebSitePanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainEditor.WebSitePanel,Ext.grid.GridPanel,{loadByFilter:function(){this.store.load({params:{filter:this.topToolbar.items.get("filter").getValue()}});return true}});Ext.namespace("Ext.ux.dd");Ext.ux.dd.GridReorderDropTarget=function(b,a){this.target=new Ext.dd.DropTarget(b.getEl(),{ddGroup:b.ddGroup||"GridDD",grid:b,gridDropTarget:this,notifyDrop:function(p,m,h){if(this.currentRowEl){this.currentRowEl.removeClass("grid-row-insert-below");this.currentRowEl.removeClass("grid-row-insert-above")}var s=Ext.lib.Event.getTarget(m);var l=this.grid.getView().findRowIndex(s);if(l===false||l==h.rowIndex){return false}if(this.gridDropTarget.fireEvent(this.copy?"beforerowcopy":"beforerowmove",this.gridDropTarget,h.rowIndex,l,h.selections,123)===false){return false}var d=this.grid.getStore();var c=[];var q=d.data.keys;for(var o in q){for(var g=0;g<h.selections.length;
g++){if(q[o]==h.selections[g].id){if(l==o){return false}c.push(h.selections[g])}}}if(l>h.rowIndex&&this.rowPosition<0){l--}if(l<h.rowIndex&&this.rowPosition>0){l++}if(l>h.rowIndex&&h.selections.length>1){l=l-(h.selections.length-1)}if(l==h.rowIndex){return false}if(!this.copy){for(var g=0;g<h.selections.length;g++){d.remove(d.getById(h.selections[g].id))}}for(var g=c.length-1;g>=0;g--){var u=l;d.insert(u,c[g])}var f=this.grid.getSelectionModel();if(f){f.selectRecords(h.selections)}this.gridDropTarget.fireEvent(this.copy?"afterrowcopy":"afterrowmove",this.gridDropTarget,h.rowIndex,l,h.selections);return true},notifyOver:function(s,o,l){var w=Ext.lib.Event.getTarget(o);var m=this.grid.getView().findRowIndex(w);var d=this.grid.getStore();var v=d.data.keys;for(var q in v){for(var h=0;h<l.selections.length;h++){if(v[q]==l.selections[h].id){if(m==q){if(this.currentRowEl){this.currentRowEl.removeClass("grid-row-insert-below");this.currentRowEl.removeClass("grid-row-insert-above")}return this.dropNotAllowed}}}}if(m<0||m===false){this.currentRowEl.removeClass("grid-row-insert-above");
return this.dropNotAllowed}try{var p=this.grid.getView().getRow(m);var g=new Ext.Element(p).getY()-this.grid.getView().scroller.dom.scrollTop;var c=p.offsetHeight;this.rowPosition=o.getPageY()-g-(c/2);if(this.currentRowEl){this.currentRowEl.removeClass("grid-row-insert-below");this.currentRowEl.removeClass("grid-row-insert-above")}if(this.rowPosition>0){this.currentRowEl=new Ext.Element(p);this.currentRowEl.addClass("grid-row-insert-below")}else{if(m-1>=0){var u=this.grid.getView().getRow(m-1);this.currentRowEl=new Ext.Element(u);this.currentRowEl.addClass("grid-row-insert-below")}else{this.currentRowEl.addClass("grid-row-insert-above")}}}catch(f){console.warn(f);m=false}return(m===false)?this.dropNotAllowed:this.dropAllowed},notifyOut:function(c,f,d){if(this.currentRowEl){this.currentRowEl.removeClass("grid-row-insert-above");this.currentRowEl.removeClass("grid-row-insert-below")}}});if(a){Ext.apply(this.target,a);if(a.listeners){Ext.apply(this,{listeners:a.listeners})}}this.addEvents({beforerowmove:true,afterrowmove:true,beforerowcopy:true,afterrowcopy:true});
Ext.ux.dd.GridReorderDropTarget.superclass.constructor.call(this)};Ext.extend(Ext.ux.dd.GridReorderDropTarget,Ext.util.Observable,{getTarget:function(){return this.target},getGrid:function(){return this.target.grid},getCopy:function(){return this.target.copy?true:false},setCopy:function(a){this.target.copy=a?true:false}});(function(){Ext.namespace("Ext.ux.Color");var a=function(){};a.prototype={constructor:function(){this.warn()},toHex:function(){this.warn()},toRGB:function(){this.warn()},toXYZ:function(){this.warn()},toCIELab:function(){this.warn()},toCIELCh:function(){this.warn()},toCMY:function(){this.warn()},toCMYK:function(){this.warn()},toHSV:function(){this.warn()},distance:function(d){var e=this.toCIELab();var c=d.toCIELab();return Math.sqrt(Math.pow((e.l-c.l),2)+Math.pow((e.a-c.a),2)+Math.pow((e.b-c.b),2))},websafe:function(){var d=new Array("00","CC","33","66","99","FF");var b=[];for(i=0;i<6;i++){for(j=0;j<6;j++){for(k=0;k<6;k++){b.push(new Ext.ux.Color.Hex(d[i]+d[j]+d[k]))}}}return this.match(b)},match:function(b){var f=null;
var d=null;for(var c=0;c<b.length;c++){var e=this.distance(b[c]);if(f==null||e<f){f=e;d=b[c]}}return d[this.toSelf]()},equal:function(f,b){if(b==null){b=false}if(f<2){f=2}var e=this.toCIELCh();var g=360/f;var c=[];if(b){c.push(this)}for(var d=1;d<f;d++){c.push(new Ext.ux.Color.CIELCh(e.l,e.c,e.h+(g*d))[this.toSelf]())}return c},split:function(b){if(b==null){b=false}var d=this.toCIELCh();var e=150;var c=[new Ext.ux.Color.CIELCh(d.l,d.c,d.h+e)[this.toSelf](),new Ext.ux.Color.CIELCh(d.l,d.c,d.h-e)[this.toSelf]()];if(b){c.unshift(this)}return c},analogous:function(b){if(b==null){b=false}var d=this.toCIELCh();var e=30;var c=[new Ext.ux.Color.CIELCh(d.l,d.c,d.h+e)[this.toSelf](),new Ext.ux.Color.CIELCh(d.l,d.c,d.h-e)[this.toSelf]()];if(b){c.unshift(this)}return c},rectangle:function(c,b){if(b==null){b=false}var f=c;var d=(360-(c*2))/2;var g=this.toCIELCh();var e=[new Ext.ux.Color.CIELCh(g.l,g.c,g.h+f)[this.toSelf](),new Ext.ux.Color.CIELCh(g.l,g.c,g.h+f+d)[this.toSelf](),new Ext.ux.Color.CIELCh(g.l,g.c,g.h+f+d+f)[this.toSelf]()];
if(b){e.unshift(this)}return e},range:function(g,h,d){if(d==null){d=false}var o=this.toRGB();var l=g.toRGB();var c=[];h--;for(n=1;n<h;n++){var m=Math.floor(o.r+(n*(l.r-o.r)/h));var e=Math.floor(o.g+(n*(l.g-o.g)/h));var f=Math.floor(o.b+(n*(l.b-o.b)/h));c.push(new Ext.ux.Color.RGB(m,e,f)[this.toSelf]())}if(d){c.unshift(this);c.push(g[this.toSelf]())}return c},grayscale:function(){var b=this.toRGB();var c=(Math.max(b.r,b.g,b.b)+Math.min(b.r,b.g,b.b))/2;return new Ext.ux.Color.RGB(c,c,c)[this.toSelf]()},hue:function(c){var b=this.toCIELCh();b.h+=c;return b[this.toSelf]()},saturation:function(b){var c=this.toHSV();c.s+=(b/100);c.s=Math.min(1,Math.max(0,c.s));return c[this.toSelf]()},brightness:function(c){var b=this.toHSV();b.v+=(c/100);b.v=Math.min(1,Math.max(0,b.v));return b[this.toSelf]()},warn:function(){alert("aColor should not be created directly. Treat this as an abstract class.")}};Ext.ux.Color.Hex=Ext.extend(a,{constructor:function(b){this.hex=b;if(this.hex.substring(0,1)=="#"){this.hex=this.hex.substring(1,7)
}},toHex:function(){return this},toRGB:function(){var e=parseInt(this.hex.substring(0,2),16);var d=parseInt(this.hex.substring(2,4),16);var c=parseInt(this.hex.substring(4,6),16);return new Ext.ux.Color.RGB(e,d,c)},toXYZ:function(){return this.toRGB().toXYZ()},toCIELab:function(){return this.toXYZ().toCIELab()},toHSV:function(){return this.toRGB().toHSV()},toCMY:function(){return this.toRGB().toCMY()},toCMYK:function(){return this.toCMY().toCMYK()},toString:function(){return this.hex.toUpperCase()},toCIELCh:function(){return this.toCIELab().toCIELCh()},toSelf:"toHex"});Ext.ux.Color.RGB=Ext.extend(a,{constructor:function(e,d,c){this.r=Math.min(255,Math.max(e,0));this.g=Math.min(255,Math.max(d,0));this.b=Math.min(255,Math.max(c,0))},toHex:function(){var c=[this.r,this.g,this.b];var d="";for(i=0;i<c.length;i++){var b="0123456789ABCDEF";d+=b.charAt(Math.floor(c[i]/16))+b.charAt(c[i]-(Math.floor(c[i]/16)*16))}return new Ext.ux.Color.Hex(d)},toRGB:function(){return this},toXYZ:function(){var e=this.r/255;var d=this.g/255;
var c=this.b/255;if(e>0.04045){e=Math.pow(((e+0.055)/1.055),2.4)}else{e=e/12.92}if(d>0.04045){d=Math.pow(((d+0.055)/1.055),2.4)}else{d=d/12.92}if(c>0.04045){c=Math.pow(((c+0.055)/1.055),2.4)}else{c=c/12.92}e=e*100;d=d*100;c=c*100;var b=e*0.4124+d*0.3576+c*0.1805;var g=e*0.2126+d*0.7152+c*0.0722;var f=e*0.0193+d*0.1192+c*0.9505;return new Ext.ux.Color.XYZ(b,g,f)},toCIELab:function(){return this.toXYZ().toCIELab()},toHSV:function(){var h=(this.r/255);var b=(this.g/255);var e=(this.b/255);var l=Math.min(h,b,e);var q=Math.max(h,b,e);var m=q-l;var c=q;if(m==0){var p=0;var f=0}else{var f=m/q;var o=(((q-h)/6)+(m/2))/m;var d=(((q-b)/6)+(m/2))/m;var g=(((q-e)/6)+(m/2))/m;if(h==q){p=g-d}else{if(b==q){p=(1/3)+o-g}else{if(e==q){p=(2/3)+d-o}}}if(p<0){p+=1}if(p>1){p-=1}}return new Ext.ux.Color.HSV(p,f,c)},toCMY:function(){var c=1-(this.r/255);var d=1-(this.g/255);var b=1-(this.b/255);return new Ext.ux.Color.CMY(c,d,b)},toCMYK:function(){return this.toCMY().toCMYK()},toString:function(){return this.r+","+this.g+","+this.b},toCIELCh:function(){return this.toCIELab().toCIELCh()
},toSelf:"toRGB"});Ext.ux.Color.XYZ=Ext.extend(a,{constructor:function(b,d,c){this.x=b;this.y=d;this.z=c},toHex:function(){return this.toRGB().toHex()},toRGB:function(){var l=this.x/100;var h=this.y/100;var e=this.z/100;var o=l*3.2406+h*-1.5372+e*-0.4986;var d=l*-0.9689+h*1.8758+e*0.0415;var f=l*0.0557+h*-0.204+e*1.057;if(o>0.0031308){o=1.055*Math.pow(o,(1/2.4))-0.055}else{o=12.92*o}if(d>0.0031308){d=1.055*Math.pow(d,(1/2.4))-0.055}else{d=12.92*d}if(f>0.0031308){f=1.055*Math.pow(f,(1/2.4))-0.055}else{f=12.92*f}var c=Math.round(o*255);var m=Math.round(d*255);var p=Math.round(f*255);return new Ext.ux.Color.RGB(c,m,p)},toXYZ:function(){return this},toCIELab:function(){var e=95.047;var c=100;var p=108.883;var o=this.x/e;var h=this.y/c;var f=this.z/p;if(o>0.008856){o=Math.pow(o,1/3)}else{o=(7.787*o)+(16/116)}if(h>0.008856){h=Math.pow(h,1/3)}else{h=(7.787*h)+(16/116)}if(f>0.008856){f=Math.pow(f,1/3)}else{f=(7.787*f)+(16/116)}if(h>0.008856){var d=(116*h)-16}else{var d=903.3*h}var m=500*(o-h);var g=200*(h-f);return new Ext.ux.Color.CIELab(d,m,g)
},toHSV:function(){return this.toRGB().toHSV()},toCMY:function(){return this.toRGB().toCMY()},toCMYK:function(){return this.toCMY().toCMYK()},toCIELCh:function(){return this.toCIELab().toCIELCh()},toString:function(){return this.x+","+this.y+","+this.z},toSelf:"toXYZ"});Ext.ux.Color.CIELab=Ext.extend(a,{constructor:function(e,d,c){this.l=e;this.a=d;this.b=c},toHex:function(){return this.toRGB().toHex()},toRGB:function(){return this.toXYZ().toRGB()},toXYZ:function(){var g=95.047;var f=100;var d=108.883;var c=(this.l+16)/116;var e=this.a/500+c;var b=c-this.b/200;if(Math.pow(c,3)>0.008856){c=Math.pow(c,3)}else{c=(c-16/116)/7.787}if(Math.pow(e,3)>0.008856){e=Math.pow(e,3)}else{e=(e-16/116)/7.787}if(Math.pow(b,3)>0.008856){b=Math.pow(b,3)}else{b=(b-16/116)/7.787}x=g*e;y=f*c;z=d*b;return new Ext.ux.Color.XYZ(x,y,z)},toCIELab:function(){return this},toHSV:function(){return this.toRGB().toHSV()},toCMY:function(){return this.toRGB().toCMY()},toCMYK:function(){return this.toCMY().toCMYK()},toCIELCh:function(){var d=Math.atan2(this.b,this.a);
if(d>0){d=(d/Math.PI)*180}else{d=360-(Math.abs(d)/Math.PI)*180}var b=this.l;var f=Math.sqrt(Math.pow(this.a,2)+Math.pow(this.b,2));var e=d;return new Ext.ux.Color.CIELCh(b,f,e)},toString:function(){return this.l+","+this.a+","+this.b},toSelf:"toCIELab"});Ext.ux.Color.HSV=Ext.extend(a,{constructor:function(d,c,b){this.h=d;this.s=c;this.v=b},toHex:function(){return this.toRGB().toHex()},toRGB:function(){if(this.s==0){var c=this.v*255;var b=this.v*255;var d=this.v*255}else{var_h=this.h*6;if(var_h==6){var_h=0}var_i=Math.floor(var_h);var_1=this.v*(1-this.s);var_2=this.v*(1-this.s*(var_h-var_i));var_3=this.v*(1-this.s*(1-(var_h-var_i)));if(var_i==0){var_r=this.v;var_g=var_3;var_b=var_1}else{if(var_i==1){var_r=var_2;var_g=this.v;var_b=var_1}else{if(var_i==2){var_r=var_1;var_g=this.v;var_b=var_3}else{if(var_i==3){var_r=var_1;var_g=var_2;var_b=this.v}else{if(var_i==4){var_r=var_3;var_g=var_1;var_b=this.v}else{var_r=this.v;var_g=var_1;var_b=var_2}}}}}var c=var_r*255;var b=var_g*255;var d=var_b*255}return new Ext.ux.Color.RGB(c,b,d)
},toXYZ:function(){return this.toRGB().toXYZ()},toCIELab:function(){return this.toRGB().toCIELab()},toHSV:function(){return this},toCMY:function(){return this.toRGB().toCMY()},toCMYK:function(){return this.toCMY().toCMYK()},toCIELCh:function(){return this.toCIELab().toCIELCh()},toString:function(){return this.h+","+this.s+","+this.v},toSelf:"toHSV"});Ext.ux.Color.CMY=Ext.extend(a,{constructor:function(e,b,d){this.c=e;this.m=b;this.y=d},toHex:function(){return this.toRGB().toHex()},toRGB:function(){var c=(1-this.c)*255;var b=(1-this.m)*255;var d=(1-this.y)*255;return new Ext.ux.Color.RGB(c,b,d)},toXYZ:function(){return this.toRGB().toXYZ()},toCIELab:function(){return this.toRGB().toCIELab()},toCMY:function(){return this},toCMYK:function(){var e=1;if(this.c<e){e=this.c}if(this.m<e){e=this.m}if(this.y<e){e=this.y}if(e==1){var d=0;var f=0;var c=0}else{var d=(this.c-e)/(1-e);var f=(this.m-e)/(1-e);var c=(this.y-e)/(1-e)}var b=e;return new Ext.ux.Color.CMYK(d,f,c,b)},toCIELCh:function(){return this.toCIELab().toCIELCh()
},toString:function(){return this.c+","+this.m+","+this.y},toSelf:"toCMY"});Ext.ux.Color.CMYK=Ext.extend(a,{constructor:function(f,b,e,d){this.c=f;this.m=b;this.y=e;this.k=d},toHex:function(){return this.toRGB().toHex()},toRGB:function(){return this.toCMY().toRGB()},toXYZ:function(){return this.toRGB().toXYZ()},toCIELab:function(){return this.toRGB().toCIELab()},toCMY:function(){var c=(this.c*(1-this.k)+this.k);var d=(this.m*(1-this.k)+this.k);var b=(this.y*(1-this.k)+this.k);return new Ext.ux.Color.CMY(c,d,b)},toCMYK:function(){return this},toCIELCh:function(){return this.toCIELab().toCIELCh()},toString:function(){return this.c+","+this.m+","+this.y+","+this.k},toSelf:"toCMYK"});Ext.ux.Color.CIELCh=Ext.extend(a,{constructor:function(b,e,d){this.l=b;this.c=e;this.h=d<360?d:(d-360)},toHex:function(){return this.toCIELab().toHex()},toRGB:function(){return this.toCIELab().toRGB()},toXYZ:function(){return this.toCIELab().toXYZ()},toCIELab:function(){var e=this.l;var f=this.h*(Math.PI/180);var d=Math.cos(f)*this.c;
var c=Math.sin(f)*this.c;return new Ext.ux.Color.CIELab(e,d,c)},toHSV:function(){return this.toCIELab().toHSV()},toCMY:function(){return this.toCIELab().toCMY()},toCMYK:function(){return this.toCIELab().toCMYK()},toString:function(){return this.l+","+this.c+","+this.h},toCIELCh:function(){return this},toSelf:"toCIELCh"})})();Ext.namespace("Ext.ux.Color");Ext.ux.Color.Variants={increase:function(e,d,a){return(e*d)+(((100-(e*d))*a)/100)},decrease:function(e,d,a){return((100-(e*d))*a)/100},reverseIncrease:function(e,a,d){if(a==1){alert("reverse increase will fail due to a maximized value")}return(e-a)/(d*(1-a))},reverseDecrease:function(e,a,d){if(d==0){return a-e}return(a-e)/(d*a)},reverseGet:function(d,c,b){base=new Ext.ux.Color.Hex(d);base=base.toHSV();variant=new Ext.ux.Color.Hex(c);variant=variant.toHSV();var a={s:{},v:{}};if(variant.s<base.s){a.s.fn="decrease";a.s.m=Ext.ux.Color.Variants.reverseDecrease(variant.s,base.s,b)}else{a.s.fn="increase";a.s.m=Ext.ux.Color.Variants.reverseIncrease(variant.s,base.s,b)
}if(variant.v<base.v){a.v.fn="decrease";a.v.m=Ext.ux.Color.Variants.reverseDecrease(variant.v,base.v,b)}else{a.v.fn="increase";a.v.m=Ext.ux.Color.Variants.reverseIncrease(variant.v,base.v,b)}return a},get:function(a,f,o,h,l){var d=new Ext.ux.Color.Hex(a),g=false;d=d.toHSV();if(!d.s){g=true}var p=Ext.ux.Color.Variants.presets[l]||Ext.ux.Color.Variants;if(f=="highlight3"||f=="shadow3"){var e=p[f=="highlight3"?"highlight1":"shadow1"];var b={s:{fn:e.s.fn,m:e.s.m*2.8},v:{fn:e.v.fn,m:e.v.m*2.1}}}else{var b=p[f]}d.s=(b.s.fn(o,b.s.m,d.s*100)/100);d.v=(b.v.fn(h,b.v.m,d.v*100)/100);if(g){return new Ext.ux.Color.RGB(d.v*256,d.v*256,d.v*256).toHex().hex}var e=d.toHex().hex;delete d;return e}};Ext.apply(Ext.ux.Color.Variants,{highlight1:{v:{fn:Ext.ux.Color.Variants.increase,m:1},s:{fn:Ext.ux.Color.Variants.decrease,m:0.5}},highlight2:{v:{fn:Ext.ux.Color.Variants.increase,m:1},s:{fn:Ext.ux.Color.Variants.decrease,m:0.9}},highlight3:{v:{fn:Ext.ux.Color.Variants.increase,m:1},s:{fn:Ext.ux.Color.Variants.decrease,m:0.9}},shadow1:{v:{fn:Ext.ux.Color.Variants.decrease,m:0.5},s:{fn:Ext.ux.Color.Variants.decrease,m:0.5}},shadow2:{v:{fn:Ext.ux.Color.Variants.decrease,m:0.7},s:{fn:Ext.ux.Color.Variants.increase,m:1}},shadow3:{v:{fn:Ext.ux.Color.Variants.decrease,m:0.7},s:{fn:Ext.ux.Color.Variants.increase,m:1}}});
Ext.ux.Color.Variants.presets={pastel:{contrast:"0.25",base:{s:{fn:Ext.ux.Color.Variants.decrease,m:0.4394618834080718},v:{fn:Ext.ux.Color.Variants.decrease,m:0.12549019607843137}},shadow1:{s:{fn:Ext.ux.Color.Variants.decrease,m:0.5234871794871793},v:{fn:Ext.ux.Color.Variants.decrease,m:0.5022421524663679}},shadow2:{s:{fn:Ext.ux.Color.Variants.increase,m:0.9824755989352263},v:{fn:Ext.ux.Color.Variants.decrease,m:0.6995515695067265}},shadow3:{s:{fn:Ext.ux.Color.Variants.increase,m:0.9824755989352263},v:{fn:Ext.ux.Color.Variants.decrease,m:0.6995515695067265}},highlight1:{s:{fn:Ext.ux.Color.Variants.decrease,m:0.5092294372294371},v:{fn:Ext.ux.Color.Variants.increase,m:1}},highlight2:{s:{fn:Ext.ux.Color.Variants.decrease,m:0.9108225108225102},v:{fn:Ext.ux.Color.Variants.increase,m:1}},highlight3:{s:{fn:Ext.ux.Color.Variants.decrease,m:0.9108225108225102},v:{fn:Ext.ux.Color.Variants.increase,m:1}}}};AppCenter.Core.StarterDesigner.Welcome=Ext.extend(Ext.Panel,{constructor:function(a){Ext.applyIf(a.continueButton,{text:Translate("Continue")});
var b=a.html;a.html=undefined;a=Ext.apply({},a,{title:Translate("Welcome"),itemId:"welcome",layout:"fit",items:[{xtype:"box",cls:"ac-starterdesigner-item ac-starterdesigner-welcome",autoEl:{tag:"div",style:"",html:a.msg||"<b>Your Site Has Been Created!</b><br>"}}],fbar:["->",a.continueButton]});AppCenter.Core.StarterDesigner.Welcome.superclass.constructor.call(this,a);this.addEvents("continue")},onContinue:function(){AppCenter.api.core.StarterDesigner.setItemPop(this.ownerCt.getNextItem());this.fireEvent("continue")}});Ext.reg("ac-starterdesigner-welcome",AppCenter.Core.StarterDesigner.Welcome);AppCenter.Core.StarterDesigner.HeaderTitle=Ext.extend(Ext.Panel,{constructor:function(a){Ext.applyIf(a.continueButton,{text:Translate("Save and Continue")});a=Ext.apply({},a,{title:Translate("{0} Name and Description",a.templateName),layout:"column",defaultType:"panel",items:[{xtype:"container",layout:"form",itemId:"settings",border:false,labelAlign:"right",width:420,cls:"ac-starterdesigner-item ac-starterdesigner-headertitle",defaults:{xtype:"textfield",enableKeyEvents:true,listeners:{keyup:this.onFieldUpdate.createDelegate(this)}},items:[{itemId:"Title",cls:"titleField",fieldLabel:Translate("Name"),value:AppCenter.WebSite.get().HeaderTitle,ref:"../nameField"},{itemId:"Slogan",cls:"sloganField",fieldLabel:Translate("Slogan"),value:AppCenter.WebSite.get().HeaderSlogan,ref:"../sloganField"}]},{xtype:"box",autoEl:{tag:"img",src:FixedAsset["iconset/"]+"nuvola,lgpl/32x32/actions/1leftarrow.png",width:32,cls:"ac-starterdesigner-item"}},{xtype:"box",height:110,columnWidth:1,autoEl:{tag:"div",html:Translate("<b>Your {0} Needs An Identity!</b><br>The name and slogan establish an identity for your {0} and make a good first impression for your visitors.",a.templateName),cls:"ac-starterdesigner-item"}}],fbar:[a.backButton,{xtype:"tbtext",cls:"ac-starterdesigner-fbar-text",text:Translate("A good name and slogan make a better {0}!",a.templateName)},"->",a.continueButton]});
AppCenter.Core.StarterDesigner.HeaderTitle.superclass.constructor.call(this,a);this.addEvents("continue")},onFieldUpdate:function(a){this["update"+a.itemId](a.getValue()?a.getValue():"&nbsp;")},onContinue:function(){AppCenter.api.core.WebSite.setTitle(this.nameField.getValue(),this.onTitleSet,this);AppCenter.api.core.WebSite.setSlogan(this.sloganField.getValue(),this.onSloganSet,this);AppCenter.api.core.StarterDesigner.setItemPop(this.ownerCt.getNextItem(),this.fireEvent.createDelegate(this,["continue"]))},onTitleSet:function(b,a){if(a.status==true){this.updateTitle(b);this.nameField.setValue(b)}},onSloganSet:function(b,a){if(a.status==true){this.updateSlogan(b);this.sloganField.setValue(b)}},updateTitle:function(a){AppCenter.WebSite.get().update({SubDomainId:AppCenter.WebSite.get().SubDomainId,Title:a},true)},updateSlogan:function(a){AppCenter.WebSite.get().update({SubDomainId:AppCenter.WebSite.get().SubDomainId,Slogan:a},true)},onSaveComplete:function(e,b,d){this.ownerCt.getEl().unmask();var a=Ext.decode(d.responseText);
if(a.success){AppCenter.WebSite.get().update(a.update,true);this.fireEvent("savesuccess",a)}else{this.fireEvent("savefailure",a)}},onActivate:function(){this.items.get("settings").items.get("HeaderTitle").focus(true)}});Ext.reg("ac-starterdesigner-headertitle",AppCenter.Core.StarterDesigner.HeaderTitle);AppCenter.Core.StarterDesigner.TellFriends=Ext.extend(Ext.Toolbar,{constructor:function(a){a=Ext.apply({},a,{layout:"column",title:Translate("Tell Friends!"),items:[{columnWidth:1,xtype:"box",autoEl:{tag:"div",style:"margin:16px;text-align:left;white-space:normal;font-size:11pt;",html:"<b>Tell Your Friends!</b><br>Tell your friends about your site on Facebook, Myspace, Twitter, or Email."}},{xtype:"button",text:"Facebook",scale:"large",width:90,height:90},{xtype:"button",text:"MySpace",scale:"large",width:90,height:90},{xtype:"button",text:"Twitter",scale:"large",width:90,height:90,style:"margin-right:10px"}]});AppCenter.Core.StarterDesigner.TellFriends.superclass.constructor.call(this,a)},initComponent:function(){AppCenter.Core.StarterDesigner.TellFriends.superclass.initComponent.call(this);
var a=function(){var b=document.createElement("script");b.src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php";b.type="text/javascript";b.onload=function(){}};a.defer(5000)},onLoadFBScript:function(){}});AppCenter.Core.StarterDesigner.Complete=Ext.extend(Ext.Panel,{constructor:function(a){this.addEvents("continue");Ext.applyIf(a.continueButton,{text:Translate("Okay"),icon:FixedAsset["iconset/"]+"nuvola,lgpl/22x22/actions/button_ok.png"});a=Ext.apply({},a,{title:Translate("Start Using Your {0}",a.templateName),items:[{border:false,html:a.html||Translate("<b>You're Done!</b><br>You're now done creating the changes for your {0}.",a.templateName),cls:"ac-starterdesigner-item"}],fbar:[a.backButton,{xtype:"tbtext",text:Translate("Click the Okay button to start using your {0}.",a.templateName),style:'margin-left:10px;font-size:11pt;font-family:"Helvetica Neue",Helvetica,Arial,Verdana,sans-serif'},"->",a.continueButton]});AppCenter.Core.StarterDesigner.Complete.superclass.constructor.call(this,a)
},onContinue:function(){AppCenter.api.core.StarterDesigner.setItemPop(this.ownerCt.getNextItem());this.fireEvent("continue")}});Ext.reg("ac-starterdesigner-complete",AppCenter.Core.StarterDesigner.Complete);AppCenter.Core.StarterDesigner.ThemeSelect=Ext.extend(Ext.Panel,{constructor:function(a){Ext.applyIf(a.continueButton,{text:Translate("Save and Continue")});a=Ext.apply({},a,{title:Translate("Change The Look Of Your {0}",a.templateName),layout:"column",items:[{cls:"ac-starterdesigner-item ac-starterdesigner-theme ac-selector ac-themeview",bodyStyle:"whitespace:no-wrap;overflow-x:scroll",columnWidth:1,xtype:"ac-themeview-selector",autoLoad:true,storeId:a.storeId?a.storeId:"DomainThemes",livePreview:true,pageRange:7,itemId:"themes",selectTheme:AppCenter.WebSite.get().ThemeId,cycle:true}],fbar:[a.backButton,{xtype:"tbtext",cls:"ac-starterdesigner-fbar-text",text:Translate("Click on a theme to change the appearance of your {0}.",a.templateName)},"->",a.continueButton]});AppCenter.Core.StarterDesigner.ThemeSelect.superclass.constructor.call(this,a)
},defaultType:"panel",initComponent:function(){AppCenter.Core.StarterDesigner.ThemeSelect.superclass.initComponent.call(this);this.addEvents("continue")},setMoreHandler:function(){this.items.get("c2").items.get("more").getEl().on("click",function(){this.items.get("c2").items.get("themes").nextPage();return false},this)},onContinue:function(){var a=this.items.get(0).getSelectedRecord();if(!a){this.fireEvent("continue");return}this.getEl().mask(Translate("Saving&hellip;"));AppCenter.api.core.WebSite.setTheme(a.data.themeId,this.onContinueComplete,this);AppCenter.api.core.StarterDesigner.setItemPop(this.ownerCt.getNextItem())},onContinueComplete:function(){this.getEl().unmask();this.fireEvent("continue")}});Ext.reg("ac-starterdesigner-theme",AppCenter.Core.StarterDesigner.ThemeSelect);Ext.namespace("AppCenter.Core.WebSiteTemplate");AppCenter.Core.WebSiteTemplate.EditWindow=function(a){require("Ext.ux.guid.plugin.Designer.css",{basedir:"compressed",cssdir:FixedAsset["uiframework/webblocks.eu,lgpl/Designer/"]+"css/",nocache:true});
a=Ext.apply({},a,{width:1024,height:768,title:Translate("Template Editor"),layout:"fit",deferredRender:false,items:[{xtype:"tabpanel",activeTab:0,border:false,itemId:"tabs",items:[{title:Translate("Settings"),xtype:"form",itemId:"settings",style:"padding:12px;",items:[{xtype:"textfield",name:"Name",fieldLabel:Translate("Name"),autoWidth:true},{xtype:"htmleditor",name:"Description",fieldLabel:Translate("Description"),autoWidth:true,height:160},{xtype:"textarea",name:"StarterDesignerWelcome",fieldLabel:Translate("Starter Welcome (html)"),height:160,width:"90%"},{xtype:"textarea",name:"StarterDesignerComplete",fieldLabel:Translate("Starter Complete (html)"),height:160,width:"90%"},{xtype:"textfield",name:"IconClass",fieldLabel:Translate("Icon Class"),autoWidth:true}]},{title:Translate("Template UI"),layout:"fit",itemId:"UIPanel",items:[{xtype:"editarea",syntax:"js",style:'font-family:Consolas, "Courier New", Courier, monospace',itemId:"UI"}],tbar:[{text:Translate("Make Pretty"),scope:this,handler:function(){var b=AppCenter.JSON.encode(Ext.decode(this.ui.getValue()));
this.ui.setValue(b)}}]},{title:Translate("Raw Template XML"),xtype:"textarea",itemId:"Xml"}]}],buttons:[{text:Translate("Save Template"),handler:function(){var b={DomainId:this.DomainId,TemplateId:this.TemplateId,settings:this.settings.form.getValues(),ui:this.ui.rendered?Ext.decode(this.ui.getValue()):this.data.UI,xml:this.xml.getValue()};this.fireEvent("save",b)},scope:this}]});AppCenter.Core.WebSiteTemplate.EditWindow.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.WebSiteTemplate.EditWindow,Ext.Window,{DomainId:null,TemplateId:null,connection:new Ext.data.Connection({url:"/_/Domain/Template"}),initComponent:function(){AppCenter.Core.WebSiteTemplate.EditWindow.superclass.initComponent.call(this);this.ui=this.items.get("tabs").items.get("UIPanel").items.get("UI");this.xml=this.items.get("tabs").items.get("Xml");this.settings=this.items.get("tabs").items.get("settings");this.addEvents("save");this.on("render",function(){if(this.DomainId&&this.TemplateId){this.loadTemplate()}})},loadTemplate:function(b,a){this.el.mask("Loading Template&hellip;");
this.connection.request({params:{DomainId:this.DomainId,TemplateId:this.TemplateId},callback:this.onLoadTemplate.createDelegate(this)})},onLoadTemplate:function(d,a,b){var c=Ext.decode(b.responseText);this.data=c;this.settings.form.setValues(c);this.xml.setValue(c.Xml);if(this.ui.rendered){this.ui.setValue(Ext.encode(c.UI))}else{this.ui.on("render",function(){this.setValue(Ext.encode(c.UI))})}this.el.unmask()}});Ext.namespace("AppCenter.App.Module");AppCenter.App.Module.DomainEditor=Ext.extend(Ext.app.Module,{iconCls:"domain-editor-icon",init:function(){AppCenter.App.Module.DomainEditor.superclass.init.call(this)},createPanels:function(a){this.panels=[];Ext.each(this.panelConfig,function(c){if(c.type){var b=new AppCenter.Core.DomainEditor[c.type](null,this,c.data);this.panels.push(b);c.panel=b;c.leaf=true;c.text=b.title}},this);this.control=new Ext.tree.ColumnTree({stateId:"DomainCP",stateful:true,title:Translate("Domain Manager"),columns:[{header:this.DomainName,dataIndex:"name"}],rootVisible:false,root:{text:this.DomainName,expanded:true,children:this.panelConfig},listeners:{render:function(){this.getSelectionModel().on("selectionchange",function(c,b){if(b.attributes.panel){this.MainPanel.layout.setActiveItem(b.attributes.panel)
}},this)},expand:function(){this.getSelectionModel().select(this.getRootNode().firstChild)}}});this.editor=new Ext.Panel()},getControlPanelChildren:function(){return[this.control]},getMainPanelChildren:function(){return this.panels},finishSetup:function(){this.control.MainPanel=this.MainPanel},getCallback:function(){var a=new Prado.CallbackRequest(this.CallbackID,{});return a},sendCallback:function(b){var a=this.getCallback();a.setCallbackParameter(b);a.dispatch()}});AppCenter.Core.DomainEditor={};AppCenter.Core.DomainEditor.SettingsPanel=function(a,b,c){this.module=b;this.data=c;a={title:Translate("Settings"),activeItem:0,deferredRender:true,items:[{title:Translate("Branding"),itemId:"Brand",xtype:"form",labelAlign:"left",items:[{xtype:"textfield",fieldLabel:"Name",name:"Name"}]},{title:Translate("Subdomains"),itemId:"SubDomains",xtype:"form",labelAlign:"left",items:[{xtype:"textfield",name:"minLength",fieldLabel:"Minimum Length"},{xtype:"textfield",name:"maxLength",fieldLabel:"Maximum Length"},{xtype:"textfield",name:"defaultManagerUrl",fieldLabel:"Manager URL"}]},{title:Translate("Web Services"),itemId:"WebServices",xtype:"form",labelAlign:"left",style:"padding:16px;",items:[{xtype:"container",layout:"form",style:"margin-bottom:18px;",items:[{xtype:"box",html:"<b>Amazon Web Services</b>",style:"margin-bottom:2px;"},{xtype:"textfield",name:"AwsAccessKey",fieldLabel:Translate("Access Key")},{xtype:"textfield",name:"AwsSecretKey",fieldLabel:Translate("Secret Key")},{xtype:"textfield",name:"AwsBucket",fieldLabel:Translate("S3 Bucket")},{xtype:"textfield",name:"AwsDistribution",fieldLabel:Translate("CF Distribution")},{xtype:"textfield",name:"AwsStreaming",fieldLabel:Translate("CF Streaming")}]},{xtype:"container",layout:"form",style:"margin-bottom:18px;",items:[{xtype:"box",html:"<b>Twitter API</b>",style:"margin-bottom:2px;"},{xtype:"textfield",name:"TwitterConsumerKey",fieldLabel:Translate("Consumer Key")},{xtype:"textfield",name:"TwitterConsumerSecret",fieldLabel:Translate("Consumer Secret")}]},{xtype:"container",layout:"form",style:"margin-bottom:18px;",items:[{xtype:"box",html:"<b>Bit.ly</b>",style:"margin-bottom:2px;"},{xtype:"textfield",name:"BitlyLogin",fieldLabel:Translate("Login")},{xtype:"textfield",name:"BitlyApiKey",fieldLabel:Translate("Api Key")}]},{xtype:"container",layout:"form",style:"margin-bottom:18px;",items:[{xtype:"box",html:"<b>PayPal Website Payments Standard</b>",style:"margin-bottom:2px"},{xtype:"textfield",name:"PayPalWPSIdentityToken",fieldLabel:Translate("Identity Token")}]}]},{title:Translate("Comm"),xtype:"ac-domain-edit-message",itemId:"CommunicationMessage"},new AppCenter.Core.DomainEditor.ThemePanel({title:Translate("Themes"),itemId:"Themes"}),{title:Translate("Templates"),itemId:"Templates",autoExpandColumn:"name",enableDragDrop:true,ddGroup:"TestDDGroup",xtype:"grid",columns:[{header:"Template Name",id:"name",dataIndex:"Name"},{header:"Publish Date",id:"published",dataIndex:"PublishDate",width:80,renderer:function(e){var f=new Date();
f.setTime(e*1000);return e?f.format("n/j/Y"):'<span style="color:#777">no date</span>'}},{header:"Publish Site",id:"website",dataIndex:"PublishSite",width:150,renderer:function(d){return d?'<a href="http://'+d+'">'+d+"</a>":'<span style="color:#777">unpublished</span>'}}],store:AppCenter.Domain.get(this.module.DomainId).Templates,tbar:[{text:Translate("Publish A Site"),xtype:"button",scope:this,handler:function(){this.items.get("Templates").store.commitChanges()}},{text:Translate("Delete"),xtype:"button",scope:this,handler:this.deleteTemplate}],listeners:{rowdblclick:function(f,d,h){var l=f.store.getAt(d);var g=new AppCenter.Core.WebSiteTemplate.EditWindow({DomainId:l.data.DomainId,TemplateId:l.data.TemplateId,listeners:{save:function(m){g.close();var e=new Prado.CallbackRequest(this.ownerCt.module.CallbackID);Ext.apply(m,{callback:"saveTemplateSettings"});e.setCallbackParameter(m);e.dispatch()}.createDelegate(this)}});g.show()},render:function(){var d=new Ext.ux.dd.GridReorderDropTarget(this,{copy:false,listeners:{beforerowmove:function(g,h,f,e){},afterrowmove:function(g,h,f,e){},beforerowcopy:function(g,h,f,e){},afterrowcopy:function(g,h,f,e){}}});
Ext.dd.ScrollManager.register(this.getView().getEditorParent())},beforedestroy:function(){Ext.dd.ScrollManager.unregister(this.getView().getEditorParent())}}}],listeners:{afterlayout:function(){this.items.get("Brand").form.setValues(this.data.Brand);this.items.get("SubDomains").form.setValues(this.data.SubDomains);this.items.get("WebServices").form.setValues(this.data.WebServices)}},buttons:[{text:Translate("Save Settings"),handler:function(){this.fireEvent("save",this);this.items.get("Templates").store.commitChanges();var e=[];Ext.each(this.items.get("Templates").store.data.items,function(f){e.push(f.json)});var d=new Prado.CallbackRequest(this.module.CallbackID);d.setCallbackParameter({callback:"saveDomainSettings",Brand:this.items.get("Brand").form.getValues(),SubDomains:this.items.get("SubDomains").rendered?this.items.get("SubDomains").form.getValues():undefined,WebServices:this.items.get("WebServices").rendered?this.items.get("WebServices").form.getValues():undefined,Templates:e,loadMask:Translate("Saving Domain Settings&hellip;")});
d.dispatch()},scope:this},{text:Translate("Revert Settings")}]};AppCenter.Core.DomainEditor.SettingsPanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainEditor.SettingsPanel,Ext.TabPanel,{initComponent:function(){AppCenter.Core.DomainEditor.SettingsPanel.superclass.initComponent.call(this)},deleteTemplate:function(){}});AppCenter.Core.DomainEditor.ThemePanel=Ext.extend(Ext.grid.GridPanel,{constructor:function(a){a=Ext.apply({},a,{autoExpandColumn:"name",singleSelect:true,enableDragDrop:true,ddGroup:"ThemePanelDD",columns:[{header:Translate("Name"),id:"name",dataIndex:"name"}],tbar:[{text:Translate("Save Order"),handler:function(){var c=new Ext.data.Connection({url:"/_/Domain/ThemeOrderSave"});var b=[];this.store.getRange().each(function(d){b.push(d.data.themeId)});c.request({params:{ThemeOrder:Ext.encode(b)}})},scope:this}],store:new Ext.data.JsonStore({root:"themes",fields:["name","themeId"],url:"/_/Themes"}),listeners:{render:function(){var b=new Ext.ux.dd.GridReorderDropTarget(this,{copy:false,listeners:{beforerowmove:function(e,f,d,c){},afterrowmove:function(e,f,d,c){},beforerowcopy:function(e,f,d,c){},afterrowcopy:function(e,f,d,c){}}});
Ext.dd.ScrollManager.register(this.getView().getEditorParent());this.store.load()},beforedestroy:function(){Ext.dd.ScrollManager.unregister(this.getView().getEditorParent())},afterlayout:function(){}}});AppCenter.Core.DomainEditor.ThemePanel.superclass.constructor.call(this,a)}});AppCenter.Core.DomainEditor.CommunicationMessagePanel=function(a){a=Ext.apply({},a,{layout:"card",activeItem:0,items:[{xtype:"ac-domain-edit-communication-message-grid",border:false,itemId:"grid",tbar:["->",{text:Translate("Edit Message Wrapper"),handler:function(){var b;b=new Ext.Window({title:Translate("Message Wrapper"),width:940,height:800,layout:"fit",modal:true,items:[{xtype:"htmleditor",itemId:"editor"}],buttons:[{text:Translate("Save"),handler:function(){var d=this.ownerCt.ownerCt;var c=new Ext.data.Connection({url:"/_/Domain/CommunicationMessageWrapperSave"});d.getEl().mask("Saving&hellip;");c.request({params:{wrapper:d.items.get("editor").getValue()},scope:d,callback:function(){this.getEl().unmask();this.destroy()}})}},{text:Translate("Cancel"),handler:function(){var c=this.ownerCt.ownerCt;
c.destroy()}}],listeners:{show:function(){var c=new Ext.data.Connection({url:"/_/Domain/CommunicationMessageWrapper"});this.getEl().mask("Loading Message Wrapper&hellip;");c.request({callback:function(f,d,e){this.items.get("editor").setValue(Ext.decode(e.responseText));this.getEl().unmask()},scope:this})}}});b.show()}}]},{xtype:"form",itemId:"form",labelAlign:"top",bodyStyle:"padding:16px",items:[{fieldLabel:Translate("Title"),xtype:"textfield",width:"98%",name:"Title"},{fieldLabel:Translate("Text Format"),xtype:"textarea",width:"98%",height:"240",name:"Text"},{fieldLabel:Translate("Html Format"),xtype:"htmleditor",width:"100%",height:480,name:"Html",itemId:"Html"},{xtype:"hidden",name:"Id"},{xtype:"checkbox",hideLabel:true,boxLabel:"Set As The Default Communication Message",itemId:"setDefault",name:"setDefault"}],buttons:[{text:Translate("Save"),handler:function(){var d=this.items.get("form").form.getValues();var b=this.items.get("grid").getSelectionModel().getSelected();b.set("Text",d.Text);b.set("Html",d.Html);
var c=new Ext.data.Connection({url:"/_/Domain/CommunicationMessageSave"});c.request({params:d,callback:b.commit.createDelegate(b)});this.items.get("form").items.get("setDefault").setValue(false);this.layout.setActiveItem("grid")},scope:this},{text:Translate("Cancel"),handler:function(){this.layout.setActiveItem("grid")},scope:this}]}],listeners:{show:function(){if(!this.isLoaded){this.items.get("grid").store.load()}this.isLoaded=true}}});AppCenter.Core.DomainEditor.CommunicationMessagePanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainEditor.CommunicationMessagePanel,Ext.Panel,{initComponent:function(){AppCenter.Core.DomainEditor.CommunicationMessagePanel.superclass.initComponent.call(this);this.items.get("grid").on("rowdblclick",function(c,b,d){var a=c.store.getAt(b);this.layout.setActiveItem("form");this.items.get("form").form.setValues(a.data)},this)}});Ext.reg("ac-domain-edit-message",AppCenter.Core.DomainEditor.CommunicationMessagePanel);AppCenter.Core.DomainEditor.CommunicationMessagePanelGrid=function(a){a=Ext.apply({},a,{autoExpandColumn:"Title",singleSelect:true,columns:[{header:Translate("Id"),id:"Id",dataIndex:"Id",width:200},{header:Translate("Title"),id:"Title",dataIndex:"Title"}],store:new Ext.data.JsonStore({root:"Messages",fields:["Id","Title","Text","Html"],url:"/_/Domain/CommunicationMessage"}),scope:this});
AppCenter.Core.DomainEditor.CommunicationMessagePanelGrid.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainEditor.CommunicationMessagePanelGrid,Ext.grid.GridPanel,{});Ext.reg("ac-domain-edit-communication-message-grid",AppCenter.Core.DomainEditor.CommunicationMessagePanelGrid);AppCenter.Core.DomainEditor.UserAccountPanel=function(a,b){a=Ext.apply({},a,{autoExpandColumn:"Username",columns:[{header:"Username",id:"Username",dataIndex:"Username"},{header:"Password",dataIndex:"Password",renderer:function(c){return'<span style="color:#777">(hidden)</span>'}},{header:"Creation Date",dataIndex:"Created",renderer:function(e){var c=new Date();c.setTime(e*1000);return c.format("n/j/Y")}}],store:new Ext.data.JsonStore({root:"accounts",fields:["Username","Password","Status","Created"],url:"/_/DomainUserAccounts",listeners:{load:function(){this.getEl().unmask()}.createDelegate(this)},scope:this}),listeners:{show:function(){this.store.load()}},title:Translate("Accounts")});AppCenter.Core.DomainEditor.UserAccountPanel.superclass.constructor.call(this,a)
};Ext.extend(AppCenter.Core.DomainEditor.UserAccountPanel,Ext.grid.GridPanel,{});AppCenter.Core.DomainEditor.WebSitePanel=function(a,b,c){this.module=b;a=Ext.apply({},a,{autoExpandColumn:"SubDomain",columns:[{header:"SubDomain",id:"SubDomain",dataIndex:"SubDomain"},{header:"Published As",id:"PublishedAs",dataIndex:"TemplateName"}],store:new Ext.data.JsonStore({root:"WebSites",fields:["SubDomain","DomainId","SubDomainId","TemplateDomainId","TemplateId","TemplateName"],url:"/_/Domain/WebSites",listeners:{load:function(){this.getEl().unmask()}.createDelegate(this)}}),listeners:{show:function(){this.store.load()}},title:Translate("Sites"),selModel:new Ext.grid.RowSelectionModel({singleSelect:true,listeners:{rowselect:function(d,f,e){if(AppCenter.Domain.get(e.data.TemplateDomainId).Can.PublishWebSiteTemplate){this.topToolbar.items.get("publish").enable()}else{this.topToolbar.items.get("publish").disable()}}.createDelegate(this)}}),tbar:[{xtype:"tbtext",text:Translate("SubDomain:&nbsp;")},{itemId:"filter",xtype:"textfield",emptyText:Translate("all"),enableKeyEvents:true,listeners:{specialkey:function(d,f){if(f.getKey()==f.RETURN){this.loadByFilter()
}return}.createDelegate(this)}},"-",{text:Translate("All"),xtype:"splitbutton",menu:{items:[{text:Translate("All Sites")},{text:Translate("Published Sites")}]}},"->",{text:Translate("Publish Template"),scope:this,itemId:"publish",hidden:!AppCenter.Domain.get().Can.PublishWebSiteTemplate,disabled:true,handler:function(){var e=this.getSelectionModel().getSelected();var d=new AppCenter.Core.WebSiteTemplate.EditWindow({DomainId:e.data.TemplateDomainId,TemplateId:e.data.TemplateId,listeners:{save:function(g){d.close();var f=new Prado.CallbackRequest(this.module.CallbackID);Ext.apply(g,{callback:e.data.TemplateDomainId&&e.data.TemplateId?"saveTemplateSettings":"publishWebSiteTemplate",SubDomain:e.data.SubDomain,DomainId:e.data.DomainId,SubDomainId:e.data.SubDomainId});f.setCallbackParameter(g);f.dispatch()}.createDelegate(this)}});if(!e.data.TemplateDomainId||!e.data.TemplateId){d.on("render",function(){var f=new Ext.data.Connection({url:"/_/Domain/TemplateXml"});f.request({params:{SubDomain:e.data.SubDomain},callback:function(m,g,h){var l=Ext.decode(h.responseText);
d.items.get("tabs").items.get("Xml").setValue(l.Xml)}})})}d.show()}}]});AppCenter.Core.DomainEditor.WebSitePanel.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainEditor.WebSitePanel,Ext.grid.GridPanel,{loadByFilter:function(){this.store.load({params:{filter:this.topToolbar.items.get("filter").getValue()}});return true}});Ext.namespace("Ext.ux.dd");Ext.ux.dd.GridReorderDropTarget=function(b,a){this.target=new Ext.dd.DropTarget(b.getEl(),{ddGroup:b.ddGroup||"GridDD",grid:b,gridDropTarget:this,notifyDrop:function(p,m,h){if(this.currentRowEl){this.currentRowEl.removeClass("grid-row-insert-below");this.currentRowEl.removeClass("grid-row-insert-above")}var s=Ext.lib.Event.getTarget(m);var l=this.grid.getView().findRowIndex(s);if(l===false||l==h.rowIndex){return false}if(this.gridDropTarget.fireEvent(this.copy?"beforerowcopy":"beforerowmove",this.gridDropTarget,h.rowIndex,l,h.selections,123)===false){return false}var d=this.grid.getStore();var c=[];var q=d.data.keys;for(var o in q){for(var g=0;g<h.selections.length;
g++){if(q[o]==h.selections[g].id){if(l==o){return false}c.push(h.selections[g])}}}if(l>h.rowIndex&&this.rowPosition<0){l--}if(l<h.rowIndex&&this.rowPosition>0){l++}if(l>h.rowIndex&&h.selections.length>1){l=l-(h.selections.length-1)}if(l==h.rowIndex){return false}if(!this.copy){for(var g=0;g<h.selections.length;g++){d.remove(d.getById(h.selections[g].id))}}for(var g=c.length-1;g>=0;g--){var u=l;d.insert(u,c[g])}var f=this.grid.getSelectionModel();if(f){f.selectRecords(h.selections)}this.gridDropTarget.fireEvent(this.copy?"afterrowcopy":"afterrowmove",this.gridDropTarget,h.rowIndex,l,h.selections);return true},notifyOver:function(s,o,l){var w=Ext.lib.Event.getTarget(o);var m=this.grid.getView().findRowIndex(w);var d=this.grid.getStore();var v=d.data.keys;for(var q in v){for(var h=0;h<l.selections.length;h++){if(v[q]==l.selections[h].id){if(m==q){if(this.currentRowEl){this.currentRowEl.removeClass("grid-row-insert-below");this.currentRowEl.removeClass("grid-row-insert-above")}return this.dropNotAllowed}}}}if(m<0||m===false){this.currentRowEl.removeClass("grid-row-insert-above");
return this.dropNotAllowed}try{var p=this.grid.getView().getRow(m);var g=new Ext.Element(p).getY()-this.grid.getView().scroller.dom.scrollTop;var c=p.offsetHeight;this.rowPosition=o.getPageY()-g-(c/2);if(this.currentRowEl){this.currentRowEl.removeClass("grid-row-insert-below");this.currentRowEl.removeClass("grid-row-insert-above")}if(this.rowPosition>0){this.currentRowEl=new Ext.Element(p);this.currentRowEl.addClass("grid-row-insert-below")}else{if(m-1>=0){var u=this.grid.getView().getRow(m-1);this.currentRowEl=new Ext.Element(u);this.currentRowEl.addClass("grid-row-insert-below")}else{this.currentRowEl.addClass("grid-row-insert-above")}}}catch(f){console.warn(f);m=false}return(m===false)?this.dropNotAllowed:this.dropAllowed},notifyOut:function(c,f,d){if(this.currentRowEl){this.currentRowEl.removeClass("grid-row-insert-above");this.currentRowEl.removeClass("grid-row-insert-below")}}});if(a){Ext.apply(this.target,a);if(a.listeners){Ext.apply(this,{listeners:a.listeners})}}this.addEvents({beforerowmove:true,afterrowmove:true,beforerowcopy:true,afterrowcopy:true});
Ext.ux.dd.GridReorderDropTarget.superclass.constructor.call(this)};Ext.extend(Ext.ux.dd.GridReorderDropTarget,Ext.util.Observable,{getTarget:function(){return this.target},getGrid:function(){return this.target.grid},getCopy:function(){return this.target.copy?true:false},setCopy:function(a){this.target.copy=a?true:false}});AppCenter.Core.DomainTerms={title:"Terms & Conditions",height:300,width:480,autoScroll:true,bodyStyle:"padding:16px",modal:true,buttons:[{text:"Close",handler:function(){this.ownerCt.close()}}]};AppCenter.Core.DomainCreator=function(a){a.gridOnly=true;a=Ext.apply({},a,{title:Translate("Domain Registration"),xtype:"form",style:"padding:16px",labelAlign:"right",labelWidth:180,autoHeight:true,items:[{xtype:"box",autoEl:{html:"<h3>Register Your Domain</h3><p>Host common social web applications such as forums and blogs for yourself, for your friends, and for everyone! Run your own social hosting site with AppCenter.",style:"margin-bottom:12px"}},{xtype:"textfield",fieldLabel:"Registration Token",name:"domaintoken",itemId:"domaintoken",vtype:"alphanum",minLength:8,maxLength:8,hidden:a.gridOnly,hideLabel:a.gridOnly,disabled:a.gridOnly},{xtype:"textfield",fieldLabel:"Domain Name",name:"domainname",regex:/^([a-zA-Z0-9]{2,})(-([a-zA-Z0-9]+))*.(com|net|org|info|biz|name|co\.uk)$/i,itemId:"domainname",validateOnBlur:false,listeners:{valid:this.checkDomain.createDelegate(this)}},{xtype:"box",itemId:"domainstatus",isFormField:true,labelSeparator:"",autoEl:{html:"Choose a .com or a .net domain name.  More to come soon!",style:"margin-bottom:8px"}},{xtype:"box",isFormField:true,labelSeparator:"",autoEl:{html:'<a href onclick="var win=new Ext.Window(AppCenter.Core.DomainTerms);win.show();return false;">Read Terms &amp; Conditions</a>'}},{xtype:"checkbox",boxLabel:Translate("I agree to the Terms and Conditions"),labelSeparator:"",name:"iagree",itemId:"iagree"},{xtype:"checkbox",boxLabel:Translate("Register on the AppCenter grid only"),labelSeparator:"",name:"gridonly",itemId:"gridonly",checked:true,hidden:a.gridOnly,listeners:{check:function(d,c){var b=["firstname","lastname","organization","phone","address1","address2","city","state","statechoicegroup","zip","country"];
Ext.each(b,function(e){if(this.get(e)){this.get(e).setDisabled(c);this.get("domainRegDetails").getEl().setStyle("color",c?"gray":"black")}}.createDelegate(this.ownerCt.items));this.ownerCt.items.get("domainname").validate()}}},{xtype:"box",isFormField:true,labelSeparator:"",autoEl:{html:"Select this if you already own a domain that you want to use on the grid.  This will not register the domain at a domain registrar."},hidden:a.gridOnly},{xtype:"box",autoEl:{html:"<h3>Account Details</h3>Enter your account details below.  You'll use this account to manage your site at your new AppCenter domain.",style:"margin-top:10px;margin-bottom:10px;"}},{xtype:"textfield",fieldLabel:'<span style="color:red">*</span> Email',vtype:"email",name:"email",itemId:"email",allowBlank:false},{xtype:"textfield",fieldLabel:'<span style="color:red">*</span> Confirm Email',vtype:"email",name:"emailVerify",itemId:"emailVerify",allowBlank:false,validator:function(){var b=this.ownerCt.items.get("email");return this.getValue()==b.getValue()
}},{xtype:"textfield",fieldLabel:'<span style="color:red">*</span> Username',vtype:"alphanum",name:"username",itemId:"username",minLength:5,allowBlank:false},{xtype:"ac-account-create-password",fieldLabel:'<span style="color:red;">*</span> Password'},{xtype:"ac-account-create-passwordverify",fieldLabel:'<span style="color:red;">*</span> Confirm Password"'},{xtype:"box",isFormField:true,labelSeparator:"",autoEl:{html:'<span style="color:red">*</span> indicates a required field.'}},{xtype:"ac-layoutview-selector-card",itemId:"template"}],buttons:[{text:"Next",scope:this,handler:this.registerDomain,disabled:true}]});AppCenter.Core.DomainCreator.superclass.constructor.call(this,a)};Ext.extend(AppCenter.Core.DomainCreator,Ext.FormPanel,{checkCache:{},checkDomain:function(){if(!this.checkDomainCb){this.checkDomainCb=new Ext.data.Connection({url:"/_/DomainToken",autoAbort:true})}var b=this.items.get("domaintoken").getValue();var a=this.items.get("domainname").getValue();var d=this.items.get("domainstatus");var c=this.items.get("gridonly").getValue();
if(this.checkCache[b+":"+a+":"+c]){this.onCheckDomainSuccess(this.checkCache[b+":"+a+":"+c],null,a,d);return}this.checkDomainCb.request({success:this.onCheckDomainSuccess.createDelegate(this,[a,d,b,c],true),failure:this.onCheckDomainFailure.createDelegate(this,[a,d,b,c],true),params:{domainName:a,domainToken:b,gridOnly:c}});d.el.update('<span style="color:orange"><img src="'+FixedAsset["misc/"]+'/spinners/spinner.gif"> Checking <b>'+a+"</b></span>")},onCheckDomainSuccess:function(c,a,b,h,d,g){var f=Ext.decode(c.responseText);this.checkCache[d+":"+b+":"+g]=c;if(f.success){this.buttons[0].enable();h.el.update("<b>"+b+"</b> is available.  Your site will be created at <b>www."+b+"</b>.");return}switch(f.errorCode){case"invalidToken":var e="The domain registration token you provided is invalid.";break;case"domainUnavailable":var e="<b>"+b+"</b> is unavailable.";break;case"domainOnGrid":var e="<b>"+b+"</b> is already registered on the grid.";break;case"domainPermissions":var e="<b>You don't have permission to create a domain.</b>";
break;default:var e="An unknown error occurred.  Please try again later.";this.checkCache[d+":"+b+":"+g]=null}h.el.update("<span style='color:red;'>"+e+"</span>");return},onCheckDomainFailure:function(){var a=this.layout.activeItem.items.get("domainstatus");a.el.update("<span style='color:red'>Domain check timed out. Please try again later.</span>")},registerDomain:function(a,c){if(!this.items.get("iagree").checked){this.items.get("iagree").wrap.setStyle("color","red");return}this.items.get("domainname").suspendEvents();if(!this.form.isValid()){this.items.get("domainname").resumeEvents();return}this.items.get("domainname").resumeEvents();Ext.apply(this.cb.ActiveControl,{onLoading:this.el.mask.createDelegate(this.el,["Creating New Domain"]),onComplete:this.onRegisterDomainComplete.createDelegate(this)});var b=this.form.getValues();b.template=this.items.get("template").getValues();this.cb.setCallbackParameter({command:"createDomain",parameter:b});this.cb.dispatch()},onRegisterDomainComplete:function(a,b){this.el.unmask();
if(!b.success){this.onRegisterDomainFail(a,b);return}Ext.getBody().mask(Translate("Wait 10 seconds for domain to propagate&hellip;"));this.redirect.defer(10000,this,[a,b])},redirect:function(a,e){Ext.getBody().mask(Translate("Redirecting to your new domain&hellip;"));var g=[];g.push({tag:"input",type:"hidden",name:"token",value:e.token});g.push({tag:"input",type:"hidden",name:"username2",value:"www"});g.push({tag:"input",type:"hidden",name:"password2",value:this.items.get("password").getValue()});g.push({tag:"input",type:"hidden",name:"username1",value:this.items.get("username").getValue()});g.push({tag:"input",type:"hidden",name:"password1",value:this.items.get("password").getValue()});if(!e.redirect){e.redirect="http://"+e.website}g.push({tag:"input",type:"hidden",name:"redirect",value:e.redirect});var d=Ext.DomHelper.append(document.body,{tag:"form",id:"dcRedirect",method:"POST",action:"http://"+e.website+"/_/MultiLogin",children:g});document.body.appendChild(d);var b=new Ext.form.BasicForm(d,{standardSubmit:true});
b.submit({method:"POST"})},onRegisterDomainFail:function(a,b){this.el.unmask();Ext.Msg.alert("Domain Registration Failed",b.error)}});(function(){var designers=ACI.viewmodel.admin.designers,ThemeDesigner;designers.ThemeDesigner=Ext.extend(Ext.ux.Ribbon,{constructor:function(config){TD.ribbon=this;TD.initData();config=Ext.apply({title:Translate("Theme Designer"),height:TD.RIBBONHEIGHT+((Ext.isIE6||Ext.isIE7)?0:6),items:[Ext.clone(TD.Designs),Ext.clone(TD.Colors),Ext.clone(TD.Fonts),Ext.clone(TD.Layout),Ext.clone(TD.Desk),Ext.clone(TD.Sheet),Ext.clone(TD.Header),Ext.clone(TD.Footer),Ext.clone(TD.Navigation),Ext.clone(TD.Community),Ext.clone(TD.Forum),Ext.clone(TD.Blog),Ext.clone(TD.Page),Ext.clone(TD.Video),Ext.clone(TD.Blocks),Ext.clone(TD.Widgets)],activeTab:0,width:1000,trackResetOnLoad:true,tools:[{id:"gear",handler:function(){if(!this.debugMenu){this.debugMenu=new Ext.menu.Menu({items:[{xtype:"actd-editfieldtree"},{xtype:"actd-editcssmenuitem"}]})}this.debugMenu.show(this)}}],listeners:{clientvalidation:function(form,valid){if(valid&&TD.cssTpl&&this.form.initialized&&TD.stores.theme.current.getAt(0)){if(TD.needsRepaint()){TD.repaint()
}}},show:function(){if(this.form.initialized){TD.repaint()}this.startMonitoring()},hide:function(){this.stopMonitoring();TD.clearCss();Ext.util.Cookies.set("actd2show","")},destroy:function(){TD.destroyData();delete TD.ribbon},tabchange:function(panel,tab){Ext.util.Cookies.set("actd2show",tab.itemId)}}},config);ThemeDesigner.superclass.constructor.call(this,config)},getData:function(){return TD.getCurrentRecord().data.Definition},setDefaultValues:function(){this.form.items.each(function(field){var f=TD.stores.theme.current.recordType.prototype.fields.get(field.name);if(f){field.setValue(f.defaultValue)}})}});ThemeDesigner=designers.ThemeDesigner;Ext.reg("aci.theme-designer.ribbon",ThemeDesigner);Ext.namespace("ACI.viewmodel.admin.designers.ThemeDesignerUtil.widget");Ext.namespace("ACI.viewmodel.admin.designers.ThemeDesignerUtil.ux.Image.Thumbnail");var TD=designers.ThemeDesignerUtil;TD.RIBBONHEIGHT=170;TD.GROUPHEIGHT=TD.RIBBONHEIGHT-52;Ext.apply(TD,{cssTpl:{},initData:function(){TD.initCss();TD.initStores()},destroyData:function(){TD.destroyCss();
TD.destroyStores()},initCssTpls:function(){TD.CssTplStore.each(function(record){TD.cssTpl[record.data.name]=record.data.css})},initCss:function(){if(TD.CssTplStore){return}TD.CssTplStore=new Ext.data.DirectStore({sortInfo:{field:"name",direction:"ASC"},idProperty:"name",fields:["name","css"],autoLoad:true,directFn:AppCenter.api.core.ThemeDesigner.loadCSS,listeners:{beforeload:function(){TD.ribbon.startLoading()},load:function(){TD.initCssTpls();TD.repaint();TD.ribbon.stopLoading()}}})},destroyCss:function(){if(!TD.CssTplStore){return}TD.CssTplStore.destroy();TD.CssTplStore=null;delete TD.cssTpl;TD.cssTpl={}}});TD.destroyStores=function(){TD.themeTypes.each(function(type){TD.stores[type].current.destroy();TD.stores[type].personal.destroy();TD.stores[type]["public"].destroy()})};TD.initStores=function(){TD.current={};TD.stores={};TD.palettes=["palette.primary","palette.secondary","palette.complementary","palette.alternate"];TD.colorset=["highlight1","highlight2","highlight3","color","shadow3","shadow2","shadow1"];
var storeFields=[{name:"ThemeId",type:"int"},{name:"Collection",type:"string"},{name:"Type",type:"string"},{name:"Style",type:"string"},{name:"Design",type:"string"},{name:"Definition",type:"auto",defaultValue:{}},{name:"LastUpdate",type:"int"}];var recordType=Ext.data.Record.create(storeFields);var reader=new Ext.ux.data.DirectReader({idProperty:"ThemeId",recordType:recordType},recordType);var writer=new Ext.data.DirectWriter({writeAllFields:true});var themeTypes=TD.themeTypes=["theme","fontset","palette","sheet","navigation","community","forum","video","blog"];var setupDirectStore=function(type,collection,reader,writer){var store,api=AppCenter.api.core.ThemeDesigner;store=new Ext.data.DirectStore({id:"ThemeDesigner-"+type+"-"+collection,baseParams:{type:type,collection:collection},paramOrder:["type","collection"],autoSave:false,reader:reader,recordType:reader.recordType,api:{read:api.readThemes,destroy:api.destroyTheme,update:api.updateTheme,create:api.createTheme},writer:writer,listeners:{beforeload:function(){TD.ribbon.startLoading()
},load:function(){TD.ribbon.form.initialized=true;TD.ribbon.stopLoading()},beforewrite:function(){TD.ribbon.startLoading()},exception:function(){TD.ribbon.stopLoading()},write:function(store,action,result,trans,record){TD.ribbon.stopLoading();if(action==Ext.data.Api.actions.create||action==Ext.data.Api.actions.update){TD.setCurrentRecord(record);TD.reloadCss()}if(action==Ext.data.Api.actions.destroy){}}}});return store};themeTypes.each(function(type){TD.stores[type]={current:new Ext.data.Store({id:"ThemeDesigner-"+type+"-current",baseParams:{type:type,collection:"current"},paramOrder:["type","collection"],reader:reader,recordType:recordType}),personal:setupDirectStore(type,"personal",reader,writer),"public":setupDirectStore(type,"public",reader,writer)}});TD.updateRecordWithRibbonSettings=function(record){var values=TD.mergeRibbonAndRecordValues(record);record.beginEdit();record.set("Definition",values);record.endEdit()};TD.mergeRibbonAndRecordValues=function(record){var originalValues=Ext.ux.json2array(record.data.Definition);
var ribbonValues=TD.getRibbonValues();var values=Ext.apply({},ribbonValues,originalValues);var json=Ext.ux.array2json(values);delete ribbonValues;delete originalValues;delete values;return json};TD.getRibbonValues=function(){var re=/\./,definition={},v,i;var values=TD.ribbon.getForm().getValues();for(var name in values){if(re.test(name)){v=values[name];if(Ext.isObject(v)){v=Ext.ux.json2array(v);for(i in v){definition[name+"."+i]=v[i]}}else{definition[name]=v}}}return definition};TD.setValues=function(values){var id,data,form=TD.ribbon.getForm(),fields;if(values){for(id in values){if(!Ext.isFunction(values[id])&&(fields=form.findFields(id))){if(fields.length){fields.each(function(field){field.setValue(values[id])})}else{if(!data){data=TD.getCurrentRecord().data.Definition}Ext.jsonSetChild(data,id,values[id])}}}}};TD.setRibbonValues=function(data){TD.ribbon.getForm().setValuesViaJson(data)};TD.getCurrentRecord=function(type){type=type||"theme";var store=TD.stores[type].current,current=store.getAt(0);if(!current){store.add(current=new store.recordType({}));
current.fields.each(function(field){current.data[field.name]=field.defaultValue});current.data.Type=type;current.data.Collection="personal"}return current};TD.loadIntoCurrent=function(record,type){var e,current=TD.getCurrentRecord(type||record.data.Type);var definition=Ext.ux.copyToRecursive(current.data.Definition,record.data.Definition);current.dirty=true};TD.loadIntoTheme=function(record){TD.setRibbonValues(record.data.Definition);return TD.loadIntoCurrent(record,"theme")};TD.loadThemeIntoAllCurrent=function(record){TD.ribbon.setDefaultValues();TD.setRibbonValues(record.data.Definition);Ext.each(themeTypes,function(type){if(type!=record.data.Type){TD.loadIntoCurrent(record,type)}})};TD.setCurrentRecord=function(record){var type=record.data.Type;var store=TD.stores[type].current;store.removeAll(true);var newcurrent=record.copy();store.add(newcurrent);if(type=="theme"){TD.loadThemeIntoAllCurrent(newcurrent)}else{TD.loadIntoTheme(newcurrent)}TD.repaint()};TD.updateCurrentRecord=function(type,collection){var updaterecord;
var current=TD.getCurrentRecord(type);if(current.data.Collection==collection){var store=TD.stores[type][collection];updaterecord=store.getById(current.data.ThemeId)}if(updaterecord){updaterecord.beginEdit();for(var item in current.data){updaterecord.set(item,current.data[item])}updaterecord.endEdit();store.save()}else{var oldtitle=current.data.Definition[type]["title"];oldtitle=oldtitle?" ("+oldtitle+")":"";TD.createCurrentRecord(type,collection,"My "+Ext.util.Format.capitalize(type)+oldtitle)}};TD.createCurrentRecord=function(type,collection,title){var current=TD.getCurrentRecord(type),store=TD.stores[type][collection],id=current.data.ThemeId,newrecord=current.copy();delete newrecord.data.ThemeId;delete newrecord.data.Definition[type]["id"];delete newrecord.id;if(type!="theme"){var definition=newrecord.data.Definition[type];newrecord.data.Definition={};newrecord.data.Definition[type]=definition}newrecord.data.Definition[type]["title"]=title;newrecord.phantom=true;store.add(newrecord);store.save()};TD.destroyRecord=function(type,collection,id){var store=TD.stores[type][collection],record=store.getById(id);
store.remove(record);store.save()};var Theme2Id=AppCenter.WebSite.items[0].Theme2Id;if(Theme2Id){AppCenter.api.core.ThemeDesigner.readTheme(Theme2Id,function(data,response){if(response.status&&data){var collection=data.Collection,store=TD.stores.theme[collection],meta=store.reader.meta,record,dataset={};record=store.reader.readRecords(data).records[0];store.add(record);TD.setCurrentRecord(record)}})}else{TD.getCurrentRecord()}TD.resolveValue=function(val,level){level=level?level+1:1;if(Ext.isString(val)&&val.charAt(0)=="$"){if(val.substring(1,5)=="get("){name=val.substring(5,val.length-1);if(level<10){val=TD.getValue(name,true,level)}}}return val};TD.getValue=function(name,resolve,level){var field,values,i,len,namePart,val;if(TD.ribbon){field=TD.ribbon.form.findField(name);if(field){val=field.getValue()}}if(val===undefined){values=TD.getCurrentRecord().data.Definition;val=Ext.jsonGetChild(values,name)}if(resolve&&val!==undefined){val=TD.resolveValue(val,level)}return val}};Ext.apply(TD,{cssTemplateCache:{},CssTemplate:Ext.extend(Ext.ux.CoreTemplate,{constructor:function(tplText,filename){var me=this;
var options={meta:"<%%>",undefined_str:function(name,context){if(name=="!parent_context"){return""}else{if(me.parentContext&&context!==me.parentContext){var value=me.parentContext.Lookup(name);if(value!==undefined){return value}}}return""},more_formatters:function(text){var matches=text.match(/^(> (.*)|>> (.*)|include (?:\(?")?(.*?)(?:"\)?)?)$/);if(!matches){return null}var file=matches[2]||matches[3]||matches[4];return function(data,context,arg,name){if(!TD.cssTemplateCache[file]){console.warn("No css template named "+file);throw"No css template named "+file}var tpl=TD.cssTemplateCache[file];var save=tpl.parentContext;tpl.parentContext=context;var css=tpl.expand(data);tpl.parentContext=save;return css}}};try{TD.CssTemplate.superclass.constructor.call(this,tplText,options)}catch(e){console.warn("CssTemplate %s had a problem compiling -- %s: %s",filename,e.name,e.message,e)}if(filename){if(TD.cssTemplateCache[filename]){delete TD.cssTemplateCache[filename]}TD.cssTemplateCache[filename]=this}}})});Ext.apply(TD,{paintCss:function(css,win){win=win||window;
win.Ext.util.CSS.createStyleSheet(css,"themeEditorTemp");win.Ext.util.CSS.removeStyleSheet("themeEditorSiteCss");win.Ext.fly("themeEditorTemp").dom.id="themeEditorSiteCss";var ss=win.document.getElementById("siteCss");if(ss&&!ss.disabled){ss.disabled=true}win.Ext.util.CSS.refreshCache()},clearCss:function(win){win=win||window;win.Ext.util.CSS.removeStyleSheet("themeEditorSiteCss");var ss=win.document.getElementById("siteCss");if(ss&&ss.disabled){ss.disabled=false}win.Ext.util.CSS.refreshCache()},reloadCss:function(win){win=win||window;var ss=win.document.getElementById("siteCss");ss.href=ss.href+"&reload";win.Ext.util.CSS.refreshCache()},fieldNeedsRepaint:function(field,clean){if(clean!==false){clean=true}if(field.disabled||!field.rendered||!field.name){return false}var value=field.getValue(),dirty=Ext.encode(value)!==field.repaintValue;if(dirty){if(field.repaintValue===undefined){dirty=false}if(clean){field.repaintValue=Ext.encode(value);if(dirty){TD.ribbon.form.findFields(field.name).each(function(otherfield){if(otherfield!=field){otherfield.setValue(value);
otherfield.repaintValue=field.repaintValue}})}}}return dirty},needsRepaint:function(){var dirty=false;TD.ribbon.form.items.each(function(field){if(TD.fieldNeedsRepaint(field,true)){dirty=true}});if(dirty){for(var type in TD.stores){var current=TD.stores[type].current.getAt(0);if(current){var values=TD.mergeRibbonAndRecordValues(current);if(type=="theme"){console.log("Dirty: set %s record from ribbon",type,current,values);current.set("Definition",values)}else{var typevalues={};typevalues[type]=values[type];current.set("Definition",typevalues)}}}}return dirty},getJsonValuesForCSS:function(record){var values=Ext.ux.clone(record.data.Definition);Ext.apply(values,{httpserver:"",staticac:FixedAssetBase});var changed=true,iterationcount=0;var failures=[];function processValues(node){var n,v,lookupName,lookupVal;for(n in node){v=node[n];if(Ext.isString(v)&&v.charAt(0)=="$"){if(v.substring(1,5)=="get("){lookupName=v.substring(5,v.length-1);try{lookupVal=eval("values."+lookupName);if(lookupVal===undefined){lookupVal=""}node[n]=lookupVal;
if(v==lookupVal){failures.push(["Lookup failure: direct cycle: %s='%s'",lookupName,lookupVal]);node[n]=""}else{changed=true}}catch(e){failures.push(["Lookup failure: %s failed to find a value",v]);node[n]="";lookupName=lookupName.split(".");var cur=record.data.Definition;for(var i=0;i<lookupName.length-1;i++){cur[lookupName[i]]=cur[lookupName[i]]||{};cur=cur[lookupName[i]]}cur[lookupName[i]]=""}}else{failures.push(["We had a marker for a value, but not get: %s",v])}}else{if(typeof v=="object"){processValues(v)}}}}while(changed&&iterationcount<10){changed=false;processValues(values);iterationcount++}if(iterationcount==10){failures.push(["Had to stop looking up values, went over iteration limit of %d",iterationcount])}if(failures.length){console.groupCollapsed("Had marker/lookup failures");for(var i=0;i<failures.length;i++){console.warn.apply(console,failures[i])}console.groupEnd()}return values},repaint:function(){if(!TD.cssTpl["main.css"]){return}var current=TD.getCurrentRecord();if(current){var values=this.getJsonValuesForCSS(current);
try{TD.initTpl();TD.cssTemplate.values=values;var css=TD.cssTemplate.expand(values);TD.paintCss(css)}catch(e){Ext.MessageBox.alert(e.name,e.message)}}},initTpl:function(){if(!TD.cssTemplate){var text,tpl;for(var file in TD.cssTpl){text=TD.cssTpl[file];tpl=new TD.CssTemplate(text,file)}}TD.cssTemplate=TD.cssTemplateCache["main.css"]}});Ext.ux.ColorPaletteListMenuItem=Ext.extend(Ext.menu.Item,{itemTpl:['<a id="{id}" class="{cls}" hidefocus="true" unselectable="on" href="{href}"','<tpl if="hrefTarget">',' target="{hrefTarget}"',"</tpl>",">",'<img src="{icon}" class="x-menu-item-icon {iconCls}">','<span class="x-menu-item-text">','<div style="margin:8px 8px 0 -21px;width:32px;height:32px;background-repeat:no-repeat;float:left" class="ac-palettetype ac-palettetype-{type}"></div>','<div name="{id}">','<b style="color:#444">{title:ellipsis(55)}</b><br>',"<div>",'<div style="height:30px;width:16px;background-color:{[values.primary.color]};float:left;"></div>','<div style="height:30px;width:16px;background-color:{[values.secondary.color]};float:left;"></div>','<div style="height:30px;width:16px;background-color:{[values.complementary.color]};float:left;"></div>','<div style="height:30px;width:16px;background-color:{[values.alternate.color]};float:left;"></div>','<div style="clear:both"></div>',"</div>","</div>",'<div style="clear:both"></div>',"</span>","</a>"],getTemplateArgs:function(){var args={id:this.id,cls:this.itemCls+(this.menu?" x-menu-item-arrow":"")+(this.cls?" "+this.cls:""),href:this.href||"#",hrefTarget:this.hrefTarget,icon:this.icon||Ext.BLANK_IMAGE_URL,iconCls:this.iconCls||""};
if(this.record){Ext.apply(args,this.record.data.Definition.palette)}return args},initComponent:function(){var me=this;Ext.ux.ColorPaletteListMenuItem.superclass.initComponent.call(me);me.itemTpl=new Ext.XTemplate(me.itemTpl).compile()}});Ext.ux.ColorPaletteListMenu=Ext.extend(Ext.menu.Menu,{plugins:"menuitemstore",cls:"palettetype-menu",defaultType:"palettelistitem"});Ext.reg("palettelistmenu",Ext.ux.ColorPaletteListMenu);Ext.reg("palettelistitem",Ext.ux.ColorPaletteListMenuItem);TD.ux.ColorPalette=Ext.extend(Ext.Component,{constructor:function(config){TD.ux.ColorPalette.superclass.constructor.call(this,config);this.addEvents("select");if(this.handler){this.on("select",this.handler,this.scope,true)}},itemCls:"x-color-palette",value:null,clickEvent:"click",ctype:"ux.ColorPalette",allowReselect:true,renderColors:function(){var tpl=[];var tplcolors={};TD.palettes.each(function(palette){var classPalette=palette.replace(/\./g,"-");if(!this.tpl){tpl.push('<table cellpadding=0 cellspacing=0 style="float:left"><tbody><tr>','<td><a href="#" class="highlight1" hidefocus="on"><em><span class="'+classPalette+'-highlight1" unselectable="on">&#160;</span></em></a></td>','<td rowspan="3"><a href="#" class="color" hidefocus="on"><em><span class="'+classPalette+'-color" unselectable="on">&#160;</span></em></a></td>','<td><a href="#" class="shadow3" hidefocus="on"><em><span class="'+classPalette+'-shadow3" unselectable="on">&#160;</span></em></a></td>',"</tr><tr>",'<td><a href="#" class="highlight2" hidefocus="on"><em><span class="'+classPalette+'-highlight2" unselectable="on">&#160;</span></em></a></td>','<td><a href="#" class="shadow2" hidefocus="on"><em><span class="'+classPalette+'-shadow2" unselectable="on">&#160;</span></em></a></td>',"</tr><tr>",'<td><a href="#" class="highlight3" hidefocus="on"><em><span class="'+classPalette+'-highlight3" unselectable="on">&#160;</span></em></a></td>','<td><a href="#" class="shadow1" hidefocus="on"><em><span class="'+classPalette+'-shadow1" unselectable="on">&#160;</span></em></a></td>',"</tr></tbody></table>")
}});this.tpl=this.tpl||new Ext.XTemplate('<tpl for=".">'+tpl.join("")+"</tpl>");this.tpl.overwrite(this.el,{})},onRender:function(container,position){var el=document.createElement("div");el.id=this.getId();el.className=this.itemCls;container.dom.insertBefore(el,position);this.el=Ext.get(el);this.renderColors();this.mon(this.el,this.clickEvent,this.handleClick,this,{delegate:"a"});if(this.clickEvent!="click"){this.mon(this.el,"click",Ext.emptyFn,this,{delegate:"a",preventDefault:true})}},afterRender:function(){TD.ux.ColorPalette.superclass.afterRender.call(this);if(this.value){var s=this.value;this.value=null;this.select(s,true)}},handleClick:function(e,t){e.preventDefault();if(!this.disabled){var tt=Ext.fly(t).child("span",true);var c=tt.className.match(/(?:^|\s)(palette-[a-z0-9\-]*)(?:\s|$)/)[1].replace(/\-/g,".");this.select("$get("+c+")")}},select:function(color,skipEvent){if(!color){return}var e;if(color!=this.value||this.allowReselect){if(this.rendered){var el=this.el;if(this.value){try{var oldValue=this.value.match(/^\$get\((.*)\)$/);
if(oldValue){var oldColor=el.child("span."+oldValue[1].replace(/\./g,"-"));if(oldColor){oldColor.parent("a").removeClass("x-color-palette-sel")}}}catch(e){}}try{var newValue=color.match(/^\$get\((.*)\)$/);if(newValue){var newColor=el.child("span."+newValue[1].replace(/\./g,"-"));if(newColor){newColor.parent("a").addClass("x-color-palette-sel")}}}catch(e){}}this.value=color;if(!skipEvent){this.fireEvent("select",this,color)}}}});Ext.reg("actd.palette",TD.ux.ColorPalette);TD.PositionButton=function(config){var prefix=Ext.isObject(config)?config.prefix:config;config=Ext.isObject(config)?config:{};return Ext.apply({},config,{xtype:"button",text:Translate("Position"),menu:{xtype:"menuform",width:306,labelWidth:110,defaults:{width:180},items:[{xtype:"selectbox",width:80,name:prefix+".align",fieldLabel:Translate("Align"),store:[["left","Left"],["center","Center"],["right","Right"]]},{xtype:"toolbar",cls:"x-toolbar-no-bg",fieldLabel:Translate("Vertical Offset"),items:[{xtype:"checkbutton",name:prefix+".offset.v.use",plugins:"makefield",listeners:{toggle:function(b,t){this.ownerCt.amount.setDisabled(!t);
this.ownerCt.from.setDisabled(!t)}}},{xtype:"length-combo",ref:"amount",width:75,name:prefix+".offset.v.height",fieldLabel:Translate("Offset"),scale:TD.ux.LengthScaleDefaults.simple},{xtype:"selectbox",ref:"from",width:75,name:prefix+".offset.v.from",fieldLabel:Translate("From"),store:[["top","Top"],["bottom","Bottom"]]}]},{xtype:"toolbar",cls:"x-toolbar-no-bg",fieldLabel:Translate("Horizontal Offset"),items:[{xtype:"checkbutton",name:prefix+".offset.h.use",plugins:"makefield",listeners:{toggle:function(b,t){this.ownerCt.amount.setDisabled(!t);this.ownerCt.from.setDisabled(!t)}}},{xtype:"length-combo",ref:"amount",width:75,name:prefix+".offset.h.width",fieldLabel:Translate("Offset"),scale:TD.ux.LengthScaleDefaults.simple},{xtype:"selectbox",ref:"from",width:75,name:prefix+".offset.h.from",fieldLabel:Translate("From"),store:[["left","Left"],["right","Right"]]}]},{xtype:"actd.boxextent",name:prefix+".padding",fieldLabel:Translate("Padding"),fieldWidth:config.fieldWidth,labelWidth:config.labelWidth}]}})};TD.ux.ThemeColorPaletteMenu=Ext.extend(Ext.menu.Menu,{enableScrolling:false,hideOnClick:true,initComponent:function(){var me=this;
Ext.apply(this,{plain:true,showSeparator:false,delayedItems:[{xtype:"menutextitem",text:'<b class="menu-title">'+Translate("Theme Colors")+"</b>",hidden:me.hideThemeColors},{itemId:"themes",xtype:"actd.palette",hidden:me.hideThemeColors},{xtype:"menuseparator",hidden:me.hideThemeColors},{xtype:"menutextitem",text:'<b class="menu-title">'+Translate("Static Colors")+"</b>",hidden:me.hideThemeColors},{xtype:"menuitem",hidden:me.hideDefault,text:Translate("Default Choice"),itemId:"default",handler:function(){me.fireEvent("select",me,me.defaulValue||"")}},{xtype:"menuitem",hidden:me.hideTransparent,text:Translate("Transparent"),itemId:"transparent",handler:function(){me.fireEvent("select",me,"transparent")}},{text:Translate("Grays"),itemId:"grays",iconCls:"color_swatch_gray",menu:{xtype:"colormenu",style:"width:134px",colors:["000000","080808","101010","181818","202020","282828","303030","333333","383838","404040","484848","505050","585858","606060","686868","707070","787878","808080","888888","909090","969696","989898","A0A0A0","A8A8A8","B0B0B0","B8B8B8","C0C0C0","C8C8C8","D0D0D0","D8D8D8","E0E0E0","E8E8E8","F0F0F0","F8F8F8","FFFFFF"]}},{text:Translate("Basic Colors"),itemId:"basic",iconCls:"color_swatch",menu:{xtype:"colormenu"}},{text:Translate("Any Color"),itemId:"any",iconCls:"color_wheel",menu:{xtype:"colorpickermenu"}}]});
TD.ux.ThemeColorPaletteMenu.superclass.initComponent.call(this);me.on("beforeshow",function(){});me.on("render",function(menu){if(me.delayedItems){var formpanel=me.findParentBy(function(x){return x instanceof Ext.FormPanel});me.suspendEvents();me.add(me.delayedItems);me.delayedItems=null;formpanel&&formpanel.initFields(me.items,formpanel.form.initialized&&formpanel.getData?formpanel.getData():null);me.resumeEvents();me.themepalette=this.items.get("themes");this.relayEvents(this.items.get("themes"),["select"]);this.relayEvents(this.items.get("grays").menu,["select"]);this.relayEvents(this.items.get("basic").menu,["select"]);this.relayEvents(this.items.get("any").menu,["select"]);this.select(this.value,true)}},me);this.on("select",this.menuHide,this);if(this.handler){this.on("select",this.handler,this.scope||this)}},select:function(color,skipEvents){this.value=color;if(this.rendered){var resolvedColor=TD.resolveValue(color);var t=this.items.get("transparent");if(t.container){t.container[color=="transparent"?"addClass":"removeClass"]("x-menu-item-checked")
}this.items.get("themes").select(color,skipEvents);this.items.get("grays").menu.palette.select(resolvedColor,skipEvents);this.items.get("basic").menu.palette.select(resolvedColor,skipEvents);this.items.get("any").menu.palette.select(resolvedColor,skipEvents)}},menuHide:function(){if(this.hideOnClick){this.hide(true)}}});Ext.reg("themecolormenu",TD.ux.ThemeColorPaletteMenu);TD.ux.FullColorPaletteMenu=Ext.extend(TD.ux.ThemeColorPaletteMenu,{hideThemeColors:true});Ext.reg("fullcolormenu",TD.ux.FullColorPaletteMenu);TD.ux.StaticColorPaletteMenu=Ext.extend(TD.ux.ThemeColorPaletteMenu,{hideThemeColors:true,hideDefault:true,hideTransparent:true,defaultOffsets:[0,-4]});Ext.reg("staticcolormenu",TD.ux.StaticColorPaletteMenu);Ext.ux.ThemeColorButton=Ext.extend(Ext.ux.ColorButton,{subtype:"themecolormenu",setValue:function(color){color=color||"";if(this.parseColor(color)){this.value=this.formatColor(color);this.setColor(this.value);if(this.rendered){this.menu.select(color,true)}}else{this.value=color;if(this.rendered){var box=this.el.child(".color-button-box");
box.setStyle({"background-color":""});var newColor=color.match(/^\$get\((.*)\)$/);if(newColor){var colorClass=newColor[1].replace(/\./g,"-");box.dom.className="color-button-box "+colorClass}this.menu.select(color,true)}}}});Ext.reg("themecolorbutton",Ext.ux.ThemeColorButton);Ext.ux.FullColorButton=Ext.extend(Ext.ux.ThemeColorButton,{subtype:"fullcolormenu"});Ext.reg("fullcolorbutton",Ext.ux.FullColorButton,{});Ext.ux.StaticColorButton=Ext.extend(Ext.ux.ThemeColorButton,{subtype:"staticcolormenu",cls:"ac-static-color",template:(function(){var tpl=new Ext.Template('<div id="{4}" class="x-btn {3}"><div class="{1}">','<em><button type="{0}"></button></em>',"</div></div>");return tpl.compile()})()});Ext.reg("staticcolorbutton",Ext.ux.StaticColorButton);TD.ux.Choose=Ext.extend(Ext.ButtonGroup,{mkMenu:function(type,collection,menuType){type=type.toLowerCase();var me=this;var menu={xtype:menuType||"menu",plugins:"menuitemstore",store:"ThemeDesigner-"+type+"-"+collection,defaults:{group:type=="theme"?"selected-theme":undefined},items:[{xtype:"menuitem",itemId:"save",text:Translate("Save"),hidden:type!="theme",handler:me.fnSave.createDelegate(me,[type,collection],false)},{xtype:"menuitem",text:Translate("Save As..."),handler:me.fnSaveAs.createDelegate(me,[type,collection],false)},{xtype:"menuitem",text:Translate("Delete..."),menu:{plugins:"menuitemstore",store:"ThemeDesigner-"+type+"-"+collection,itemHandler:me.fnDelete.createDelegate(me,[type,collection],true),getItemConfig:me.fnGetDeleteItemConfig.createDelegate(me),listeners:{beforeshow:function(menu){if(type=="theme"){menu.items.each(function(item){if(item.ThemeId){item.setDisabled(AppCenter.WebSite.items[0].Theme2Id==item.ThemeId)
}})}}}}},"-"],itemHandler:function(item,e){TD.setCurrentRecord(item.record)},getItemConfig:menuType?null:me.fnGetItemConfig.createDelegate(me),listeners:{beforeshow:function(menu){var updaterecord,current=TD.getCurrentRecord(type);if(current.data.Collection==collection){var store=TD.stores[type][collection];var id=current.id;updaterecord=store.getById(id)}menu.items.get("save").setDisabled(!(updaterecord&&current.dirty));var currentItem=menu.items.get(current.data.ThemeId);if(currentItem&&currentItem.setChecked){currentItem.setChecked(true)}}}};return menu},fnSave:function(type,collection){TD.updateRecordWithRibbonSettings(TD.getCurrentRecord(type));TD.updateCurrentRecord(type,collection)},fnSaveAs:function(type,collection){var uc=Ext.util.Format.capitalize;Ext.Msg.prompt(Translate("{0} {1} Save As...",uc(collection),uc(type)),Translate("Please enter the name of the new {0}:",type),function(btn,text){if(btn=="ok"&&text!=""){TD.updateRecordWithRibbonSettings(TD.getCurrentRecord(type));TD.createCurrentRecord(type,collection,text)
}},TD,false,Translate("{0} {1}",collection,type))},fnDelete:function(item,e,type,collection){var uc=Ext.util.Format.capitalize;Ext.Msg.confirm(Translate("Delete {0} {1}...",uc(collection),uc(type)),Translate('Are you sure you want to delete "{0}"?',this.fnGetTitle(item.record)),function(btn){if(btn=="yes"){TD.destroyRecord(type,collection,item.record.id)}},TD)},fnGetDeleteItemConfig:function(record){var type=record.data.Type;return{text:this.fnGetTitle(record),disabled:type=="theme"?AppCenter.WebSite.items[0].Theme2Id==record.id:false,ThemeId:record.id}},fnGetItemConfig:function(record){return{xtype:"menucheckitem",text:this.fnGetTitle(record),group:record.data.Type,checked:record.data.ThemeId==TD.getCurrentRecord(record.data.Type).data.ThemeId}},fnGetTitle:function(record){var type=record.data.Type;return record.data.Definition[type]["title"]||"["+type+": id "+record.id+"]"},constructor:function(config){config=config||{};var me=this,items=config.items||[];delete config.items;config=Ext.apply({title:Translate("Choose "+(config.tabTitle||config.themeType)),titlePosition:"bottom",columns:7,items:[{text:Translate("Feeling<br>Lucky"),iconAlign:"top",iconCls:config.randomIconCls||"aci-dice",scale:"xlarge",rowspan:3,hidden:config.hideRandom},{xtype:"ribbon.separator"},{text:Translate("Public"),scale:"large",iconAlign:"top",iconCls:config.publicIconCls,menu:me.mkMenu(config.themeType,"public",config.menuType)},{xtype:"ribbon.separator",hidden:true},{xtype:"button",rowspan:4,text:"\u27eb",gallerymode:false,handler:function(){this.ownerCt.ownerCt.items.each(function(item){if(!(item instanceof TD.ux.Choose)&&!(item instanceof TD.ux.Save)){item[this.gallerymode?"show":"hide"]()
}},this);this.ownerCt.gallerysep[!this.gallerymode?"show":"hide"]();this.ownerCt.gallery[!this.gallerymode?"show":"hide"]();this.setText(this.gallerymode?"\u27eb":"\u27ea");this.gallerymode=!this.gallerymode;this.ownerCt.doLayout()},hidden:true},{xtype:"ribbon.separator",rowspan:4,ref:"gallerysep",hidden:true},{xtype:"ribbon.gallery",rowspan:4,ref:"gallery",width:700,height:84,style:"background:white;border:1px solid #ccc;-moz-border-radius:2px",hidden:true},{text:Translate("My {0}",config.tabTitle),scale:"large",iconAlign:"left",iconCls:config.personalIconCls,arrowAlign:"right",menu:me.mkMenu(config.themeType,"personal",config.menuType)}]},config);TD.ux.Choose.superclass.constructor.call(this,config)}});Ext.reg("actd.choose",TD.ux.Choose);TD.ux.Save=Ext.extend(Ext.ButtonGroup,{constructor:function(config){var me=this;config=Ext.apply(config||{},{titlePosition:"bottom",title:Translate("Theme Design"),layout:"",defaults:{anchor:"0"},items:[{scale:"large",text:'<span style="color:green">'+Translate("Save Theme")+"</span>",iconAlign:"top",width:90,iconCls:"saveall32",handler:function(){var current=TD.getCurrentRecord(),id=current.data.ThemeId,isPublic=TD.stores.theme["public"].getById(id),isPersonal=TD.stores.theme.personal.getById(id),collection=isPublic?"public":"personal",dirty=current.dirty;
if(dirty||!(isPublic||isPersonal)){TD.updateRecordWithRibbonSettings(current);switch(collection){case"marketplace":case"public":if(true){collection="personal"}}TD.updateCurrentRecord("theme",collection)}TD.ribbon.startLoading();AppCenter.api.core.ThemeDesigner.setForWebsite(id,function(){AppCenter.WebSite.current().Theme2Id=TD.getCurrentRecord().id;if(!dirty){TD.ribbon.stopLoading()}})}},{scale:"medium",text:Translate("Close"),width:90,handler:function(){me.ownerCt.ownerCt.ownerCt.ownerCt.hide()}}]});TD.ux.Save.superclass.constructor.call(this,config)}});Ext.reg("actd.save",TD.ux.Save);TD.setPaletteBaseColor=function(palette,value,contrast,preset){var values={},form=TD.ribbon.form;TD.colorset.each(function(variant){var calccolor=value;if(variant!="color"){calccolor=Ext.ux.Color.Variants.get(value,variant,contrast,contrast,preset)}values[palette+"."+variant]=calccolor});form.setValues(values)};TD.createColorSchemeForRecord=function(record,palettes,values,skipEvents){if(!record){return}var i=0;if(!skipEvents){record.beginEdit()
}palettes.each(function(palette){TD.setPaletteBaseColorRecord(record,palette,"#"+values[palette+".color"],true)});if(!skipEvents){record.endEdit()}};TD.createColorScheme=function(values,skipEvents){TD.createColorSchemeForRecord(TD.getCurrentRecord(),TD.palettes,values,skipEvents)};TD.ColorSchemeDesigner={text:Translate("New..."),colspan:4,id:"colordesigner",handler:function(){new Ext.Window({modal:true,closable:true,height:770,width:1000,layout:"fit",border:false,title:Translate("Color Scheme Designer"),items:{xtype:"iframepanel",defaultSrc:"http://colorschemedesigner.com/?"+Ext.urlEncode({label:'<b style="color:red;font-size:12pt">SAVE</b>',method:"post",format:"hex",returnurl:"http://www.visigroup.com/phpinfo.php"})}}).show()}};TD.ux.FontButton=Ext.extend(Ext.Button,{constructor:function(config){var name=config.name;config.name=undefined;config=Ext.apply({},config,{text:"",icon:FixedAsset["iconset/"]+"famfamfam.com,cc-by/silk/font.png",menuAlign:Ext.isIE?undefined:"tr-br?",menu:{xtype:"menuform",width:340,layout:"auto",allowOtherMenus:config.allowOtherMenus,items:[{xtype:"actd.fontpanel",name:name}]}});
TD.ux.FontButton.superclass.constructor.call(this,config)}});Ext.reg("actd.fontbutton",TD.ux.FontButton);TD.ux.CssPropertyToggleButton=Ext.extend(Ext.ux.CheckButton,{initComponent:function(){TD.ux.CssPropertyToggleButton.superclass.initComponent.call(this);this.on("render",function(){this.btnEl.setStyle(this.property,this.values[1])})}});Ext.reg("actd.csspropertytoggle",TD.ux.CssPropertyToggleButton);TD.ux.FontPanel=Ext.extend(Ext.Panel,{constructor:function(config){var me=this;config=config||{};config.value=config.value||{};config=Ext.apply({},config,{plugins:"makefield",items:[{xtype:"box",itemId:"preview",hidden:config.previewHidden,style:{padding:"8px",border:"1px solid #777","background-color":"white",overflow:"hidden","white-space":"normal","line-height":"normal","margin-bottom":"10px"},html:"Sample Text<br>The quick brown fox jumps over the lazy dog.",height:60,listeners:{afterrender:function(){this.getEl().setStyle("overflow-y","hidden")}}},{xtype:"toolbar",cls:"x-toolbar-no-bg",style:"margin-bottom:2px;",items:[{xtype:"themecolorbutton",property:"color",itemId:"color",listeners:{select:this.onColorSelect.createDelegate(this)}},{xtype:"length-combo",itemId:"fontSize",width:80,value:config.value.fontSize,property:"font-size",scale:{em:{defaultValue:1,scaleMin:0.5,scaleMax:6,sliderPrecision:1,valuePrecision:2,matchChars:["e","E"]},pt:{defaultValue:12,scaleMin:6,scaleMax:48,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}},store:["8pt","10pt","12pt","16pt","24pt","0.8em","0.9em","1em","1.1em","1.2em","1.3em","1.4em","1.5em"],listeners:{change:this.onFontSizeChange.createDelegate(this)}},{xtype:"ac-theme-fontfamily",itemId:"fontFamily",style:"margin-left:6px",width:160,value:config.value.fontFamily,property:"font-family",listeners:{select:this.onFontFamilyChange.createDelegate(this)}}]},{xtype:"toolbar",cls:"x-toolbar-no-bg",items:[{xtype:"actd.csspropertytoggle",itemId:"fontWeight",text:Translate("Bold"),pressed:config.value.fontWeight=="bold",property:"font-weight",valueProperty:"fontWeight",values:["normal","bold"],listeners:{toggle:this.onItemToggle.createDelegate(this)}},{xtype:"actd.csspropertytoggle",style:"margin-left:6px",itemId:"fontStyle",text:Translate("Italic"),pressed:config.value.fontStyle=="italic",property:"font-style",valueProperty:"fontStyle",values:["normal","italic"],listeners:{toggle:this.onItemToggle.createDelegate(this)}}]},{xtype:"toolbar",cls:"x-toolbar-no-bg",items:[{xtype:"actd.csspropertytoggle",itemId:"textDecoration",text:"<u>Underline</u>",pressed:config.value.textDecoration,property:"text-decoration",valueProperty:"textDecoration",values:["inherit","underline"],listeners:{toggle:function(b,t){var style=this.ownerCt.items.get("textDecorationSwitch");
style.setDisabled(!t);if(t){this.values[1]=(style.getActiveItem()||style.items.items[0]).itemId}me.onItemToggle(b,t)}}},{xtype:"switch",style:"margin-left:4px",itemId:"textDecorationSwitch",disabled:!config.value.textDecoration,activeItem:config.value.textDecoration||"none",items:[{text:"None",itemId:"none"},{text:"<u>Under</u>",itemId:"underline"},{text:'<u style="text-decoration:line-through">Strike</u>',itemId:"line-through"},{text:'<u style="text-decoration:overline;">Over</u>',itemId:"overline"}],listeners:{change:function(s,b){var u=s.ownerCt.items.get("textDecoration");u.values[1]=b.itemId;me.onItemToggle(u,u.pressed)}}}]},{xtype:"toolbar",cls:"x-toolbar-no-bg",items:[{xtype:"actd.csspropertytoggle",itemId:"textAlign",text:Translate("Align"),pressed:config.value.textAlign,property:"text-align",valueProperty:"textAlign",values:["inherit","left"],listeners:{toggle:function(b,t){var style=this.ownerCt.items.get("textAlignSwitch");style.setDisabled(!t);if(t){this.values[1]=(style.getActiveItem()||style.items.items[0]).itemId
}me.onItemToggle(b,t)}}},{xtype:"switch",itemId:"textAlignSwitch",style:"margin-left:4px",disabled:!config.value.textAlign,activeItem:config.value.textAlign||"left",items:[{text:Translate("Left"),itemId:"left"},{text:Translate("Center"),itemId:"center"},{text:Translate("Right"),itemId:"right"},{text:Translate("Justify"),itemId:"justify"}],listeners:{change:function(s,b){var u=s.ownerCt.items.get("textAlign");u.values[1]=b.itemId;me.onItemToggle(u,u.pressed)}}}]},{xtype:"toolbar",cls:"x-toolbar-no-bg",items:[{xtype:"actd.csspropertytoggle",itemId:"textTransform",text:Translate("Caps"),pressed:config.value.textTransform,property:"text-transform",valueProperty:"textTransform",values:["inherit","capitalize"],listeners:{toggle:function(b,t){var style=this.ownerCt.items.get("textTransformSwitch");style.setDisabled(!t);if(t){this.values[1]=(style.getActiveItem()||style.items.items[0]).itemId}me.onItemToggle(b,t)}}},{xtype:"switch",itemId:"textTransformSwitch",style:"margin-left:4px",disabled:!config.value.textTransform,activeItem:config.value.textTransform||"capitalize",items:[{text:Translate("Words"),tooltip:'<b>Capitalize Words</b><br><span style="text-transform:capitalize;white-space:nowrap">First letter of each word is capitalized.</span>',itemId:"capitalize"},{text:Translate("All"),tooltip:'<b>All Caps</b><br><span style="text-transform:uppercase;white-space:nowrap">All letters are capitalized.</span>',itemId:"uppercase"},{text:Translate("Lower"),tooltip:'<b>All Lowercase</b><br><span style="text-transform:lowercase;white-space:nowrap">All letters are set to lower case.</span>',itemId:"lowercase"}],listeners:{change:function(s,b){var u=s.ownerCt.items.get("textTransform");
u.values[1]=b.itemId;me.onItemToggle(u,u.pressed)}}},"&nbsp;",{xtype:"actd.csspropertytoggle",itemId:"fontVariant",width:"auto",text:Translate("Small Caps"),pressed:config.value.fontVariant=="small-caps",property:"font-variant",valueProperty:"fontVariant",values:["normal","small-caps"],tooltip:"<b>Small Caps</b><br><span style='font-variant:small-caps;white-space:nowrap'>Convert lowercase to Small Uppercase.</span>",listeners:{toggle:this.onItemToggle.createDelegate(this)}}]},{xtype:"container",layout:"form",labelAlign:"right",hidden:config.hideSpacing||true,items:{xtype:"fieldset",collapsible:false,title:Translate("Spacing"),listeners:{beforecollapse:function(){return false},render:function(){this.items.get("enable").on("check",function(cb,v){Ext.each(this.findByType("length-duo"),function(item){item.setDisabled(!v);if(!v){me.value[item.valueProperty]=""}else{me.value[item.valueProperty]=item.getValue()}})},this)}},items:[{xtype:"checkbox",itemId:"enable",hideLabel:true,boxLabel:"Use customized options",checked:config.value.lineHeight||config.value.wordSpacing||config.value.letterSpacing},{xtype:"length-duo",value:config.value.lineHeight||"1em",fieldLabel:Translate("Line Height"),property:"line-height",valueProperty:"lineHeight",disabled:!(config.value.lineHeight||config.value.wordSpacing||config.value.letterSpacing),listeners:{change:this.onLengthChange.createDelegate(this)}},{xtype:"length-duo",value:config.value.wordSpacing||"0em",fieldLabel:Translate("Word Spacing"),valueProperty:"wordSpacing",property:"word-spacing",disabled:!(config.value.lineHeight||config.value.wordSpacing||config.value.letterSpacing),listeners:{change:this.onLengthChange.createDelegate(this)}},{xtype:"length-duo",value:config.value.letterSpacing||"0em",fieldLabel:Translate("Letter Spacing"),valueProperty:"letterSpacing",property:"letter-spacing",disabled:!(config.value.lineHeight||config.value.wordSpacing||config.value.letterSpacing),listeners:{change:this.onLengthChange.createDelegate(this)}}]}}]});
TD.ux.FontPanel.superclass.constructor.call(this,config)},setValue:function(v){v=v||{};var properties={color:{type:"value"},fontFamily:{type:"value"},fontSize:{type:"value"},fontWeight:{type:"toggle"},fontStyle:{type:"toggle"},fontVariant:{type:"toggle"},textDecoration:{type:"multitoggle"},textAlign:{type:"multitoggle"},textTransform:{type:"multitoggle"}};var me=this,equal;var vals={};for(var i in properties){var item=me.find("itemId",i)[0];if(properties[i].type=="toggle"){equal=item.values[1]==v[i];item.toggle(equal);this.setPreviewStyle(item.property,item.values[equal?1:0])}else{if(properties[i].type=="multitoggle"){var sw=item.ownerCt.items.get(i+"Switch");if(!v[i]){item.toggle(false)}else{sw.setActiveItem(v[i]);item.toggle(true);this.setPreviewStyle(i,v[i])}}else{item.setValue(v[i]);if(item.property=="color"){this.onColorSelect(null,v[i])}else{this.setPreviewStyle(item.property,v[i])}}}if(v[i]!=undefined){vals[i]=v[i]}}this.value=vals},onColorSelect:function(b,t){if(t==undefined){return}var resolvedColor=TD.resolveValue(t);
this.setPreviewStyle("color",resolvedColor);this.value.color=t;var c=new Ext.ux.Color.Hex(resolvedColor).toHSV();if(c.v>0.7){this.setPreviewStyle("background-color","#333")}else{this.setPreviewStyle("background-color","#fff")}},onFontSizeChange:function(c,v){this.setPreviewStyle("font-size",v);this.value.fontSize=v},onFontFamilyChange:function(c,r,i){this.setPreviewStyle("font-family",r.data.field1);this.value.fontFamily=r.data.field1},onItemToggle:function(b,t){this.setPreviewStyle(b.property,t?b.values[1]:b.values[0]);this.value[b.valueProperty]=t?b.values[1]:""},onLengthChange:function(l,v){this.setPreviewStyle(l.property,v);this.value[l.valueProperty]=v},setPreviewStyle:function(property,value){if(value==undefined){return}var preview=this.items.get("preview");if(preview.rendered){preview.getEl().setStyle(property,value)}else{preview.style[property]=value}}});Ext.reg("actd.fontpanel",TD.ux.FontPanel);TD.ux.LengthScaleDefaults={multi:{em:{defaultValue:0,scaleMin:0,scaleMax:5,sliderPrecision:1,valuePrecision:2,matchChars:["e","E"]},px:{defaultValue:0,scaleMin:0,scaleMax:1000,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]},"%":{defaultValue:0,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:1,matchChars:["%"]}},simple:{px:{defaultValue:0,scaleMin:-1000,scaleMax:1000,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]},"%":{defaultValue:0,scaleMin:-100,scaleMax:100,sliderPrecision:0,valuePrecision:1,matchChars:["%"]}},px:{px:{defaultValue:0,scaleMin:-1000,scaleMax:1000,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}}};
TD.ux.LengthCombo=Ext.extend(Ext.ux.CycleComboBox,{forceSelection:false,disableKeyExpand:true,disableKeyFilter:true,enableKeyEvents:true,tip:true,valueField:"field1",displayField:"field2",constructor:function(config){var defaults={scale:TD.ux.LengthScaleDefaults.multi,onTrigger1Click:this.onUnitClick.createDelegate(this)};config=Ext.apply({},config,defaults);var p=this.parseValue(config.value,config.scale);config.scaleNames=[];for(var i in config.scale){config.scaleNames.push(i)}var value=p.value||config.scale[config.scaleNames[0]].defaultValue||config.scale[config.scaleNames[0]].scaleMin;var unit=p.unit||config.scaleNames[0];value=Math.max(Math.min(value,config.scale[unit].scaleMax),config.scale[unit].scaleMin);config.value=value+unit;config.unit=unit;TD.ux.LengthCombo.superclass.constructor.call(this,config)},initEvents:function(){TD.ux.LengthCombo.superclass.initEvents.call(this);this.on({keypress:this.onTextKeypress.createDelegate(this),blur:this.onTextBlur.createDelegate(this),beforequery:this.onComboBeforeQuery.createDelegate(this),select:this.onComboSelect.createDelegate(this)})
},onComboBeforeQuery:function(e){e.query=new RegExp("\\d+"+this.unit+"$")},onComboSelect:function(c,r,i){this.fireEvent("change",this,this.getValue())},onUnitClick:function(){var next=this.scaleNames.indexOf(this.unit)+1;if(next>=this.scaleNames.length){next=0}this.doScaleChange(this.scaleNames[next],true)},parseValue:function(value,scale){if(value==undefined){return{}}value=String(value);scale=scale||this.scale;var names=[];for(var i in scale){names.push(i)}var r=new RegExp("^(\\d+.?\\d*)("+names.join("|")+")$","i");var p=value.match(r);if(!p){return{}}return{value:p[1],unit:p[2]}},onTextKeypress:function(t,e){var charCode=e.getCharCode();if(charCode==e.RETURN){e.stopEvent(e);this.onTextBlur()}if(e.isSpecialKey()||charCode==e.DELETE||(charCode>=e.ZERO&&charCode<=e.NINE)||(charCode>=e.NUM_ZERO&&charCode<=e.NUM_NINE)||charCode in [189,e.NUM_MINUS]){return}for(var i in this.scale){if(this.scale[i].matchChars.indexOf(String.fromCharCode(charCode))!=-1){var newScale=i;var matched=true;break}}if(!matched){e.stopEvent(e)
}if(newScale){e.stopEvent(e);this.doScaleChange(newScale)}},onTextBlur:function(){var scale=this.unit;var val=this.getRawValue();if(!val){val="0"+this.unit}val=String(val).match(/^\d+\.?\d*/);if(val){val=val[0]}else{val=0}val=Math.max(Math.min(val,this.scale[scale].scaleMax),this.scale[scale].scaleMin);if(this.getValue().match(/^\d+\.$/)){val=Math.round(val)}var r=new RegExp("^\\d+\\.\\d{"+(this.scale[scale].valuePrecision+1)+",}");if(r.match(val)){var pot=Math.pow(10,this.scale[scale].valuePrecision);val=Math.round(val*pot)/pot}TD.ux.LengthCombo.superclass.setValue.call(this,val+scale);this.fireEvent("change",this,this.getValue())},doScaleChange:function(newScale,adjustScale){var oldScale=this.unit;var val=this.getRawValue();val=String(val).match(/^\d+\.?\d*/);if(val){val=val[0]}else{val=0}var nMinV=this.scale[newScale].scaleMin;var nMaxV=this.scale[newScale].scaleMax;if(oldScale!=newScale){var oMinV=this.scale[oldScale].scaleMin;var oMaxV=this.scale[oldScale].scaleMax;if(adjustScale){var oRange=oMaxV-oMinV;var nRange=nMaxV-nMinV;
val=(((val-oMinV)/(oMaxV-oMinV))*nRange)+nMinV}this.unit=newScale}if(this.rendered){TD.ux.LengthCombo.superclass.setValue.call(this,val+this.unit);this.onTextBlur()}else{this.value=val+this.unit}},setValue:function(val){var p=this.parseValue(val);if(p.unit&&p.value&&this.rendered){TD.ux.LengthCombo.superclass.setValue.call(this,p.value)}else{if(p.unit&&p.value){this.value=p.value}else{p.unit=this.scaleNames[0];this.value=this.scale[this.scaleNames[0]].defaultValue}}this.doScaleChange(p.unit)},getValue:function(){return TD.ux.LengthCombo.superclass.getRawValue.call(this)}});Ext.reg("length-combo",TD.ux.LengthCombo);TD.ux.LengthDuo=Ext.extend(Ext.Container,{constructor:function(config){config=typeof config=="object"?config:{};config.syncSliderTask=new Ext.util.DelayedTask(this.syncSlider,this);var defaults={scale:TD.ux.LengthScaleDefaults.multi};config=Ext.apply({},config,defaults);config.layout="column";var p=this.parseValue(config.value,config.scale);config.scaleNames=[];for(var i in config.scale){config.scaleNames.push(i)
}var value=p.value||config.scale[config.scaleNames[0]].defaultValue||config.scale[config.scaleNames[0]].scaleMin;var unit=p.unit||config.scaleNames[0];value=Math.max(Math.min(value,config.scale[unit].scaleMax),config.scale[unit].scaleMin);config.value=value+unit;config.unit=unit;var items=[{xtype:"slider",width:60,tip:true,style:"margin-right:8px;",itemId:"slider",value:value,disabled:config.disabled,listeners:{drag:this.onSliderChange.createDelegate(this)},maxValue:config.scale[unit].scaleMax,minValue:config.scale[unit].scaleMin,decimalPrecision:config.scale[unit].sliderPrecision},{xtype:"cyclecombo",width:90,forceSelection:false,disabled:config.disabled,disableKeyExpand:true,disableKeyFilter:true,emptyText:"width",style:"text-align:right;border-right:none;",itemId:"text",value:config.value,enableKeyEvents:true,tip:true,store:config.store,valueField:"field1",displayField:"field2",onTrigger1Click:this.onUnitClick.createDelegate(this),listeners:{keypress:this.onTextKeypress.createDelegate(this),blur:this.onTextBlur.createDelegate(this),beforequery:this.onComboBeforeQuery.createDelegate(this),select:this.onComboSelect.createDelegate(this)}}];
config=Ext.apply({},config,{layout:"column",plugins:"makefield",items:items});TD.ux.LengthDuo.superclass.constructor.call(this,config)},initComponent:function(){TD.ux.LengthDuo.superclass.initComponent.call(this,config);if(this.itemSelector){var s=this.itemSelector;var fn=function(bgcolor,opacity){var items=Ext.DomQuery.jsSelect(s);Ext.each(items,function(i){Ext.get(i).setStyle("backgroundColor",bgcolor);Ext.get(i).setStyle("opacity",opacity)})};this.items.get("slider").on("dragstart",fn.createDelegate(this,["red",0.5]));this.items.get("text").on("focus",fn.createDelegate(this,["red",0.5]));this.items.get("slider").on("dragend",fn.createDelegate(this,[null,null]));this.items.get("text").on("blur",fn.createDelegate(this,[null,null]))}},setDisabled:function(v){this.disabled=v;this.items.get(0).setDisabled(v);this.items.get(1).setDisabled(v)},disable:function(){this.setDisabled(true)},enable:function(){this.setDisabled(false)},initComponent:function(){TD.ux.LengthDuo.superclass.initComponent.call(this);this.relayEvents(this.items.get("text"),["expand"])
},onComboBeforeQuery:function(e){e.query=new RegExp("\\d+"+this.unit+"$")},onComboSelect:function(c,r,i){this.syncSlider(r.data[0]);this.fireEvent("change",this,this.getValue())},onUnitClick:function(){var next=this.scaleNames.indexOf(this.unit)+1;if(next>=this.scaleNames.length){next=0}this.doScaleChange(this.scaleNames[next],true);return;switch(this.unit){case"%":this.doScaleChange("em",true);break;case"em":this.doScaleChange("px",true);break;case"px":this.doScaleChange("%",true);break}},parseValue:function(value,scale){if(typeof value=="undefined"){return{}}value=String(value);scale=scale||this.scale;var names=[];for(var i in scale){names.push(i)}var r=new RegExp("^(\\d+.?\\d*)("+names.join("|")+")$","i");var p=value.match(r);if(!p){return{}}return{value:p[1],unit:p[2]}},onTextKeypress:function(t,e){var charCode=e.getCharCode();if(e.isSpecialKey()){if(charCode==e.RETURN){e.stopEvent(e);this.onTextBlur()}this.syncSliderTask.delay(250);return}if(e.isNavKeyPress()){return}for(var i in this.scale){if(this.scale[i].matchChars.indexOf(String.fromCharCode(charCode))!=-1){var newScale=i;
var matched=true;break}}if(charCode==46||(charCode>47&&charCode<58)){var matched=true}if(!matched){e.stopEvent(e)}if(newScale){e.stopEvent(e);this.doScaleChange(newScale);this.items.get("text").focus(true)}else{this.syncSliderTask.delay(250)}},syncSlider:function(val){var slider=this.items.get("slider");if(!slider){return}var nMinV=this.scale[this.unit].scaleMin;var nMaxV=this.scale[this.unit].scaleMax;if(!val){val=this.items.get("text").getRawValue();val=String(val).match(/^\d+\.?\d*/);if(val){val=val[0]}else{val=0}}val=Math.min(Math.max(val,nMinV),nMaxV);slider.value=-1;slider.setValue(val)},onTextBlur:function(){var scale=this.unit;var val=this.items.get("text").getRawValue();if(!val){val="0"+this.unit}val=String(val).match(/^\d+\.?\d*/);if(val){val=val[0]}else{val=0}val=Math.max(Math.min(val,this.scale[scale].scaleMax),this.scale[scale].scaleMin);if(this.items.get("text").getValue().match(/^\d+\.$/)){val=Math.round(val)}var r=new RegExp("^\\d+\\.\\d{"+(this.scale[scale].valuePrecision+1)+",}");if(r.match(val)){var pot=Math.pow(10,this.scale[scale].valuePrecision);
val=Math.round(val*pot)/pot}this.items.get("text").setValue(val+scale);this.fireEvent("change",this,this.getValue())},doScaleChange:function(newScale,adjustScale){var oldScale=this.unit;var val=this.items.get("text").getRawValue();val=String(val).match(/^\d+\.?\d*/);if(val){val=val[0]}else{val=0}var slider=this.items.get("slider");if(!val){val=0}var nMinV=this.scale[newScale].scaleMin;var nMaxV=this.scale[newScale].scaleMax;if(oldScale!=newScale){var oMinV=this.scale[oldScale].scaleMin;var oMaxV=this.scale[oldScale].scaleMax;if(slider){this.items.get("slider").minValue=nMinV;this.items.get("slider").maxValue=nMaxV;this.items.get("slider").decimalPrecision=this.scale[newScale].sliderPrecision}if(adjustScale){var oRange=oMaxV-oMinV;var nRange=nMaxV-nMinV;val=(((val-oMinV)/(oMaxV-oMinV))*nRange)+nMinV}this.unit=newScale}if(this.rendered){this.items.get("text").setValue(val+this.unit);this.syncSliderTask.delay(250);this.onTextBlur()}else{this.items.get("text").value=val+this.unit;if(slider){this.items.get("slider").value=val
}}},onSliderChange:function(slider,value){this.items.get("text").setValue(slider.getValue()+this.unit);this.fireEvent("change",this,slider.getValue()+this.unit)},setValue:function(val){var p=this.parseValue(val);if(p.unit&&p.value&&this.rendered){this.items.get("text").setValue(p.value)}else{if(p.unit&&p.value){this.items.get("text").value=p.value}else{p.unit=this.scaleNames[0];this.items.get("text").value=this.scale[this.scaleNames[0]].defaultValue}}this.doScaleChange(p.unit)},getValue:function(){return this.items.get("text").getRawValue()}});Ext.reg("length-duo",TD.ux.LengthDuo);TD.ux.LengthSlider=Ext.extend(Ext.Container,{constructor:function(config){var me=this;config=Ext.apply({},config,{emScaleMin:0,emScaleMax:5,emSliderPrecision:1,pxScaleMin:0,pxScaleMax:1000,pxSliderPrecision:0,"%ScaleMin":0,"%ScaleMax":100,"%SliderPrecision":0,plugins:"makefield",layout:"column",unit:"px",ratio:1,items:[{xtype:"slider",itemId:"slider",width:100,style:"margin-right:3px",listeners:{change:this.setValueBySlider.createDelegate(this)}},{xtype:"box",itemId:"box",html:"px",hidden:true,width:38,style:"position:relative;top:1px;cursor:default;padding-right:18px;background-repeat:no-repeat;background-position:center right;",listeners:{render:function(){this.ownerCt.getEl().on("mouseover",function(){this.show()
},this);this.ownerCt.getEl().on("mouseout",function(){this.hide()},this);this.getEl().setStyle("background-image","url('"+FixedAsset["iconset/"]+"famfamfam.com,cc-by/silk/control_play.png')");this.getEl().on("mouseover",function(){this.getEl().setStyle("background-image","url('"+FixedAsset["iconset/"]+"famfamfam.com,cc-by/silk/control_play_blue.png')")},this);this.getEl().on("mouseout",function(){this.getEl().setStyle("background-image","url('"+FixedAsset["iconset/"]+"famfamfam.com,cc-by/silk/control_play.png')")},this);this.getEl().on("click",me.switchUnit,me)}}}]});TD.ux.LengthSlider.superclass.constructor.call(this,config)},switchUnit:function(){switch(this.unit){case"%":var n="em";break;case"em":var n="px";break;case"px":var n="%";break}var slider=this.items.get("slider"),oMinV=this[this.unit+"ScaleMin"],nMinV=this[n+"ScaleMin"],oRange=this[this.unit+"ScaleMax"]-this[this.unit+"ScaleMin"],nRange=this[n+"ScaleMax"]-this[n+"ScaleMin"],val=slider.getValue();val=(((val-oMinV)/oRange)*nRange)+nMinV;this.unit=n;
slider.minValue=nMinV;slider.maxValue=this[n+"ScaleMax"];slider.decimalPrecision=this[n+"SliderPrecision"];slider.setValue(val);this.items.get("box").getEl().update(n)},setValue:function(v){var oldscale=this.unit;this.value=v;this.unit=v.split()[0].match(/(\d+)(px|em|%)/i)[2];var n=v.split()[0].match(/(\d+)(px|em|%)/i)[1];var slider=this.items.get("slider");if(oldscale!=this.unit){slider.minValue=this[this.unit+"ScaleMin"];slider.maxValue=this[this.unit+"ScaleMax"];slider.decimalPrecision=this[this.unit+"SliderPrecision"];if(this.items.get("box").rendered){this.items.get("box").getEl().update(this.unit)}else{this.items.get("box").html=this.unit}}if(slider.rendered){slider.suspendEvents();slider.setValue(n);slider.resumeEvents()}else{slider.value=n}},setValueBySlider:function(s,value){var pot=Math.pow(10,this[this.unit+"SliderPrecision"]);this.value=value+this.unit+" "+(Math.round(value*this.ratio*pot)/pot)+this.unit},getValue:function(){return this.value}});Ext.reg("length-slider",TD.ux.LengthSlider);TD.ux.BoxExtent=Ext.extend(Ext.Container,{style:"margin-bottom:18px",plugins:"makefield",hideLabel:true,layout:"form",updateLabel:function(){var update=this.items.get(1).layout.activeItem.text;
this.items.get(0).setValue(update)},constructor:function(config){var me=this;var card=new TD.ux.BoxExtentCard({value:config.value,labelWidth:config.labelWidth});config=config||{};config.items=[{xtype:"displayfield",labelStyle:"display:block !important",fieldLabel:config.fieldLabel,value:card.items.get(card.activeItem).text,width:250,listeners:{render:function(){this.getEl().setStyle({"background-repeat":"no-repeat","background-position":((config.labelWidth||110))+"px 2px","padding-left":((config.labelWidth||110)+18)+"px","padding-top":"3px","background-image":"url('"+FixedAsset["iconset/"]+"famfamfam.com,cc-by/silk/control_fastforward.png')"});this.getEl().on("mouseover",function(){this.setStyle("background-image","url('"+FixedAsset["iconset/"]+"famfamfam.com,cc-by/silk/control_fastforward_blue.png')")});this.getEl().on("mouseout",function(){this.setStyle("background-image","url('"+FixedAsset["iconset/"]+"famfamfam.com,cc-by/silk/control_fastforward.png')")});this.getEl().on("click",function(){me.items.get(1).cycle();
if(me.ownerCt&&me.ownerCt.doLayout){me.ownerCt.doLayout()}me.updateLabel()})}}},card];TD.ux.BoxExtent.superclass.constructor.call(this,config)},getValue:function(){if(this.rendered){return this.items.get(1).getValue()}else{return this.value}},setValue:function(v){if(this.rendered){this.items.get(1).setValue(v);this.updateLabel()}else{this.value=v}},initComponent:function(){TD.ux.BoxExtent.superclass.initComponent.apply(this,arguments);this.on({afterlayout:function(){if(this.value!=undefined){this.items.get(1).setValue(this.value)}},single:true})}});Ext.reg("actd.boxextent-switcher",TD.ux.BoxExtent);TD.ux.BoxExtentField=Ext.extend(Ext.form.TriggerField,{afterRender:function(){TD.ux.BoxExtentField.superclass.afterRender.apply(this,arguments);if(Ext.isWebKit){this.el.swallowEvent("mousedown",true)}this.el.unselectable();this.trigger.unselectable();this.trigger.un("click",this.onTriggerClick,this);this.trigger.on("mousedown",function(e,target,options){e.preventDefault();this.onTriggerClick()},this)},collapse:function(){this.menu.hide();
this.menu.ownerCt=undefined},expand:function(){var me=this;if(!me.menu){me.menu=Ext.ComponentMgr.create({xtype:"menuform",items:[{xtype:"actd.boxextent-switcher"}],listeners:{show:function(){this.items.get(0).setValue(me.getValue());this.doLayout()},hide:function(){me.setValue(this.items.get(0).getValue())}}})}me.menu.ownerCt=me.findParentBy(function(i){return i instanceof Ext.menu.Menu});me.menu.show(me.el,null,me)},isExpanded:function(){return this.menu&&this.menu.isVisible()},onTriggerClick:function(e,trig,o){if(this.readOnly||this.disabled){return}if(this.isExpanded()){this.collapse();this.el.focus()}else{this.onFocus({});this.expand();this.el.focus()}}});Ext.reg("actd.boxextent",TD.ux.BoxExtentField);TD.ux.BoxExtentCard=Ext.extend(Ext.Container,{constructor:function(config){var parse=this.parseValue(config.value?config.value:"");var v=parse.values;config=Ext.apply({},config,{activeItem:parse.item,layout:"card",defaults:{layout:"form",hideLabels:false,labelWidth:30,defaults:{labelStyle:"display:block !important"},labelAlign:"right",xtype:"container"},items:[{itemId:"all",text:Translate("All Sides"),items:[{xtype:"length-duo",fieldLabel:Translate("All"),value:v.all.all,itemId:"all"}]},{itemId:"vh",text:Translate("Vertical, Horizontal"),items:[{xtype:"length-duo",fieldLabel:"V",value:v.vh.v,itemId:"v"},{xtype:"length-duo",fieldLabel:"H",value:v.vh.h,itemId:"h"}]},{itemId:"trbl",text:"TRBL",items:[{xtype:"length-duo",fieldLabel:"T",value:v.trbl.t,itemId:"t"},{xtype:"length-duo",fieldLabel:"R",value:v.trbl.r,itemId:"r"},{xtype:"length-duo",fieldLabel:"B",value:v.trbl.b,itemId:"b"},{xtype:"length-duo",fieldLabel:"L",value:v.trbl.l,itemId:"l"}]}]});
TD.ux.BoxExtentCard.superclass.constructor.call(this,config)},cycle:function(){var i;switch(this.layout.activeItem.itemId){case"all":i="vh";break;case"vh":i="trbl";break;default:i="all"}this.layout.setActiveItem(i)},setValue:function(v){this.value=v;var p=this.parseValue(v);this.layout.setActiveItem(p.item);for(var i in p.values){for(var j in p.values[i]){this.items.get(i).items.get(j).setValue(p.values[i][j])}}},getValue:function(){var vals=[];Ext.each(this.layout.activeItem.items.items,function(item){vals.push(item.getValue())});return vals.join(" ")},parseValue:function(v){var a=v.split(" ");var p={all:{all:a[0]},vh:{v:a[0],h:a[1]?a[1]:a[0]},trbl:{t:a[0],r:a[1]?a[1]:a[0],b:a[2]?a[2]:a[0],l:a[3]?a[3]:(a[1]?a[1]:a[0])}};var item;switch(a.length){case 2:item="vh";break;case 4:item="trbl";break;default:item="all"}var r={item:item,values:p};return r}});TD.ux.Background=Ext.extend(Ext.ButtonGroup,{constructor:function(config){var me=this,duotonestore="pattern-duotone",colorizestore="pattern-colorize";if(!Ext.StoreMgr.get(duotonestore)){new Ext.data.DirectStore({sortInfo:{field:"name",direction:"ASC"},id:duotonestore,directFn:AppCenter.api.core.ThemeDesigner.patternDuotoneImageList,root:"results",fields:["source","license","name","url","urlpart","globalurl"],listeners:{beforeload:function(){TD.ribbon.startLoading()
},load:function(){TD.ribbon.stopLoading()}}})}if(!Ext.StoreMgr.get(colorizestore)){new Ext.data.DirectStore({sortInfo:{field:"name",direction:"ASC"},id:colorizestore,directFn:AppCenter.api.core.ThemeDesigner.patternColorizeImageList,root:"results",fields:["source","license","name","url","urlpart","globalurl"],listeners:{beforeload:function(){TD.ribbon.startLoading()},load:function(){TD.ribbon.stopLoading()}}})}Ext.apply(config,{layout:"table",items:[{xtype:"button",text:config.frame===false?Translate("Background<br>Type"):Translate("Type"),iconAlign:"top",iconCls:"image32",arrowAlign:"bottom",scale:"xlarge",plugins:"makefield",name:config.prefix+".type",setValue:function(v){this.value=v;this.menu.items.each(function(i){var item=this.ownerCt.items.get(i.itemId);if(item){item.setVisible(v==i.itemId)}},this);me.doLayout()},menu:{listeners:{itemclick:function(item,e){var field=this.ownerCt;field.setValue(item.itemId)},beforeshow:function(menu){var v=this.ownerCt.getValue();var i=menu.items.get(v);if(i){i.setChecked(true)
}}},items:[{text:Translate("None"),itemId:"none",group:"background-type",checked:false},{text:Translate("Plain Color"),itemId:"color",group:"background-type",checked:false},{text:Translate("Pattern"),itemId:"colorize",group:"background-type",checked:false},{text:Translate("Duotone"),itemId:"duotone",group:"background-type",checked:false},{text:Translate("URL"),itemId:"urlimage",group:"background-type",checked:false}]}},{xtype:"ribbon.separator"},{xtype:"box",itemId:"none",html:"<br>None"},{xtype:"container",itemId:"color",hidden:true,items:[{xtype:"themecolorbutton",fieldLabel:Translate("Color"),name:config.prefix+".color",arrowAlign:"bottom",width:90,colorHeight:72}]},{xtype:"container",itemId:"colorize",layout:"table",layoutConfig:{columns:2},hidden:true,items:[{xtype:"imagebutton",name:config.prefix+".colorize.image",width:90,scale:"xxlarge",cls:"image-button",arrowAlign:"bottom",store:colorizestore,rowspan:2},{xtype:"themecolorbutton",width:60,scale:"xlarge",name:config.prefix+".colorize.color"},{xtype:"sliderfield",width:50,x:10,value:100,minValue:5,maxValue:100,increment:5,keyIncrement:5,tip:"{0}% image, the rest color",name:config.prefix+".colorize.opacity"}]},{xtype:"container",itemId:"duotone",layout:"table",layoutConfig:{columns:2},hidden:true,items:[{xtype:"imagebutton",store:duotonestore,name:config.prefix+".duotone.image",width:90,scale:"xxlarge",cls:"image-button",arrowAlign:"bottom",rowspan:2},{xtype:"themecolorbutton",fieldLabel:Translate("Light Color"),width:60,scale:"large",name:config.prefix+".duotone.colorstart"},{xtype:"themecolorbutton",fieldLabel:Translate("Dark Color"),width:60,scale:"large",name:config.prefix+".duotone.colorend"}]},{xtype:"container",itemId:"urlimage",hidden:true,items:[{xtype:"textarea",name:config.prefix+".image.url",width:150,height:84,emptyText:Translate("http://")}]}]});
TD.ux.Background.superclass.constructor.call(this,config)}});Ext.reg("actd.background",TD.ux.Background);TD.ux.ButtonStyle=Ext.extend(Ext.ButtonGroup,{constructor:function(config){config=config||{};var me=this,buttonImages="actd.buttonimages",prefix=config.prefix;if(!Ext.StoreMgr.get(buttonImages)){new Ext.data.DirectStore({sortInfo:{field:"name",direction:"ASC"},id:buttonImages,directFn:AppCenter.api.core.ThemeDesigner.buttonImageList,root:"",fields:["source","license","name","urlslice","globalurl","slicetop","slicebottom","sliceleft","sliceright","corner","shape"],listeners:{beforeload:function(){TD.ribbon&&TD.ribbon.startLoading()},load:function(){TD.ribbon&&TD.ribbon.stopLoading()}}})}Ext.apply(config,{items:[{xtype:"button",text:Translate("Button<br>Type"),arrowAlign:"bottom",height:68,plugins:"makefield",name:config.prefix+".type",setValue:function(v){this.value=v;this.menu.items.each(function(i){var item=this.ownerCt.items.get(i.itemId);if(item){item.setVisible(v==i.itemId)}},this);me.doLayout()},menu:{listeners:{itemclick:function(item,e){var field=this.ownerCt;
field.setValue(item.itemId)},beforeshow:function(menu){var v=this.ownerCt.getValue();var i=menu.items.get(v);if(i){i.setChecked(true)}}},items:[{text:Translate("Image Buttons"),itemId:"buttonimage",group:"buttonstyle-type",checked:false},{text:Translate("Simple"),itemId:"simplebackground",group:"buttonstyle-type",checked:false}]}},{xtype:"container",itemId:"buttonimage",hidden:true,layout:"table",width:240,layoutConfig:{columns:2},items:[{xtype:"imagebutton",scale:"large",menuWidth:120,scale:"xlarge",outerBoxCls:"image-outer-box",innerBoxCls:"image-inner-box",menuItemHeight:30,menuItemWidth:30,height:68,width:90,imageRepeat:"no-repeat",menuCls:"buttonlist",store:buttonImages,fieldLabel:Translate("Button Style"),name:prefix+".buttonimage.duotone.image",rowspan:2},{xtype:"themecolorbutton",scale:"medium",width:60,name:prefix+".buttonimage.duotone.colorstart",fieldLabel:Translate("Start Color")},{xtype:"themecolorbutton",scale:"medium",width:60,name:prefix+".buttonimage.duotone.colorend",fieldLabel:Translate("End Color")},{xtype:"hidden",name:prefix+".buttonimage.type",value:"duotone"}]},{xtype:"container",itemId:"simplebackground",hidden:true,layout:"table",width:240,layoutConfig:{columns:2},items:[{xtype:"actd.background",prefix:prefix+".simplebackground",frame:false}]}]});
TD.ux.ButtonStyle.superclass.constructor.call(this,config)}});Ext.reg("actd.button-style",TD.ux.ButtonStyle);TD.ux.BorderPanel=Ext.extend(Ext.ButtonGroup,{constructor:function(config){config=config||{};var me=this,borderImages="actd.borderimages",prefix=config.prefix;if(!Ext.StoreMgr.get(borderImages)){new Ext.data.DirectStore({sortInfo:{field:"name",direction:"ASC"},id:borderImages,directFn:AppCenter.api.core.ThemeDesigner.borderImageList,root:"results",fields:["source","license","name","url","urlpart","globalurl","width","height","corner","shape"],listeners:{beforeload:function(){TD.ribbon&&TD.ribbon.startLoading()},load:function(){TD.ribbon&&TD.ribbon.stopLoading()}}})}Ext.apply(config,{items:[{xtype:"button",text:Translate("Border<br>Type"),arrowAlign:"bottom",height:68,plugins:"makefield",name:config.prefix+".type",setValue:function(v){this.value=v;this.menu.items.each(function(i){var item=this.ownerCt.items.get(i.itemId);if(item){item.setVisible(v==i.itemId)}},this);me.doLayout()},menu:{listeners:{itemclick:function(item,e){var field=this.ownerCt;
field.setValue(item.itemId)},beforeshow:function(menu){var v=this.ownerCt.getValue();var i=menu.items.get(v);if(i){i.setChecked(true)}}},items:[{text:Translate("None"),itemId:"none",group:"borderstyle-type",checked:false},{text:Translate("Normal"),itemId:"normal",group:"borderstyle-type",checked:false},{text:Translate("Image"),itemId:"image",group:"borderstyle-type",checked:false}]}},{xtype:"container",itemId:"image",hidden:true,layout:"table",width:240,layoutConfig:{columns:2},items:[{xtype:"imagebutton",scale:"large",menuWidth:120,imageHeight:30,height:68,width:90,imageRepeat:"no-repeat",menuCls:"buttonlist",store:borderImages,fieldLabel:Translate("Border Style"),name:prefix+".imageborder.image",rowspan:2},{xtype:"themecolorbutton",scale:"medium",width:60,name:prefix+".imageborder.duotone.colorstart",fieldLabel:Translate("Start Color")},{xtype:"themecolorbutton",scale:"medium",width:60,name:prefix+".imageborder.duotone.colorend",fieldLabel:Translate("End Color")}]},{xtype:"container",itemId:"normal",bodyStyle:"padding:8px",layout:"toolbar",defaultType:"container",layoutConfig:{columns:2},items:[{xtype:"themecolorbutton",scale:"large",height:68,width:90,store:borderImages,fieldLabel:Translate("Color"),name:prefix+".color",ref:"borderColor",rowspan:2},{layout:"form",labelWidth:60,defaults:{width:100},items:[{fieldLabel:Translate("Style"),xtype:"selectbox",store:["none","dotted","dashed","solid","double","groove","ridge","inset","outset"],name:config.prefix+".style",ref:"borderStyle"},{fieldLabel:Translate("Width"),xtype:"actd.boxextent",name:config.prefix+".width",ref:"borderWidth"},{fieldLabel:Translate("Radius"),xtype:"actd.boxextent",name:config.prefix+".radius"}]}]}]});
TD.ux.BorderPanel.superclass.constructor.call(this,config)}});Ext.reg("actd.border",TD.ux.BorderPanel);TD.ux.Transition=Ext.extend(Ext.ButtonGroup,{constructor:function(config){var me=this,storename="transition-duotone";if(!Ext.StoreMgr.get(storename)){TD.ux.TransitionDuotoneStore=new Ext.data.DirectStore({sortInfo:{field:"name",direction:"ASC"},id:storename,directFn:AppCenter.api.core.ThemeDesigner.transitionImageList,root:"",fields:["source","license","name","url","urlpart","globalurl","width"],listeners:{beforeload:function(){TD.ribbon.startLoading()},load:function(){TD.ribbon.stopLoading()},exception:function(){TD.ribbon.stopLoading()}}})}Ext.apply(config,{layout:"table",items:[{xtype:"button",text:config.frame===false?Translate("Transition<br>Type"):Translate("Type"),arrowAlign:"bottom",height:68,plugins:"makefield",name:config.prefix+".type",setValue:function(v){this.value=v;this.menu.items.each(function(i){var item=this.ownerCt.items.get(i.itemId);if(item){item.setVisible(v==i.itemId)}},this);me.doLayout()
},menu:{listeners:{itemclick:function(item,e){var field=this.ownerCt;field.setValue(item.itemId)},beforeshow:function(menu){var v=this.ownerCt.getValue();var i=menu.items.get(v);if(i){i.setChecked(true)}}},items:[{text:Translate("None"),itemId:"none",group:"transition-type",checked:false},{text:Translate("Line"),itemId:"line",group:"transition-type",checked:false},{text:Translate("Image"),itemId:"colorize",group:"transition-type",checked:false}]}},{xtype:"ribbon.separator"},{xtype:"container",itemId:"line",hidden:true,defaults:{width:70},items:[{xtype:"length-combo",name:config.prefix+".line.width",fieldLabel:Translate("Width"),scale:{px:{scaleMin:1,scaleMax:10,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}}},{xtype:"themecolorbutton",fieldLabel:Translate("Color"),name:config.prefix+".line.color"},{xtype:"sliderfield",fieldLabel:Translate("Opacity"),minValue:5,maxValue:100,increment:5,keyIncrement:5,tip:"{0}%",name:config.prefix+".line.opacity"}]},{xtype:"container",itemId:"colorize",layout:"table",layoutConfig:{columns:2},hidden:true,items:[{name:config.prefix+".colorize.image",xtype:"imagebutton",width:90,scale:"xxlarge",cls:"image-button",arrowAlign:"bottom",store:"transition-duotone",imageRepeat:"repeat-y",menuItemWidth:220,rowspan:2},{xtype:"themecolorbutton",width:60,scale:"large",name:config.prefix+".colorize.color"},{xtype:"slider",plugins:"makefield",width:50,padding:"0 0 5 0",minValue:5,maxValue:100,increment:5,keyIncrement:5,tip:"{0}% image, the rest color",name:config.prefix+".colorize.opacity"}]}]});
TD.ux.Transition.superclass.constructor.call(this,config)}});Ext.reg("actd.transition",TD.ux.Transition);TD.widget.BoxShadow=Ext.extend(Ext.Container,{constructor:function(config){var scale={px:{defaultValue:0,scaleMin:-20,scaleMax:20,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}};var blurScale={px:{defaultValue:0,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}};config=Ext.apply({},config,{plugins:"makefield",layout:"form",items:[{xtype:"checkbox",fieldLabel:Translate("Enabled"),itemId:"enable"},{xtype:"themecolorbutton",fieldLabel:Translate("Color"),itemId:"color",allowOtherMenus:true},{xtype:"length-duo",fieldLabel:Translate("H Offset"),itemId:"hOffset",scale:scale},{xtype:"length-duo",fieldLabel:Translate("V Offset"),itemId:"vOffset",scale:scale},{xtype:"length-duo",fieldLabel:Translate("Blur"),itemId:"blur",scale:blurScale}]});TD.widget.BoxShadow.superclass.constructor.call(this,config)},getValue:function(){var regex=/-?\d+/;var pixelRadius=regex.exec(this.items.get("blur").getValue())[0]/2;
this.value={enabled:this.items.get("enable").getValue(),color:this.items.get("color").getValue(),horizontalOffset:this.items.get("hOffset").getValue(),verticalOffset:this.items.get("vOffset").getValue(),blur:this.items.get("blur").getValue(),pixelRadius:pixelRadius,ieShadowLeft:(0-pixelRadius+(1*regex.exec(this.items.get("hOffset").getValue())))+"px",ieShadowTop:(0-pixelRadius+(1*regex.exec(this.items.get("vOffset").getValue())))+"px"};return this.value},setValue:function(v){if(!Ext.isObject(v)){return}this.items.get("enable").setValue(v.enabled);this.items.get("color").setValue(v.color);this.items.get("hOffset").setValue(v.horizontalOffset);this.items.get("vOffset").setValue(v.verticalOffset);this.items.get("blur").setValue(v.blur)}});Ext.reg("actd.boxshadow",TD.widget.BoxShadow);TD.ux.TextBlockTabs=Ext.extend(Ext.TabPanel,{plain:true,style:"padding-top:8px",constructor:function(config){config=Ext.apply({},config,{activeTab:0,height:248,items:[{title:Translate("Size"),layout:"form",items:[{xtype:"container",layout:"column",style:"border-bottom:1px solid #ccc",defaults:{columnWidth:0.5,xtype:"container"},items:[{items:[{xtype:"container",html:"<h4>Width</h4>",style:"padding:8px;"},{xtype:"container",layout:"hbox",style:"padding:4px;",items:[{xtype:"container",html:"Fixed: ",style:"padding:4px;width:40px;text-align:right;"},{xtype:"checkbox",name:config.prefix+".fixwidth",listeners:{check:function(a,c){var fn=c?"disable":"enable";
this.ownerCt.ownerCt.items.get(2)[fn]();this.ownerCt.ownerCt.items.get(3)[fn]()},render:function(){if(this.checked){this.ownerCt.ownerCt.items.get(2).disable();this.ownerCt.ownerCt.items.get(3).disable()}}}},{xtype:"length-duo",name:config.prefix+".width"}]},{xtype:"container",layout:"hbox",style:"padding:4px;",items:[{xtype:"container",html:"Min: ",style:"padding:4px;width:40px;text-align:right;"},{xtype:"checkbox",name:config.prefix+".fixminwidth"},{xtype:"length-duo",name:config.prefix+".minwidth"}]},{xtype:"container",layout:"hbox",style:"padding:4px;",items:[{xtype:"container",html:"Max: ",style:"padding:4px;width:40px;text-align:right;"},{xtype:"checkbox",name:config.prefix+".fixmaxwidth"},{xtype:"length-duo",name:config.prefix+".maxwidth"}]},{xtype:"container",layout:"hbox",style:"padding:4px;",items:[{xtype:"container",html:"Overflow: ",style:"padding:4px;width:60px;text-align:right;"},{xtype:"selectbox",store:["visible","hidden","scroll","auto","inherit"],width:120,name:config.prefix+".overflow-x"}]}]},{items:[{xtype:"container",html:"<h4>Height</h4>",style:"padding:8px;"},{xtype:"container",layout:"hbox",style:"padding:4px;",items:[{xtype:"container",html:"Fixed: ",style:"padding:4px;width:40px;text-align:right;"},{xtype:"checkbox",name:config.prefix+".fixheight",listeners:{check:function(a,c){var fn=c?"disable":"enable";
this.ownerCt.ownerCt.items.get(2)[fn]();this.ownerCt.ownerCt.items.get(3)[fn]()},render:function(){if(this.checked){this.ownerCt.ownerCt.items.get(2).disable();this.ownerCt.ownerCt.items.get(3).disable()}}}},{xtype:"length-duo",name:config.prefix+".height"}]},{xtype:"container",layout:"hbox",style:"padding:4px;",items:[{xtype:"container",html:"Min: ",style:"padding:4px;width:40px;text-align:right;"},{xtype:"checkbox",name:config.prefix+".fixminheight"},{xtype:"length-duo",name:config.prefix+".minheight"}]},{xtype:"container",layout:"hbox",style:"padding:4px;",items:[{xtype:"container",html:"Max: ",style:"padding:4px;width:40px;text-align:right;"},{xtype:"checkbox",name:config.prefix+".fixmaxheight"},{xtype:"length-duo",name:config.prefix+".maxheight"}]},{xtype:"container",layout:"hbox",style:"padding:4px;",items:[{xtype:"container",html:"Overflow: ",style:"padding:4px;width:60px;text-align:right;"},{xtype:"selectbox",store:["visible","hidden","scroll","auto","inherit"],width:120,name:config.prefix+".overflowy"}]}]}]},{xtype:"selectbox",fieldLabel:"Float",name:config.prefix+".float",store:["none","left","right"]},{xtype:"selectbox",name:config.prefix+".box.sizing",fieldLabel:Translate("Box Sizing"),store:["content-box","border-box"]}]},{xtype:"panel",title:Translate("Display"),layout:"form",items:[{xtype:"box",html:config.title},{xtype:"selectbox",name:config.prefix+".display",fieldLabel:Translate("Display"),store:["block","inline","none"]},{xtype:"selectbox",name:config.prefix+".position.position",fieldLabel:Translate("Position"),store:["static","absolute","relative","static"]},{xtype:"selectbox",name:config.prefix+".position.vertical.type",fieldLabel:Translate("Vertical"),store:["","top","bottom"]},{xtype:"length-duo",name:config.prefix+".position.vertical.value",fieldLabel:Translate("Vertical Value")},{xtype:"selectbox",name:config.prefix+".position.horizontal.type",fieldLabel:Translate("Horizontal"),store:["","left","right"]},{xtype:"length-duo",name:config.prefix+".position.horizontal.value",fieldLabel:Translate("Horizontal Value")}],hidden:true},{title:Translate("Font"),items:[{xtype:"actd.fontpanel",fieldLabel:Translate("Font"),name:config.prefix+".font",border:false}]},{title:Translate("Links"),layout:"form",items:[{xtype:"themecolorbutton",name:config.prefix+".font.link.normal.color",fieldLabel:Translate("Normal")},{xtype:"themecolorbutton",name:config.prefix+".font.link.hover.color",fieldLabel:Translate("Hover")},{xtype:"themecolorbutton",name:config.prefix+".font.link.visited.color",fieldLabel:Translate("Visited")}]},{title:Translate("Spacing"),layout:"column",items:[{xtype:"container",layout:"form",labelAlign:"right",columnWidth:0.5,items:[{fieldLabel:Translate("Margin"),xtype:"actd.boxextent",name:config.prefix+".margin"}]},{xtype:"container",layout:"form",columnWidth:0.5,items:[{fieldLabel:Translate("Padding"),xtype:"actd.boxextent",name:config.prefix+".padding"}]}]},{title:Translate("Background"),layout:"column",labelAlign:"right",items:[{xtype:"box",columnWidth:0.25,html:"<b>Normal</b>"},{xtype:"actd.background",frame:false,prefix:config.prefix+".background"}]},{title:Translate("Border"),layout:"column",labelAlign:"right",items:[{xtype:"box",columnWidth:0.25,html:"<b>Normal</b>"},{xtype:"actd.border",frame:false,prefix:config.prefix+".border"}]},{title:Translate("Shadow"),xtype:"actd.boxshadow",name:config.prefix+".boxshadow"}]});
TD.ux.TextBlockTabs.superclass.constructor.call(this,config)}});Ext.reg("actd.textblocktabs",TD.ux.TextBlockTabs);TD.widget.TextBlockMenu=Ext.extend(Ext.ux.MenuForm,{constructor:function(config){config=Ext.apply({},config,{defaults:{allowOtherMenus:true},items:[{xtype:"actd.textblocktabs",prefix:config.prefix,border:false,width:520,height:280,activeTab:0,bodyStyle:"padding:8px;"}]});TD.widget.TextBlockMenu.superclass.constructor.call(this,config)}});Ext.reg("actd.textblockmenu",TD.widget.TextBlockMenu);TD.ux.Spacing=Ext.extend(Ext.Panel,{constructor:function(config){config=Ext.apply({},config,{title:Translate("Spacing"),layout:"column",items:[{xtype:"container",layout:"form",labelAlign:"right",columnWidth:0.5,items:[{fieldLabel:Translate("Margin"),xtype:"actd.boxextent",name:config.prefix+".margin"}]},{xtype:"container",layout:"form",columnWidth:0.5,items:[{fieldLabel:Translate("Padding"),xtype:"actd.boxextent",name:config.prefix+".padding"}]}]});TD.ux.Spacing.superclass.constructor.call(this,config)}});Ext.reg("actd.spacing",TD.ux.Spacing);
TD.ColorColorsetButtonGroup=Ext.extend(Ext.ButtonGroup,{titlePosition:"bottom",layout:"",initComponent:function(){var me=this,palette=me.palette,colorset=palette+"-colorset",size=10,pad=8,sw=size/1.5,lw=size*2.5,subtype=me.subtype||"staticcolorbutton",defaults={xtype:subtype,arrowAlign:"none",colorHeight:size,colorWidth:size+2,listeners:{select:function(item){item.ownerCt.ownerCt.ownerCt.ownerCt.palettetype.setValue("user-all")}}};me.items=[{xtype:"container",layout:"column",width:size+pad+lw+pad+size+pad+(Ext.isGecko?4:6),columns:3,items:[{xtype:"container",layout:"",width:size+pad+2,defaults:defaults,items:[{name:palette+".highlight1"},{name:palette+".highlight2"},{name:palette+".highlight3"}]},{name:palette+".color",ref:"../baseColor",xtype:subtype,arrowAlign:"none",colorHeight:42,colorWidth:lw,width:lw+pad,listeners:{select:function(item){var type=item.ownerCt.ownerCt.ownerCt.palettetype;if(type.getValue()=="user-base"){TD.setPaletteBaseColor(palette,item.getRawValue())}else{type.setValue("user-all")}}}},{xtype:"container",layout:"",width:size+pad+2,defaults:defaults,items:[{name:palette+".shadow3"},{name:palette+".shadow2"},{name:palette+".shadow1"}]}]},{text:Translate("Adjust"),width:size+pad+lw+pad+size+pad+3,menu:{xtype:"menuform",labelWidth:60,defaults:{width:70},width:148,items:[{xtype:"sliderfield",fieldLabel:Translate("Luminosity"),itemId:"luminosity",name:palette+".luminosity",increment:1,value:0,minValue:-100,maxValue:100,listeners:{changecomplete:function(){me.ownerCt.calculateBaseColors();
me.ownerCt.rebasePalette(me)}}},{xtype:"sliderfield",fieldLabel:Translate("Saturation"),itemId:"saturation",name:palette+".saturation",increment:1,value:0,minValue:-100,maxValue:100,listeners:{changecomplete:function(){me.ownerCt.calculateBaseColors();me.ownerCt.rebasePalette(me)}}},{xtype:"sliderfield",fieldLabel:Translate("Contrast"),itemId:"contrast",name:palette+".contrast",value:0,minValue:-50,maxValue:50,listeners:{changecomplete:function(){me.ownerCt.rebasePalette(me)}}},{xtype:"button",text:"reset",scope:this,handler:function(){this.items.get(1).menu.items.get("luminosity").setValue(0);this.items.get(1).menu.items.get("saturation").setValue(0);this.items.get(1).menu.items.get("contrast").setValue(0);this.ownerCt.calculateBaseColors();this.ownerCt.rebasePalette(me)}}]}}];TD.ColorColorsetButtonGroup.superclass.initComponent.call(me)}});Ext.reg("colorsetgroup",TD.ColorColorsetButtonGroup);showPaletteTypeName=true;TD.Colors={title:Translate("Palette"),itemId:"color-palette",iconCls:"palette24",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Palettes",themeType:"palette",menuType:"palettelistmenu"},{xtype:"buttongroup",titlePosition:"bottom",title:Translate("Edit Current Palette"),columns:8,items:[{text:Translate("Type"),ref:"../palettetype",plugins:"makefield",name:"palette.type",ref:"../palettetype",iconAlign:"top",iconCls:"ac-palettetype-icon ac-palettetype-user-base",arrowAlign:"bottom",scale:"large",height:70,setValue:function(val){val=val||"user-all";
this.value=val;this.setIconClass("ac-palettetype-icon ac-palettetype-"+val);var tb=this.ownerCt.ownerCt;tb.mainhue.setDisabled(val in {"user-base":1,"user-all":1});tb.althue.setDisabled(val in {"user-base":1,"user-all":1,complement:1,mono:1});tb.variation.setDisabled(val in {"user-base":1,"user-all":1});tb.luminosity.setDisabled(val in {"user-base":1,"user-all":1});tb.saturation.setDisabled(val in {"user-base":1,"user-all":1});tb.contrast.setDisabled(val in {"user-all":1});if(["mono","complement","analogic","double-complement","analogic-complement"].indexOf(val)!=-1){this.ownerCt.ownerCt.calculateBaseColors(val);this.ownerCt.ownerCt.rebasePalettes(this)}},menu:{cls:"palettetype-menu",listeners:{itemClick:function(baseItem,e){baseItem.ownerCt.ownerCt.setValue(baseItem.itemId);baseItem.setChecked(true)},beforeshow:function(menu){var v=menu.ownerCt.getValue();var i=menu.items.get(v);if(i){i.setChecked(true)}},delay:1},items:[{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-palettetype ac-palettetype-mono"> '+(showPaletteTypeName?"Monochromatic":""),group:"ac-palettetype",xtype:"menucheckitem",itemId:"mono"},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-palettetype ac-palettetype-complement"> '+(showPaletteTypeName?"Complement":""),group:"ac-palettetype",xtype:"menucheckitem",itemId:"complement"},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-palettetype ac-palettetype-double-complement"> '+(showPaletteTypeName?"Double Complement":""),group:"ac-palettetype",xtype:"menucheckitem",itemId:"double-complement"},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-palettetype ac-palettetype-analogic"> '+(showPaletteTypeName?"Analogic":""),group:"ac-palettetype",xtype:"menucheckitem",itemId:"analogic"},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-palettetype ac-palettetype-analogic-complement"> '+(showPaletteTypeName?"Analogic Complement":""),group:"ac-palettetype",xtype:"menucheckitem",itemId:"analogic-complement"},"-",{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-palettetype ac-palettetype-user-base"> '+(showPaletteTypeName?"User Select Base Colors":""),group:"ac-palettetype",xtype:"menucheckitem",itemId:"user-base"},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-palettetype ac-palettetype-user-all"> '+(showPaletteTypeName?"User Select All Colors":""),group:"ac-palettetype",xtype:"menucheckitem",itemId:"user-all"}]}},{xtype:"tbseparator",style:"background-repeat:repeat-y;opacity:0.5",height:54},{xtype:"container",layout:"form",labelAlign:"right",labelWidth:55,defaults:{width:135},width:205,items:[{xtype:"sliderfield",plugins:[{ptype:"slidertip",tipText:'<div style="height:25px;width:30px;background-color: hsl({0},100%,50%);color:hsl({0},100%,50%)">{0}</div>'}],cls:"hues",fieldLabel:Translate("Main Hue"),name:"palette.base.mainhue",itemId:"mainhue",ref:"../../mainhue",increment:1,value:0,minValue:0,maxValue:360,listeners:{changecomplete:function(){this.ownerCt.ownerCt.ownerCt.calculateBaseColors();
this.ownerCt.ownerCt.ownerCt.rebasePalettes()}}},{xtype:"sliderfield",plugins:[{ptype:"slidertip",tipText:'<div style="height:25px;width:30px;background-color: hsl({0},100%,50%);color:hsl({0},100%,50%)">{0}</div>'}],cls:"hues",fieldLabel:Translate("Alternate"),name:"palette.base.althue",itemId:"althue",ref:"../../althue",increment:1,value:60,minValue:0,maxValue:360,listeners:{changecomplete:function(){this.ownerCt.ownerCt.ownerCt.calculateBaseColors();this.ownerCt.ownerCt.ownerCt.rebasePalettes()}}},{xtype:"selectbox",fieldLabel:Translate("Variation"),name:"palette.variation",itemId:"variation",ref:"../../variation",store:[["","Default"],["pastel",Translate("Pastel")],["pastel-light",Translate("Light Pastel")],["pastel-dark",Translate("Dark Pastel")]],listeners:{select:function(){if(this.getValue()=="custom"){return}this.ownerCt.ownerCt.ownerCt.luminosity.setValue(100*(1-Ext.ux.Color.Variants.presets[this.getValue()].base.v.m));this.ownerCt.ownerCt.ownerCt.saturation.setValue(100*(1-Ext.ux.Color.Variants.presets[this.getValue()].base.s.m));
this.ownerCt.ownerCt.ownerCt.contrast.setValue(Ext.ux.Color.Variants.presets[this.getValue()]?Ext.ux.Color.Variants.presets[this.getValue()].contrast*100:75);this.ownerCt.ownerCt.ownerCt.calculateBaseColors();this.ownerCt.ownerCt.ownerCt.rebasePalettes(this.getValue())}}}]},{xtype:"tbseparator",style:"background-repeat:repeat-y;opacity:0.5",height:54},{xtype:"container",itemId:"alterations",layout:"form",labelAlign:"right",labelWidth:60,defaults:{width:70,plugins:"makefield"},width:140,items:[{xtype:"sliderfield",fieldLabel:Translate("Luminosity"),itemId:"luminosity",ref:"../../luminosity",name:"palette.base.luminosity",increment:5,value:50,minValue:0,maxValue:100,listeners:{changecomplete:function(){this.ownerCt.ownerCt.ownerCt.calculateBaseColors();this.ownerCt.ownerCt.ownerCt.rebasePalettes();this.ownerCt.ownerCt.ownerCt.variation.setValue("[custom]")}}},{xtype:"sliderfield",fieldLabel:Translate("Saturation"),itemId:"saturation",ref:"../../saturation",name:"palette.base.saturation",increment:5,value:50,minValue:0,maxValue:100,listeners:{changecomplete:function(){this.ownerCt.ownerCt.ownerCt.calculateBaseColors();
this.ownerCt.ownerCt.ownerCt.rebasePalettes();this.ownerCt.ownerCt.ownerCt.variation.setValue("[custom]")}}},{xtype:"sliderfield",fieldLabel:Translate("Contrast"),itemId:"contrast",ref:"../../contrast",name:"palette.base.contrast",value:75,minValue:25,maxValue:100,listeners:{changecomplete:function(){this.ownerCt.rebasePalettes();this.ownerCt.ownerCt.ownerCt.variation.setValue("[custom]")}}}],rebasePalettes:function(){var control=this.ownerCt.ownerCt;control.rebasePalettes()}}]},{xtype:"colorsetgroup",itemId:"primary-colorset",ref:"primary",title:Translate("Primary"),palette:"palette.primary"},{xtype:"colorsetgroup",itemId:"secondary-colorset",ref:"secondary",title:Translate("Secondary"),palette:"palette.secondary"},{xtype:"colorsetgroup",itemId:"complementary-colorset",ref:"complementary",title:Translate("Complementary"),palette:"palette.complementary"},{xtype:"colorsetgroup",itemId:"alternate-colorset",ref:"alternate",title:Translate("Alternate"),palette:"palette.alternate"},"->",{xtype:"actd.save"}],calculateBaseColors:function(val){if(!val){val=this.palettetype.getValue()
}if(["mono","complement","analogic","double-complement","analogic-complement"].indexOf(val)!=-1){var main=this.mainhue.getValue();var alt=this.althue.getValue();var luminosity=this.luminosity.getValue();var saturation=this.saturation.getValue();switch(val){case"mono":var secondary=main;var complementary=main;var alternate=main;break;case"complement":var secondary=(main+180)%360;var complementary=main;var alternate=secondary;break;case"analogic":var secondary=alt;var diff=main-secondary;var complementary=(main+diff)%360;var alternate=main;break;case"analogic-complement":var secondary=alt;var diff=main-secondary;var complementary=(main+diff)%360;var alternate=(main+180)%360;break;case"double-complement":var secondary=alt;var complementary=(main+180)%360;var alternate=(secondary+180)%360;break;default:var secondary=main;var complementary=main;var alternate=main;break}}this.calculateBaseColor(this.primary,main/360,saturation,luminosity);this.calculateBaseColor(this.secondary,secondary/360,saturation,luminosity);this.calculateBaseColor(this.complementary,complementary/360,saturation,luminosity);
this.calculateBaseColor(this.alternate,alternate/360,saturation,luminosity);return;TD.getValue();this.primary.baseColor.setValue(new Ext.ux.Color.HSV(main/360,saturation/100,luminosity/100).toHex().hex);this.secondary.baseColor.setValue(new Ext.ux.Color.HSV(secondary/360,saturation/100,luminosity/100).toHex().hex);this.complementary.baseColor.setValue(new Ext.ux.Color.HSV(complementary/360,saturation/100,luminosity/100).toHex().hex);this.alternate.baseColor.setValue(new Ext.ux.Color.HSV(alternate/360,saturation/100,luminosity/100).toHex().hex)},rebasePalettes:function(preset){this.rebasePalette(this.primary);this.rebasePalette(this.secondary);this.rebasePalette(this.complementary);this.rebasePalette(this.alternate);return;TD.setPaletteBaseColor(this.primary.palette,this.primary.baseColor.getRawValue(),this.contrast.getValue(),preset);TD.setPaletteBaseColor(this.secondary.palette,this.secondary.baseColor.getRawValue(),this.contrast.getValue(),preset);TD.setPaletteBaseColor(this.complementary.palette,this.complementary.baseColor.getRawValue(),this.contrast.getValue(),preset);
TD.setPaletteBaseColor(this.alternate.palette,this.alternate.baseColor.getRawValue(),this.contrast.getValue(),preset)},rebasePalette:function(color,preset){var c=this.contrast.getValue();var cm=TD.getValue(color.palette+".contrast");if(cm>0){c=cm-(cm*c/100)+c}else{if(cm<0){c=(cm*c/100)+c}}TD.setPaletteBaseColor(color.palette,color.baseColor.getRawValue(),c,preset)},calculateBaseColor:function(color,h,s,v){var vm=TD.getValue(color.palette+".luminosity");if(vm>0){v=vm-(v*vm/100)+v}else{if(vm<0){v=(vm*v/100)+v}}var sm=TD.getValue(color.palette+".saturation");if(sm>0){s=sm-(s*sm/100)+s}else{if(sm<0){s=(sm*s/100)+s}}color.baseColor.setValue(new Ext.ux.Color.HSV(h,s/100,v/100).toHex().hex)}};TD.Fonts={title:Translate("Fonts"),itemId:"fonts",iconCls:"text24",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Font Set",themeType:"fontset"},{hidden:true,xtype:"buttongroup",titlePosition:"bottom",title:Translate("Typography"),columns:2,items:[{text:Translate("Adjustments..."),iconCls:"text16",colspan:2},{xtype:"box",autoEl:{tag:"div",style:"text-align:right; padding-right:4px",html:"Size:"}},{xtype:"slider",value:60,width:100}]},{xtype:"buttongroup",titlePosition:"bottom",title:Translate("Foundation"),columns:1,width:300,items:[{xtype:"container",layout:"form",labelAlign:"right",labelWidth:80,width:140,defaults:{labelStyle:"padding-top:10px",scale:"medium"},items:[{xtype:"actd.fontbutton",fieldLabel:Translate("Normal Base"),name:"fontset.normal"},{xtype:"actd.fontbutton",fieldLabel:Translate("Header Base"),name:"fontset.header"}]}]},"->",{xtype:"actd.save"}]};
TD.Community={title:Translate("Community"),iconCls:"community24",advanced:true,itemId:"community",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Community",themeType:"community"},"->",{xtype:"actd.save"}]};TD.DesignsMenuItemConfig=function(record){var type=record.data.Type;var title=record.data.Definition[type]["title"]||"["+Ext.util.Format.capitalize(type)+": id "+record.id+"]";return{xtype:type=="theme"?"menucheckitem":undefined,text:title,group:"theme-design-"+type,itemId:record.data.ThemeId,checked:record.data.ThemeId==TD.getCurrentRecord(type).data.ThemeId}};TD.DesignsButtonConfig=function(config){return{text:Translate(config.text),iconCls:config.type+"16",xtype:config.btype||"splitbutton",menu:{xtype:config.mtype||"menu",plugins:"menuitemstore",store:"ThemeDesigner-"+config.type+"-personal",itemHandler:function(item,e){TD.setCurrentRecord(item.record)},getItemConfig:config.mtype?undefined:TD.DesignsMenuItemConfig}}};TD.Designs={title:Translate("Theme"),itemId:"start",iconCls:"theme24",xtype:"toolbar",border:false,autoCreate:{cls:"x-toolbar"},defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Theme",themeType:"theme"},{xtype:"buttongroup",title:Translate("Partial Feeling Lucky"),titlePosition:"bottom",columns:5,ref:"luckybytab",defaults:{scale:"small"},defaultType:"splitbutton",items:[TD.DesignsButtonConfig({text:"Palette",type:"palette",mtype:"palettelistmenu"}),{xtype:"ribbon.separator"},TD.DesignsButtonConfig({text:"Fonts",type:"fontset"}),{xtype:"ribbon.separator"},TD.DesignsButtonConfig({text:"Sheet",type:"sheet"}),TD.DesignsButtonConfig({text:"Layout",type:"layout"}),TD.DesignsButtonConfig({text:"Header",type:"header"}),TD.DesignsButtonConfig({text:"Footer",type:"footer"}),TD.DesignsButtonConfig({text:"Navigation",type:"navigation"}),TD.DesignsButtonConfig({text:"Community",type:"community"}),TD.DesignsButtonConfig({text:"Forum",type:"forum"}),TD.DesignsButtonConfig({text:"Blog",type:"blog"}),TD.DesignsButtonConfig({text:"Video",type:"video"}),TD.DesignsButtonConfig({text:"Widgets",type:"widgets"})]},{xtype:"buttongroup",titlePosition:"bottom",title:Translate("Design Information"),columns:1,items:[{width:150,layout:"form",xtype:"container",hideLabels:true,defaults:{width:150},items:[{xtype:"textfield",name:"theme.title",setValue2:function(value){var ss=this.ownerCt.ownerCt.items.get("set-and-save");
if(!ss.addtext){ss.addtext=ss.text}ss.setText(value+"<br>"+ss.addtext);Ext.form.TextField.prototype.setValue.call(this,value)}},{xtype:"textarea",name:"theme.description",emptyText:Translate("Description"),height:63}]}]},"->",{xtype:"actd.save"}]};TD.Footer={title:Translate("Footer"),iconCls:"footer24",itemId:"footer",xtype:"toolbar",border:false,defaultType:"buttongroup",defaults:{height:TD.GROUPHEIGHT,titlePosition:"bottom"},items:[{xtype:"actd.choose",tabTitle:"Layout",themeType:"sheet"},{xtype:"buttongroup",title:Translate("Layout"),columns:1,items:[{xtype:"container",layout:"form",labelAlign:"right",labelWidth:40,defaults:{width:85},width:133,items:[{xtype:"length-combo",name:"sheet.footer.height",fieldLabel:Translate("Height"),scale:{px:{defaultValue:60,scaleMin:40,scaleMax:500,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}},store:["40px","50px","60px","80px","100px","125px","150px","200px"]},{xtype:"hidden",name:"sheet.footer.width",fieldLabel:Translate("Width")}]}]},{title:Translate("Background"),xtype:"actd.background",prefix:"sheet.footer.middle.center.background"},{xtype:"buttongroup",layout:"anchor",title:Translate("Extras"),defaults:{scale:"medium",anchor:"0"},items:[{xtype:"button",text:Translate("Top"),menu:{xtype:"menuform",items:[{xtype:"length-combo",name:"sheet.footer.top.height",fieldLabel:Translate("Height"),scale:{px:{defaultValue:0,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}}},{xtype:"actd.background",frame:false,fieldLabel:Translate("Center Background"),prefix:"sheet.footer.top.center.background"},{xtype:"actd.transition",frame:false,fieldLabel:Translate("Transition"),prefix:"sheet.footer.top.transition"},{xtype:"actd.background",frame:false,fieldLabel:Translate("Sides Background"),prefix:"sheet.footer.top.sides.background"}]}},{xtype:"button",text:Translate("Middle"),menu:{xtype:"menuform",items:[{fieldLabel:Translate("Transition"),xtype:"actd.transition",frame:false,prefix:"sheet.footer.middle.transition"},{fieldLabel:Translate("Sides Background"),xtype:"actd.background",frame:false,prefix:"sheet.footer.middle.sides.background"}]}},{xtype:"button",text:Translate("Bottom"),menu:{xtype:"menuform",items:[{xtype:"length-combo",name:"sheet.footer.bottom.height",fieldLabel:Translate("Height"),scale:{px:{defaultValue:0,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}}},{xtype:"actd.background",frame:false,fieldLabel:Translate("Background"),prefix:"sheet.footer.bottom.center.background"},{xtype:"actd.transition",frame:false,fieldLabel:Translate("Transition"),prefix:"sheet.footer.bottom.transition"},{xtype:"actd.background",frame:false,fieldLabel:Translate("Sides Background"),prefix:"sheet.footer.bottom.sides.background"}]}}]},"->",{xtype:"actd.save"}]};
TD.Forum={title:Translate("Forum"),iconCls:"forum24",itemId:"forum",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Forum",themeType:"forum"},{xtype:"buttongroup",title:Translate("Forum Index"),titlePosition:"bottom",columns:1,defaults:{iconAlign:"left"},items:[{text:Translate("Main Index"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{xtype:"box",cls:"menu-section",html:Translate("Main Index")},{title:Translate("Index"),xtype:"actd.textblocktabs",prefix:"forum.index"}]}},{text:Translate("Index Line Item"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{title:Translate("Thread"),xtype:"actd.textblocktabs",prefix:"forum.index.thread"},{title:Translate("Post"),xtype:"actd.textblocktabs",prefix:"forum.index.thread.post"},{title:Translate("Post Sticky"),xtype:"actd.textblocktabs",prefix:"forum.index.thread.post.sticky"}]}},{text:Translate("Columns"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{title:Translate("Icon"),xtype:"actd.textblocktabs",prefix:"forum.index.column.icon"},{title:Translate("Post"),xtype:"actd.textblocktabs",prefix:"forum.index.column.post"},{title:Translate("Replies"),xtype:"actd.textblocktabs",prefix:"forum.index.column.replies"},{title:Translate("Last Post"),xtype:"actd.textblocktabs",prefix:"forum.index.column.lastpost"}]}}]},"->",{xtype:"actd.save"}]};
TD.Header={title:Translate("Header"),iconCls:"header24",itemId:"header",xtype:"toolbar",border:false,defaultType:"buttongroup",defaults:{height:TD.GROUPHEIGHT,titlePosition:"bottom"},items:[{xtype:"actd.choose",tabTitle:"Layout",themeType:"sheet"},{xtype:"buttongroup",title:Translate("Layout"),columns:1,items:[{xtype:"container",layout:"form",labelAlign:"right",labelWidth:40,defaults:{width:85},width:133,items:[{xtype:"hidden",name:"sheet.header.width",fieldLabel:Translate("Width")},{xtype:"length-combo",name:"sheet.header.height",fieldLabel:Translate("Height"),scale:{px:{defaultValue:150,scaleMin:0,scaleMax:250,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}},store:["40px","50px","60px","80px","100px","125px","150px","200px"]}]},{hidden:true,text:Translate("Advanced..."),iconCls:"control_equalizer16"}]},{title:Translate("Background"),xtype:"actd.background",prefix:"sheet.header.middle.center.background"},{xtype:"buttongroup",layout:"anchor",title:Translate("Extras"),defaults:{scale:"medium",anchor:"0"},items:[{xtype:"button",text:Translate("Top"),menu:{xtype:"menuform",items:[{xtype:"length-combo",name:"sheet.header.top.height",fieldLabel:Translate("Height"),scale:{px:{defaultValue:0,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}}},{xtype:"actd.background",frame:false,fieldLabel:Translate("Center Background"),prefix:"sheet.header.top.center.background"},{xtype:"actd.transition",frame:false,fieldLabel:Translate("Transition"),prefix:"sheet.header.top.transition"},{xtype:"actd.background",frame:false,fieldLabel:Translate("Sides Background"),prefix:"sheet.header.top.sides.background"}]}},{xtype:"button",text:Translate("Middle"),menu:{xtype:"menuform",items:[{fieldLabel:Translate("Transition"),xtype:"actd.transition",frame:false,prefix:"sheet.header.middle.transition"},{fieldLabel:Translate("Sides Background"),xtype:"actd.background",frame:false,prefix:"sheet.header.middle.sides.background"}]}},{xtype:"button",text:Translate("Bottom"),menu:{xtype:"menuform",items:[{xtype:"length-combo",name:"sheet.header.bottom.height",fieldLabel:Translate("Height"),scale:{px:{defaultValue:0,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]}}},{xtype:"actd.background",frame:false,fieldLabel:Translate("Background"),prefix:"sheet.header.bottom.center.background"},{xtype:"actd.transition",frame:false,fieldLabel:Translate("Transition"),prefix:"sheet.header.bottom.transition"},{xtype:"actd.background",frame:false,fieldLabel:Translate("Sides Background"),prefix:"sheet.header.bottom.sides.background"}]}}]},{xtype:"buttongroup",title:Translate("Foreground Photo"),title:Translate("Logo"),columns:1,items:[{hidden:true,text:Translate("Photograph"),iconAlign:"top",iconCls:"imageforeground32",arrowAlign:"bottom",scale:"large",height:68,rowspan:3,menu:{items:[{text:Translate("Images Here")}]}},{text:Translate("Show"),xtype:"boolbuttonfield",name:"sheet.header.logo.display"},TD.PositionButton({prefix:"sheet.header.logo",scale:"xlarge"}),{text:Translate("Glow"),hidden:true},{text:Translate("Flip"),hidden:true}]},{hidden:true,xtype:"buttongroup",title:Translate("Title"),titlePosition:"bottom",columns:3,items:[{colspan:2,xtype:"container",layout:"form",labelAlign:"right",labelWidth:50,width:250,defaults:{anchor:"-5"},items:[{xtype:"textfield",fieldLabel:Translate("Headline"),name:"headline",defaultValue:"Headline"}]},{xtype:"actd.fontbutton",name:"sheet.header.headline.font"},{colspan:2,xtype:"container",layout:"form",labelAlign:"right",labelWidth:50,defaults:{anchor:"-5"},items:[{xtype:"textfield",fieldLabel:Translate("Slogan"),name:"slogan",defaultValue:"Slogan text"}]},{text:Translate("Font"),menu:{items:[]}},{xtype:"container",layout:"form",labelAlign:"right",labelWidth:50,width:130,items:[{fieldLabel:Translate("Size"),xtype:"slider",value:50,increment:10,width:75}]},{text:Translate("Position...")},{text:Translate("Align"),menu:{items:[]}}]},"->",{xtype:"actd.save"}]};
Ext.ns("TD.ux.Image.Thumbnail");TD.ux.Image.Thumbnail.Scale={px:{defaultValue:120,scaleMin:20,scaleMax:240,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]},"%":{defaultValue:100,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:0,matchChars:["%"]}};var showColName=false;TD.LayoutCallbacks={changeColumnConfig:function(baseItem,e){baseItem.setChecked(true);var tb=baseItem.parentMenu.ownerCt.findParentByType(Ext.Toolbar);tb.find("itemId","column-main")[0].setVisible(baseItem.value.main!="none");tb.find("itemId","column-extra")[0].setVisible(baseItem.value.extra!="none");baseItem.parentMenu.ownerCt.setIconClass(baseItem.value.cls);tb.doLayout()}};TD.Layout={title:Translate("Layout"),iconCls:"layout32",itemId:"layout",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Layout",themeType:"sheet"},{xtype:"buttongroup",title:Translate("Layout"),titlePosition:"bottom",columns:2,items:[{text:Translate("Style"),plugins:"makefield",name:"theme.style",value:"ultra",iconAlign:"top",iconCls:"bright32",arrowAlign:"bottom",scale:"large",height:68,menu:{items:[{text:"ACI Ultra",value:"ultra",group:"theme-style",checked:true},{text:"n54 Outline",value:"outline",group:"theme-style",disabled:true},{text:"phpBB3",value:"phpbb3",group:"theme-style",disabled:true},{text:"Invision",value:"invision",group:"theme-style",disabled:true}]}}]},{xtype:"buttongroup",title:Translate("Columns"),titlePosition:"bottom",columns:2,items:[{text:Translate("Columns"),rowspan:2,iconAlign:"top",iconCls:"ac-columns-icon ac-columns-two-l-r",arrowAlign:"bottom",scale:"large",height:70,plugins:"makefield",name:"layout.type",menu:{listeners:{itemClick:function(baseItem,e){baseItem.ownerCt.ownerCt.setValue(baseItem.itemId);
baseItem.setChecked(true);TD.LayoutCallbacks.changeColumnConfig(baseItem,e)},beforeshow:function(menu){var v=menu.ownerCt.getValue();var i=menu.items.get(v);if(i){i.setChecked(true)}}},items:[{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-columns ac-columns-none"> '+(showColName?"No Columns":""),group:"ac-columns",xtype:"menucheckitem",itemId:"single-column",value:{secondary:"none",extra:"none",cls:"ac-columns-icon ac-columns-none"}},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-columns ac-columns-one-l"> '+(showColName?"Single Column on Left":""),group:"ac-columns",xtype:"menucheckitem",itemId:"two-column-left",value:{secondary:"left",extra:"none",cls:"ac-columns-icon ac-columns-one-l"}},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-columns ac-columns-one-r"> '+(showColName?"Single Column on Right":""),group:"ac-columns",xtype:"menucheckitem",itemId:"two-column-right",value:{secondary:"right",extra:"none",cls:"ac-columns-icon ac-columns-one-r"}},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-columns ac-columns-two-l-r"> '+(showColName?"Two Columns":""),group:"ac-columns",checked:true,xtype:"menucheckitem",itemId:"three-column-left-right",hidden:true,value:{main:"left",extra:"right",cls:"ac-columns-icon ac-columns-two-l-r"}},{text:'<img src="'+Ext.BLANK_IMAGE_URL+'" class="ac-columns ac-columns-two-r-l"> '+(showColName?"Two Columns Switched Sides":""),group:"ac-columns",xtype:"menucheckitem",itemId:"three-column-right-left",hidden:true,value:{main:"right",extra:"left",cls:"ac-columns-icon ac-columns-two-r-l"}}]}},{xtype:"container",layout:"form",itemId:"column-main",labelAlign:"right",labelWidth:130,width:230,items:[{xtype:"length-duo",name:"layout.column.secondary.width",fieldLabel:Translate("Sidebar Column (yellow)"),value:60}]},{xtype:"container",layout:"form",itemId:"column-extra",labelAlign:"right",labelWidth:130,width:230,items:[{xtype:"sliderfield",width:80,name:"sheet.column.extra.width",fieldLabel:Translate("Extra Column (red)"),value:40}]}]},{xtype:"buttongroup",title:Translate("Header &amp; Footer"),titlePosition:"bottom",columns:1,defaults:{width:100},items:[{text:"Header",menu:{items:[{xtype:"actd.textblocktabs",prefix:"layout.content.header",width:640}]}},{text:"Footer",menu:{items:[{xtype:"actd.textblocktabs",prefix:"layout.content.footer",width:640}]}}]},{xtype:"buttongroup",title:Translate("Content Sections"),titlePosition:"bottom",defaults:{width:80},items:[{text:"All",menu:{items:[{xtype:"actd.textblocktabs",prefix:"layout.content.all",width:640}]}}]},{xtype:"buttongroup",title:Translate("Single Column"),titlePosition:"bottom",defaults:{width:80},items:[{text:"Column 1",menu:{items:[{xtype:"actd.textblocktabs",prefix:"layout.column1",width:640}]}}]},{xtype:"buttongroup",title:Translate("Two Column"),titlePosition:"bottom",columns:1,defaults:{width:80},items:[{text:"Column 1",menu:{items:[{xtype:"actd.textblocktabs",prefix:"layout.column1",width:480}]}},{text:"Column 2",menu:{xtype:"2colmenu",items:[{xtype:"actd.textblocktabs",prefix:"layout.twocolumn.column2.column",width:480,title:"Column"},{xtype:"actd.textblocktabs",prefix:"layout.twocolumn.column2.block",width:480,title:"Block"},{xtype:"actd.textblocktabs",prefix:"layout.twocolumn.column2.block.header",width:480,title:"Block Header"},{xtype:"actd.textblocktabs",prefix:"layout.twocolumn.column2.block.item",width:480,title:"Block Item"},{title:"Thumbnail",xtype:"actd.image",height:248,prefix:"layout.twocolumn.column2.block.item.thumbnail",scale:TD.ux.Image.Thumbnail.Scale},]}}]},"->",{xtype:"actd.save"}]};
TD.ButtonTheming=Ext.extend(Ext.ux.MenuForm,{constructor:function(config){config=config||{};var prefix=config.prefix;config=Ext.apply({},config,{items:[{xtype:"selectbox",name:prefix+".display",fieldLabel:Translate("Display"),store:[["show","Show"],["hide","Hide"],["fade","Fade-In"],["slide","Slide-In"]]},{xtype:"sliderfield",name:prefix+".height",fieldLabel:Translate("Height"),minValue:20,maxValue:50,keyIncrement:5,increment:5,width:170,tip:true,unit:"px"},{xtype:"actd.button-style",fieldLabel:Translate("Background"),frame:false,cls:"x-toolbar",bodyStyle:"width:320px",prefix:prefix+".background"},{xtype:"actd.border",fieldLabel:Translate("Border"),frame:false,cls:"x-toolbar",bodyStyle:"width:320px",prefix:prefix+".border"},{name:prefix+".font",xtype:"actd.fontpanel",frame:false,border:false,previewHidden:true,hidden:config.fontHidden,bodyStyle:"background:transparent",fieldLabel:Translate("Font")}]});TD.ButtonTheming.superclass.constructor.call(this,config)}});Ext.reg("actd.buttonthememenu",TD.ButtonTheming);
TD.Navigation={title:Translate("Navigation"),iconCls:"navigation24",itemId:"navigation",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Menu Sets",themeType:"navigation"},{xtype:"buttongroup",title:Translate("Navigation"),titlePosition:"bottom",columns:1,defaults:{style:"padding:0 0 1px 0",width:80,scale:"medium"},defaultType:"boolbuttonfield",items:[{text:Translate("Menu Bar"),name:"navigation.menubar.display"},{text:Translate("Breadcrumbs"),name:"navigation.breadcrumbs.display"},{text:Translate("Sidebar"),name:"navigation.sidebar.display"}]},{xtype:"buttongroup",itemId:"menubar",title:Translate("Menu Bar"),titlePosition:"bottom",columns:1,items:[{xtype:"button",scale:"xlarge",text:Translate("Background"),menu:{xtype:"actd.buttonthememenu",prefix:"navigation.menubar.bar",fontHidden:true}},TD.PositionButton({prefix:"navigation.menubar",scale:"large"})]},{xtype:"buttongroup",itemId:"menuitemstyles",title:Translate("Items"),titlePosition:"bottom",columns:2,defaults:{scale:"medium"},items:[TD.PositionButton({scale:"medium",prefix:"navigation.menubar.mainitems"}),{xtype:"button",text:Translate("Normal"),menu:{xtype:"actd.buttonthememenu",prefix:"navigation.menubar.mainitems.normal"}},{xtype:"button",text:Translate("Width"),menu:{xtype:"menuform",defaults:{width:130},listenesrs:{render:function(menu){var current=TD.getCurrentRecord();
this.widthfield.setVisible(current.get(this.fixedfield.name))},delay:175},items:[{xtype:"actd.boxextent",labelWidth:100,name:"navigation.menubar.mainitems.padding",ref:"paddingfield",fieldLabel:Translate("Padding")},{xtype:"boolbuttonfield",fieldLabel:Translate("Fixed Width"),text:Translate("Fixed"),ref:"fixedfield",name:"navigation.menubar.mainitems.fixedwidth",setValue:function(v){Ext.ux.BoolButtonField.prototype.setValue.call(this,v);this.ownerCt.widthfield.setVisible(!!v);this.ownerCt.doLayout()}},{xtype:"length-duo",name:"navigation.menubar.mainitems.width",ref:"widthfield",fieldLabel:Translate("Width"),tip:true,minValue:50,maxValue:250}]}},{xtype:"button",text:Translate("Current"),menu:{xtype:"actd.buttonthememenu",prefix:"navigation.menubar.mainitems.current"}},{xtype:"boolbuttonfield",name:"navigation.menubar.mainitems.arrow.display",text:Translate("Arrows")},{xtype:"button",text:Translate("Hover"),menu:{xtype:"actd.buttonthememenu",prefix:"navigation.menubar.mainitems.hover"}}]},{xtype:"buttongroup",itemId:"menusubitemstyles",title:Translate("Subitems"),titlePosition:"bottom",columns:2,defaults:{scale:"medium",width:72},items:[{rowspan:3,xtype:"button",text:Translate("Menu Style"),iconAlign:"top",arrowAlign:"bottom",iconCls:" ",scale:"xlarge",menu:{xtype:"menuform",defaults:{width:130},items:[{xtype:"selectbox",name:"navigation.menubar.subitems.display",fieldLabel:Translate("Display"),store:[["show","Show"],["fade","Fade-In"],["slide","Slide-In"],["hide","Hide"]]},{xtype:"boolbuttonfield",name:"navigation.menubar.subitems.arrow.display",fieldLabel:Translate("Arrows"),text:Translate("Show")},{xtype:"selectbox",name:"navigation.menubar.subitems.type",fieldLabel:Translate("Sub-Menu Type"),store:[["horizontal","Horizontal Bar"],["vertical","Vertical Menu"]]},{xtype:"sliderfield",name:"navigation.menubar.subitems.levels",fieldLabel:Translate("Max Levels"),minValue:0,maxValue:10},{xtype:"length-duo",name:"navigation.menubar.subitems.minwidth",fieldLabel:Translate("Minimum Width"),tip:true,minValue:50,maxValue:250},{xtype:"actd.boxextent",name:"navigation.menubar.subitems.padding",fieldLabel:Translate("Padding"),tip:true,minValue:0,maxValue:50}]}},{xtype:"button",text:Translate("Normal"),menu:{xtype:"actd.buttonthememenu",prefix:"navigation.menubar.subitems.normal"}},{xtype:"button",text:Translate("Current"),menu:{xtype:"actd.buttonthememenu",prefix:"navigation.menubar.subitems.current"}},{xtype:"button",text:Translate("Hover"),menu:{xtype:"actd.buttonthememenu",prefix:"navigation.menubar.subitems.hover"}}]},"->",{xtype:"actd.save"}]};
TD.Blocks={title:Translate("Blocks"),iconCls:"blocks24",itemId:"blocks",xtype:"toolbar",defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Block Sets",themeType:"Block"},{xtype:"buttongroup",title:Translate("General"),titlePosition:"bottom",columns:2,defaults:{iconAlign:"left"},items:[{text:Translate("Subscribe Panel"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{title:Translate("Block"),xtype:"actd.textblocktabs",prefix:"block.panel.subscribe"},{title:Translate("Message"),xtype:"actd.textblocktabs",prefix:"block.panel.subscribe.top"},{title:Translate("Panel Main"),xtype:"actd.textblocktabs",prefix:"block.panel.subscribe.main"},{title:Translate("Form Container"),xtype:"actd.textblocktabs",prefix:"block.panel.subscribe.form.container"},{title:Translate("Login Box"),xtype:"actd.textblocktabs",prefix:"block.panel.subscribe.form.login"},{title:Translate("Signup Box"),xtype:"actd.textblocktabs",prefix:"block.panel.subscribe.form.signup"},{title:Translate("Term"),xtype:"actd.textblocktabs",prefix:"block.panel.subscribe.form.signup.term"}]}},{text:Translate("Search"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{title:"Results Block",xtype:"actd.textblocktabs",prefix:"search.results"},{title:"Results Block Header",xtype:"actd.textblocktabs",prefix:"search.results.header"},{title:"Results Item",xtype:"actd.textblocktabs",prefix:"search.results.item"},{title:"Results Item Header",xtype:"actd.textblocktabs",prefix:"search.results.item.header"},{title:"Results Item Body",xtype:"actd.textblocktabs",prefix:"search.results.item.body"},{title:"Results Item Separator",xtype:"actd.textblocktabs",prefix:"search.results.item.separator"},{title:"Search Box",xtype:"actd.textblocktabs",prefix:"search.module.box"},{title:"Search Box Header",xtype:"actd.textblocktabs",prefix:"search.module.box.header"},{title:"Search Input",xtype:"actd.textblocktabs",prefix:"search.module.box.input"},{title:"Search Button",xtype:"actd.textblocktabs",prefix:"search.module.box.button"}]}},{text:Translate("Cms Header"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{title:"Block",xtype:"actd.textblocktabs",prefix:"cms.header"},{title:"Title",xtype:"actd.textblocktabs",prefix:"cms.header.title"},{title:"Description",xtype:"actd.textblocktabs",prefix:"cms.header.description"}]}},{text:Translate("Breadcrumbs"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px;",width:640,items:[{title:"Breadcrumbs",xtype:"actd.textblocktabs",prefix:"cms.breadcrumbs"},{title:"Breadcrumbs Top",xtype:"actd.textblocktabs",prefix:"cms.breadcrumbs.top"},{title:"Breadcrumbs Bottom",xtype:"actd.textblocktabs",prefix:"cms.breadcrumbs.bottom"}]}},{text:Translate("Cms Page"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px;",width:640,items:[{title:"Page",xtype:"actd.textblocktabs",prefix:"page"},{title:"H1",xtype:"actd.textblocktabs",prefix:"page.h1"},{title:"H2",xtype:"actd.textblocktabs",prefix:"page.h2"},{title:"H3",xtype:"actd.textblocktabs",prefix:"page.h3"},{title:"Block",xtype:"actd.textblocktabs",prefix:"page.block"},{title:"Header",xtype:"actd.textblocktabs",prefix:"page.block.header"},{title:"Header H1",xtype:"actd.textblocktabs",prefix:"page.block.header.h1"},{title:"Header H2",xtype:"actd.textblocktabs",prefix:"page.block.header.h2"},{title:"Header H3",xtype:"actd.textblocktabs",prefix:"page.block.header.h3"},{title:"Body",xtype:"actd.textblocktabs",prefix:"page.block.body"}]}}]},"->",{xtype:"actd.save"}]};
TD.Blog={title:Translate("Blog"),iconCls:"blog24",itemId:"blog",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Blog Sets",group:"Blog",themeType:"blog"},{xtype:"buttongroup",title:Translate("Blog Post"),titlePosition:"bottom",columns:1,defaults:{iconAlign:"left"},items:[{text:Translate("Post"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{xtype:"box",cls:"menu-section",html:Translate("Post Section")},{title:Translate("Article"),xtype:"actd.textblocktabs",prefix:"blog.post"},{title:Translate("Featured Article"),xtype:"actd.textblocktabs",prefix:"blog.post.featured.sticky"},{title:Translate("Header"),xtype:"actd.textblocktabs",prefix:"blog.post.header"},{title:Translate("Header Title"),xtype:"actd.textblocktabs",prefix:"blog.post.title"},{title:Translate("Tag List"),xtype:"actd.textblocktabs",prefix:"blog.post.taglist"},{title:Translate("Content"),xtype:"actd.textblocktabs",prefix:"blog.post.content"}]}},{text:Translate("Comments"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{xtype:"box",cls:"menu-section",html:Translate("Comments Section")},{title:Translate("Block"),xtype:"actd.textblocktabs",prefix:"blog.comments"},{title:Translate("Header"),xtype:"actd.textblocktabs",prefix:"blog.comments.header"},{xtype:"box",cls:"menu-section",style:"padding:20px 20px 6px 0",html:Translate("Individual Comments")},{title:Translate("Comment Block"),xtype:"actd.textblocktabs",prefix:"blog.comments.post"},{title:Translate("Header"),xtype:"actd.textblocktabs",prefix:"blog.comments.post.header"},{title:Translate("Header Title"),xtype:"actd.textblocktabs",prefix:"blog.comments.post.header.title"},{title:Translate("Content"),xtype:"actd.textblocktabs",prefix:"blog.comments.post.content"}]}}]},{xtype:"buttongroup",width:320,itemId:"menubar",title:Translate("Article Group"),titlePosition:"bottom",columns:1,items:[{xtype:"button",text:Translate("Group Title"),menu:{xtype:"menuform",labelAlign:"right",labelWidth:90,defaults:{style:"height:100%"},layout:"toolbar",items:[{prefix:"blog.articlegroup.title",xtype:"actd.fontbutton",title:Translate("Font")},{xtype:"buttongroup",title:Translate("border"),layout:"form",defaults:{width:120},items:[{xtype:"buttongroup",isFormField:true,fieldLabel:Translate("Bottom"),width:240,items:[{xtype:"textfield",name:"blog.articlegroup.title.border.bottom.width",width:50},{xtype:"selectbox",name:"blog.articlegroup.title.border.bottom.width.unit",store:[["em","em"],["px","px"]],width:50},{xtype:"selectbox",store:[["solid","Solid"],["dotted","Dotted"]],width:80,name:"blog.articlegroup.title.border.bottom.style"},{xtype:"themecolorbutton",allowOtherMenus:true,name:"blog.articlegroup.title.border.bottom.color"}]},{xtype:"button",fieldLabel:Translate("Top Border"),text:Translate("Select"),menu:{items:[{xtype:"buttongroup",width:300,height:500,html:"<b>Some Nifty Html here</b>"}],allowOtherMenus:true}}]}]}},{xtype:"button",text:Translate("Group Section"),menu:{xtype:"menuform",labelAlign:"right",labelWidth:90,defaults:{width:130},items:[{xtype:"themecolorbutton",text:Translate("Background Color"),name:"blog.articlegroup.border.color",fieldLabel:Translate("Color")},{xtype:"selectbox",name:"blog.articlegroup.title.align",fieldLabel:Translate("Align"),store:[["left","Left"],["center","Center"],["right","Right"]]}]}},{xtype:"button",text:Translate("Block"),menu:{xtype:"menuform",labelAlign:"right",labelWidth:90,defaults:{width:130},items:[{xtype:"themecolorbutton",text:Translate("Color"),name:"blog.articlegroup.background.color",fieldLabel:Translate("Color")},{xtype:"selectbox",name:"blog.articlegroup.title.align",fieldLabel:Translate("Align"),store:[["left","Left"],["center","Center"],["right","Right"]]}]}}]},"->",{xtype:"actd.save"}]};
TD.Page={title:Translate("Page"),iconCls:"page24",itemId:"page",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Page",themeType:"page"},"->",{xtype:"actd.save"}]};TD.Desk={title:Translate("Desk"),iconCls:"desk24",itemId:"desk",xtype:"toolbar",border:false,defaultType:"buttongroup",defaults:{height:TD.GROUPHEIGHT,titlePosition:"bottom"},items:[{xtype:"actd.choose",tabTitle:"Design Set",themeType:"sheet"},{title:Translate("Desk Background"),xtype:"actd.background",prefix:"sheet.sides.background"},"->",{xtype:"actd.save"}]};TD.Sheet={title:Translate("Sheet"),iconCls:"sheet24",itemId:"sheet",xtype:"toolbar",border:false,defaultType:"buttongroup",defaults:{height:TD.GROUPHEIGHT,titlePosition:"bottom"},items:[{xtype:"actd.choose",tabTitle:"Layout",themeType:"sheet"},{hidden:true,title:Translate("Sheet"),items:[{text:Translate("Sheet Design"),iconAlign:"top",iconCls:"write32",arrowAlign:"bottom",scale:"large",height:68,plugins:"makefield",name:"theme.sheet",menu:{listeners:{itemclick:function(item,e){this.ownerCt.setValue(item.itemId)
},beforeshow:function(menu){var v=this.ownerCt.getValue();var i=menu.items.get(v);if(i){i.setChecked(true)}},delay:1},items:[{text:Translate("Simple"),disabled:true,group:"theme-sheet",itemId:"simple",checked:false},{text:Translate("Balloons"),disabled:true,group:"theme-sheet",itemId:"balloons",checked:false},{text:Translate("Boxes"),group:"theme-sheet",itemId:"boxes",checked:true}]}}]},{title:Translate("Sheet Dimentions"),items:[{xtype:"container",layout:"form",labelAlign:"right",labelWidth:40,defaults:{width:80},width:130,items:[{name:"sheet.width",fieldLabel:Translate("Width"),xtype:"length-combo",scale:{em:{defaultValue:100,scaleMin:10,scaleMax:250,sliderPrecision:1,valuePrecision:2,matchChars:["e","E"]},px:{defaultValue:940,scaleMin:100,scaleMax:2000,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]},"%":{defaultValue:70,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:1,matchChars:["%"]}},store:["750px","940px","1240px","70%","80%","95%"]},{xtype:"selectbox",name:"sheet.height",fieldLabel:Translate("Height"),store:[["100%","Full Page"],["auto","Shrink To Fit"]]},{xtype:"button",text:Translate("Override CSS"),anchor:"0",menu:{xtype:"menuform",layout:"fit",items:[{height:350,width:450,name:"theme.overridecss",xtype:"textarea"}]}}]}]},{title:Translate("Sheet Background"),xtype:"actd.background",prefix:"sheet.center.background"},{title:Translate("Shadow / Transition"),xtype:"actd.transition",prefix:"sheet.page.transition"},"->",{xtype:"actd.save"}]};
TD.ux.Image.Thumbnail.Scale={px:{defaultValue:120,scaleMin:20,scaleMax:240,sliderPrecision:0,valuePrecision:0,matchChars:["p","P"]},"%":{defaultValue:100,scaleMin:0,scaleMax:100,sliderPrecision:0,valuePrecision:0,matchChars:["%"]}};TD.Video={title:Translate("Video"),iconCls:"video24",itemId:"video",xtype:"toolbar",defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Video Sets",themeType:"video"},{xtype:"buttongroup",title:Translate("Main"),titlePosition:"bottom",columns:1,defaults:{width:80},items:[{text:Translate("Title"),menu:{xtype:"actd.textblockmenu",prefix:"video.playlist.title"}}]},{xtype:"buttongroup",title:Translate("Video Post"),titlePosition:"bottom",columns:1,defaults:{iconAlign:"left"},items:[{text:Translate("Post"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{xtype:"box",cls:"menu-section",html:Translate("Post Section")},{title:Translate("Block"),xtype:"actd.textblocktabs",prefix:"video.post"},{title:Translate("Player"),xtype:"actd.textblocktabs",prefix:"video.post.player"},{title:Translate("Header"),xtype:"actd.textblocktabs",prefix:"video.post.header"},{title:Translate("Header Title"),xtype:"actd.textblocktabs",prefix:"video.post.title"},{title:Translate("Tag List"),xtype:"actd.textblocktabs",prefix:"video.post.taglist"},{title:Translate("Content"),xtype:"actd.textblocktabs",prefix:"video.post.content"},{title:Translate("Transcript"),xtype:"actd.textblocktabs",prefix:"video.post.transcript"}]}},{text:Translate("Comments"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"padding-top:25px",width:640,items:[{xtype:"box",cls:"menu-section",html:Translate("Comments Section")},{title:Translate("Block"),xtype:"actd.textblocktabs",prefix:"video.comments"},{title:Translate("Header"),xtype:"actd.textblocktabs",prefix:"video.comments.header"},{xtype:"box",cls:"menu-section",style:"padding:20px 20px 6px 0",html:Translate("Individual Comments")},{title:Translate("Comment Block"),xtype:"actd.textblocktabs",prefix:"video.comments.post"},{title:Translate("Header"),xtype:"actd.textblocktabs",prefix:"video.comments.post.header"},{title:Translate("Header Title"),xtype:"actd.textblocktabs",prefix:"video.comments.post.header.title"},{title:Translate("Content"),xtype:"actd.textblocktabs",prefix:"video.comments.post.content"}]}}]},{xtype:"buttongroup",title:Translate("Video List"),titlePosition:"bottom",columns:1,defaults:{iconAlign:"left"},items:[{text:Translate("Group"),listeners:{mouseover:function(){var items=Ext.DomQuery.jsSelect(".CmsVideo .video-list");
Ext.each(items,function(item){Ext.fly(item).setOpacity(0.8,{duration:0.1,callback:function(){Ext.fly(item).setStyle("background-color","yellow")}})})},mouseout:function(){var items=Ext.DomQuery.jsSelect(".CmsVideo .video-list");Ext.each(items,function(item){Ext.fly(item).setStyle("background-color",null);Ext.fly(item).clearOpacity()})}},menu:{xtype:"2colmenu",changeOnHover:true,col1style:"",width:640,items:[{xtype:"box",cls:"menu-section",style:"font-weight:bold;padding:20px 20px 6px 0;color:#555;text-decoration:underline",html:Translate("List Section")},{title:Translate("List"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list"},{title:Translate("List Header"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list.header"},{title:Translate("List Header Title"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list.header.title"},{title:Translate("List Separator"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list.separator"}]}},{text:Translate("Item"),menu:{xtype:"2colmenu",changeOnHover:true,col1style:"text-align:right;margin-right:-2px",width:640,items:[{xtype:"box",cls:"menu-section",style:"font-weight:bold;padding:20px 20px 6px 0;color:#555;text-decoration:underline",html:Translate("List Items")},{title:Translate("Block"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list.item"},{title:Translate("Block Dragover"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list.item.dragover"},"-",{title:"Thumbnail",xtype:"actd.image",height:248,prefix:"video.sidebar.list.item.thumbnail",scale:TD.ux.Image.Thumbnail.Scale},{title:Translate("Header"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list.item.header"},{title:Translate("Content"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list.item.content"},{title:Translate("Footer"),xtype:"actd.textblocktabs",prefix:"video.sidebar.list.item.footer"},"-",{title:Translate("Separator"),xtype:"form",height:248,items:[{xtype:"length-duo",fieldLabel:"Separator Height",name:"video.sidebar.list.item.separator.height"}]}]}}]},"->",{xtype:"actd.save"}]};
TD.ux.Image=Ext.extend(Ext.TabPanel,{constructor:function(config){config=Ext.apply({},config,{activeTab:0,plain:true,items:[{xtype:"form",title:"Base",items:[{xtype:"length-duo",name:config.prefix+".width",fieldLabel:"width",scale:config.scale},{xtype:"selectbox",name:config.prefix+".float",store:["left","right","none"],fieldLabel:"Float"},{xtype:"selectbox",name:config.prefix+".display",store:["inline","block","none"],fieldLabel:"Display"}]},{title:Translate("Border"),xtype:"actd.border",frame:false,prefix:config.prefix+".border"},{xtype:"actd.spacing",prefix:config.prefix}]});TD.ux.Image.superclass.constructor.call(this,config)}});Ext.reg("actd.image",TD.ux.Image);TD.Widgets={title:Translate("Widgets"),advanced:true,iconCls:"widgets24",itemId:"widgets",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Widget Set",themeType:"widget"},"->",{xtype:"actd.save"}]};TD.Wiki={title:Translate("Wiki"),iconCls:"wiki24",itemId:"wiki",xtype:"toolbar",border:false,defaults:{height:TD.GROUPHEIGHT},items:[{xtype:"actd.choose",tabTitle:"Wiki",themeType:"wiki"},"->",{xtype:"actd.save"}]};
Ext.namespace("Ext.ux.form");(function(){var s;s=document.createElement("script");s.src="/_/staticac/cdolivet.com,bsd/editarea_0_8_2/edit_area_loader.js";s.type="text/javascript";s.onloadDone=false;document.getElementsByTagName("head")[0].appendChild(s)})();Ext.ux.form.EditArea=Ext.extend(Ext.form.TextArea,{style:"display:none",initComponent:function(){Ext.ux.form.EditArea.superclass.initComponent.apply(this,arguments);this.initComponentLate()},loadEditArea:function(){var s,me=this;s=document.createElement("script");s.src="/_/staticac/cdolivet.com,bsd/editarea_0_8_2/edit_area_loader.js";s.type="text/javascript";s.onloadDone=false;function init(){if(s.onloadDone){return}s.onloadDone=true;me.initComponentLate()}s.onload=init;s.onreadystatechange=function(){if(("loaded"===s.readyState||"complete"===s.readyState)&&!s.onloadDone){init()}};docuthisnt.getElethisntsByTagNathis("head")[0].appendChild(s)},initComponentLate:function(){this.eaid=this.id;this.on({resize:{fn:function(ta,width,height){var el=Ext.get("frame_"+this.eaid);
if(el){el.setSize(width,height)}},buffer:500},show:function(){editAreaLoader.show(this.eaid)},hide:function(){editAreaLoader.hide(this.eaid)},destroy:function(){editAreaLoader.delete_instance(this.eaid)},render:{fn:function(){editAreaLoader.init(Ext.copyTo({id:this.eaid,start_highlight:true,language:"en",allow_toggle:false,allow_resize:false,replace_tab_by_spaces:4,toolbar:"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, highlight, reset_highlight, |, word_wrap, |, help",is_editable:true},this.initialConfig,"EA_file_switch_on_callback,EA_file_switch_off_callback,EA_file_close_callback,change_callback,replace_tab_by_spaces,cursor_position,start_highlight,syntax,allow_toggle,allow_resize,replace_tab_by_spaces,toolbar,is_editable,font_size,font_family,is_multi_files"))},delay:200},scope:this},this)},setDisabled:function(e){Ext.ux.form.EditArea.superclass.setDisabled.call(this,e);editAreaLoader.execCommand(this.eaid,"set_editable",!e)},getValue:function(){var v=editAreaLoader.getValue(this.eaid);
Ext.ux.form.EditArea.superclass.setRawValue.call(this,v);return v},setValue:function(v){Ext.ux.form.EditArea.superclass.setValue.call(this,v);editAreaLoader.setValue(this.eaid,v)},validate:function(){this.getValue();Ext.ux.form.EditArea.superclass.validate.apply(this,arguments)}});Ext.reg("editarea",Ext.ux.form.EditArea);TD.widget.EditFieldDefinitions=Ext.extend(Ext.menu.Item,{text:Translate("Edit Fields"),handler:function(btn){if(!this.win){var data=[],store=TD.FieldDefinitionStore,groups;groups=store.collect("acgroup",false,true);var checkColumn=new Ext.grid.CheckColumn({header:"Include",dataIndex:"include",width:55});this.win=new Ext.Window({title:Translate("Edit Theme Fields"),closeAction:"hide",layout:"fit",border:false,height:400,width:800,maximizable:true,items:[{xtype:"editorgrid",ref:"gridpanel",autoExpandColumn:"defaultValue",clicksToEdit:1,autoFill:true,sm:new Ext.grid.RowSelectionModel({singleSelect:true,listeners:{selectionchange:function(sm){sm.grid.removeBtn.setDisabled(sm.getCount()<1)}}}),store:TD.FieldDefinitionStore,view:new Ext.grid.GroupingView({}),plugins:checkColumn,colModel:new Ext.grid.ColumnModel({defaults:{width:120,sortable:true},columns:[new Ext.grid.RowNumberer(),{header:"Group",groupable:true,dataIndex:"acgroup",editor:new Ext.ux.SelectBox({lazyRender:true,store:groups})},checkColumn,{header:"Name",width:200,dataIndex:"name",editor:new Ext.form.TextField({})},{header:"Type",dataIndex:"type",editor:new Ext.ux.SelectBox({lazyRender:true,store:[["auto","Auto (no conversion)"],["int","Integer"],["float","Float"],["string","String"],["boolean","Boolean"]]}),xtype:"combocolumn"},{header:"Editor",dataIndex:"editor",editor:new Ext.ux.SelectBox({lazyRender:true,store:[["","(default)"],["textfield","Text"],["integerfield","Integer"],["numberfield","Float"],["checkbox","Boolean"],["colorbutton","Color"],["themecolorbutton","Theme Color"]]}),xtype:"combocolumn"},{id:"defaultValue",header:"Default Value",dataIndex:"defaultValue",editor:new Ext.form.TextField({}),renderer:function(v,d,r,i,n,s){var match=/{(.+)}/.exec(v);
if(match){var regex=new RegExp("^"+match[1]+"$","i");var fmatch=s.query("name",regex);if(fmatch.length){return'<span style="color:green">'+v+"</span>"}else{return'<span style="color:red">'+v+"</span>"}}return v}}]}),tbar:[{text:Translate("Add Field"),handler:function(btn){var store=TD.FieldDefinitionStore,r=new store.recordType({name:"???",acgroup:"",include:true,type:"string",editor:"textfield",defaultValue:""}),grid=btn.ownerCt.ownerCt;grid.stopEditing();store.insert(0,r);grid.getView().refresh();grid.getSelectionModel().selectRow(0);grid.startEditing(0,0)}},{ref:"removeBtn",text:Translate("Remove Field"),disabled:true,handler:function(btn){var store=TD.FieldDefinitionStore,grid=btn.ownerCt.ownerCt;grid.stopEditing();var s=grid.getSelectionModel().getSelections();for(var i=0,r;r=s[i];i++){store.remove(r)}}},"-",{text:Translate("Refresh"),handler:function(btn){var grid=btn.ownerCt.ownerCt;grid.store.groupBy(grid.store.groupField,true)}},"->",{xtype:"tbtext",text:Translate("Group Filter:&nbsp;")},{xtype:"textfield",fieldLabel:Translate("filter"),enableKeyEvents:true,listeners:{keypress:function(field,e){if(e.getCharCode()==e.RETURN||true){var store=TD.FieldDefinitionStore;
store.filter("acgroup",field.getValue())}}}}]}],buttons:[{text:Translate("Try"),scope:btn,handler:btn.tryNewFields},{text:Translate("Revert"),scope:btn,handler:btn.cancel},{xtype:"splitbutton",text:Translate("Save Fields to File"),scope:btn,handler:btn.saveNewFields,menu:{items:{text:Translate("Save Fields to File And SVN"),scope:btn,handler:btn.saveNewFieldsSVN}}}]})}this.win.show()},tryNewFields:function(btn){for(var group in TD.stores){var fields=[],records,reader=TD.stores[group].current.reader;if(group=="Theme"){records=TD.FieldDefinitionStore.query("include",true).items}else{records=TD.FieldDefinitionStore.query("acgroup",group).items}records.each(function(item){fields.push((item.data))});reader.onMetaChange({idProperty:group.toLowerCase()+".id",root:"",fields:fields})}this.applyCss()},applyCss:function(){TD.cssTemplate=null;TD.repaint()},saveNewFieldsSVN:function(btn){Ext.MessageBox.prompt("SVN Commit","SVN Commit message:",function(msgbtn,text){if(msgbtn=="ok"){this.saveNewFields(btn)}},this,false,"Theme Designer Fields Change")
},saveNewFields:function(btn){var editor=this.win,all=[];editor.el.mask();var store=editor.gridpanel.store,groups=store.collect("acgroup",false,true);groups.each(function(group){var results=[],records=store.query("acgroup",group);for(var i=0;i<records.length;i++){all.push(records.items[i].data)}});editor.gridpanel.getView().refresh();AppCenter.api.core.ThemeDesigner.saveFields(Ext.ux.JSON.encode(all,false,false,true),function(){editor.el.unmask();editor.gridpanel.store.commitChanges();editor.getEl().frame()})},cancel:function(btn){this.win.gridpanel.store.rejectChanges();this.win.gridpanel.store.reload();this.tryNewFields()}});Ext.reg("actd-editfielddefinitions",TD.widget.EditFieldDefinitions);TD.widget.JsonEditor=Ext.extend(Ext.form.TextArea,{setValue:function(value){if(typeof value=="string"){TD.widget.JsonEditor.superclass.setValue.call(this,value)}else{TD.widget.JsonEditor.superclass.setValue.call(this,Ext.encode(value))}},get2Value:function(){var value=TD.widget.JsonEditor.superclass.getRawValue.call(this);
try{return Ext.decode(value)}catch(e){}}});Ext.reg("jsonarea",TD.widget.JsonEditor);TD.widget.EditFieldValues=Ext.extend(Ext.menu.Item,{text:Translate("Edit Current Record"),addFields:function(formpanel,group){var items=[],store=TD.FieldDefinitionStore,records=store.query("acgroup",group),current=TD.getCurrentRecord();formpanel.items.each(formpanel.remove,formpanel);for(var i=0;i<records.length;i++){var field=records.items[i].data;if(field.name!="css"&&field.include){items.push({allowOtherMenus:true,fieldLabel:field.name,itemId:field.name,name:field.name,xtype:field.editor!=undefined&&field.editor!=""?field.editor:field.type=="int"?"integerfield":field.type=="boolean"?"checkbox":"textfield"})}}formpanel.add(items);for(var i=0;i<records.length;i++){var field=records.items[i].data,value=current.data[field.name],formfield=formpanel.items.get(field.name);if(formfield){formpanel.items.get(field.name).setValue(value)}}formpanel.doLayout()},editCurrent:function(item,main){if(!item.win){item.win=new Ext.Window({title:Translate("Current ")+item.text,closeAction:"hide",border:false,height:400,width:660,layout:"fit",items:{layout:"form",ref:"formpanel",autoScroll:true,padding:8,labelWidth:300,defaults:{width:300,colorWidth:100},listeners:{render:function(){var formpanel=this;
formpanel.on({scope:TD.ribbon,add:TD.ribbon.onAddEvent,remove:TD.ribbon.onRemoveEvent});main.addFields(this,item.text)},delay:50}}})}item.win.show();TD.stores.theme.current.on("metachange",main.addFields.createDelegate(main,[item.win.formpanel,item.text]))},constructor:function(config){var main=this;config.menu={items:[],listeners:{beforeShow:function(menu){var store=TD.FieldDefinitionStore,groups=store.collect("acgroup",false,true);groups.each(function(group){this.add({text:group,handler:function(item){main.editCurrent(item,main)}})},this)},single:true}};TD.widget.EditFieldValues.superclass.constructor.call(this,config)}});Ext.reg("actd-editfieldvalues",TD.widget.EditFieldValues);TD.widget.EditFieldTree=Ext.extend(Ext.menu.Item,{text:"Edit Current TREE",convert:function(json,id){var children=[],item,child,itemid;if(Ext.isPrimitive(json)){children.push({uiProvider:"col",text:json,id:id+".value",field:id,leaf:true})}else{id=id?id+".":"";for(item in json){child=json[item];itemid=id+item;children.push({uiProvider:"col",text:item,id:itemid,children:this.convert(child,itemid),leaf:false})
}}return children},handler:function(item,main){if(!item.win){item.win=new Ext.Window({title:item.text,closeAction:"close",border:false,height:400,width:700,layout:"fit",items:{xtype:"columntree",title:"Stuff",ref:"tree",useArrows:true,autoScroll:true,animate:true,border:false,columns:[{header:"Node / Value",width:420,dataIndex:"text"},{header:"Ribbon field name",width:230,dataIndex:"field"}],loader:{preloadChildren:true,uiProviders:{col:Ext.tree.ColumnTreeNodeUI}},root:{children:this.convert(TD.getCurrentRecord().data.Definition),nodeType:"async",text:"root",leaf:false},rootVisible:false}});var ge=new Ext.tree.TreeEditor(item.win.tree,{},{allowBlank:true,blankText:"No value",selectOnFocus:true,ignoreNoChange:true,cancelOnEsc:true,editDelay:10,listeners:{beforestartedit:function(editor){return editor.editNode.attributes.leaf==true},complete:function(editor,value,startValue){var node=editor.editNode.attributes;if(node.leaf){var names=node.field.split("."),i=0;var current=TD.getCurrentRecord(),def=current.data.Definition,currentNode=def;
for(i;i<names.length-1;i++){currentNode=currentNode[names[i]]}currentNode[names[i]]=value;current.dirty=true;TD.setRibbonValues(def);TD.repaint()}}}})}item.win.show();item.win.tree.getRootNode().expand();item.win=undefined}});Ext.reg("actd-editfieldtree",TD.widget.EditFieldTree);function openfile(win,id,file){win.originalCss[file]=TD.cssTpl[file];var result=false;try{result=editAreaLoader.openFile(id,{id:file,text:TD.cssTpl[file],syntax:"css",do_highlight:true})}catch(e){}if(!result){openfile.defer(250,this,[win,id,file])}}TD.widget.EditCSS=Ext.extend(Ext.menu.Menu,{listeners:{beforeshow:function(){var menu=this;if(menu.items.length==0){var items=[];if(menu.isDebugMenu){items=[{text:Translate("Show Window"),itemId:"showwin",handler:function(item){if(!menu.CssEditor){menu.CssEditor=new TD.widget.CssEditor()}menu.CssEditor.show()}},{xtype:"menuseparator",itemId:"showwinsep"}]}for(var file in TD.cssTpl){if(file=="main.css"){filename="<b>"+file+"</b>"}else{filename=file}var p=filename.match(/([a-zA-Z\.\-]+)\/(.*)/);
if(p){var m=Ext.menu.MenuMgr.get("cssdebug"+p[1]);if(!m){items.push({text:p[1],menu:m=new Ext.menu.Menu({id:"cssdebug"+p[1]})})}if(p[1]+".css"==p[2]){filename="<b>"+p[2]+"</b>"}else{filename=p[2]}}var newitem={text:filename,file:file,handler:function(item){menu.CssEditor=Ext.getCmp("csseditor");if(!menu.CssEditor){menu.CssEditor=new TD.widget.CssEditor()}menu.CssEditor.show();menu.editarea=menu.CssEditor.editarea.eaid;openfile.defer(100,this,[menu.CssEditor,menu.editarea,item.file])}};if(p){m.add(newitem)}else{items.push(newitem)}}this.add(items)}},single:true}});Ext.reg("actd-editcssmenu",TD.widget.EditCSS);TD.widget.EditCSSitem=Ext.extend(Ext.menu.Item,{text:Translate("Edit CSS File"),menu:{xtype:"actd-editcssmenu",isDebugMenu:true}});Ext.reg("actd-editcssmenuitem",TD.widget.EditCSSitem);TD.widget.CssEditor=Ext.extend(Ext.Window,{constructor:function(){var me=this;TD.widget.CssEditor.superclass.constructor.call(this,{id:"csseditor",closeAction:"hide",constrainHeader:true,layout:"fit",border:false,height:600,width:900,title:Translate("Edit CSS"),border:false,minimizable:true,maximizable:true,defaultButton:"save",autoScroll:false,style:"z-index:25",items:[{xtype:"editarea",style:'font-family:Consolas, "Courier New", Courier, monospace',syntax:"css",font_size:8,font_family:'font-family:Consolas, "Courier New", Courier, monospace',ref:"editarea",value:" ",is_multi_files:true,cursor_position:"begin",replace_tab_by_spaces:4,EA_file_close_callback:"AppCenter.ThemeDesignerUtil.widget.CssEditor.prototype.fileClosed",EA_file_switch_on_callback:"AppCenter.ThemeDesignerUtil.widget.CssEditor.prototype.fileOpened",EA_file_switch_off_callback:"AppCenter.ThemeDesignerUtil.widget.CssEditor.prototype.fileBlur",change_callback:"AppCenter.ThemeDesignerUtil.widget.CssEditor.prototype.useCss"}],buttonAlign:"left",buttons:[{text:Translate("Regenerate Page CSS"),scope:me,handler:me.tryCss},{text:Translate("Use"),itemId:"use",scope:me,handler:me.useCss,hidden:true},{text:Translate("See Values"),id:"toggleSeeValues",enableToggle:true,scope:me,toggleHandler:me.toggleSeeValues},{xtype:"tbfill"},{text:Translate("Open CSS File"),itemId:"open",menu:{xtype:"actd-editcssmenu",isDebugMenu:false}},{text:Translate("Revert"),itemId:"revert",scope:me,handler:me.cancel},{text:Translate("Save CSS to File"),itemId:"save",scope:me,handler:me.saveCss}]})
},originalCss:{},hiddenCss:{},toggledFile:false,toggleSeeValues:function(btn,t){var current=TD.getCurrentRecord(),me=this;var file=me.getCurrentFile();if(t&&current){var values=TD.getJsonValuesForCSS(current);var text=me.hiddenCss[file]=me.editarea.getValue();var tpl=new TD.CssTemplate(text);var css=tpl.expand(values)||"<<blank>>";me.toggledFile=file;me.editarea.setDisabled(true);me.editarea.setValue(css);delete tpl}else{me.editarea.setValue(me.hiddenCss[file]);me.editarea.setDisabled(false);me.toggledFile=false}for(var i=0;i<me.buttons.length;i++){if(me.buttons[i].id!="toggleSeeValues"){me.buttons[i].setDisabled(t)}}},fileClosed:function(file){if(!file){return}var me=Ext.getCmp("csseditor");var files=editAreaLoader.getAllFiles(me.editarea.eaid);var c=0;for(var f in files){if(f!=file.id&&files.hasOwnProperty(f)){c++}}if(c==0){for(var i=0;i<me.buttons.length;i++){var b=me.buttons[i];if(!b.menu){b.setDisabled(true)}}}},fileBlur:function(file){var me=Ext.getCmp("csseditor");if(me.toggledFile){Ext.getCmp("toggleSeeValues").toggle(false)
}},fileOpened:function(file){if(!file){return}var me=Ext.getCmp("csseditor");if(me.toggledFile){Ext.getCmp("toggleSeeValues").toggle(false)}for(var i=0;i<me.buttons.length;i++){me.buttons[i].setDisabled(false)}},getCurrentFile:function(){return editAreaLoader.getCurrentFile(this.editarea.eaid).id},useCss:function(){var me=Ext.getCmp("csseditor");var file=me.getCurrentFile();if(file&&!me.toggledFile){var text=TD.cssTpl[file]=me.editarea.getValue();var tpl=new TD.CssTemplate(text,file)}},tryCss:function(){this.useCss();this.applyCss()},applyCss:function(){TD.repaint()},saveCss:function(){var me=this;var file=this.getCurrentFile();this.tryCss();AppCenter.api.core.ThemeDesigner.saveCSSFile(file,TD.cssTpl[file],function(){me.getEl().frame();editAreaLoader.execCommand(me.editarea.eaid,"set_file_edited_mode",file,false)})},cancel:function(){var me=this;var file=this.getCurrentFile();TD.cssTpl[file]=this.originalCss[file];this.editarea.setValue(this.originalCss[file]);this.applyCss();editAreaLoader.execCommand(me.editarea.eaid,"set_file_edited_mode",file,false)
}});function theme(){return TD.getCurrentRecord().data.Definition}window.theme=theme;window.TD=TD})();(function(){var a=ACI.viewmodel.admin.designers,b;a.WebSiteDesigner=Ext.extend(Ext.ux.Ribbon,{constructor:function(c){c=Ext.apply({title:Translate("Website Designer"),height:b.RIBBONHEIGHT+((Ext.isIE6||Ext.isIE7)?0:6),items:[{xtype:"aci.website-designer.settings"},{xtype:"aci.website-designer.header"},{xtype:"aci.website-designer.footer"},{xtype:"aci.website-designer.partners"}],activeTab:0,width:1000,trackResetOnLoad:true,setDefaultValues:function(){},listeners:{show:this.loadData}},c);b.superclass.constructor.call(this,c)},getData:function(){return this.jsondata},loadData:function(){if(!this.jsondata){this.startLoading();this.tabpanel.disable();AppCenter.api.core.WebSite.getSettings(this.loadDataComplete.createDelegate(this))}},loadDataComplete:function(d,c){this.stopLoading();this.tabpanel.enable();this.jsondata=d;this.form.setValuesViaJson(d)}});b=a.WebSiteDesigner;Ext.reg("aci.website-designer.ribbon",b);
b.RIBBONHEIGHT=170;b.GROUPHEIGHT=b.RIBBONHEIGHT-52;b.Settings=Ext.extend(Ext.Toolbar,{constructor:function(c){var e=this,d=120;c=Ext.apply({},{iconCls:"invoice24",title:Translate("Settings"),itemId:"settings",defaults:{height:b.GROUPHEIGHT,padding:"2px 4px 0 6px"},delayedItems:[{xtype:"buttongroup",titlePosition:"bottom",title:"Site Basics",layout:"form",ref:"form",labelAlign:"top",items:[{xtype:"textfield",width:180,name:"SiteTitle",fieldLabel:"Site Name"}]},{xtype:"buttongroup",titlePosition:"bottom",title:"Localization",layout:"form",labelWidth:120,hideMode:"offsets",labelAlign:"right",defaults:{width:225},items:[{xtype:"language",name:"Language"},{xtype:"country",name:"Country"},{xtype:"timezone",name:"TimeZone"},{xtype:"dstrule",name:"DstRule"}]},"->",{xtype:"aci.website-designer.save"}]},c);b.Settings.superclass.constructor.call(this,c)},initComponent:function(){b.Settings.superclass.initComponent.call(this)}});Ext.reg("aci.website-designer.settings",b.Settings);b.Save=Ext.extend(Ext.ButtonGroup,{constructor:function(c){var e=this,d=120;
c=Ext.apply({},{titlePosition:"bottom",title:Translate("Website Settings"),layout:"",defaults:{width:90},height:d-4,items:[{text:"Set Settings",iconCls:"invoice_write32",iconAlign:"top",scale:"large",handler:function(){e.ownerCt.ownerCt.getEl().mask(Translate("Setting Settings"),"x-mask-loading");var g=e.ownerCt.ownerCt.ownerCt.ownerCt,f=g.form.getAllValues();AppCenter.api.core.WebSite.saveSettings(f,this.saveComplete)},saveComplete:function(g,f){e.ownerCt.ownerCt.getEl().unmask();var h=e.ownerCt.ownerCt.ownerCt.ownerCt;h.jsondata=g;h.form.setValuesViaJson(g)}},{text:"Close",scale:"medium",handler:function(){var f=e.ownerCt.ownerCt.ownerCt.ownerCt;f.hide()}}]},c);b.Save.superclass.constructor.call(this,c)}});Ext.reg("aci.website-designer.save",b.Save);b.Header=Ext.extend(Ext.Toolbar,{constructor:function(c){var e=this,d=120;c=Ext.apply({},{iconCls:"header24",title:Translate("Header"),itemId:"Header",defaults:{height:b.GROUPHEIGHT},delayedItems:[{xtype:"buttongroup",layout:"form",title:"Header Settings",titlePosition:"bottom",labelAlign:"right",items:[{xtype:"textfield",name:"HeaderTitle",fieldLabel:"Title"},{xtype:"textfield",name:"HeaderSlogan",fieldLabel:"Slogan"},{xtype:"textfield",name:"Logo",fieldLabel:"Logo"}]},{xtype:"container",layout:"form",labelAlign:"right",items:[{width:495,height:91,xtype:"htmleditor",name:"Header",fieldLabel:"Header"}]},"->",{xtype:"aci.website-designer.save"}]},c);
b.Header.superclass.constructor.call(this,c)},initComponent:function(){b.Header.superclass.initComponent.call(this)}});Ext.reg("aci.website-designer.header",b.Header);b.Footer=Ext.extend(Ext.Toolbar,{constructor:function(c){var e=this,d=120;c=Ext.apply({},{iconCls:"footer24",title:Translate("Footer"),itemId:"Footer",defaults:{height:b.GROUPHEIGHT},delayedItems:[{xtype:"container",layout:"form",labelAlign:"right",items:[{height:91,xtype:"htmleditor",name:"Footer",fieldLabel:"Footer"}]},"->",{xtype:"aci.website-designer.save"}]},c);b.Footer.superclass.constructor.call(this,c)},initComponent:function(){b.Footer.superclass.initComponent.call(this)}});Ext.reg("aci.website-designer.footer",b.Footer);b.Layout=Ext.extend(Ext.Toolbar,{constructor:function(c){var e=this,d=120;c=Ext.apply({},{iconCls:"Layout24",title:Translate("Layout"),itemId:"Layout",defaults:{height:b.GROUPHEIGHT},delayedItems:[{xtype:"container",layout:"form",ref:"form",labelAlign:"right",style:"padding-top:30px;padding-left:30px",items:[]},"->",{xtype:"aci.website-designer.save"}]},c);
b.Layout.superclass.constructor.call(this,c)},initComponent:function(){b.Layout.superclass.initComponent.call(this)}});Ext.reg("aci.website-designer.layout",b.Layout);b.Partners=Ext.extend(Ext.Toolbar,{constructor:function(c){var e=this,d=120;c=Ext.apply({},{iconCls:"partner24",title:Translate("Partners"),itemId:"partners",defaults:{height:b.GROUPHEIGHT,padding:"2px 4px 0 6px"},delayedItems:[{xtype:"buttongroup",defaults:{width:320},title:"Webmaster Verification",titlePosition:"bottom",layout:"form",labelAlign:"right",labelWidth:60,items:[{xtype:"textfield",name:"GVerifyMETA",fieldLabel:"Google",emptyText:"enter meta tag from google.com/webmasters/tools/"},{xtype:"textfield",name:"BingVerifyMETA",fieldLabel:"Bing",emptyText:"enter meta tag from bing.com/webmaster/"},{xtype:"textfield",name:"YahooVerifyMETA",fieldLabel:"Yahoo!",emptyText:"enter meta tag from siteexplorer.search.yahoo.com"}]},{xtype:"buttongroup",defaults:{width:280},title:"Analytics",titlePosition:"bottom",layout:"form",labelAlign:"top",items:[{xtype:"textfield",name:"GAnalytics",vtype:"gAnalytics",fieldLabel:"Google Analytics ID",emptyText:"enter account id from google.com/analytics"}]},"->",{xtype:"aci.website-designer.save"}]},c);
b.Partners.superclass.constructor.call(this,c)},initComponent:function(){b.Partners.superclass.initComponent.call(this)}});Ext.reg("aci.website-designer.partners",b.Partners)})();(function(){var RoleGrid=ACI.view.admin.roles.RoleGrid=Ext.extend(Ext.grid.GridPanel,{constructor:function(config){var editor=new Ext.form.TextField();config=Ext.apply({},config,{title:Translate("Roles"),store:new Ext.data.GroupingStore({reader:ACI.model.Role.Reader,sortInfo:{field:"Weight",direction:"ASC"},groupField:"GroupName",proxy:new Ext.data.DirectProxy({directFn:AppCenter.api.core.AccessControl.getRoles}),autoLoad:true,listeners:{update:function(){this.store.groupBy("GroupName",true);this.view.refresh()}.createDelegate(this)}}),autoExpandColumn:"description",columns:[{id:"name",header:"Role",dataIndex:"RoleName",width:55,editor:editor},{header:"Group",dataIndex:"GroupName",hidden:true,editor:editor},{id:"description",header:"Description",dataIndex:"RoleDescription",editor:editor},{id:"weight",header:"Weight",dataIndex:"Weight",editor:editor,width:55}],view:new Ext.grid.GroupingView({forceFit:true,showGroupName:false})});
RoleGrid.superclass.constructor.call(this,config)}});var RolePermissionGridEdit=ACI.view.admin.roles.RolePermissionGridEdit=Ext.extend(Ext.grid.EditorGridPanel,{constructor:function(config){var me=this,API=AppCenter.api.core.AccessControl,checkColumn=new Ext.grid.CheckColumn({header:"On",dataIndex:"Enabled",width:12}),editor=new Ext.form.TextField();config=Ext.apply({},config,{title:Translate("Role Editor"),store:new Ext.data.GroupingStore({reader:ACI.model.Permission.Reader,writer:writer,sortInfo:{field:"Name",direction:"ASC"},groupField:"GroupName",proxy:new Ext.data.DirectProxy({paramOrder:["RoleId"],api:{read:API.getRolePermissions,update:API.updateRolePermissions}}),autoLoad:false,listeners:{beforeload:function(){me.getEl().mask(Translate("Loading permissions&hellip;"))},load:function(){me.getEl().unmask()}}}),autoExpandColumn:"description",columns:[checkColumn,{id:"name",header:"Permission",dataIndex:"Name",width:55,editor:editor},{header:"Group",dataIndex:"GroupName",hidden:true,editor:editor},{id:"description",header:"Description",dataIndex:"Description",editor:editor}],view:new Ext.grid.GroupingView({forceFit:true,enableGroupingMenu:false,showGroupName:false}),plugins:checkColumn,clicksToEdit:2});
RolePermissionGridEdit.superclass.constructor.call(this,config)},loadPermissionSet:function(roleRecord){this.roleId=roleRecord.get("RoleId");this.setTitle(Translate("Role Editor: {0} - {1}",roleRecord.get("GroupName"),roleRecord.get("RoleName")));this.store.load({params:{RoleId:this.roleId}})}});var GroupList=ACI.view.admin.groups.GroupList=Ext.extend(Ext.list.ListView,{constructor:function(config){var me=this;config=Ext.apply({},{singleSelect:true,emptyText:"No groups",reserveScrollOffset:true,columns:ACI.view.admin.groups.GroupColumns},config);GroupList.superclass.constructor.call(me,config)}});Ext.reg("aci.view.admin.groups.grouplist",GroupList);var GroupGrid=ACI.view.admin.groups.GroupGrid=Ext.extend(Ext.grid.GridPanel,{constructor:function(config){var me=this;config=Ext.apply({columns:[{header:Translate("Group"),dataIndex:"Name",sortable:true,editor:{xtype:"textfield",allowBlank:false}},{header:Translate("Created"),xtype:"datecolumn",format:"Y-m-d g:i a",sortable:true,dataIndex:"Created"}],viewConfig:{forceFit:true},clicksToEdit:2000},config);
GroupGrid.superclass.constructor.call(me,config);this.store.on({beforeload:function(){me.getEl().mask("Loading...")},load:function(){me.getEl().unmask()},exception:function(){me.getEl().unmask()}})}});Ext.reg("aci.view.admin.groups.groupgrid",GroupGrid);var GroupMemberCountGrid=ACI.view.admin.groups.GroupMemberCountGrid=Ext.extend(Ext.grid.GridPanel,{constructor:function(config){var me=this;config=Ext.apply({disableSelection:true,columns:[{header:Translate("Group"),width:300,dataIndex:"Name",sortable:true},{header:Translate("Users"),xtype:"numbercolumn",sortable:true,dataIndex:"UserAccounts",format:"0,000"},{header:Translate("IP Ranges"),xtype:"numbercolumn",sortable:true,dataIndex:"IpRanges",format:"0,000"},{header:Translate("Referrers"),xtype:"numbercolumn",sortable:true,dataIndex:"Referrers",format:"0,000"},{header:Translate("Locations"),xtype:"numbercolumn",sortable:true,dataIndex:"Locations",format:"0,000"},{header:Translate("Fingerprints"),xtype:"numbercolumn",sortable:true,dataIndex:"Fingerprints",format:"0,000"},{header:Translate("Created"),width:160,xtype:"datecolumn",format:"Y-m-d g:i a",sortable:true,dataIndex:"Created"}],viewConfig:{forceFit:true},clicksToEdit:2000},config);
GroupMemberCountGrid.superclass.constructor.call(me,config);this.store.on({beforeload:function(){me.getEl().mask("Loading...")},load:function(){me.getEl().unmask()},exception:function(){me.getEl().unmask()}})}});Ext.reg("aci.view.admin.groups.groupmembercountgrid",GroupMemberCountGrid);var EditGroupDetail=ACI.view.admin.groups.EditGroupDetail=Ext.extend(Ext.FormPanel,{border:true,constructor:function(config){var me=this;config=Ext.apply({labelWidth:70,labelAlign:"right",border:true,ctCls:"x-border-layout-ct",bodyStyle:"padding:2px 8px 6px;text-align:left",defaults:{anchor:"-5",listeners:{change:me.onUpdate,scope:me,buffer:2}},items:[{xtype:"textfield",name:"Name",fieldLabel:Translate("Name")},{xtype:"checkbox",checked:true,labelSeparator:"",name:"UseTitle",boxLabel:Translate("Use as Title for user"),disabled:true}]},config);EditGroupDetail.superclass.constructor.call(me,config)},onUpdate:function(btn,ev){if(this.record==null){return}if(!this.getForm().isValid()){return false}this.getForm().updateRecord(this.record)
}});Ext.reg("aci.view.admin.groups.editgroupdetail",EditGroupDetail);var EditGroup=ACI.view.admin.groups.EditGroup=Ext.extend(Ext.FormPanel,{border:true,constructor:function(config){var me=this;config=Ext.apply({labelWidth:75,border:true,ctCls:"x-border-layout-ct",bodyStyle:"padding:20px;text-align:left",layout:{type:"vbox",align:"stretch"},items:[{xtype:"aci.view.admin.groups.editgroupdetail",ref:"fieldarea"}]},config);var mitems=[];if(config.useraccounts){mitems[mitems.length]=new UserAccountGridEdit({title:Translate("User Accounts"),store:config.useraccounts})}if(config.ipranges){mitems[mitems.length]=new IpRangeGridEdit({title:Translate("IP Addresses"),store:config.ipranges})}if(config.referrers){mitems[mitems.length]=new ReferrerGridEdit({title:Translate("Referrers"),store:config.referrers})}if(config.locations){mitems[mitems.length]=new LocationGridEdit({title:Translate("Locations"),store:config.locations})}if(config.isps){mitems[mitems.length]=new IspGrid({title:Translate("ISPs"),store:config.isps})}if(config.fingerprints){mitems[mitems.length]=new FingerprintGrid({title:Translate("Fingerprints"),store:config.fingerprints})
}if(mitems.length>0){config.items[config.items.length]={xtype:"tabpanel",ref:"membership",plain:true,activeTab:0,anchor:"-5 0",defaults:{bodyStyle:"padding:0px",border:false},items:mitems,flex:1}}EditGroup.superclass.constructor.call(me,config)},loadRecord:function(groupRecord){var fieldarea=this.fieldarea,membership=this.membership,group=groupRecord.data;if(fieldarea){fieldarea.record=groupRecord;fieldarea.getForm().loadRecord(groupRecord)}if(membership){this.items.each(function(item){if(item!=membership){item.show()}});if(group.GroupId==undefined||group.GroupId<100){membership.hide()}else{membership.show();membership.items.each(function(item){item.loadRecordsForGroup(group.GroupId)})}this.doLayout()}},loadRecords:function(groupRecords){var fieldarea=this.fieldarea,membership=this.membership;if(fieldarea){fieldarea.record=null;fieldarea.getForm().reset()}if(membership){this.items.each(function(item){if(item!=membership){item.hide()}});membership.show();var groups=[];Ext.each(groupRecords,function(rec){groups.push(rec.get("GroupId"))
});membership.items.each(function(item){item.loadRecordsForGroup(groups)});this.doLayout()}}});var BaseMembershipGrid=ACI.view.admin.groups.membership.BaseMembershipGrid=Ext.extend(Ext.grid.GridPanel,{border:false,trackMouseOver:false,loadMask:true,viewConfig:{forceFit:true},initComponent:function(){var me=this,names=me.names;me.store=new Ext.data.GroupingStore(Ext.apply({},me.store,{groupField:"GroupId",sortInfo:{field:"GroupId",direction:"ASC"},proxy:new Ext.data.DirectProxy({paramOrder:["GroupId"],api:me.store.api}),reader:new Ext.data.JsonReader({recordType:me.recordType},me.recordType)}));me.dataCache={};me.cm=new Ext.grid.ColumnModel([{dataIndex:"GroupId",hidden:true,groupRenderer:function(v,unused,r,rowIndex,colIndex,store){var index=store.groups.find("GroupId",v);if(index>-1){v=store.groups.getAt(index).get("Name")}return v}}].concat(me.columns).concat({dataIndex:"Joined",width:160,sortable:true,header:Translate("Added"),xtype:"datecolumn",format:"Y-m-d g:i a"},{dataIndex:"Expiration",width:160,sortable:true,header:Translate("Expiration"),xtype:"datecolumn",format:"Y-m-d g:i a"}));
me.groupFilterField=new Ext.form.TextField({emptyText:names.filter||"",disabled:names.filter==undefined});me.groupFilterField.on("valid",me.filterByFirstColumn,me);me.addButton=new Ext.Button({text:names.add,hidden:!me.newmember,iconCls:"ac-i-add",handler:function(){me.fireEvent("newmember",me)},scope:me});me.removeButton=new Ext.Button({text:names.remove,iconCls:"ac-i-delete",disabled:true,handler:me.promptRemoveMember,scope:me});me.bbar=[me.groupFilterField,"->",me.addButton,me.removeButton];me.view=new Ext.grid.GroupingView({forceFit:true,enableGroupingMenu:false,hideGroupedColumn:true,enableGrouping:false,showGroupName:false});BaseMembershipGrid.superclass.initComponent.call(me);this.addEvents("newmember","editmember");me.on("cellclick",me.removeButton.enable,me.removeButton)},loadRecordsForGroup:function(GroupId){var me=this,loaded;if(!Ext.isArray(GroupId)){me.GroupId=GroupId;me.GroupIds=[GroupId];me.view.enableGrouping=false;me.addButton.enable()}else{me.GroupId=null;me.GroupIds=GroupId;me.view.enableGrouping=true;
me.addButton.disable()}Ext.each(me.GroupIds,function(id){me.store.baseParams.GroupId=id;loaded=me.dataCache[id];if(!loaded){me.store.load({add:true,callback:function(r,options,success){if(success){me.dataCache[id]=true}}})}});me.removeButton.disable();me.groupFilterField.setValue("")},filterByFirstColumn:function(field){var me=this,filters=[{fn:function(record){return me.GroupIds.indexOf(record.get("GroupId"))!=-1},scope:me}];if(field.getValue()!=""){filters[filters.length]={property:this.getColumnModel().getDataIndex(1),value:field.getValue(),anyMatch:true,caseSensitive:false}}me.store.filter(filters)},promptRemoveMember:function(item){var plugins=this.plugins,editor=plugins?plugins[0]:null;var s=this.getSelectionModel().getSelections();var msg="";var indx=this.getColumnModel().getDataIndex(1);if(editor){editor.stopEditing()}if(s.length>1){msg=String.format(this.names.removeMsgs,s.length,this.getColumnModel().getColumnHeader(1))}else{msg=String.format(this.names.removeMsg,s[0].data[indx],this.getColumnModel().getColumnHeader(1))
}Ext.Msg.show({title:this.names.remove,msg:msg,buttons:Ext.Msg.OKCANCEL,fn:this.removeTheseMembers.bind(this),animEl:this.removeButton.getEl()})},removeTheseMembers:function(result){if(result=="ok"){var s=this.getSelectionModel().getSelections();this.store.remove(s);this.removeButton.disable()}}});var BaseMembershipForm=ACI.view.admin.groups.membership.BaseMembershipForm=Ext.extend(Ext.FormPanel,{monitorValid:true,padding:22,labelWidth:120,labelAlign:"right",getExpirationChoiceField:function(){return{fieldLabel:Translate("Expiration"),xtype:"selectbox",value:"Never",store:[["Never",Translate("Never")],["Day",Translate("A Day from Now")],["Week",Translate("A Week from Now")],["Month",Translate("A Month from Now")],["Date",Translate("On a Specific Date")]],listeners:{select:function(me,record){var choice=record.data.field1,day=new Date();me.ownerCt.datefield[choice=="Date"?"enable":"disable"]();switch(choice){case"Day":day.setDate(day.getDate()+1);break;case"Week":day.setDate(day.getDate()+7);break;case"Month":day.setDate(day.getDate()+30);
break}if(choice=="Never"){me.ownerCt.datefield.setValue()}else{if(choice!="Date"){me.ownerCt.datefield.setValue(day)}}}}}},getExpirationDateField:function(){var day=new Date();day.setDate(day.getDate()+1);return{fieldLabel:Translate("Expiration Date"),ref:"datefield",name:"Expiration",xtype:"datefield",disabled:true,minValue:day,getExpirationDate:function(){var expiration=this.getValue();return expiration.getTime?Math.round(expiration.getTime()/1000):0}}},getSaveButton:function(){var me=this;return{text:Translate("Save"),ref:"../saveButton",width:90,formBind:true,handler:function(){var form=me.getForm(),rec=me.createRecord(me,form);me.fireEvent("save",me,rec);form.reset()}}},getCancelButton:function(){var me=this;return{text:Translate("Cancel"),ref:"../cancelButton",width:75,handler:function(){me.fireEvent("cancel",me);me.getForm().reset()}}},initComponent:function(){BaseMembershipForm.superclass.initComponent.call(this);this.addEvents("save","cancel")}});var BaseMembershipGridEdit=ACI.view.admin.groups.membership.BaseMembershipGridEdit=Ext.extend(Ext.Container,{constructor:function(config){var me=this;
config=config||{};config=Ext.apply(config,{layout:"card",activeItem:0,items:[{xtype:config.gridType||this.gridType,ref:"gridPanel",store:config.store,newmember:true,listeners:{newmember:function(){me.layout.setActiveItem(me.editPanel)}}},{xtype:config.formType||this.formType,ref:"editPanel",listeners:{cancel:function(){me.layout.setActiveItem(me.gridPanel)},save:function(cmp,rec){var gridPanel=me.gridPanel,store=gridPanel.getStore(),c=store.getCount();store.insert(c,rec);store.sort("GroupId","ASC");me.layout.setActiveItem(gridPanel)}}}]});delete config.store;BaseMembershipGridEdit.superclass.constructor.call(this,config)},loadRecordsForGroup:function(GroupId){var me=this;me.gridPanel.loadRecordsForGroup(GroupId);me.editPanel.GroupId=GroupId}});var FingerprintGrid=ACI.view.admin.groups.membership.FingerprintGrid=Ext.extend(BaseMembershipGrid,{recordType:ACI.model.GroupMemberFingerprint.Record,columns:[{dataIndex:"Fingerprint",header:Translate("Fingerprint")}],names:{filter:undefined,remove:Translate("Remove Fingerprint"),removeMsg:Translate("You are going to remove a fingerprint from the group <b>{1}</b>.  Are you sure you want to do this?"),removeMsgs:Translate("You are going to remove {0} fingerprints from the group <b>{1}</b>.  Are you sure you want to do this?")}});
var IpRangeGrid=ACI.view.admin.groups.membership.IpRangeGrid=Ext.extend(BaseMembershipGrid,{recordType:ACI.model.GroupMemberIpRange.Record,columns:[{dataIndex:"IpAddress",header:Translate("IP Address"),width:160,sortable:true,editor:new Ext.form.TextField({allowBlank:false})},{dataIndex:"IpMask",width:160,header:Translate("IP Mask"),defaultValue:32},{dataIndex:"IpRange",width:160,header:Translate("IP Range"),convert:function(v,rec){return v||rec.IpAddr},hidden:true},{dataIndex:"Note",header:Translate("Note"),editor:new Ext.form.TextField({allowBlank:true})}],names:{filter:Translate("Filter by IP"),add:Translate("Add"),remove:Translate("Remove IP"),removeMsg:Translate("You are going to remove the IP address {0} from the group <b>{1}</b>.  Are you sure you want to do this?"),removeMsgs:Translate("You are going to remove {0} IP addresses from the group <b>{1}</b>.  Are you sure you want to do this?")}});Ext.reg("ACI.view.admin.groups.membership.IpRangeGrid",IpRangeGrid);var IpRangeForm=ACI.view.admin.groups.membership.IpRangeForm=Ext.extend(BaseMembershipForm,{recordType:ACI.model.GroupMemberIpRange.Record,constructor:function(config){var me=this,config=Ext.apply(config||{},{defaults:{width:190},items:[{fieldLabel:Translate("IP Address"),name:"IpAddress",allowBlank:false,xtype:"textfield",vtype:"IPAddress",listeners:{valid:me.onValid,scope:me}},{fieldLabel:Translate("Range Size"),name:"IpMaskSize",xtype:"sliderfield",value:-32,defaultValue:-32,maxValue:-20,minValue:-32,listeners:{valid:me.onValid,scope:me},tipText:function(thumb){var n=Math.pow(2,32+thumb.value);
return Translate("{0} addresses",n)}},{fieldLabel:Translate("IP Range"),xtype:"displayfield",name:"range",ip2long:function(ip){var ips=ip.split(".");var iplong=0;with(Math){iplong=ips[0]*pow(256,3)+ips[1]*pow(256,2)+ips[2]*pow(256,1)+ips[3]*pow(256,0)}return iplong},long2ip:function(l){with(Math){var ip1=floor(l/pow(256,3));var ip2=floor((l%pow(256,3))/pow(256,2));var ip3=floor(((l%pow(256,3))%pow(256,2))/pow(256,1));var ip4=floor((((l%pow(256,3))%pow(256,2))%pow(256,1))/pow(256,0))}return ip1+"."+ip2+"."+ip3+"."+ip4},setRange:function(ip,mask){if(!Ext.isDefined(ip)){ip="0.0.0.0"}mask=Math.pow(2,(32-mask))-1;var maskBits=4294967295-mask;var first=this.ip2long(ip)&maskBits;var last=first+mask;this.setValue(this.long2ip(first)+" - "+this.long2ip(last))}},me.getExpirationChoiceField(),me.getExpirationDateField(),{fieldLabel:Translate("Note"),xtype:"textarea",name:"Note"}],buttons:[me.getSaveButton(),me.getCancelButton()]});IpRangeForm.superclass.constructor.call(this,config)},createRecord:function(me,form){return new me.recordType({Joined:Math.round((new Date()).getTime()/1000),IpAddress:form.findField("IpAddress").getValue(),IpMask:-form.findField("IpMaskSize").getValue(),Expiration:form.findField("Expiration").getExpirationDate(),Note:form.findField("Note").getValue(),GroupId:me.GroupId})
},onValid:function(){var form=this.getForm(),range=form.findField("range"),IpAddr=form.findField("IpAddress"),IpMask=form.findField("IpMaskSize");range.setRange(IpAddr.getValue(),-IpMask.getValue())}});Ext.reg("ACI.view.admin.groups.membership.IpRangeForm",IpRangeForm);var IpRangeGridEdit=ACI.view.admin.groups.membership.IpRangeGridEdit=Ext.extend(BaseMembershipGridEdit,{gridType:"ACI.view.admin.groups.membership.IpRangeGrid",formType:"ACI.view.admin.groups.membership.IpRangeForm"});var IspGrid=ACI.view.admin.groups.membership.IspGrid=Ext.extend(BaseMembershipGrid,{recordType:ACI.model.GroupMemberISP.Record,columns:[{dataIndex:"ISP",width:160,sortable:true,header:Translate("ISP")}],names:{filter:Translate("Filter by ISP"),remove:Translate("Remove ISP"),removeMsg:Translate("You are going to remove <b>{0}</b> from the group <b>{1}</b>.  Are you sure you want to do this?"),removeMsgs:Translate("You are going to remove {0} ISPs from the group <b>{1}</b>.  Are you sure you want to do this?")}});Ext.reg("ACI.view.admin.groups.membership.IspGrid",IspGrid);
var IspForm=ACI.view.admin.groups.membership.IspForm=Ext.extend(BaseMembershipForm,{recordType:ACI.model.GroupMemberISP.Record,constructor:function(config){var me=this;config=Ext.apply(config||{},{defaults:{width:190},items:[{fieldLabel:Translate("ISP"),name:"ISP",allowBlank:false,xtype:"textfield"},me.getExpirationChoiceField(),me.getExpirationDateField()],buttons:[me.getSaveButton(),me.getCancelButton()]});IspForm.superclass.constructor.call(this,config)},createRecord:function(me,form){return new me.recordType({Joined:Math.round((new Date()).getTime()/1000),ISP:form.findField("ISP").getValue(),Expiration:form.findField("Expiration").getExpirationDate(),GroupId:me.GroupId})}});Ext.reg("ACI.view.admin.groups.membership.IspForm",IspForm);var IspGridEdit=ACI.view.admin.groups.membership.IspGridEdit=Ext.extend(BaseMembershipGridEdit,{gridType:"ACI.view.admin.groups.membership.IspGrid",formType:"ACI.view.admin.groups.membership.IspForm"});var LocationGrid=ACI.view.admin.groups.LocationGrid=Ext.extend(BaseMembershipGrid,{recordType:ACI.model.GroupMemberLocation.Record,columns:[{dataIndex:"CountryName",width:160,sortable:true,header:Translate("Country")},{dataIndex:"RegionName",width:160,sortable:true,header:Translate("Region")}],names:{filter:Translate("Filter by Country"),add:Translate("Add..."),remove:Translate("Remove Location"),removeMsg:Translate("You are going to remove <b>{0}</b> from the group <b>{1}</b>.  Are you sure you want to do this?"),removeMsgs:Translate("You are going to remove {0} locations from the group <b>{1}</b>.  Are you sure you want to do this?")}});
Ext.reg("ACI.view.admin.groups.membership.LocationGrid",LocationGrid);var LocationForm=ACI.view.admin.groups.membership.LocationForm=Ext.extend(BaseMembershipForm,{recordType:ACI.model.GroupMemberLocation.Record,constructor:function(config){var me=this,GuessCountryCode=(navigator.language||navigator.browserLanguage||"en-US").substr(3,2);config=Ext.apply(config||{},{defaults:{width:190},items:[{fieldLabel:Translate("Country"),itemId:"CountryCode",name:"CountryCode",xtype:"combo",lazyRender:true,lazyInit:false,forceSelection:true,valueField:"Code",displayField:"Name",typeAhead:true,typeAheadDelay:25,triggerAction:"all",value:GuessCountryCode,minChars:0,store:{xtype:"directstore",directFn:AppCenter.api.core.AccessControl.getCountryCodes,root:"",idProperty:"Code",fields:["Code","Name"],autoLoad:true,listeners:{load:function(){var box=me.getComponent("CountryCode");box.mode="local"}}},listeners:{select:function(cmb,record,index){var regionBox=me.getComponent("RegionCode"),store=regionBox.getStore();regionBox.clearValue();
regionBox.mode="remote";store.load({params:{CountryCode:record.get("Code")}})}}},{fieldLabel:Translate("Region"),itemId:"RegionCode",name:"RegionCode",xtype:"combo",lazyRender:true,lazyInit:false,forceSelection:true,valueField:"Code",displayField:"Name",typeAhead:true,typeAheadDelay:25,triggerAction:"all",minChars:0,store:{xtype:"directstore",directFn:AppCenter.api.core.AccessControl.getRegionsForCountry,root:"",idProperty:"Code",fields:["Code","Name"],paramOrder:["CountryCode"],baseParams:{CountryCode:GuessCountryCode},autoLoad:true,listeners:{load:function(){var box=me.getComponent("RegionCode");box.mode="local"}}}},me.getExpirationChoiceField(),me.getExpirationDateField()],buttons:[me.getSaveButton(),me.getCancelButton()]});LocationForm.superclass.constructor.call(this,config)},createRecord:function(me,form){return new me.recordType({Joined:Math.round((new Date()).getTime()/1000),CountryCode:form.findField("CountryCode").getValue(),CountryName:form.findField("CountryCode").getRawValue(),Region:form.findField("RegionCode").getValue(),RegionName:form.findField("RegionCode").getRawValue(),Expiration:form.findField("Expiration").getExpirationDate(),GroupId:me.GroupId})
}});Ext.reg("ACI.view.admin.groups.membership.LocationForm",LocationForm);var LocationGridEdit=ACI.view.admin.groups.membership.LocationGridEdit=Ext.extend(BaseMembershipGridEdit,{gridType:"ACI.view.admin.groups.membership.LocationGrid",formType:"ACI.view.admin.groups.membership.LocationForm"});var ReferrerGrid=ACI.view.admin.groups.membership.ReferrerGrid=Ext.extend(BaseMembershipGrid,{recordType:ACI.model.GroupMemberReferrer.Record,columns:[{dataIndex:"Referrer",header:Translate("Referrer Host Name"),width:160,sortable:true,editor:new Ext.form.TextField({allowBlank:false})},{dataIndex:"Note",header:Translate("Note"),width:160,editor:new Ext.form.TextField({allowBlank:true})}],names:{filter:Translate("Filter by Referrer"),add:Translate("Add"),remove:Translate("Remove Referrer"),removeMsg:Translate("You are going to remove the referrer {0} from the group <b>{1}</b>.  Are you sure you want to do this?"),removeMsgs:Translate("You are going to remove {0} referrers from the group <b>{1}</b>.  Are you sure you want to do this?")}});
Ext.reg("ACI.view.admin.groups.membership.ReferrerGrid",ReferrerGrid);var ReferrerForm=ACI.view.admin.groups.membership.ReferrerForm=Ext.extend(BaseMembershipForm,{recordType:ACI.model.GroupMemberReferrer.Record,constructor:function(config){var me=this;config=Ext.apply(config||{},{defaults:{width:190},items:[{fieldLabel:Translate("Referrer Domain"),name:"Referrer",allowBlank:false,xtype:"textfield",vtype:"domain"},me.getExpirationChoiceField(),me.getExpirationDateField(),{fieldLabel:Translate("Note"),xtype:"textarea",name:"Note"}],buttons:[me.getSaveButton(),me.getCancelButton()]});ReferrerForm.superclass.constructor.call(this,config)},createRecord:function(me,form){return new me.recordType({Joined:Math.round((new Date()).getTime()/1000),Referrer:form.findField("Referrer").getValue(),Note:form.findField("Note").getValue(),Expiration:form.findField("Expiration").getExpirationDate(),GroupId:me.GroupId})}});Ext.reg("ACI.view.admin.groups.membership.ReferrerForm",ReferrerForm);var ReferrerGridEdit=ACI.view.admin.groups.membership.ReferrerGridEdit=Ext.extend(BaseMembershipGridEdit,{gridType:"ACI.view.admin.groups.membership.ReferrerGrid",formType:"ACI.view.admin.groups.membership.ReferrerForm"});
var UserAccountGrid=ACI.view.admin.groups.membership.UserAccountGrid=Ext.extend(BaseMembershipGrid,{recordType:ACI.model.GroupMemberUserAccount.Record,columns:[{dataIndex:"Username",width:160,sortable:true,header:Translate("User Accounts")}],names:{filter:Translate("Filter by Username"),add:Translate("Add..."),remove:Translate("Remove User"),removeMsg:Translate("You are going to remove user account <b>{0}</b> from the group <b>{1}</b>.  Are you sure you want to do this?"),removeMsgs:Translate("You are going to remove {0} user accounts from the group <b>{1}</b>.  Are you sure you want to do this?")}});Ext.reg("ACI.view.admin.groups.membership.UserAccountGrid",UserAccountGrid);var UserAccountForm=ACI.view.admin.groups.membership.UserAccountForm=Ext.extend(BaseMembershipForm,{recordType:ACI.model.GroupMemberUserAccount.Record,constructor:function(config){var me=this;config=Ext.apply(config||{},{defaults:{width:190},items:[{fieldLabel:Translate("Username"),name:"Username",allowBlank:false,xtype:"textfield"},me.getExpirationChoiceField(),me.getExpirationDateField()],buttons:[me.getSaveButton(),me.getCancelButton()]});
UserAccountForm.superclass.constructor.call(this,config)},createRecord:function(me,form){return new me.recordType({Joined:Math.round((new Date()).getTime()/1000),Username:form.findField("Username").getValue(),Expiration:form.findField("Expiration").getExpirationDate(),GroupId:me.GroupId})}});Ext.reg("ACI.view.admin.groups.membership.UserAccountForm",UserAccountForm);var UserAccountGridEdit=ACI.view.admin.groups.membership.IpRangeGridEdit=Ext.extend(BaseMembershipGridEdit,{gridType:"ACI.view.admin.groups.membership.UserAccountGrid",formType:"ACI.view.admin.groups.membership.UserAccountForm"});var writer=new Ext.data.DirectWriter({writeAllFields:true});function createStore(config){return Ext.apply({},config,{xtype:"directstore",writer:writer,autoSave:true})}var GroupStore;function getGroupStore(){var API=AppCenter.api.core.AccessControl,id="aci.view.admin.groups.store",store=Ext.StoreMgr.lookup(id);return(store||Ext.StoreMgr.lookup(createStore({id:id,reader:ACI.model.Group.Reader,api:{read:API.getGroups,update:API.updateGroup,destroy:API.deleteGroup,create:API.createGroup},autoLoad:true})))
}var designers=ACI.viewmodel.admin.designers,AccessControlDesigner;designers.AccessControlDesigner=Ext.extend(Ext.ux.Ribbon,{constructor:function(config){config=Ext.apply({title:Translate("Access Control Editor"),height:AccessControlDesigner.RIBBONHEIGHT+((Ext.isIE6||Ext.isIE7)?0:6),items:[{xtype:"aci.accesscontrol-designer.summary"},{xtype:"aci.accesscontrol-designer.groups"},{xtype:"aci.accesscontrol-designer.roles"}],activeTab:0,width:1000,trackResetOnLoad:true,setDefaultValues:function(){},listeners:{show:this.loadData}},config);AccessControlDesigner.superclass.constructor.call(this,config)},loadData:function(){if(!this.data){}},getData:function(){return this.jsondata},loadUserDataCB:function(result,response){}});AccessControlDesigner=designers.AccessControlDesigner;Ext.reg("aci.accesscontrol-designer.ribbon",AccessControlDesigner);AccessControlDesigner.RIBBONHEIGHT=170;AccessControlDesigner.GROUPHEIGHT=AccessControlDesigner.RIBBONHEIGHT-52;AccessControlDesigner.Summary=Ext.extend(Ext.Toolbar,{constructor:function(config){var me=this,size=120;
config=Ext.apply({},{iconCls:"summary24",title:Translate("Summary"),itemId:"summary",listeners:{activate:function(){var tp=me.ribbon.tabpanel,height=176;tp.setHeight(height);tp.getResizeEl().setHeight(height,true)}},defaults:{height:AccessControlDesigner.GROUPHEIGHT},delayedItems:[{xtype:"buttongroup",layout:"fit",items:[{ref:"../../groups",xtype:"aci.view.admin.groups.groupmembercountgrid",width:860,store:getGroupStore(),listeners:{rowclick:function(cmp){}}}]},"->",{xtype:"buttongroup",layout:"",defaults:{width:90},items:[{text:"Close",scale:"large",height:size-10,handler:function(){me.ribbon.hide()}}]}]},config);AccessControlDesigner.Summary.superclass.constructor.call(this,config)},initComponent:function(){AccessControlDesigner.Summary.superclass.initComponent.call(this)}});Ext.reg("aci.accesscontrol-designer.summary",AccessControlDesigner.Summary);AccessControlDesigner.Groups=Ext.extend(Ext.Container,{constructor:function(config){var me=this,size=120;config=Ext.apply({},{iconCls:"group24",title:Translate("Groups"),itemId:"Groups",layout:"",listeners:{activate:function(){var tp=me.ribbon.tabpanel,height=me.groupEditor?600:176;
tp.setHeight(height);tp.getResizeEl().setHeight(height,true)}},delayedItems:[{xtype:"toolbar",defaults:{height:AccessControlDesigner.GROUPHEIGHT},items:[{xtype:"buttongroup",layout:"auto",defaults:{width:85},items:[{text:"Add Group",scale:"xlarge",iconCls:" ",iconAlign:"top",handler:me.createGroup,scope:me},{text:"Delete",scale:"medium",handler:me.deleteGroup,scope:me}]},{xtype:"buttongroup",items:[{ref:"../../groups",xtype:"aci.view.admin.groups.groupgrid",width:600,store:getGroupStore(),listeners:{rowclick:function(cmp){var r=me.getSelection();if(r){me.showGroup(r)}}}}],layout:"fit"},"->",{xtype:"buttongroup",layout:"",defaults:{width:90},items:[{text:"Close",scale:"large",height:size-10,handler:function(){me.ribbon.hide()}}]}]}]},config);AccessControlDesigner.Groups.superclass.constructor.call(this,config)},initComponent:function(){AccessControlDesigner.Groups.superclass.initComponent.call(this)},getSelection:function(){var r=this.groups.getSelectionModel().getSelections();if(r.length>0){return r}},showGroup:function(records){var me=this,tp=me.ribbon.tabpanel,API=AppCenter.api.core.AccessControl;
if(!me.largeSize){tp.setHeight(600);tp.getResizeEl().setHeight(600,{callback:function(){me.doLayout()}});me.largeSize=true}if(me.items.length==1){me.groupEditor=new EditGroup({height:420,useraccounts:createStore({groups:me.groups.store,api:{read:API.getGroupMemberUserAccounts,destroy:API.removeUserAccountFromGroup,create:API.addUserAccountToGroup}}),ipranges:createStore({groups:me.groups.store,api:{read:API.getGroupMemberIpRanges,destroy:API.removeIpRangeFromGroup,create:API.addIpRangeToGroup}}),referrers:createStore({groups:me.groups.store,api:{read:API.getGroupMemberReferrers,destroy:API.removeReferrerFromGroup,create:API.addReferrerToGroup}}),locations:createStore({groups:me.groups.store,api:{read:API.getGroupMemberLocations,destroy:API.removeLocationFromGroup,create:API.addLocationToGroup}}),fingerprints:createStore({groups:me.groups.store,api:{read:API.getGroupMemberFingerprints,destroy:API.removeFingerprintFromGroup}})});me.add(me.groupEditor)}if(records.length==1){if(me.currentGroup!==records[0].id){me.groupEditor.loadRecord(records[0]);
me.currentGroup=records[0].id}}else{me.currentGroup=false;me.groupEditor.loadRecords(records)}},hideGroup:function(){me.currentGroup=null;me.largeSize=false;this.ribbon.tabpanel.setHeight(176)},deleteGroup:function(){var me=this;me.groups.stopEditing();var selection=me.getSelection();if(!selection){return}me.groups.store.remove(selection)},createGroup:function(){var me=this,p=new ACI.model.Group.Record({Name:"New Group",Created:(new Date())}),c=me.groups.store.getCount();me.groups.stopEditing();me.groups.store.insert(c,p);me.groups.getSelectionModel().selectLastRow();if(me.groups.startEditing){me.groups.startEditing(c,0)}}});Ext.reg("aci.accesscontrol-designer.groups",AccessControlDesigner.Groups);AccessControlDesigner.Roles=Ext.extend(Ext.Toolbar,{constructor:function(config){var me=this,size=120;config=Ext.apply({},{iconCls:"roles24",title:Translate("Roles"),itemId:"roles",listeners:{activate:function(){var tp=me.ribbon.tabpanel,height=600;tp.setHeight(height);tp.getResizeEl().setHeight(height,true)}},delayedItems:[{xtype:"container",layout:"card",activeItem:0,width:860,height:540,items:[new RoleGrid({frame:true,listeners:{rowdblclick:function(grid,index,e){this.ownerCt.layout.setActiveItem(1);
this.ownerCt.items.get("perms").loadPermissionSet(grid.store.getAt(index))}}}),new RolePermissionGridEdit({itemId:"perms",frame:true,buttons:[{text:Translate("Go Back"),handler:function(){this.ownerCt.ownerCt.ownerCt.layout.setActiveItem(0)}}]})]},"->",{xtype:"buttongroup",layout:"",defaults:{width:90},items:[{text:"Close",scale:"large",height:size-10,handler:function(){me.ribbon.hide()}}]}]},config);AccessControlDesigner.Roles.superclass.constructor.call(this,config)},initComponent:function(){AccessControlDesigner.Roles.superclass.initComponent.call(this)}});Ext.reg("aci.accesscontrol-designer.roles",AccessControlDesigner.Roles)})();(function(){var a=ACI.viewmodel.admin.designers,b;a.DomainDesigner=Ext.extend(Ext.ux.Ribbon,{constructor:function(c){c=Ext.apply({title:Translate("Domain Designer"),height:b.RIBBONHEIGHT+((Ext.isIE6||Ext.isIE7)?0:6),items:[{xtype:"aci.domain-designer.settings"}],activeTab:0,width:1000,trackResetOnLoad:true,setDefaultValues:function(){},listeners:{tabchange:function(d,e){Ext.util.Cookies.set("acdd2show",e.itemId)
},hide:function(){Ext.util.Cookies.set("acdd2show","")},show:function(){if(!this.jsondata){}}}},c);b.superclass.constructor.call(this,c)},getData:function(){return this.jsondata}});b=a.DomainDesigner;Ext.reg("aci.domain-designer.ribbon",b);b.RIBBONHEIGHT=170;b.GROUPHEIGHT=b.RIBBONHEIGHT-52;b.Settings=Ext.extend(Ext.Toolbar,{constructor:function(c){var e=this,d=120;c=Ext.apply({},{iconCls:"settings24",title:Translate("Settings"),itemId:"settings",defaults:{height:b.GROUPHEIGHT},delayedItems:[{xtype:"buttongroup",titlePosition:"bottom",title:"Domain Basics",layout:"form",ref:"form",labelAlign:"right",items:[{xtype:"textfield",fieldLabel:"Domain Name"}]},"->",{xtype:"buttongroup",titlePosition:"bottom",title:Translate("Domain Settings"),layout:"",defaults:{width:90},height:d-4,items:[{text:"Set Settings",iconCls:"settings_write32",iconAlign:"top",scale:"large",handler:function(){},saveComplete:function(f,g){e.getEl().unmask()}},{text:"Close",scale:"medium",handler:function(){e.ownerCt.ownerCt.ownerCt.hide()}}]}]},c);
b.Settings.superclass.constructor.call(this,c)},initComponent:function(){b.Settings.superclass.initComponent.call(this)}});Ext.reg("aci.domain-designer.settings",b.Settings)})();
