Office.min.js 25 KB

1
  1. MWF.xDesktop.requireApp("process.Xform","$Module",null,false);MWF.xApplication.process.Xform.Office=MWF.APPOffice=new Class({Extends:MWF.APP$Module,isActive:false,options:{version:"5,0,3,1",ProductCaption:"O2",ProductKey:"EDCC626CB85C9A1D3E0D7BDDDC2637753C596725",MakerCaption:"浙江兰德纵横网络技术股份有限公司",MakerKey:"E138DABB4AC26C2D8E09FAE59AB3BDE87AFB9D7B",clsid:"A64E3073-2016-4baf-A89D-FFE1FAA10EC0",codeBase:"/x_desktop/res/framework/officecontrol/OfficeControl.cab",clsid64:"A64E3073-2016-4baf-A89D-FFE1FAA10EC0",codeBase64:"/x_desktop/res/framework/officecontrol/OfficeControl.cab",moduleEvents:["redFile","afterOpen","afterOpenOffice","afterCreate","seal","beforeSave","afterSave","afterCloseOffice"]},initialize:function(e,t,i,o){this.node=$(e);this.node.store("module",this);this.json=t;this.form=i;this.field=true},_loadUserInterface:function(){this.node.empty();this.node.setStyles({"min-height":"100px"});if(Browser.name==="ie"){this.isActive=true;this.file=null;if(!this.form.officeList)this.form.officeList=[];this.form.officeList.push(this)}},_afterLoaded:function(){if(!this.json.isNotLoadNow){this.loadOffice()}},loadOffice:function(){if(!this.isActive){this.loadOfficeNotActive()}else{this.loadOfficeContorl()}},getProgID:function(){switch(this.json.officeType){case"word":return"Word.Document";case"excel":return"Excel.Sheet";case"ppt":return"PowerPoint.Show"}return"Word.Document"},defaultParam:function(e){var t={ProductCaption:this.json.productCaption||this.options.ProductCaption,ProductKey:this.json.productKey||this.options.ProductKey,MakerCaption:this.json.makerCaption||this.options.MakerCaption,MakerKey:this.options.makerKey||this.options.MakerKey,Titlebar:"0",Menubar:"0",ToolBars:e?"0":"1",Statusbar:"0",IsUseUTF8URL:"1",IsUseUTF8Data:"1",BorderStyle:e?"0":"0",IsNoCopy:"0",IsResetToolbarsOnOpen:"1",FileNew:"0",FileOpen:"1",FileClose:"0",FileSave:"0",FileProperties:"0"};return t},loadOfficeContorl:function(){if(this.node.getSize().y<800)this.node.setStyle("height","800px");if(!layout.desktop.offices)layout.desktop.offices={};layout.desktop.offices[this.getOfficeObjectId()]=this;if(this.readonly){this.loadOfficeRead()}else if(this.json.isReadonly){this.readonly=true;this.loadOfficeRead()}else{if(this.json.readScript&&this.json.readScript.code){var e=this.form.Macro.exec(this.json.readScript.code,this);if(e){this.readonly=true;this.loadOfficeRead()}else{this.loadOfficeEdit()}}else{this.loadOfficeEdit()}}},loadOfficeSpacer:function(){var e=this.node.getSize();this.officeNode=new Element("div",{styles:this.form.css.officeAreaNode}).inject(this.node);this.officeNode.setStyle("height",""+e.y+"px");this.form.app.addEvent("uncurrent",function(){var e=this.officeNode.getStyle("display");this.officeNode.store("officeDisplay",e);this.officeNode.setStyle("display","none")}.bind(this));this.form.app.addEvent("current",function(){var e=this.officeNode.retrieve("officeDisplay");if(e)this.officeNode.setStyle("display",e);if(this.officeOCX)this.officeOCX.Activate(true)}.bind(this));this.form.app.addEvent("queryClose",function(){this.fireEvent("queryClose");var e=this.getOfficeObjectId();layout.desktop.offices[e]=null;delete layout.desktop.offices[e]}.bind(this))},getFormId:function(){var e=this.form.businessData.work?this.form.businessData.work.id:this.form.businessData.workCompleted.id;return"form"+this.json.id+e},getFileName:function(){var e="doc";switch(this.json.officeType){case"word":e="doc";break;case"excel":e="xls";break;case"ppt":e="ppt"}var t=this.form.businessData.work?this.form.businessData.work.id:this.form.businessData.workCompleted.id;return"file"+this.json.id+t+"."+e},getOfficeObjectId:function(){var e=this.form.businessData.work?this.form.businessData.work.id:this.form.businessData.workCompleted.id;return"NTKOOCX"+this.json.id+e},getFileInputName:function(){var e=this.form.businessData.work?this.form.businessData.work.id:this.form.businessData.workCompleted.id;return"fileInput"+this.json.id+e},getTempleteUrl:function(){if(this.json.template){var e="";var t=this.json.template.substr(0,1);if(t==="/"){e=this.json.template.substr(1,this.json.template.indexOf("/",1)-1)}else{e=this.json.template.substr(0,this.json.template.indexOf("/"))}if(["x_processplatform_assemble_surface","x_portal_assemble_surface"].indexOf(e.toLowerCase())!==-1){var i=MWF.Actions.getHost(e);return t==="/"?i+this.json.template:i+"/"+this.json.template}}return this.json.template},getOfficeFileUrl:function(){var e=this.getFileName();var t=null;atts=this.form.businessData.attachmentList;for(var i=0;i<atts.length;i++){if(atts[i].name===e||atts[i].site===this.json.id){t=atts[i];break}}if(t){this.file=t;var o="";if(this.form.businessData.work){o=this.form.workAction.action.actions.getAttachmentData.uri;o=o.replace("{id}",encodeURIComponent(t.id));return this.form.workAction.action.address+o.replace("{workid}",encodeURIComponent(this.form.businessData.work.id))}else{o=this.form.workAction.action.actions.getWorkcompletedAttachmentData.uri;o=o.replace("{id}",encodeURIComponent(t.id));return this.form.workAction.action.address+o.replace("{workCompletedId}",encodeURIComponent(this.form.businessData.workCompleted.id))}}else{return this.getTempleteUrl()}},editEnabled:function(){try{this.officeOCX.ActiveDocument.Unprotect()}catch(e){}},docReadonly:function(){this.protect(3)},protect:function(e){try{this.officeOCX.ActiveDocument.Protect(e)}catch(e){}},startRevisions:function(){this.officeOCX.ActiveDocument.Application.UserName=layout.desktop.session.user.name;if(!this.isNew){this.officeOCX.ActiveDocument.TrackRevisions=true;this.officeOCX.ActiveDocument.showRevisions=false}else{this.officeOCX.ActiveDocument.TrackRevisions=false;this.officeOCX.ActiveDocument.showRevisions=false}},stopRevisions:function(e){this.officeOCX.ActiveDocument.TrackRevisions=false;this.officeOCX.ActiveDocument.showRevisions=false;if(e)this.officeOCX.ActiveDocument.AcceptAllRevisions()},loadMenu:function(){if(!this.isMenuLoad){if(this.json.menuEditButtons.length){this.menuNode=new Element("div",{styles:this.form.css.officeMenuNode}).inject(this.node,"top");if(this.json.menuEditButtons.indexOf("new")!==-1){this.newItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:MWF.xApplication.process.Xform.LP.menu_new}).inject(this.menuNode);this.newItem.addEvent("click",function(){this.officeOCX.CreateNew(this.getProgID())}.bind(this))}if(this.json.menuEditButtons.indexOf("open")!==-1){this.openItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:MWF.xApplication.process.Xform.LP.menu_openfile}).inject(this.menuNode);this.openItem.addEvent("click",function(){this.officeOCX.ShowDialog(1)}.bind(this))}if(this.json.menuEditButtons.indexOf("save")!==-1){this.saveItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:MWF.xApplication.process.Xform.LP.menu_savefile}).inject(this.menuNode);this.saveItem.addEvent("click",function(){this.officeOCX.ShowDialog(3)}.bind(this))}if(this.json.menuEditButtons.indexOf("revisions")!==-1){var e=MWF.xApplication.process.Xform.LP.menu_revisions_show;try{if(this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.Markup!==0){e=MWF.xApplication.process.Xform.LP.menu_revisions_hide}}catch(e){}this.revisionsItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:e}).inject(this.menuNode);this.revisionsItem.addEvent("click",this.toggleRevisions.bind(this))}if(this.json.menuEditButtons.indexOf("fullscreen")!==-1){this.fullscreenItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:MWF.xApplication.process.Xform.LP.menu_fullscreen}).inject(this.menuNode);this.fullscreenItem.addEvent("click",function(){this.officeOCX.FullScreenMode=true}.bind(this))}if(this.json.menuEditButtons.indexOf("toolbar")!==-1){if(!this.readonly){var e=MWF.xApplication.process.Xform.LP.menu_toolbar_show;if(this.officeOCX.ToolBars){e=MWF.xApplication.process.Xform.LP.menu_toolbar_hide}this.toolbarItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:e}).inject(this.menuNode);this.toolbarItem.addEvent("click",function(){var e=this.officeOCX.ToolBars?MWF.xApplication.process.Xform.LP.menu_toolbar_show:MWF.xApplication.process.Xform.LP.menu_toolbar_hide;this.toolbarItem.set("text",e);this.officeOCX.ToolBars=!this.officeOCX.ToolBars}.bind(this))}}if(this.json.menuEditButtons.indexOf("preview")!==-1){this.previewItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:MWF.xApplication.process.Xform.LP.menu_preview}).inject(this.menuNode);this.previewItem.addEvent("click",function(){this.officeOCX.PrintPreview()}.bind(this))}if(this.json.menuEditButtons.indexOf("showHistory")!==-1){this.historyItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:MWF.xApplication.process.Xform.LP.menu_showHistory}).inject(this.menuNode);this.historyItem.addEvent("click",this.showHistory.bind(this))}if(this.json.menuEditButtons.indexOf("redfile")!==-1){if(!this.readonly){this.redItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:MWF.xApplication.process.Xform.LP.menu_redfile}).inject(this.menuNode);this.redItem.addEvent("click",this.redFile.bind(this))}}if(this.json.menuEditButtons.indexOf("seal")!==-1){if(!this.readonly){this.redItem=new Element("div",{styles:this.form.css.officeMenuItemNode,text:MWF.xApplication.process.Xform.LP.menu_seal}).inject(this.menuNode);this.redItem.addEvent("click",this.seal.bind(this))}}}this.isMenuLoad=true}},showHistory:function(){MWF.require("MWF.xDesktop.Dialog",function(){var e=680;var t=500;var i=MWF.getCenterPosition(this.form.app.content,e,t);var o=this;var s=new MWF.xDesktop.Dialog({title:MWF.xApplication.process.Xform.LP.menu_showHistory,style:"work",top:i.y-100,left:i.x,fromTop:i.y-100,fromLeft:i.x,width:e,height:t,html:"<div></div>",container:this.form.app.content,isClose:true,buttonList:[{text:MWF.xApplication.process.Xform.LP.close,action:function(){this.close()}}],onPostShow:function(){this.showHistoryContent(s)}.bind(this)});s.show()}.bind(this))},showHistoryContent:function(t){t.content.setStyle("overflow","auto");atts=this.form.businessData.attachmentList;var e=this.json.id+"history";for(var i=0;i<atts.length;i++){if(atts[i].site===e){for(var o=0;o<31;o++){file=atts[i];var s=new Element("div",{styles:{margin:"20px auto 0px auto",height:"30px","line-height":"30px",width:"80%","font-size":"16px",color:"#666666","border-bottom":"1px solid #CCCCCC"},value:file.id}).inject(t.content);var n=new Element("div",{styles:{float:"left"},text:file.name}).inject(s);var r=new Element("input",{type:"button",styles:{float:"right"},value:"查看版本",events:{click:function(e){this.openOfficeHistory(e);t.close()}.bind(this)}}).inject(s)}}}},openOfficeHistory:function(e){var t=e.target.getParent().get("value");if(this.form.businessData.work){url=this.form.workAction.action.actions.getAttachmentData.uri;url=url.replace("{id}",encodeURIComponent(t));url=this.form.workAction.action.address+url.replace("{workid}",encodeURIComponent(this.form.businessData.work.id))}else{url=this.form.workAction.action.actions.getWorkcompletedAttachmentData.uri;url=url.replace("{id}",encodeURIComponent(t));url=this.form.workAction.action.address+url.replace("{workid}",encodeURIComponent(this.form.businessData.workCompleted.id))}this.officeOCX.BeginOpenFromURL(url,true,true)},seal:function(){this.fireEvent("seal")},redFile:function(){this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.Markup=0;this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.View=0;this.officeOCX.ActiveDocument.showRevisions=false;this.stopRevisions(true);this.fireEvent("redFile")},showRevisions:function(){try{this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.Markup=2;this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.View=0;this.officeOCX.ActiveDocument.showRevisions=true}catch(e){}},hideRevisions:function(){try{this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.Markup=0;this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.View=0;this.officeOCX.ActiveDocument.showRevisions=false}catch(e){}},toggleRevisions:function(){var e=this.revisionsItem.get("text");if(e===MWF.xApplication.process.Xform.LP.menu_revisions_show){this.revisionsItem.set("text",MWF.xApplication.process.Xform.LP.menu_revisions_hide);try{this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.Markup=2;this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.View=0}catch(e){}try{this.officeOCX.ActiveDocument.showRevisions=true}catch(e){}}else{this.revisionsItem.set("text",MWF.xApplication.process.Xform.LP.menu_revisions_show);try{this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.Markup=0;this.officeOCX.ActiveDocument.ActiveWindow.View.RevisionsFilter.View=0}catch(e){}try{this.officeOCX.ActiveDocument.showRevisions=false}catch(e){}}},afterOpen:function(){if(this.readonly)this.docReadonly();if(this.json.trackRevisions==="1")this.startRevisions()},loadOfficeEditFirefox:function(){this.loadOfficeSpacer();this.node.setStyle("pisition","absolute");var e=this.json.codeBase||this.options.codeBase;var t=this.json.version||this.options.version;var i=this.json.clsid||this.options.clsid;var o="<form id='"+this.getFormId()+"' style='height:100%'><OBJECT id='"+this.getOfficeObjectId()+"' "+"type='application/ntko-plug' "+"style='HEIGHT: 99%; WIDTH: 100%' "+"height='99%' width='100%' "+"codeBase='"+e+"#version="+t+"' "+"classid='{"+i+"}' ";o+="ForOnSaveToURL='OnComplete2' ";o+="ForOnBeginOpenFromURL='OnComplete' ";o+="ForOndocumentopened='OnComplete3' ";o+="ForOnpublishAshtmltourl='publishashtml' ";var s=this.defaultParam();s=Object.merge(s,this.json.ntkoEditProperties);s=Object.merge(s,this.json.editProperties);Object.each(s,function(e,t){o+="_"+t+"='"+e+"'"});o+=">";o+="<SPAN STYLE='color:red'>尚未安装NTKO Web Chrome跨浏览器插件。请点击<a href=\"/x_desktop/res/framework/officecontrol/ntkoplugins.xpi\">安装组件</a></SPAN>";o+="</OBJECT><input type='hidden' value='"+this.json.id+"' name='site'><input style='display:none' name=\"file\" type=\"file\"/></form>";this.officeNode.appendHTML(o);this.officeForm=this.officeNode.getFirst();this.officeOCX=this.officeNode.getFirst().getFirst();this.doOfficeOCXEvents();var n=this.getOfficeFileUrl();if(n){this.officeOCX.BeginOpenFromURL(n,true,this.readonly)}else{this.officeOCX.CreateNew(this.getProgID());this.fireEvent("afterCreate")}},loadOfficeEditChrome:function(){this.loadOfficeSpacer();this.node.setStyle("pisition","absolute");var e=this.json.codeBase||this.options.codeBase;var t=this.json.version||this.options.version;var i=this.json.clsid||this.options.clsid;var o="<form id='"+this.getFormId()+"' style='height:100%'><OBJECT id='"+this.getOfficeObjectId()+"' "+"style='HEIGHT: 99%; WIDTH: 100%' "+"height='99%' width='100%' "+"codeBase='"+e+"#version="+t+"' "+"classid='{"+i+"}' ";o+="ForOnSaveToURL='OnComplete2' ";o+="ForOnBeginOpenFromURL='OnComplete' ";o+="ForOndocumentopened='OnComplete3' ";o+="ForOnpublishAshtmltourl='publishashtml' ";var s=this.defaultParam();s=Object.merge(s,this.json.ntkoEditProperties);s=Object.merge(s,this.json.editProperties);Object.each(s,function(e,t){o+="_"+t+"='"+e+"'"});o+=">";o+="<SPAN STYLE='color:red'>尚未安装NTKO Web Chrome跨浏览器插件。请点击<a href=\"/x_desktop/res/framework/officecontrol/ntkoplugins.crx\">安装组件</a></SPAN>";o+="</OBJECT><input type='hidden' value='"+this.json.id+"' name='site'><input style='display:none' name=\"file\" type=\"file\"/></form>";this.officeNode.appendHTML(o);this.officeForm=this.officeNode.getFirst();this.officeOCX=this.officeNode.getFirst().getFirst();this.doOfficeOCXEvents();var n=this.getOfficeFileUrl();if(n){this.officeOCX.BeginOpenFromURL(n,true,this.readonly)}else{this.officeOCX.CreateNew(this.getProgID());this.fireEvent("afterCreate")}},loadOfficeEdit:function(){if(Browser.name==="chrome"){this.loadOfficeEditChrome()}else if(Browser.name==="firefox"){this.loadOfficeEditFirefox()}else{this.loadOfficeEditIE()}},loadOfficeEditIE:function(){this.loadOfficeSpacer();this.node.setStyle("pisition","absolute");var e=this.json.codeBase||this.options.codeBase;var t=this.json.version||this.options.version;var i=this.json.clsid||this.options.clsid;var o="<form id='"+this.getFormId()+"' style='height:100%'><OBJECT id=\""+this.getOfficeObjectId()+'" '+'style="HEIGHT: 99%; WIDTH: 100%" '+'codeBase="'+e+"#version="+t+'" '+'classid="clsid:'+i+'">';var s=this.defaultParam();s=Object.merge(s,this.json.ntkoEditProperties);s=Object.merge(s,this.json.editProperties);Object.each(s,function(e,t){o+='<PARAM NAME="'+t+'" value="'+e+'">'});o+="</OBJECT><input type='hidden' value='"+this.json.id+"' name='site'><input type='hidden' value='' name='fileName'><input style='display:none' name=\"file\" type=\"file\"/></form>";this.officeNode.appendHTML(o);this.officeForm=this.officeNode.getFirst();this.officeOCX=this.officeNode.getFirst().getFirst();this.officeOCX.AddDocTypePlugin(".pdf","PDF.NtkoDocument","4.0.0.3","/x_desktop/res/framework/officecontrol/ntkooledocall.cab",51,true);this.doOfficeOCXEvents();var n=this.getOfficeFileUrl();if(n){this.officeOCX.BeginOpenFromURL(n,true,this.readonly)}else{this.isNew=true;this.officeOCX.CreateNew(this.getProgID());this.fireEvent("afterCreate")}},doOfficeOCXEvents:function(){var e=this.getOfficeObjectId();this.addOfficeEvent(e,"AfterOpenFromURL(doc, statusCode)",'if (layout.desktop.offices["'+e+'"]) layout.desktop.offices["'+e+'"].AfterOpenFromURL(doc, statusCode);');this.addOfficeEvent(e,"OnDocumentOpened(url, doc)",'if (layout.desktop.offices["'+e+'"]) layout.desktop.offices["'+e+'"].OnDocumentOpened(url, doc);');this.addOfficeEvent(e,"OnDocumentClosed()",'if (layout.desktop.offices["'+e+'"]) layout.desktop.offices["'+e+'"].OnDocumentClosed();')},OnDocumentClosed:function(){this.fireEvent("afterCloseOffice")},OnDocumentOpened:function(e,t){this.afterOpen();this.loadMenu();this.fireEvent("afterOpenOffice")},AfterOpenFromURL:function(e,t){this.fireEvent("afterOpen",[e,t])},addOfficeEvent:function(e,t,i){var o=document.createElement("script");o.setAttribute("for",e);o.setAttribute("event",t);o.innerText=i;this.officeForm.appendChild(o)},loadOfficeRead:function(){this.loadOfficeSpacer();this.node.setStyle("pisition","absolute");var e=this.json.codeBase||this.options.codeBase;var t=this.json.version||this.options.version;var i=this.json.clsid||this.options.clsid;var o="<form id='"+this.getFormId()+"' style='height:100%'><OBJECT id=\""+this.getOfficeObjectId()+'"'+'style="HEIGHT: 99%; WIDTH: 100%" '+'codeBase="'+e+"#version="+t+'" '+'classid="clsid:'+i+'">';var s=this.defaultParam(true);s=Object.merge(s,this.json.ntkoReadProperties);s=Object.merge(s,this.json.readProperties);Object.each(s,function(e,t){o+='<PARAM NAME="'+t+'" value="'+e+'">'});o+="</object></form>";this.officeNode.set("html",o);this.officeForm=this.officeNode.getFirst();this.officeOCX=this.officeNode.getFirst().getFirst();this.officeOCX.AddDocTypePlugin(".pdf","PDF.NtkoDocument","4.0.0.3","/x_desktop/res/framework/officecontrol/ntkooledocall.cab",51,true);var n=this.getOfficeFileUrl();if(n){var r=this.getOfficeObjectId();this.addOfficeEvent(r,"OnDocumentOpened(url, doc)",'if (layout.desktop.offices["'+r+'"]) layout.desktop.offices["'+r+'"].OnDocumentOpened(url, doc);');this.addOfficeEvent(r,"AfterOpenFromURL(doc, statusCode)",'if (layout.desktop.offices["'+r+'"]) layout.desktop.offices["'+r+'"].AfterOpenFromURL(doc, statusCode);');this.officeOCX.BeginOpenFromURL(n,true,this.readonly)}},createUploadFileNode:function(){this.uploadFileAreaNode=new Element("div",{styles:{display:"none"}});var e='<input name="file" type="file"/>';this.uploadFileAreaNode.set("html",e);this.fileUploadNode=this.uploadFileAreaNode.getFirst();this.uploadFileAreaNode.inject(this.officeForm)},getData:function(){if(this.officeOCX){this.officeOCX.ActiveDocument.Application.Selection.WholeStory();var e=this.officeOCX.ActiveDocument.Application.Selection.Text;return e}else{return this._getBusinessData()}},setData:function(){},save:function(e){if(!this.readonly){if(!this.officeForm)return true;this.fireEvent("beforeSave");if(e){if(this.json.isHistory)this.saveHistory()}this.officeForm.getElement("input").set("value",this.json.id);var t="";if(this.file){t=this.form.workAction.action.actions.replaceAttachment.uri;t=t.replace("{id}",this.file.id);t=this.form.workAction.action.address+t.replace("{workid}",this.form.businessData.work.id);this.officeOCX.SaveToURL(t,"file","",this.getFileName(),this.getFormId())}else{t=this.form.workAction.action.actions.uploadAttachment.uri;t=this.form.workAction.action.address+t.replace("{id}",this.form.businessData.work.id);this.officeOCX.SaveToURL(t,"file","",this.getFileName(),this.getFormId());this.form.workAction.getWorkContent(this.form.businessData.work.id,function(e){this.form.businessData.attachmentList=e.data.attachmentList;this.getOfficeFileUrl()}.bind(this))}this.fireEvent("afterSave")}},getHistoryFileName:function(){var e="doc";switch(this.json.officeType){case"word":e="doc";break;case"excel":e="xls";break;case"ppt":e="ppt"}var t=this.form.businessData.work?this.form.businessData.work.activityName:MWF.xApplication.process.Xform.LP.completed;var i=MWF.name.cn(layout.session.user.name);var o=Date.parse(new Date);var s=o.format("%Y-%m-%d %H:%M");return t+"("+i+")-"+s+"."+e},saveHistory:function(){var e=this.getHistoryFileName();this.officeForm.getElement("input").set("value",this.json.id+"history");url=this.form.workAction.action.actions.uploadAttachment.uri;url=this.form.workAction.action.address+url.replace("{id}",this.form.businessData.work.id);this.officeOCX.SaveToURL(url,"file","",e,this.getFormId())},getHTMLFileName:function(){var e=this.form.businessData.work?this.form.businessData.work.id:this.form.businessData.workCompleted.workId;return e+this.json.id+".mht"},saveHTML:function(){debugger;this.officeForm.getElement("input").set("value",this.json.id+"$view");var e=null;for(var t=0;t<this.form.businessData.attachmentList.length;t++){var i=this.form.businessData.attachmentList[t];if(i.site==this.json.id+"$view"){e=i}}var o=e?e.name:this.getHTMLFileName();this.officeForm.getElement("input").getNext().set("value",o);if(e){url=this.form.workAction.action.actions.replaceAttachment.uri;url=url.replace("{id}",e.id);url=this.form.workAction.action.address+url.replace("{workid}",this.form.businessData.work.id)}else{url=this.form.workAction.action.actions.uploadAttachment.uri;url=this.form.workAction.action.address+url.replace("{id}",this.form.businessData.work.id)}this.officeOCX.SaveAsOtherFormatToURL(1,url,"file","",o,this.getFormId())},getHTMLFileUrl:function(e){var t=e||this.getHTMLFileName();var i=null;atts=this.form.businessData.attachmentList;for(var o=0;o<atts.length;o++){if(atts[o].name===t||atts[o].site===this.json.id+"$view"){i=atts[o];break}}if(i){var s="";if(this.form.businessData.work){s=this.form.workAction.action.actions.getAttachmentData.uri;s=s.replace("{id}",encodeURIComponent(i.id));return this.form.workAction.action.address+s.replace("{workid}",encodeURIComponent(this.form.businessData.work.id))}else{s=this.form.workAction.action.actions.getWorkcompletedAttachmentData.uri;s=s.replace("{id}",encodeURIComponent(i.id));return this.form.workAction.action.address+s.replace("{workCompletedId}",encodeURIComponent(this.form.businessData.workCompleted.id))}}else{return this.getTempleteUrl()}},validationMode:function(){},validation:function(){return true},loadOfficeNotActive:function(){var e=this.getFileName();var t="";var i=false;for(var o=0;o<this.form.businessData.attachmentList.length;o++){var s=this.form.businessData.attachmentList[o];if(s.site==this.json.id+"$view"){t=s.name}}debugger;if(false){this.node.setStyles({"min-height":"600px",padding:"0px",border:"0px solid #999999","background-color":"#e6e6e6",overflow:"hidden"});if(this.node.getSize().y<800)this.node.setStyle("height","800px");var n=new Element("div",{styles:{padding:"40px",border:"1px solid #999999","background-color":"#e6e6e6",overflow:"auto"}}).inject(this.node);var r=this.node.getSize();var f=r.y-80-80;n.setStyle("height",""+f+"px");var a=new Element("div",{styles:{width:"90%",height:"1900px",margin:"auto","background-color":"#ffffff"}}).inject(n);var c=new Element("iframe",{styles:{width:"100%",height:"100%","min-height":"600px",overflow:"auto",border:"1px solid #cccccc"}}).inject(a);c.contentWindow.document.addEventListener("readystatechange",function(){alert("onreadystatechange"+this.readyState);alert(this.body.firstChild);this.body.style.padding="20px 40px"});c.set("src",this.getHTMLFileUrl(t))}else{this.node.setStyles({overflow:"hidden","background-color":"#f3f3f3","min-height":"24px",padding:"18px"});var h=this.getData();if(layout.mobile||COMMON.Browser.Platform.isMobile){if(h.length>300)h=h.substr(0,300)+"……"}var d=new Element("div",{text:h}).inject(this.node)}var d=MWF.xApplication.process.Xform.LP.openOfficeInfor;d=d.replace("{type}",this.json.officeType);var l=new Element("div",{styles:{width:"200px",height:"24px",margin:"auto","margin-top":"18px","padding-left":"30px","font-size":"16px","font-weight":"bold",color:"#2b5797","font-family":"Gadugi",cursor:"pointer",background:"url("+this.form.path+""+this.form.options.style+"/icon/"+this.json.officeType+".png"+") no-repeat left center"},text:d}).inject(this.node);var u=this.getOfficeFileUrl();if(!u){this.node.setStyle("display","none")}l.addEvent("click",function(){var e=this.getOfficeFileUrl();if(e){if(window.o2){window.o2.openDocument(e)}else if(window.webkit){window.webkit.messageHandlers.openDocument.postMessage(e)}else{window.open(e)}}}.bind(this))}});