From 73251738ab671de3769a85531c1cdaca250139e9 Mon Sep 17 00:00:00 2001
From: juanf <juanf>
Date: Tue, 23 Jun 2015 11:32:23 +0000
Subject: [PATCH] SSDM-2032 : ELN: modify sample/experiment form layout
 (ongoing work)

SVN: 34247
---
 .../js/views/SampleForm/SampleFormView.js     |  9 +++--
 .../js/views/SampleTable/SampleTableView.js   | 33 ++++++++++---------
 2 files changed, 24 insertions(+), 18 deletions(-)

diff --git a/plasmid/source/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js b/plasmid/source/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js
index f6e86d7b726..3ae82ed15da 100644
--- a/plasmid/source/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js
+++ b/plasmid/source/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js
@@ -47,7 +47,12 @@ function SampleFormView(sampleFormController, sampleFormModel) {
 		//
 		var $formTitle = $("<div>");
 		var nameLabel = this._sampleFormModel.sample.properties[profile.propertyReplacingCode];
-		var entityPath = this._sampleFormModel.sample.experimentIdentifierOrNull + "/" + this._sampleFormModel.sample.code;
+		var entityPath = null;
+		if(this._sampleFormModel.sample.experimentIdentifierOrNull) {
+			entityPath = this._sampleFormModel.sample.experimentIdentifierOrNull + "/" + this._sampleFormModel.sample.code;
+		} else {
+			entityPath = this._sampleFormModel.sample.identifier;
+		}
 		var isName = (nameLabel)?true:false;
 		
 		var title = null;
@@ -335,7 +340,7 @@ function SampleFormView(sampleFormController, sampleFormModel) {
 		for(var i = 0; i < sampleType.propertyTypeGroups.length; i++) {
 			var propertyTypeGroup = sampleType.propertyTypeGroups[i];
 			if(propertyTypeGroup.name !== "General") {
-				isStorageAvailable = isStorageAvailable || this._paintPropertiesForSection($formColumn, propertyTypeGroup);
+				isStorageAvailable = isStorageAvailable || this._paintPropertiesForSection($formColumn, propertyTypeGroup, i);
 			}
 		}
 		
diff --git a/plasmid/source/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableView.js b/plasmid/source/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableView.js
index 36dc6656634..ebf8e09a666 100644
--- a/plasmid/source/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableView.js
+++ b/plasmid/source/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableView.js
@@ -25,23 +25,24 @@ function SampleTableView(sampleTableController, sampleTableModel) {
 		if(this._sampleTableModel.title) {
 			var $title = $("<h1>").append(this._sampleTableModel.title);
 			
-			var experimentCode = this._sampleTableModel.experimentIdentifier.split("/")[3];
-			var sampleTypeCode = experimentCode.substring(0,experimentCode.indexOf("_COLLECTION"));
-			
-			//Add Experiment Step
-			if(profile.getSampleTypeForSampleTypeCode(sampleTypeCode)) {
-				$title.append("&nbsp;");
-				$title.append(FormUtil.getButtonWithText("Create " + sampleTypeCode, function() {
-					var argsMap = {
-							"sampleTypeCode" : sampleTypeCode,
-							"experimentIdentifier" : _this._sampleTableModel.experimentIdentifier
-					}
-					var argsMapStr = JSON.stringify(argsMap);
-					Util.unblockUI();
-					mainController.changeView("showCreateSubExperimentPage", argsMapStr);
-				}));
+			if(this._sampleTableModel.experimentIdentifier) {
+				var experimentCode = this._sampleTableModel.experimentIdentifier.split("/")[3];
+				var sampleTypeCode = experimentCode.substring(0,experimentCode.indexOf("_COLLECTION"));
+				
+				//Add Experiment Step
+				if(profile.getSampleTypeForSampleTypeCode(sampleTypeCode)) {
+					$title.append("&nbsp;");
+					$title.append(FormUtil.getButtonWithText("Create " + sampleTypeCode, function() {
+						var argsMap = {
+								"sampleTypeCode" : sampleTypeCode,
+								"experimentIdentifier" : _this._sampleTableModel.experimentIdentifier
+						}
+						var argsMapStr = JSON.stringify(argsMap);
+						Util.unblockUI();
+						mainController.changeView("showCreateSubExperimentPage", argsMapStr);
+					}));
+				}
 			}
-			
 			$container.append($title);
 		}
 		
-- 
GitLab