Main.min.js 6.6 KB

1
  1. MWF.xApplication.cms=MWF.xApplication.cms||{};MWF.xApplication.cms.Document=MWF.xApplication.cms.Document||{};MWF.xApplication.cms.Document.options.multitask=true;MWF.xDesktop.requireApp("cms.Document","HotLinkForm",null,false);MWF.xApplication.cms.Document.Main=new Class({Extends:MWF.xApplication.Common.Main,Implements:[Options,Events],options:{style:"default",name:"cms.Document",icon:"icon.png",width:"1200",height:"680",title:MWF.xApplication.cms.Document.LP.title,documentId:"",isControl:false,readonly:true,autoSave:false,saveOnClose:false,postPublish:null,postDelete:null},onQueryLoad:function(){this.lp=MWF.xApplication.cms.Document.LP;if(this.status){this.options.documentId=this.status.documentId;this.options.readonly=this.status.readonly=="true"||this.status.readonly==true?true:false;this.options.autoSave=this.status.autoSave=="true"||this.status.autoSave==true?true:false;this.options.saveOnClose=this.status.saveOnClose=="true"||this.status.saveOnClose==true?true:false}if(this.options.documentId&&this.options.documentId!=""){this.options.appId="cms.Document"+this.options.documentId}},loadApplication:function(t){this.node=new Element("div",{styles:this.css.content}).inject(this.content);MWF.require("MWF.widget.Mask",function(){this.mask=new MWF.widget.Mask({style:"desktop"});this.formNode=new Element("div",{styles:{"min-height":"100%"}}).inject(this.node);this.action=MWF.Actions.get("x_cms_assemble_control");if(!this.options.isRefresh){this.maxSize(function(){this.mask.loadNode(this.content);this.loadDocument()}.bind(this))}else{this.mask.loadNode(this.content);this.loadDocument()}if(t)t()}.bind(this));this.addEvent("queryClose",function(){this.refreshTaskCenter()}.bind(this));this.addKeyboardEvents()},refreshTaskCenter:function(){if(this.desktop.apps["cms.Explorer"]){this.desktop.apps["cms.Explorer"].content.unmask();this.desktop.apps["cms.Explorer"].refreshAll()}},addKeyboardEvents:function(){this.addEvent("keySave",function(t){this.keySave(t)}.bind(this))},keySave:function(t){if(this.appForm){if(!this.readonly){this.appForm.saveDocument();t.preventDefault()}}},reload:function(t){if(this.form){this.formNode.empty();MWF.release(this.form);this.form=null}this.parseData(t);this.openDocument()},getDocument:function(o){var t=this.options.documentId;if(this.options.anonymousAccess){this.action.getDocumentByAnonymous(t,function(t){o(t)}.bind(this),function(t){this.notice(this.lp.documentGettedError+":"+t.responseText,"error");this.close()}.bind(this))}else if(this.options.readonly){this.action.viewDocument(t,function(t){o(t)}.bind(this),function(t){this.notice(this.lp.documentGettedError+":"+t.responseText,"error");this.close()}.bind(this))}else{this.action.getDocument(t,function(t){o(t)}.bind(this),function(t){this.notice(this.lp.documentGettedError+":"+t.responseText,"error");this.close()}.bind(this))}},loadDocument:function(){this.getDocument(function(t){t.data=t.data||[];this.parseData(t.data);this.loadForm(this.formId)}.bind(this))},errorDocument:function(){if(this.mask)this.mask.hide();this.node.set("text","openError")},loadForm:function(t,o){var s=function(t){if(layout.mobile){this.form=t.data.mobileData?JSON.decode(MWF.decodeJsonString(t.data.mobileData)):null;if(!this.form){this.form=t.data.data?JSON.decode(MWF.decodeJsonString(t.data.data)):null}}else{this.form=t.data.data?JSON.decode(MWF.decodeJsonString(t.data.data)):null}this.openDocument();if(this.mask)this.mask.hide()}.bind(this);var i=function(t){if(!o){this.action.getCategory(this.document.categoryId,function(t){var o=t.data;this.formId=o.formId||o.readFormId;if(this.readonly==true&&o.readFormId&&o.readFormId!=""){this.formId=o.readFormId}this.loadForm(this.formId,true)}.bind(this))}else{this.notice(this.lp.formGettedError+":"+t.responseText,"error");this.close()}}.bind(this);if(this.options.anonymousAccess){this.action.getFormByAnonymous(t,function(t){s(t)}.bind(this),function(t){i(t)}.bind(this))}else{this.action.getForm(t,function(t){s(t)}.bind(this),function(t){i(t)}.bind(this))}},isEmptyObject:function(t){var o;for(o in t){return false}return true},parseData:function(t){var o="";o=t.document.title;this.setTitle(o);t.document.subject=t.document.title;this.data=t.data;this.attachmentList=t.attachmentList||[];this.attachmentList.each(function(t){t.lastUpdateTime=t.updateTime;t.person=t.creatorUid});if(this.isEmptyObject(this.data)){this.data.isNew=true}else{this.data.isNew=false}this.document=t.document;var s=false;if(MWF.AC.isCMSManager()){this.options.isControl=true;s=true}if(t.isAppAdmin){this.options.isControl=true;s=true}if(t.isCategoryAdmin){this.options.isControl=true;s=true}if(t.isManager){this.options.isControl=true;s=true}if(t.isCreator||this.desktop.session.user.distinguishedName==this.document.creatorPerson){this.options.isControl=true}if(t.isEditor){this.options.isControl=true}if(this.options.readonly){this.readonly=true}else{this.readonly=true;if(this.options.isControl&&this.document.docStatus!="archived"){this.readonly=false}}this.formId=this.document.form||this.document.readFormId;if(this.readonly==true&&this.document.readFormId&&this.document.readFormId!=""){this.formId=this.document.readFormId}if(!this.readonly){this.options.autoSave=true;this.options.saveOnClose=true}var i=this.options.isControl;this.control=t.control||{allowRead:true,allowPublishDocument:i&&this.document.docStatus=="draft",allowSave:i&&this.document.docStatus=="published",allowPopularDocument:MWF.AC.isHotPictureManager()&&this.document.docStatus=="published",allowEditDocument:i&&!this.document.wf_workId,allowDeleteDocument:i&&!this.document.wf_workId}},setPopularDocument:function(){var t=new MWF.xApplication.cms.Document.HotLinkForm(this,this.document,{documentId:this.options.documentId,onPostOk:function(t){}.bind(this)},{app:this,lp:this.lp,css:this.css,actions:this.action});t.create()},openDocument:function(){if(this.form){MWF.xDesktop.requireApp("cms.Xform","Form",function(){this.appForm=new MWF.CMSForm(this.formNode,this.form,{readonly:this.readonly,autoSave:this.options.autoSave,saveOnClose:this.options.saveOnClose,onPostPublish:this.options.postPublish,onPostDelete:this.options.postDelete});this.appForm.businessData={data:this.data,document:this.document,control:this.control,attachmentList:this.attachmentList,status:{readonly:this.readonly}};this.appForm.documentAction=this.action;this.appForm.app=this;this.appForm.load()}.bind(this))}},recordStatus:function(){var t={documentId:this.options.documentId,readonly:this.options.readonly,autoSave:this.options.autoSave,saveOnClose:this.options.saveOnClose};if(this.options.appId&&this.options.appId!="")t.appId=this.options.appId;return t},onPostClose:function(){if(this.appForm){this.appForm.modules.each(function(t){MWF.release(t)});MWF.release(this.appForm)}}});