diff --git a/openbis/source/core-plugins/dataset-uploader/1/as/webapps/dataset-uploader/html/js/DataSetFormView.js b/openbis/source/core-plugins/dataset-uploader/1/as/webapps/dataset-uploader/html/js/DataSetFormView.js
index 086723dbc8dd21deb4721cdc3d8313cfc2aadbbd..b915d9b7dce862a5730dbf69f75c923a38ab39f9 100644
--- a/openbis/source/core-plugins/dataset-uploader/1/as/webapps/dataset-uploader/html/js/DataSetFormView.js
+++ b/openbis/source/core-plugins/dataset-uploader/1/as/webapps/dataset-uploader/html/js/DataSetFormView.js
@@ -92,13 +92,11 @@ function DataSetFormView(dataSetFormController, dataSetFormModel) {
 		$wrapper.append(filesViewer);
 		
 		//Submit Button
-		if(this._dataSetFormModel.mode !== FormMode.VIEW) {
-			var $submitButton = $('<fieldset>')
-			.append($('<div>', { class : "form-group"}))
-			.append($('<div>', {class: FormUtil.controlColumnClass})
-						.append($('<input>', { class : 'btn btn-primary', 'type' : 'submit', 'value' : titleText})));
-			$wrapper.append($submitButton);
-		}
+		var $submitButton = $('<fieldset>')
+		.append($('<div>', { class : "form-group"}))
+		.append($('<div>', {class: FormUtil.controlColumnClass})
+					.append($('<input>', { class : 'btn btn-primary', 'type' : 'submit', 'value' : titleText})));
+		$wrapper.append($submitButton);
 		
 		//Attach to main form
 		$container.append($('<div>', { class : 'row'}).append($('<div>', { class : FormUtil.formColumClass}).append($wrapper)));
@@ -154,38 +152,35 @@ function DataSetFormView(dataSetFormController, dataSetFormModel) {
 		}
 		
 		if(this._dataSetFormModel.files.length === 1 && 
-				this._dataSetFormModel.files[0].indexOf('zip', this._dataSetFormModel.files[0].length - 3) !== -1) {
-			var isZipDirectoryUpload = profile.isZipDirectoryUpload($('#DATASET_TYPE').val());
-			if(isZipDirectoryUpload === null) {
-				var $fileFieldSetIsDirectory = $('<div>')
-				.append($('<div>', { class : "form-group"})
-							.append($('<label>', {class : 'control-label '+ FormUtil.labelColumnClass}).text('Uncompress before import:'))
+			this._dataSetFormModel.files[0].indexOf('zip', this._dataSetFormModel.files[0].length - 3) !== -1) {
+			var $fileFieldSetIsDirectory = $('<div>')
+			.append($('<div>', { class : "form-group"})
+						.append($('<label>', {class : 'control-label '+ FormUtil.labelColumnClass}).text('Uncompress before import:'))
+						.append($('<div>', {class: FormUtil.controlColumnClass})
+							.append(FormUtil._getBooleanField('isZipDirectoryUpload', 'Uncompress before import:')))
+			);
+			$wrapper.append($fileFieldSetIsDirectory);
+			
+			$("#isZipDirectoryUpload").change(function() {
+				_this.isFormDirty = true;
+				if($("#isZipDirectoryUpload"+":checked").val() === "on") {
+					var $textField = FormUtil._getInputField('text', 'folderName', 'Folder Name', null, true);
+					$textField.change(function(event) {
+						_this.isFormDirty = true;
+					});
+					
+					var $folderName = $('<div>', { "id" : "folderNameContainer"})
+					.append($('<div>', { class : "form-group"})
+							.append($('<label>', {class : 'control-label '+ FormUtil.labelColumnClass}).html('Folder Name&nbsp;(*):'))
 							.append($('<div>', {class: FormUtil.controlColumnClass})
-								.append(FormUtil._getBooleanField('isZipDirectoryUpload', 'Uncompress before import:')))
-				);
-				$wrapper.append($fileFieldSetIsDirectory);
-				
-				$("#isZipDirectoryUpload").change(function() {
-					_this.isFormDirty = true;
-					if($("#isZipDirectoryUpload"+":checked").val() === "on") {
-						var $textField = FormUtil._getInputField('text', 'folderName', 'Folder Name', null, true);
-						$textField.change(function(event) {
-							_this.isFormDirty = true;
-						});
-						
-						var $folderName = $('<div>', { "id" : "folderNameContainer"})
-						.append($('<div>', { class : "form-group"})
-								.append($('<label>', {class : 'control-label '+ FormUtil.labelColumnClass}).html('Folder Name&nbsp;(*):'))
-								.append($('<div>', {class: FormUtil.controlColumnClass})
-									.append($textField))
-						);
-						$("#fileOptionsContainer").append($folderName);
-						$("#folderName").val(_this._dataSetFormModel.files[0].substring(0, _this._dataSetFormModel.files[0].indexOf(".")));
-					} else {
-						$( "#folderNameContainer" ).remove();
-					}
-				})
-			}
+								.append($textField))
+					);
+					$("#fileOptionsContainer").append($folderName);
+					$("#folderName").val(_this._dataSetFormModel.files[0].substring(0, _this._dataSetFormModel.files[0].indexOf(".")));
+				} else {
+					$( "#folderNameContainer" ).remove();
+				}
+			})
 		}
 	}
 	
