From 494b94d0d8a5295a684a3033fae82b57c6b8d674 Mon Sep 17 00:00:00 2001
From: juanf <juanf>
Date: Tue, 28 Mar 2017 13:30:30 +0000
Subject: [PATCH] SSDM-3501 : Dropdown menu fixes.

SVN: 37991
---
 .../js/views/DataGrid/SampleDataGridUtil.js   | 20 ++++++++++---------
 .../js/views/SampleForm/widgets/LinksView.js  | 11 +++++-----
 2 files changed, 16 insertions(+), 15 deletions(-)

diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataGrid/SampleDataGridUtil.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataGrid/SampleDataGridUtil.js
index b4eef52db13..d3f107099a6 100644
--- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataGrid/SampleDataGridUtil.js
+++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataGrid/SampleDataGridUtil.js
@@ -427,36 +427,38 @@ var SampleDataGridUtil = new function() {
 				$dropDownMenu.append($caret);
 				$dropDownMenu.append($list);
 				
-				var clickFunction = function($dropDown) {
-					return function(event) {
+				var stopEventsBuble = function(event) {
 						event.stopPropagation();
 						event.preventDefault();
 						$caret.dropdown('toggle');
-					};
-				}
+				};
 				$dropDownMenu.dropdown();
-				$dropDownMenu.click(clickFunction($dropDownMenu));
+				$dropDownMenu.click(stopEventsBuble);
 				
 				var $hierarchyGraph = $("<li>", { 'role' : 'presentation' }).append($("<a>", {'title' : 'Open Hierarchy'}).append("Open Hierarchy"));
-				$hierarchyGraph.click(function(e) {
+				$hierarchyGraph.click(function(event) {
+					stopEventsBuble(event);
 					mainController.changeView('showSampleHierarchyPage', data.permId, true);
 				});
 				$list.append($hierarchyGraph);
 				
 				var $hierarchyTable = $("<li>", { 'role' : 'presentation' }).append($("<a>", {'title' : 'Open Hierarchy Table'}).append("Open Hierarchy Table"));
-				$hierarchyTable.click(function(e) {
+				$hierarchyTable.click(function(event) {
+					stopEventsBuble(event);
 					mainController.changeView('showSampleHierarchyTablePage', data.permId, true);
 				});
 				$list.append($hierarchyTable);
 				
 				var $upload = $("<li>", { 'role' : 'presentation' }).append($("<a>", {'title' : 'File Upload'}).append("File Upload"));
-				$upload.click(function(e) {
+				$upload.click(function(event) {
+					stopEventsBuble(event);
 					mainController.changeView('showCreateDataSetPageFromPermId', data.permId, true);
 				});
 				$list.append($upload);
 				
 				var $move = $("<li>", { 'role' : 'presentation' }).append($("<a>", {'title' : 'Move'}).append("Move"));
-				$move.click(function(e) {
+				$move.click(function(event) {
+					stopEventsBuble(event);
 					var moveSampleController = new MoveSampleController(data.permId, function() {
 						mainController.refreshView();
 					});
diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/widgets/LinksView.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/widgets/LinksView.js
index fa9514b9385..a3f91081a82 100644
--- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/widgets/LinksView.js
+++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/widgets/LinksView.js
@@ -303,20 +303,18 @@ function LinksView(linksController, linksModel) {
 				$dropDownMenu.append($caret);
 				$dropDownMenu.append($list);
 				
-				var clickFunction = function($dropDown) {
-					return function(event) {
+				var stopEventsBuble = function(event) {
 						event.stopPropagation();
 						event.preventDefault();
 						$caret.dropdown('toggle');
-					};
-				}
+				};
 				$dropDownMenu.dropdown();
-				$dropDownMenu.click(clickFunction($dropDownMenu));
+				$dropDownMenu.click(stopEventsBuble);
 				
 				if(profile.isSampleTypeProtocol(data["$object"].sampleTypeCode)) {
 					var $copyAndLink = $("<li>", { 'role' : 'presentation' }).append($("<a>", {'title' : 'Use as template'}).append("Use as template"));
 					$copyAndLink.click(function(e) {
-						
+						stopEventsBuble(e);
 						var copyAndLink = function(code) {
 							var newSampleIdentifier = "/" + mainController.currentView._sampleFormModel.sample.spaceCode + "/" + code;
 							Util.blockUI();
@@ -356,6 +354,7 @@ function LinksView(linksController, linksModel) {
 				
 				var getDeleteFunc = function(sample) {
 					return function(e) {
+						stopEventsBuble(e);
 						linksView.updateSample(sample, false);
 					};
 				}
-- 
GitLab