unknown 5 лет назад
Родитель
Сommit
e9462a3631

+ 20 - 11
o2web/source/x_component_process_FormDesigner/Module/Form.js

@@ -106,14 +106,15 @@ MWF.xApplication.process.FormDesigner.Module.Form = MWF.FCForm = new Class({
 
 
 		this.container.set("html", this.html);
 		this.container.set("html", this.html);
 		this.loadStylesList(function(){
 		this.loadStylesList(function(){
-			if( this.json.formStyleTypeType === "custom"){ //如果是自定义表单样式
-				this.currentFormStyleType = this.json.formStyleCustom;
-				this.loadCustomTemplateStyles( this.json.formStyleCustom, function ( templateStyles ) {
+			if( typeOf(this.json.currentFormStyle) === "object"  ){ //如果是自定义表单样式
+				this.loadCustomTemplateStyles( this.json.currentFormStyle, function ( templateStyles ) {
 					this._load( templateStyles );
 					this._load( templateStyles );
 				}.bind(this))
 				}.bind(this))
 			}else {
 			}else {
 				var oldStyleValue = "";
 				var oldStyleValue = "";
-				if ((!this.json.formStyleType) || !this.stylesList[this.json.formStyleType]) this.json.formStyleType = "blue-simple";
+				if ((!this.json.formStyleType) || !this.stylesList[this.json.formStyleType]){
+					this.json.formStyleType = "blue-simple";
+				}
 				if (this.options.mode == "Mobile") {
 				if (this.options.mode == "Mobile") {
 					if (this.json.formStyleType != "defaultMobile") {
 					if (this.json.formStyleType != "defaultMobile") {
 						var styles = this.stylesList[this.json.formStyleType];
 						var styles = this.stylesList[this.json.formStyleType];
@@ -123,7 +124,7 @@ MWF.xApplication.process.FormDesigner.Module.Form = MWF.FCForm = new Class({
 						}
 						}
 					}
 					}
 				}
 				}
-				this.currentFormStyleType = this.json.formStyleType;
+				if( !this.json.currentFormStyle )this.json.currentFormStyle = this.json.formStyleType;
 
 
 				this.loadTemplateStyles(this.stylesList[this.json.formStyleType].file, this.stylesList[this.json.formStyleType].extendFile, function (templateStyles) {
 				this.loadTemplateStyles(this.stylesList[this.json.formStyleType].file, this.stylesList[this.json.formStyleType].extendFile, function (templateStyles) {
 					//this.templateStyles = (this.stylesList && this.json.formStyleType) ? this.stylesList[this.json.formStyleType] : null;
 					//this.templateStyles = (this.stylesList && this.json.formStyleType) ? this.stylesList[this.json.formStyleType] : null;
@@ -1160,22 +1161,21 @@ MWF.xApplication.process.FormDesigner.Module.Form = MWF.FCForm = new Class({
         if (name=="formStyleType" || name=="formStyleCustom" ){
         if (name=="formStyleType" || name=="formStyleCustom" ){
 
 
 			var loadOldTemplateStyle = function () {
 			var loadOldTemplateStyle = function () {
-				if( typeOf(this.currentFormStyleType) === "object" ){ //如果是自定义表单样式
-					this.loadCustomTemplateStyles( this.json.formStyleCustom , function (oldTemplateStyles) {
-						this.json.styleConfig = this.json.formStyleCustom;
+				if( typeOf(this.json.currentFormStyle) === "object" ){ //如果原来是自定义表单样式
+					this.loadCustomTemplateStyles( this.json.currentFormStyle , function (oldTemplateStyles) {
 						this.switchTemplateStyles( oldTemplateStyles );
 						this.switchTemplateStyles( oldTemplateStyles );
-						this.currentFormStyleType = this.json.formStyleCustom;
+						this.setCurrentFormStyle( name );
 					}.bind(this))
 					}.bind(this))
 				}else{
 				}else{
+					if( !oldValue )oldValue = this.json.currentFormStyle;
 					var oldFile, oldExtendFile;
 					var oldFile, oldExtendFile;
 					if( oldValue && this.stylesList[oldValue] ){
 					if( oldValue && this.stylesList[oldValue] ){
 						oldFile = this.stylesList[oldValue].file;
 						oldFile = this.stylesList[oldValue].file;
 						oldExtendFile = this.stylesList[oldValue].extendFile;
 						oldExtendFile = this.stylesList[oldValue].extendFile;
 					}
 					}
 					this.loadTemplateStyles( oldFile, oldExtendFile, function( oldTemplateStyles ){
 					this.loadTemplateStyles( oldFile, oldExtendFile, function( oldTemplateStyles ){
-						this.json.styleConfig = (this.stylesList && this.json.formStyleType) ? this.stylesList[this.json.formStyleType] : null;
 						this.switchTemplateStyles( oldTemplateStyles );
 						this.switchTemplateStyles( oldTemplateStyles );
-						this.currentFormStyleType = this.json.formStyleCustom;
+						this.setCurrentFormStyle( name );
 					}.bind(this))
 					}.bind(this))
 				}
 				}
 			}.bind(this);
 			}.bind(this);
@@ -1213,6 +1213,15 @@ MWF.xApplication.process.FormDesigner.Module.Form = MWF.FCForm = new Class({
 			module.setAllStyles();
 			module.setAllStyles();
 		}.bind(this));
 		}.bind(this));
 	},
 	},
+	setCurrentFormStyle : function ( name ) {
+		if( name=="formStyleCustom" ){
+			this.json.styleConfig = this.json.formStyleCustom;
+			this.json.currentFormStyle = this.json.formStyleCustom;
+		}else{
+			this.json.styleConfig = (this.stylesList && this.json.formStyleType) ? this.stylesList[this.json.formStyleType] : null;
+			this.json.currentFormStyle = this.json.formStyleType;
+		}
+	},
 
 
     parseCSS: function(css){
     parseCSS: function(css){
         var rex = /(url\(.*\))/g;
         var rex = /(url\(.*\))/g;

+ 6 - 5
o2web/source/x_component_process_FormDesigner/Module/Form/form.html

@@ -29,21 +29,22 @@
                     <input type="radio" onclick="if (this.checked) {
                     <input type="radio" onclick="if (this.checked) {
                         $('text{$.pid}formStyleTypeTr').setStyle('display', '');
                         $('text{$.pid}formStyleTypeTr').setStyle('display', '');
                         $('text{$.pid}formStyleTypeCustomTr').setStyle('display', 'none');
                         $('text{$.pid}formStyleTypeCustomTr').setStyle('display', 'none');
-                    }" name="formStyleTypeType" value="default" text{($.formStyleTypeType!='custom' )?'checked':''}/>系统
+                    }" name="formStyleTypeRadio" value="default" text{(typeOf($.currentFormStyle)!='object' )?'checked':''}/>系统
                     <input type="radio" onclick="if (this.checked) {
                     <input type="radio" onclick="if (this.checked) {
                         $('text{$.pid}formStyleTypeTr').setStyle('display', 'none');
                         $('text{$.pid}formStyleTypeTr').setStyle('display', 'none');
                         $('text{$.pid}formStyleTypeCustomTr').setStyle('display', '');
                         $('text{$.pid}formStyleTypeCustomTr').setStyle('display', '');
-                    }" name="formStyleTypeType" value="custom" text{($.formStyleTypeType=='custom')?'checked':''}/>自定义
+                    }" name="formStyleTypeRadio" value="custom" text{(typeOf($.currentFormStyle)=='object')?'checked':''}/>自定义
                 </td>
                 </td>
             </tr>
             </tr>
-            <tr id="text{$.pid}formStyleTypeTr" style="display: text{($.formStyleTypeType!='custom')?'':'none'}">
+            <tr id="text{$.pid}formStyleTypeTr" style="display: text{(typeOf($.currentFormStyle)!='object')?'':'none'}">
                 <td class="editTableValue">
                 <td class="editTableValue">
                     <select class="MWFFormStyle" name="formStyleType"></select>
                     <select class="MWFFormStyle" name="formStyleType"></select>
                 </td>
                 </td>
             </tr>
             </tr>
-            <tr id="text{$.pid}formStyleTypeCustomTr" style="display: text{($.formStyleTypeType=='custom')?'':'none'}">
+            <tr id="text{$.pid}formStyleTypeCustomTr" style="display: text{(typeOf($.currentFormStyle)=='object')?'':'none'}">
                 <td class="editTableValue">
                 <td class="editTableValue">
-                   <div class="MWFScriptSelect" name="formStyleCustom"></div>
+                    <div class="MWFScriptSelect" name="formStyleCustom"></div>
+                    <div class="MWFScriptSelectRefresh"></div>
                 </td>
                 </td>
             </tr>
             </tr>
             <tr>
             <tr>

+ 15 - 0
o2web/source/x_component_process_FormDesigner/Property.js

@@ -1135,6 +1135,7 @@ debugger;
         }.bind(this));
         }.bind(this));
     },
     },
     loadStylesList: function(){
     loadStylesList: function(){
+	    var _self = this;
         var styleSelNodes = this.propertyContent.getElements(".MWFFormStyle");
         var styleSelNodes = this.propertyContent.getElements(".MWFFormStyle");
         styleSelNodes.each(function(node){
         styleSelNodes.each(function(node){
             if (this.module.form.stylesList){
             if (this.module.form.stylesList){
@@ -1152,6 +1153,11 @@ debugger;
             }else{
             }else{
                 node.getParent("tr").setStyle("display", "none");
                 node.getParent("tr").setStyle("display", "none");
             }
             }
+
+            var refreshNode = new Element("div", {"styles": this.form.css.propertyRefreshFormNode}).inject(node, "after");
+            refreshNode.addEvent("click", function(e){
+                _self.changeData(this.get("name"), this );
+            }.bind(node));
         }.bind(this));
         }.bind(this));
     },
     },
     loadDivTemplateType: function(){
     loadDivTemplateType: function(){
@@ -1279,6 +1285,7 @@ debugger;
                 });
                 });
             }.bind(this));
             }.bind(this));
 
 
+            var _self = this;
             scriptNodes.each(function(node){
             scriptNodes.each(function(node){
                 new MWF.xApplication.process.ProcessDesigner.widget.PersonSelector(node, this.form.designer, {
                 new MWF.xApplication.process.ProcessDesigner.widget.PersonSelector(node, this.form.designer, {
                     "type": "Script",
                     "type": "Script",
@@ -1286,6 +1293,14 @@ debugger;
                     "names": [this.data[node.get("name")]],
                     "names": [this.data[node.get("name")]],
                     "onChange": function(ids){this.saveScriptSelectItem(node, ids);}.bind(this)
                     "onChange": function(ids){this.saveScriptSelectItem(node, ids);}.bind(this)
                 });
                 });
+
+                var next = node.getNext();
+                if( next && next.get("class") === "MWFScriptSelectRefresh" ){
+                    var refreshNode = new Element("div", {"styles": this.form.css.propertyRefreshFormNode}).inject(next);
+                    refreshNode.addEvent("click", function(e){
+                        _self.changeData(this.get("name"), this );
+                    }.bind(node));
+                }
             }.bind(this));
             }.bind(this));
 
 
             fileNodes.each(function(node){
             fileNodes.each(function(node){