@@ -252,19 +247,7 @@ function DataSetFormView(dataSetFormController, dataSetFormModel) {
 				}
 				
 				$component.change(changeEvent(propertyType, isSystemProperty));
-				
-				//Update values if is into edit mode
-				if(this._dataSetFormModel.mode === FormMode.EDIT) {
-					if(propertyType.dataType === "BOOLEAN") {
-						$($component.children()[0]).prop('checked', value === "true");
-					} else if(propertyType.dataType === "TIMESTAMP") {
-						$($($component.children()[0]).children()[0]).val(value);
-					} else {
-						$component.val(value);
-					}
-				} else {
-					$component.val(""); //HACK-FIX: Not all browsers show the placeholder in Bootstrap 3 if you don't set an empty value.
-				}
+				$component.val(""); //HACK-FIX: Not all browsers show the placeholder in Bootstrap 3 if you don't set an empty value.
 				
 				$controls.append($component);
 				
diff --git a/openbis/source/core-plugins/dataset-uploader/1/as/webapps/dataset-uploader/html/js/FormUtil.js b/openbis/source/core-plugins/dataset-uploader/1/as/webapps/dataset-uploader/html/js/FormUtil.js
index fc482f16bfec455b0159efa5ac583969423d71e3..7e103579f93ef80c0d53d596c1bf58be6f97a2fb 100644
--- a/openbis/source/core-plugins/dataset-uploader/1/as/webapps/dataset-uploader/html/js/FormUtil.js
+++ b/openbis/source/core-plugins/dataset-uploader/1/as/webapps/dataset-uploader/html/js/FormUtil.js
@@ -1,9 +1,3 @@
-var FormMode = {
-    CREATE : 0,
-    EDIT : 1,
-    VIEW : 2
-}
-
 var FormUtil = new function() {
 	this.profile = null;
 	
@@ -16,268 +10,11 @@ var FormUtil = new function() {
 	this.shortControlColumnClass = 'col-md-5';
 	this.controlColumnClass = 'col-md-6';
 	this.controlColumnClassBig = 'col-md-10';
-	//
-	// Annotations
-	//
-	
-	this.getXMLFromAnnotations = function(stateObj) {
-		var rootNode = document.createElementNS("http://www.w3.org/1999/xhtml", "root"); //The namespace should be ignored by both ELN and openBIS parsers
-		
-		for(var permId in stateObj) {
-			var sampleNode	= document.createElementNS("http://www.w3.org/1999/xhtml", "Sample"); //Should not add the namespace since is the same as the root
-			sampleNode.setAttributeNS(null, "permId", permId); //Should not add the namespace
-			
-			for(var propertyTypeCode in stateObj[permId]) {
-				var propertyTypeValue = stateObj[permId][propertyTypeCode];
-				sampleNode.setAttributeNS(null, propertyTypeCode, propertyTypeValue); //Should not add the namespace
-			}
-			
-			rootNode.appendChild(sampleNode);
-		}
-		
-		var serializer = new XMLSerializer();
-		var xmlDoc = serializer.serializeToString(rootNode);
-		return xmlDoc;
-	}
-	
-	this.getAnnotationsFromSample = function(sample) {
-		return this.getAnnotationsFromField(sample.properties["ANNOTATIONS_STATE"]);
-	}
-	
-	this.getAnnotationsFromField = function(field) {
-		var stateObj = {};
-		var stateFieldValue = Util.getEmptyIfNull(field);
 
-		if(stateFieldValue === "") {
-			return stateObj;
-		}
-		var xmlDoc = new DOMParser().parseFromString(stateFieldValue, 'text/xml');
-		var samples = xmlDoc.getElementsByTagName("Sample");
-		for(var i = 0; i < samples.length; i++) {
-			var sample = samples[i];
-			var permId = sample.attributes["permId"].value;
-			for(var j = 0; j < sample.attributes.length; j++) {
-				var attribute = sample.attributes[j];
-				if(attribute.name !== "permId") {
-					if(!stateObj[permId]) {
-						stateObj[permId] = {};
-					}
-					stateObj[permId][attribute.name] = attribute.value;
-				}
-			}
-		}
-		return stateObj;
-	}
 	//
 	// Standard Form Fields
 	//
 	
-	this.getDropDownToogleWithSelectedFeedback = function(prefixElement, labelWithEvents, isSelectedFeedback, clickCallback) {
-		var $dropDownToogle = $('<span>', { class : 'dropdown' });
-		if(prefixElement) {
-			$dropDownToogle.append(prefixElement);
-		}
-		$dropDownToogle.append($('<button>', { 'href' : '#', 'data-toggle' : 'dropdown', 'class' : 'dropdown-toggle btn btn-default'}).append($('<b>', { 'class' : 'caret' })));
-		
-		var $dropDownToogleOptions = $('<ul>', { class : 'dropdown-menu', 'role' : 'menu' });
-		$dropDownToogle.append($dropDownToogleOptions);
-		
-		for(var i = 0; i < labelWithEvents.length; i++) {
-			
-			var selectedFeedback = $('<span>', { 'id' : 'dropdown-' + labelWithEvents[i].id });
-			
-			if(isSelectedFeedback && i === 0) {
-				selectedFeedback.append("<span class='glyphicon glyphicon-ok'></span>");
-			}
-			
-			var $a = $('<a>', { class : '', 'title' : labelWithEvents[i].title }).append(selectedFeedback).append('&nbsp;').append(labelWithEvents[i].title);
-			
-			var clickFunction = function(labelWithEvents, selectedIndex, isSelectedFeedback) {
-				return function() {
-					if(isSelectedFeedback) {
-						for(var j = 0; j < labelWithEvents.length; j++) {
-							$("#" + 'dropdown-' + labelWithEvents[j].id).empty();
-							if(j === selectedIndex) {
-								$("#" + 'dropdown-' + labelWithEvents[j].id).append("<span class='glyphicon glyphicon-ok'></span>");
-							}
-						}
-					}
-					
-					labelWithEvents[selectedIndex].href();
-					
-					if(clickCallback) {
-						clickCallback();
-					}
-				};
-			}
-			
-			$a.click(clickFunction(labelWithEvents, i, isSelectedFeedback));
-			$dropDownToogleOptions.append($('<li>', { 'role' : 'presentation' }).append($a));
-		}	
-		return $dropDownToogle;
-	}
-	
-	this.getDefaultBenchDropDown = function(id, isRequired) {
-		var $storageDropDown = this.getDefaultStoragesDropDown(id, isRequired);
-		if(!$storageDropDown) {
-			return null;
-		}
-		for(var i = $storageDropDown.children().length -1; i >= 0 ; i--){
-			var isEmpty = $storageDropDown.children()[i].value === "";
-			var isBench = $storageDropDown.children()[i].value.indexOf("BENCH") > -1;
-			if(!isEmpty && !isBench){
-				$storageDropDown.children()[i].remove();
-		    }
-		}
-		return $storageDropDown;
-	}
-	
-	this.getDefaultStorageBoxSizesDropDown = function(id, isRequired) {
-		if(!this.profile.storagesConfiguration["isEnabled"]) {
-			return null;
-		}
-		var storageBoxesVocabularyProp = this.profile.getPropertyType(this.profile.storagesConfiguration["STORAGE_PROPERTIES"][0]["BOX_SIZE_PROPERTY"]);
-		if(!storageBoxesVocabularyProp) {
-			return null;
-		}
-		var $storageBoxesDropDown = this.getFieldForPropertyType(storageBoxesVocabularyProp);
-		$storageBoxesDropDown.attr('id', id);
-		if (isRequired) {
-			$storageBoxesDropDown.attr('required', '');
-		}
-		return $storageBoxesDropDown;
-	}
-	
-	this.getDefaultStoragesDropDown = function(id, isRequired) {
-		if(!this.profile.storagesConfiguration["isEnabled"]) {
-			return null;
-		}
-		var storageVocabularyProp = this.profile.getPropertyType(this.profile.storagesConfiguration["STORAGE_PROPERTIES"][0]["NAME_PROPERTY"]);
-		if(!storageVocabularyProp) {
-			return null;
-		}
-		var $storageDropDown = this.getFieldForPropertyType(storageVocabularyProp);
-		$storageDropDown.attr('id', id);
-		if (isRequired) {
-			$storageDropDown.attr('required', '');
-		}
-		return $storageDropDown;
-	}
-	
-	this.getStoragePropertyGroupsDropdown = function(id, isRequired) {
-		var propertyGroups = this.profile.getStoragePropertyGroups();
-		
-		var $component = $("<select>", {"id" : id, class : 'form-control'});
-		if (isRequired) {
-			$component.attr('required', '');
-		}
-		
-		for(var i = 0; i < propertyGroups.length; i++) {
-			var propertyGroup = propertyGroups[i];
-			$component.append($("<option>").attr('value',propertyGroup.groupDisplayName).text(propertyGroup.groupDisplayName));
-		}
-		
-		return $component;
-	}
-	
-	this.getBoxPositionsDropdown = function(id, isRequired, code) {
-		var numRows = null;
-		var numCols = null;
-		
-		if(code) {
-			var rowsAndCols = code.split("X");
-			numRows = parseInt(rowsAndCols[0]);
-			numCols = parseInt(rowsAndCols[1]);
-		} else {
-			numRows = 0;
-			numCols = 0;
-		}
-		
-		var $component = $("<select>", {"id" : id, class : 'form-control'});
-		if (isRequired) {
-			$component.attr('required', '');
-		}
-		
-		$component.append($("<option>").attr('value', '').attr('selected', '').text(''));
-		
-		for(var i = 1; i <= numRows; i++) {
-			var rowLetter = Util.getLetterForNumber(i);
-			for(var j = 1; j <= numCols; j++) {
-				$component.append($("<option>").attr('value',rowLetter+j).text(rowLetter+j));
-			}
-			
-		}
-		return $component;
-	}
-	
-	this.getSampleTypeDropdown = function(id, isRequired) {
-		var sampleTypes = this.profile.getAllSampleTypes();
-		
-		var $component = $("<select>", {"id" : id, class : 'form-control'});
-		if (isRequired) {
-			$component.attr('required', '');
-		}
-		
-		$component.append($("<option>").attr('value', '').attr('selected', '').text(''));
-		for(var i = 0; i < sampleTypes.length; i++) {
-			var sampleType = sampleTypes[i];
-			if(profile.isSampleTypeHidden(sampleType.code)) {
-				continue;
-			}
-			var label = Util.getEmptyIfNull(sampleType.description);
-			if(label === "") {
-				label = sampleType.code;
-			}
-			
-			$component.append($("<option>").attr('value',sampleType.code).text(label));
-		}
-		
-		return $component;
-	}
-	
-	this.getExperimentTypeDropdown = function(id, isRequired) {
-		var experimentTypes = this.profile.allExperimentTypes;
-		
-		var $component = $("<select>", {"id" : id, class : 'form-control'});
-		if (isRequired) {
-			$component.attr('required', '');
-		}
-		
-		$component.append($("<option>").attr('value', '').attr('selected', '').text('Select an experiment type'));
-		for(var i = 0; i < experimentTypes.length; i++) {
-			var experimentType = experimentTypes[i];
-			if(profile.isExperimentTypeHidden(experimentType.code)) {
-				continue;
-			}
-			
-			var label = experimentType.code;
-			var description = Util.getEmptyIfNull(experimentType.description);
-			if(description !== "") {
-				label += " (" + description + ")";
-			}
-			
-			$component.append($("<option>").attr('value',experimentType.code).text(label));
-		}
-		
-		return $component;
-	}
-	
-	this.getSpaceDropdown = function(id, isRequired) {
-		var spaces = this.profile.allSpaces;
-		
-		var $component = $("<select>", {"id" : id, class : 'form-control'});
-		if (isRequired) {
-			$component.attr('required', '');
-		}
-		
-		$component.append($("<option>").attr('value', '').attr('selected', '').text(''));
-		for(var i = 0; i < spaces.length; i++) {
-			$component.append($("<option>").attr('value', spaces[i]).text(spaces[i]));
-		}
-		
-		return $component;
-	}
-	
 	this.getDataSetsDropDown = function(code, dataSetTypes) {
 		var $component = $("<select>", { class : 'form-control ' });
 		$component.attr('id', code);
@@ -302,126 +39,6 @@ var FormUtil = new function() {
 		return $component;
 	}
 	
-	this.getOptionsRadioButtons = function(name, isFirstSelected, values, changeAction) {
-		var $component = $("<div>");
-		for(var vIdx = 0; vIdx < values.length; vIdx++) {
-			if(vIdx !== 0) {
-				$component.append(" ");
-			}
-			var $radio = $("<input>", { type: "radio", name: name, value: values[vIdx]});
-			
-			if(isFirstSelected && (vIdx === 0)) {
-				$radio.attr("checked", "");
-			}
-			$radio.change(changeAction);
-			$component.append($radio);
-			$component.append(" " + values[vIdx]);
-		}
-		return $component;
-	}
-	
-	this.getProjectAndExperimentsDropdown = function(withProjects, withExperiments, isRequired, callbackForComponent) {
-		mainController.serverFacade.listSpacesWithProjectsAndRoleAssignments(null, function(dataWithSpacesAndProjects) {
-			var spaces = dataWithSpacesAndProjects.result;
-            var projectsToUse = [];
-            for (var i = 0; i < spaces.length; i++) {
-            	var space = spaces[i];
-            	for (var j = 0; j < space.projects.length; j++) {
-                    var project = space.projects[j];
-                    delete project["@id"];
-                    delete project["@type"];
-                    projectsToUse.push(project);
-                }
-            }
-            
-            mainController.serverFacade.listExperiments(projectsToUse, function(experiments) {
-            	if(experiments.result) {
-            		
-            		for (var k = 0; k < experiments.result.length; k++) {
-                		var experiment = experiments.result[k];
-                		
-                		for(var pIdx = 0; pIdx < projectsToUse.length; pIdx++) {
-                    		var project = projectsToUse[pIdx];
-                    		var projectIdentifier = "/" + project.spaceCode + "/" + project.code;
-                    		if(experiment.identifier.startsWith(projectIdentifier)) {
-                    			if(!project.experiments) {
-                    				project.experiments = [];
-                    			}
-                    			project.experiments.push(experiment);
-                    		}
-                    	}
-                	}
-                	//
-            		//
-            		var $component = $("<select>", { class : 'form-control'});
-            		if(isRequired) {
-            			$component.attr('required', '');
-            		}
-            		var placeHolder = "";
-            		if(withProjects && withExperiments) {
-            			placeHolder = "Select a project or experiment";
-            		} else if(withProjects) {
-            			placeHolder = "Select a project";
-            		} else if(withExperiments) {
-            			placeHolder = "Select an experiment";
-            		}
-            		$component.append($("<option>").attr('value', '').attr('selected', '').attr('disabled', '').text(placeHolder));
-            		for(var pIdx = 0; pIdx < projectsToUse.length; pIdx++) {
-            			var project = projectsToUse[pIdx];
-            			var projectIdentifier = "/" + project.spaceCode + "/" + project.code;
-            			if(withProjects) {
-            				$component.append($("<option>").attr('value', projectIdentifier).text(projectIdentifier));
-            			}
-            			if(project.experiments) {
-            				for(var eIdx = 0; eIdx < project.experiments.length; eIdx++) {
-                    			var experiment = project.experiments[eIdx];
-                    			if(withExperiments) {
-                    				$component.append($("<option>").attr('value',experiment.identifier).text(experiment.identifier));
-                    			}
-                			}
-            			}
-            		}
-            		//
-            		//
-            		callbackForComponent($component);
-            	}
-            });
-		});
-	}
-	
-	this.getDeleteButton = function(deleteFunction, includeReason, warningText) {
-		var $deleteBtn = $("<a>", { 'class' : 'btn btn-default ' });
-		$deleteBtn.append($("<span>", { 'class' : 'glyphicon glyphicon-trash', 'style' : 'width:16px; height:16px;'}));
-		$deleteBtn.click(function() {
-			var modalView = new DeleteEntityController(deleteFunction, includeReason, warningText);
-			modalView.init();
-		});
-		return $deleteBtn;
-	}
-	
-	this.getButtonWithImage = function(src, clickEvent) {
-		var $pinBtn = $("<a>", { 'class' : 'btn btn-default' });
-		$pinBtn.append($("<img>", { 'src' : src, 'style' : 'width:16px; height:16px;'}));
-		$pinBtn.click(clickEvent);
-		return $pinBtn;
-	}
-	
-	this.getButtonWithText = function(text, clickEvent) {
-		var $pinBtn = $("<a>", { 'class' : 'btn btn-default' });
-		$pinBtn.append(text);
-		$pinBtn.click(clickEvent);
-		return $pinBtn;
-	}
-	
-	this.getHierarchyButton = function(permId) {
-		var $hierarchyButton = $("<a>", { 'class' : 'btn btn-default'} )
-									.append($('<img>', { 'src' : './img/hierarchy-icon.png', 'style' : 'width:16px; height:17px;' }));
-		$hierarchyButton.click(function() {
-			mainController.changeView('showSampleHierarchyPage', permId);
-		});
-		return $hierarchyButton;
-	}
-	
 	//
 	// Get Field with container to obtain a correct layout
 	//