AttachmentController.min.js 5.7 KB

1
  1. MWF.require("MWF.widget.AttachmentController",null,false);MWF.xApplication.cms.FormDesigner=MWF.xApplication.cms.FormDesigner||{};MWF.xApplication.cms.FormDesigner.widget=MWF.xApplication.cms.FormDesigner.widget||{};MWF.xApplication.cms.FormDesigner.widget.AttachmentController=new Class({Extends:MWF.widget.AttachmentController,options:{style:"default",listStyle:"icon",size:"max",resize:true,attachmentCount:0,isUpload:true,isDelete:true,isReplace:true,isDownload:true,isSizeChange:true,readonly:false,toolbarGroupHidden:[],images:["bmp","gif","png","jpeg","jpg","jpe","ico"],audios:["mp3","wav","wma","wmv"],videos:["avi","mkv","mov","ogg","mp4","mpa","mpe","mpeg","mpg","rmvb"]},load:function(){if(this.options.size==="min"){this.loadMin()}else{this.loadMax()}},createTopNode:function(){if(this.options.title){if(!this.titleNode)this.titleNode=new Element("div",{styles:this.css.titleNode,text:this.options.title}).inject(this.node)}if(!this.topNode){this.topNode=new Element("div",{styles:this.css.topNode}).inject(this.node)}else{this.topNode.empty();this.editActionBoxNode=null;this.editActionsGroupNode=null;this.topNode.setStyle("display","");if(this.isHiddenTop){if(this.oldContentScrollNodeHeight){this.contentScrollNode.setStyle("min-height",this.oldContentScrollNodeHeight);this.oldContentScrollNodeHeight=null}this.isHiddenTop=false}}var t=this.options.toolbarGroupHidden;if(t.contains("edit")&&t.contains("read")&&t.contains("list")&&t.contains("view")){this.oldContentScrollNodeHeight=this.contentScrollNode.getStyle("min-height");this.contentScrollNode.setStyle("min-height",this.node.getStyle("min-height"));this.topNode.setStyle("display","none");this.isHiddenTop=true;return}if(!t.contains("edit"))this.createEditGroupActions();if(!t.contains("read"))this.createReadGroupActions();if(!t.contains("list"))this.createListGroupActions();if(!t.contains("view"))this.createViewGroupActions()},reloadTopNode:function(){this.createTopNode()},loadMax:function(){if(!this.node)this.node=new Element("div",{styles:this.css.container});this.createTopNode();if(!this.contentScrollNode){this.createContentNode();if(this.options.resize){this.createBottomNode();this.createResizeNode()}this.node.inject(this.container);this.checkActions();this.setEvent()}else{this.contentScrollNode.setStyle("display","block");if(this.bottomNode)this.bottomNode.setStyle("display","block");if(this.titleNode)this.titleNode.setStyle("display","block");this.content.empty()}var t=[];while(this.attachments.length){var i=this.attachments.shift();t.push(new MWF.widget.AttachmentController.Attachment(i.data,this))}this.attachments=t},loadMin:function(){var t=this.options.toolbarGroupHidden;var i=t.contains("edit")&&t.contains("read")&&t.contains("view");if(!this.node)this.node=new Element("div",{styles:this.css.container_min});if(!this.minActionAreaNode){this.minActionAreaNode=new Element("div",{styles:this.css.minActionAreaNode}).inject(this.node)}else{this.minActionAreaNode.setStyle("display","");this.minActionAreaNode.empty()}if(i)this.minActionAreaNode.setStyle("display","none");if(!this.minContent){this.minContent=new Element("div",{styles:this.css.minContentNode}).inject(this.node)}else{this.minContent.setStyle("display","block");this.minContent.empty()}if(!t.contains("edit")){this.min_uploadAction=this.createAction(this.minActionAreaNode,"upload",MWF.LP.widget.upload,function(t,i){this.uploadAttachment(t,i)}.bind(this));this.min_deleteAction=this.createAction(this.minActionAreaNode,"delete",MWF.LP.widget["delete"],function(t,i){this.deleteAttachment(t,i)}.bind(this));this.min_replaceAction=this.createAction(this.minActionAreaNode,"replace",MWF.LP.widget.replace,function(t,i){this.replaceAttachment(t,i)}.bind(this))}if(!t.contains("read")){this.min_downloadAction=this.createAction(this.minActionAreaNode,"download",MWF.LP.widget.download,function(t,i){this.downloadAttachment(t,i)}.bind(this))}if(!t.contains("edit")||!t.contains("read")){this.createSeparate(this.minActionAreaNode)}if(!t.contains("view")){this.sizeAction=this.createAction(this.minActionAreaNode,"max",MWF.LP.widget.min,function(){this.changeControllerSize()}.bind(this))}this.node.inject(this.container);this.checkActions();this.setEvent();var e=[];while(this.attachments.length){var o=this.attachments.shift();e.push(new MWF.widget.AttachmentController.AttachmentMin(o.data,this))}this.attachments=e},createEditGroupActions:function(){if(!this.editActionBoxNode)this.editActionBoxNode=new Element("div",{styles:this.css.actionsBoxNode}).inject(this.topNode);if(!this.editActionsGroupNode)this.editActionsGroupNode=new Element("div",{styles:this.css.actionsGroupNode}).inject(this.editActionBoxNode);this.uploadAction=this.createAction(this.editActionsGroupNode,"upload",MWF.LP.widget.upload,function(t,i){this.uploadAttachment(t,i)}.bind(this));this.deleteAction=this.createAction(this.editActionsGroupNode,"delete",MWF.LP.widget["delete"],function(t,i){this.deleteAttachment(t,i)}.bind(this));this.replaceAction=this.createAction(this.editActionsGroupNode,"replace",MWF.LP.widget.replace,function(t,i){this.replaceAttachment(t,i)}.bind(this));if(!this.options.toolbarGroupHidden.contains("read"))this.editActionSeparateNode=this.createSeparate(this.editActionsGroupNode)},createReadGroupActions:function(){if(!this.editActionBoxNode)this.editActionBoxNode=new Element("div",{styles:this.css.actionsBoxNode}).inject(this.topNode);if(!this.editActionsGroupNode)this.editActionsGroupNode=new Element("div",{styles:this.css.actionsGroupNode}).inject(this.editActionBoxNode);this.downloadAction=this.createAction(this.editActionsGroupNode,"download",MWF.LP.widget.download,function(){this.downloadAttachment()}.bind(this))},resetToolbarGroupHidden:function(t){this.options.toolbarGroupHidden=t;if(this.options.size=="max"){this.reloadTopNode()}else{this.loadMin()}}});