From e83b8b44a5afb85d00f9cc74e3ebfff4deffeca4 Mon Sep 17 00:00:00 2001
From: juanf <juanf>
Date: Fri, 18 Jul 2014 12:33:04 +0000
Subject: [PATCH] SSDM-616: Add ability to create Projects in the ELN
 (Refactoring)

SVN: 32116
---
 .../html/js/views/ExperimentForm.js           |  2 +-
 .../html/js/widgets/SideMenuWidget.js         | 56 +++----------------
 2 files changed, 10 insertions(+), 48 deletions(-)

diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/ExperimentForm.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/ExperimentForm.js
index d6b7c9030f6..388f9c34638 100644
--- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/ExperimentForm.js
+++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/ExperimentForm.js
@@ -271,7 +271,7 @@ function ExperimentForm(containerId, mainController, experiment, mode) {
 					}
 					
 					var callbackOk = function() {
-						_this._mainController.sideMenu.refreshExperiment($("#PROJECT").val());
+						_this._mainController.sideMenu.refreshExperiment($("#PROJECT").val(), experimentCode);
 						_this._isFormDirty = false;
 						_this._mainController.changeView("showExperimentPageFromIdentifier", experimentIdentifier);
 						Util.unblockUI();
diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/widgets/SideMenuWidget.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/widgets/SideMenuWidget.js
index c4b9f24f6ad..cfb8b93fdf5 100644
--- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/widgets/SideMenuWidget.js
+++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/widgets/SideMenuWidget.js
@@ -45,54 +45,16 @@ function SideMenuWidget(mainController, containerId, serverFacade) {
 		this.repaint();
 	}
 	
-	this.refreshExperiment = function(projectIdentifierToAskForExperiments) {
-		var _this = this;
-		
-		//Clean node
-		var projectNode = _this._getProjectNodeForCode(projectIdentifierToAskForExperiments.split("/")[2]);
-		projectNode.newMenuIfSelected.children = [];
+	this.refreshExperiment = function(projectIdentifier, experimentCode) {
+		var projectNode = this._getProjectNodeForCode(projectIdentifier.split("/")[2]);
+		var newMenuIfSelectedExperiment = {
+				children : []
+		}
+		var experimentIdentifier = projectIdentifier + "/" + experimentCode;
+		var menuItemExperiment = new SideMenuWidgetComponent(true, false, experimentCode, projectNode, newMenuIfSelectedExperiment, "showExperimentPageFromIdentifier", experimentIdentifier, "(Experiment)");
+		projectNode.newMenuIfSelected.children.push(menuItemExperiment);
 		
-		//Rebuild node
-		this._serverFacade.getProjectFromIdentifier(projectIdentifierToAskForExperiments, function(project) {
-			delete project["@id"];
-			delete project["@type"];
-			
-			//Fill Experiments
-			_this._serverFacade.listExperiments([project], function(experiments) {
-				var experimentsToAskForSamples = [];
-				for(var i = 0; i < experiments.result.length; i++) {
-					var experiment = experiments.result[i];
-					experimentsToAskForSamples.push(experiment);
-					var projectCode = experiment.identifier.split("/")[2];
-					var projectNode = _this._getProjectNodeForCode(projectCode);
-					
-					var newMenuIfSelectedExperiment = {
-							children : []
-					}
-					
-					var menuItemExperiment = new SideMenuWidgetComponent(true, false, experiment.code, projectNode, newMenuIfSelectedExperiment, "showExperimentPageFromIdentifier", experiment.identifier, "(Experiment)");
-					projectNode.newMenuIfSelected.children.push(menuItemExperiment);
-				}
-					
-				//Fill Sub Experiments
-				_this._serverFacade.listSamplesForExperiments(experimentsToAskForSamples, function(subExperiments) {
-					var a = 0;
-					for(var i = 0; i < subExperiments.result.length; i++) {
-						var subExperiment = subExperiments.result[i];
-						if(subExperiment.experimentIdentifierOrNull) {
-							var projectCode = subExperiment.experimentIdentifierOrNull.split("/")[2];
-							var experimentCode = subExperiment.experimentIdentifierOrNull.split("/")[3];
-							var experimentNode = _this._getExperimentNodeForCode(projectCode, experimentCode);
-							
-							var menuItemSubExperiment = new SideMenuWidgetComponent(true, false, subExperiment.code, experimentNode, null, "showViewSamplePageFromPermId", subExperiment.permId, "(Sub Exp.)");
-							experimentNode.newMenuIfSelected.children.push(menuItemSubExperiment);
-						}
-					}
-					
-					_this.repaint();
-				});
-			});
-		});
+		this.repaint();
 	}
 	
 	this.refreshSubExperiment = function(experimentIdentifierToAskForSamples) {
-- 
GitLab