From 50dfbfe607e66e037a548cd85f46103a84f74d65 Mon Sep 17 00:00:00 2001
From: juanf <juanf>
Date: Fri, 9 Dec 2016 10:36:26 +0000
Subject: [PATCH] SSDM-4407 : New button, create experimental step child from
 parent

SVN: 37463
---
 .../js/views/SampleForm/SampleFormView.js     | 28 +++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js
index 47b71c52682..0b6af5924ee 100644
--- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js
+++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js
@@ -136,6 +136,34 @@ function SampleFormView(sampleFormController, sampleFormModel) {
 		//
 		var toolbarModel = [];
 		if(this._sampleFormModel.mode !== FormMode.CREATE) {
+			//Create Experiment Step
+			if(_this._sampleFormModel.sample.sampleTypeCode === "EXPERIMENTAL_STEP") {
+				var $createBtn = FormUtil.getButtonWithIcon("glyphicon-plus", function() {
+					var argsMap = {
+							"sampleTypeCode" : "EXPERIMENTAL_STEP",
+							"experimentIdentifier" : _this._sampleFormModel.sample.experimentIdentifierOrNull
+					}
+					var argsMapStr = JSON.stringify(argsMap);
+					
+					mainController.changeView("showCreateSubExperimentPage", argsMapStr);
+					
+					var setParent = function() {
+						mainController.currentView._sampleFormModel.sampleLinksParents.addSample(_this._sampleFormModel.sample);
+						Util.unblockUI();
+					}
+					
+					var repeatUntilSet = function() {
+						if(mainController.currentView.isLoaded()) {
+							setParent();
+						} else {
+							setTimeout(repeatUntilSet, 100);
+						}
+					}
+					
+					repeatUntilSet();
+				});
+				toolbarModel.push({ component : $createBtn, tooltip: "Create Experimental Step" });
+			}
 			
 			//Edit
 			if(this._sampleFormModel.mode === FormMode.VIEW) {
-- 
GitLab