From a476a7adfd9f46c075821f46de157dd34197b061 Mon Sep 17 00:00:00 2001 From: juanf <juanf> Date: Wed, 13 Aug 2014 13:05:56 +0000 Subject: [PATCH] Bugfix to avoid manual modifications of properties modified by scripts. SVN: 32175 --- .../ExperimentForm/ExperimentFormView.js | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/ExperimentForm/ExperimentFormView.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/ExperimentForm/ExperimentFormView.js index 7df8d81a70a..6ca5927cbd1 100644 --- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/ExperimentForm/ExperimentFormView.js +++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/ExperimentForm/ExperimentFormView.js @@ -134,18 +134,19 @@ function ExperimentFormView(experimentFormController, experimentFormModel) { var $controlGroup = null; + var value = this._experimentFormModel.experiment.properties[propertyType.code]; + var isSystemProperty = false; + if(!value && propertyType.code.charAt(0) === '$') { + value = this._experimentFormModel.experiment.properties[propertyType.code.substr(1)]; + isSystemProperty = true; + } + if(this._experimentFormModel.mode === FormMode.VIEW) { //Show values without input boxes if the form is in view mode - $controlGroup = FormUtil.getFieldForLabelWithText(propertyType.label, this._experimentFormModel.experiment.properties[propertyType.code]); + $controlGroup = FormUtil.getFieldForLabelWithText(propertyType.label, value); } else { var $component = FormUtil.getFieldForPropertyType(propertyType); //Update values if is into edit mode if(this._experimentFormModel.mode === FormMode.EDIT) { - var value = this._experimentFormModel.experiment.properties[propertyType.code]; - var isSystemProperty = false; - if(!value && propertyType.code.charAt(0) === '$') { - value = this._experimentFormModel.experiment.properties[propertyType.code.substr(1)]; - isSystemProperty = true; - } if(propertyType.dataType === "BOOLEAN") { $($component.children()[0]).prop('checked', value === "true"); } else if(propertyType.dataType === "TIMESTAMP") { @@ -176,7 +177,12 @@ function ExperimentFormView(experimentFormController, experimentFormModel) { } } - $component.change(changeEvent(propertyType)); + //Avoid modifications in properties managed by scripts + if(propertyType.managed || propertyType.dinamic) { + $component.prop('disabled', true); + } + + $component.change(changeEvent(propertyType, isSystemProperty)); $controlGroup = FormUtil.getFieldForComponentWithLabel($component, propertyType.label); } -- GitLab