diff --git a/frontend-js/src/main/js/Configuration.js b/frontend-js/src/main/js/Configuration.js index df5d61bea47e7ba9235def7a00ea95df0824f64f..871d070dcccc928029199d0cc672c30adaeb66dc 100644 --- a/frontend-js/src/main/js/Configuration.js +++ b/frontend-js/src/main/js/Configuration.js @@ -301,6 +301,10 @@ Configuration.prototype.setPrivilegeTypes = function (privilegeTypes) { } }; +/** + * + * @returns {PrivilegeType[]} + */ Configuration.prototype.getPrivilegeTypes = function () { return this._privilegeTypes; }; diff --git a/frontend-js/src/main/js/gui/admin/EditProjectDialog.js b/frontend-js/src/main/js/gui/admin/EditProjectDialog.js index b915e3e66cfc78a274dd6bf33d4cfeb186a5626b..109a71b2f828b4f70413e174504237ff3902d6af 100644 --- a/frontend-js/src/main/js/gui/admin/EditProjectDialog.js +++ b/frontend-js/src/main/js/gui/admin/EditProjectDialog.js @@ -72,7 +72,6 @@ EditProjectDialog.prototype.createGui = function () { name: "COMMENTS", panelClass: CommentsTab }); - // var element = Functions.createElement({type: "div", style: "margin-top:10px;"}); self.setCommentsTab(self._panels[0]); $(".nav-tabs > li > a", self.getElement()).bind("click", function () { diff --git a/frontend-js/src/main/js/gui/admin/EditUserDialog.js b/frontend-js/src/main/js/gui/admin/EditUserDialog.js index 7cf9719e85ae2c81b8da50ba758bb3f4b86dd64e..15e9e545586b63e2c297852a9f4cebabadd5d602 100644 --- a/frontend-js/src/main/js/gui/admin/EditUserDialog.js +++ b/frontend-js/src/main/js/gui/admin/EditUserDialog.js @@ -13,6 +13,17 @@ var logger = require('../../logger'); var guiUtils = new (require('../leftPanel/GuiUtils'))(); +/** + * + * @param params + * @param {HTMLElement} params.element + * @param {User} params.user + * @param {Configuration} params.configuration + * @param {ServerConnector} params.serverConnector + * + * @constructor + * @extends {AbstractGuiElement} + */ function EditUserDialog(params) { AbstractGuiElement.call(this, params); var self = this; @@ -27,113 +38,72 @@ function EditUserDialog(params) { EditUserDialog.prototype = Object.create(AbstractGuiElement.prototype); EditUserDialog.prototype.constructor = EditUserDialog; +/** + * + * @param {User} user + */ EditUserDialog.prototype.setUser = function (user) { this._user = user; this.setIsNewUser(user.getLogin() === undefined); }; + +/** + * + * @returns {User} + */ EditUserDialog.prototype.getUser = function () { return this._user; }; +/** + * + * @param {boolean} isNewUser + */ EditUserDialog.prototype.setIsNewUser = function (isNewUser) { this._isNewUser = isNewUser; }; + +/** + * + * @returns {boolean} + */ EditUserDialog.prototype.getIsNewUser = function () { return this._isNewUser; }; +/** + * + */ EditUserDialog.prototype.createGui = function () { var self = this; - var element = self.getElement(); - - var tabDiv = Functions.createElement({ - type: "div", - name: "tabView", - className: "tabbable boxed parentTabs", - style: "position:absolute;top:10px;bottom:40px;left:10px;right:10px" - }); - element.appendChild(tabDiv); - - var tabMenuDiv = Functions.createElement({ - type: "ul", - className: "nav nav-tabs" - }); - tabDiv.appendChild(tabMenuDiv); - var tabContentDiv = Functions.createElement({ - type: "div", - className: "tab-content", - style: "height:100%" - }); - tabDiv.appendChild(tabContentDiv); - - self.createGeneralTab(tabMenuDiv, tabContentDiv); - self.createPrivilegesTab(tabMenuDiv, tabContentDiv); - self.createProjectsTab(tabMenuDiv, tabContentDiv); - $("a", tabMenuDiv).bind("click", function () { - //workaround for some css issues... - tabDiv.style.top = "40px"; - tabDiv.style.bottom = "10px"; - }); -}; + guiUtils.initTabContent(self); -EditUserDialog.prototype.createGeneralTab = function (tabMenuDiv, tabContentDiv) { - var self = this; - self.addTab({ - tabMenuDiv: tabMenuDiv, - tabContentDiv: tabContentDiv, + guiUtils.addTab(self, { name: "DETAILS", content: self.createGeneralTabContent() }); - -}; - -var login_counter = 0; - -EditUserDialog.prototype.generateTabId = function (tab_name) { - var self = this; - var login = self.getUser().getLogin(); - if (login === undefined) { - login = "new_user_" + (login_counter++); - } - return login.replace(".", "_") + tab_name.replace(" ", "_") + "_TAB"; -}; - -EditUserDialog.prototype.createPrivilegesTab = function (tabMenuDiv, tabContentDiv) { - var self = this; - self.addTab({ - tabMenuDiv: tabMenuDiv, - tabContentDiv: tabContentDiv, + guiUtils.addTab(self, { name: "GLOBAL PRIVILEGES", content: self.createPrivilegesTabContent() }); - -}; - -EditUserDialog.prototype.addTab = function (params) { - var id = this.generateTabId(params.name); - - var navLi = guiUtils.createTabMenuObject({ - id: id, - name: params.name, - navigationBar: params.tabMenuDiv + guiUtils.addTab(self, { + name: "PROJECT PRIVILEGES", + content: self.createProjectsTabContent() }); - params.tabMenuDiv.appendChild(navLi); - var contentDiv = guiUtils.createTabContentObject({ - id: id, - navigationObject: navLi, - navigationBar: params.tabMenuDiv + $(".nav-tabs > li > a", self.getElement()).bind("click", function () { + //workaround for some css issues... + $(".parentTabs", self.getElement()).css("top", "40px"); + $(".parentTabs", self.getElement()).css("bottom", "10px"); }); - - $(contentDiv).css("overflow","auto"); - if (params.content !== undefined) { - contentDiv.appendChild(params.content); - } - - params.tabContentDiv.appendChild(contentDiv); }; +/** + * + * @param value + * @returns {string} + */ function getStringIfDefined(value) { if (value === undefined) { return ""; @@ -141,6 +111,10 @@ function getStringIfDefined(value) { return xss(value); } +/** + * + * @returns {HTMLElement} + */ EditUserDialog.prototype.createGeneralTabContent = function () { var self = this; @@ -192,6 +166,10 @@ EditUserDialog.prototype.createGeneralTabContent = function () { }; +/** + * + * @returns {HTMLElement} + */ EditUserDialog.prototype.createPrivilegesTabContent = function () { var self = this; var result = Functions.createElement({ @@ -202,6 +180,11 @@ EditUserDialog.prototype.createPrivilegesTabContent = function () { return result; }; +/** + * + * @returns {HTMLElement} + * @private + */ EditUserDialog.prototype._createPrivilegesTable = function () { var result = Functions.createElement({ type: "div", @@ -220,16 +203,10 @@ EditUserDialog.prototype._createPrivilegesTable = function () { }; -EditUserDialog.prototype.createProjectsTab = function (tabMenuDiv, tabContentDiv) { - var self = this; - self.addTab({ - tabMenuDiv: tabMenuDiv, - tabContentDiv: tabContentDiv, - name: "PROJECT PRIVILEGES", - content: self.createProjectsTabContent() - }); -}; - +/** + * + * @returns {HTMLElement} + */ EditUserDialog.prototype.createProjectsTabContent = function () { var self = this; var result = Functions.createElement({ @@ -240,6 +217,11 @@ EditUserDialog.prototype.createProjectsTabContent = function () { return result; }; +/** + * + * @returns {HTMLElement} + * @private + */ EditUserDialog.prototype._createProjectsTable = function () { var result = Functions.createElement({ type: "div", @@ -262,6 +244,10 @@ EditUserDialog.prototype._createProjectsTable = function () { return result; }; +/** + * + * @returns {Promise} + */ EditUserDialog.prototype.init = function () { var self = this; @@ -295,163 +281,176 @@ EditUserDialog.prototype.init = function () { dataTable.clear().rows.add(data).draw(); - return self.initProjectsTab().then(function () { - return self.refreshProjects(); - }).then(function () { + self.initProjectsTab(); + return self.refreshProjects().then(function () { return self.initPrivilegesTab(); }).then(function () { $(window).trigger('resize'); }); }; +/** + * + */ EditUserDialog.prototype.initProjectsTab = function () { var self = this; var usersTable = $("[name=projectsTable]", self.getElement())[0]; - var configuration; - return ServerConnector.getConfiguration().then(function (result) { - configuration = result; - return self.createUserPrivilegeColumns() - }).then(function (columns) { - $(usersTable).DataTable({ - columns: columns - }); - $(usersTable).on("click", "[name='project-privilege-checkbox']", function () { - var data = $(this).attr("data").split("-"); - var privilegeType = data[0]; - var objectId = data[1]; - var value = $(this).is(":checked"); - for (var i = 0; i < configuration.getPrivilegeTypes().length; i++) { - var privilege = configuration.getPrivilegeTypes()[i]; - if (privilege.getName() === privilegeType) { - self.getUser().setPrivilege({type: privilege, value: value, objectId: objectId}); - } + var configuration = self.getConfiguration(); + var columns = self.createUserPrivilegeColumns(); + $(usersTable).DataTable({ + columns: columns + }); + $(usersTable).on("click", "[name='project-privilege-checkbox']", function () { + var data = $(this).attr("data").split("-"); + var privilegeType = data[0]; + var objectId = data[1]; + var value = $(this).is(":checked") ? 1 : 0; + for (var i = 0; i < configuration.getPrivilegeTypes().length; i++) { + var privilege = configuration.getPrivilegeTypes()[i]; + if (privilege.getName() === privilegeType) { + self.getUser().setPrivilege({type: privilege, value: value, objectId: objectId}); } - }); + } + }); - $("[name='defaultProjectsRow']", self.getElement()).on("click", "[name='project-privilege-checkbox']", function () { - var data = $(this).attr("data").split("-"); - var privilegeType = data[0]; - var objectId = data[1]; - var value = $(this).is(":checked"); - for (var i = 0; i < configuration.getPrivilegeTypes().length; i++) { - var privilege = configuration.getPrivilegeTypes()[i]; - if (privilege.getName() === privilegeType) { - self.getUser().setPrivilege({type: privilege, value: value, objectId: objectId}); - } + $("[name='defaultProjectsRow']", self.getElement()).on("click", "[name='project-privilege-checkbox']", function () { + var data = $(this).attr("data").split("-"); + var privilegeType = data[0]; + var objectId = data[1]; + var value = $(this).is(":checked") ? 1 : 0; + for (var i = 0; i < configuration.getPrivilegeTypes().length; i++) { + var privilege = configuration.getPrivilegeTypes()[i]; + if (privilege.getName() === privilegeType) { + self.getUser().setPrivilege({type: privilege, value: value, objectId: objectId}); } - }); - + } }); }; +/** + * + */ EditUserDialog.prototype.initPrivilegesTab = function () { var self = this; var usersTable = $("[name=privilegesTable]", self.getElement())[0]; - return ServerConnector.getConfiguration().then(function (configuration) { - var columns = [{ - title: "Name" - }, { - title: "Value" - }]; - var dataTable = $(usersTable).DataTable({ - columns: columns - }); - var data = []; + var configuration = self.getConfiguration(); + var columns = [{ + title: "Name" + }, { + title: "Value" + }]; + var dataTable = $(usersTable).DataTable({ + columns: columns + }); + var data = []; + for (var i = 0; i < configuration.getPrivilegeTypes().length; i++) { + var privilege = configuration.getPrivilegeTypes()[i]; + if (privilege.getObjectType() === null) { + if (privilege.getValueType() === "boolean") { + var checked = ""; + if (self.getUser().hasPrivilege(privilege)) { + checked = "checked" + } + data.push([ + "<span>" + privilege.getCommonName() + "</span>", + "<input type='checkbox' name='privilege-checkbox' data='" + privilege.getName() + "' " + checked + " />" + ]); + } else if (privilege.getValueType() === "int") { + data.push([ + "<span>" + privilege.getCommonName() + "</span>", + "<input name='privilege-int' data='" + privilege.getName() + "' value='" + self.getUser().getPrivilegeValue(privilege) + "' />" + ]); + + } + } + } + dataTable.clear().rows.add(data).draw(); + $(usersTable).on("click", "[name='privilege-checkbox']", function () { + var privilegeType = $(this).attr("data"); for (var i = 0; i < configuration.getPrivilegeTypes().length; i++) { var privilege = configuration.getPrivilegeTypes()[i]; - if (privilege.getObjectType() === null) { - if (privilege.getValueType() === "boolean") { - var checked = ""; - if (self.getUser().hasPrivilege(privilege)) { - checked = "checked" - } - data.push([ - "<span>" + privilege.getCommonName() + "</span>", - "<input type='checkbox' name='privilege-checkbox' data='" + privilege.getName() + "' " + checked + " />" - ]); - } else if (privilege.getValueType() === "int") { - data.push([ - "<span>" + privilege.getCommonName() + "</span>", - "<input name='privilege-int' data='" + privilege.getName() + "' value='" + self.getUser().getPrivilegeValue(privilege) + "' />" - ]); - - } + if (privilege.getName() === privilegeType) { + var value = $(this).is(":checked") ? 1 : 0; + self.getUser().setPrivilege({type: privilege, value: value}); } } - dataTable.clear().rows.add(data).draw(); - $(usersTable).on("click", "[name='privilege-checkbox']", function () { - var privilegeType = $(this).attr("data"); + }); + $(usersTable).on("change", "[name='privilege-int']", function () { + var privilegeType = $(this).attr("data"); + var value = $(this).val(); + value = parseInt(value); + if (Functions.isInt(value)) { for (var i = 0; i < configuration.getPrivilegeTypes().length; i++) { var privilege = configuration.getPrivilegeTypes()[i]; if (privilege.getName() === privilegeType) { - self.getUser().setPrivilege({type: privilege, value: $(this).is(":checked")}); + self.getUser().setPrivilege({type: privilege, value: value}); } } - }); - $(usersTable).on("change", "[name='privilege-int']", function () { - var privilegeType = $(this).attr("data"); - var value = $(this).val(); - value = parseInt(value); - if (Functions.isInt(value)) { - for (var i = 0; i < configuration.getPrivilegeTypes().length; i++) { - var privilege = configuration.getPrivilegeTypes()[i]; - if (privilege.getName() === privilegeType) { - self.getUser().setPrivilege({type: privilege, value: value}); - } - } - } - }); + } }); }; +/** + * + * @returns {Promise} + */ EditUserDialog.prototype.refreshProjects = function () { var self = this; - return ServerConnector.getProjects().then(function (projects) { + return self.getServerConnector().getProjects().then(function (projects) { return self.setProjects(projects); }); }; +/** + * + * @param projects + */ EditUserDialog.prototype.setProjects = function (projects) { var self = this; self._userByLogin = []; - return self.createUserPrivilegeColumns().then(function (columns) { - var dataTable = $("[name='projectsTable']", self.getElement()).DataTable(); - var data = [], i; - - var rowData = self.projectToTableRow(null, columns); - var defaultRow = $("[name='defaultProjectsRow']", self.getElement())[0]; - defaultRow.innerHTML = ""; + var columns = self.createUserPrivilegeColumns(); + var dataTable = $("[name='projectsTable']", self.getElement()).DataTable(); + var data = [], i; + + var rowData = self.projectToTableRow(null, columns); + var defaultRow = $("[name='defaultProjectsRow']", self.getElement())[0]; + defaultRow.innerHTML = ""; + defaultRow.appendChild(Functions.createElement({ + type: "span", + content: rowData[0], + xss: false + })); + defaultRow.appendChild(Functions.createElement({type: "br"})); + for (i = 1; i < columns.length; i++) { defaultRow.appendChild(Functions.createElement({ - type: "span", - content: rowData[0], + type: "div", + content: rowData[i] + columns[i].title, + style: "float:left;padding:5px;", xss: false })); - defaultRow.appendChild(Functions.createElement({type: "br"})); - for (i = 1; i < columns.length; i++) { - defaultRow.appendChild(Functions.createElement({ - type: "div", - content: rowData[i] + columns[i].title, - style: "float:left;padding:5px;", - xss: false - })); - } - defaultRow.appendChild(Functions.createElement({type: "br"})); - defaultRow.appendChild(Functions.createElement({type: "hr"})); - // data.push(rowData); - for (i = 0; i < projects.length; i++) { - var project = projects[i]; - rowData = self.projectToTableRow(project, columns); - data.push(rowData); - } - dataTable.clear().rows.add(data).draw(); - }); + } + defaultRow.appendChild(Functions.createElement({type: "br"})); + defaultRow.appendChild(Functions.createElement({type: "hr"})); + // data.push(rowData); + for (i = 0; i < projects.length; i++) { + var project = projects[i]; + rowData = self.projectToTableRow(project, columns); + data.push(rowData); + } + dataTable.clear().rows.add(data).draw(); }; +/** + * + * @param {Project} project + * @param {Array} columns + * @returns {Array} + */ EditUserDialog.prototype.projectToTableRow = function (project, columns) { var user = this.getUser(); var row = []; @@ -477,6 +476,9 @@ EditUserDialog.prototype.projectToTableRow = function (project, columns) { }; +/** + * + */ EditUserDialog.prototype.destroy = function () { var self = this; var div = self.getElement(); @@ -501,6 +503,9 @@ EditUserDialog.prototype.destroy = function () { } }; +/** + * + */ EditUserDialog.prototype.open = function () { var self = this; var div = self.getElement(); @@ -518,6 +523,10 @@ EditUserDialog.prototype.open = function () { $(div).dialog("open"); }; +/** + * + * @returns {Promise} + */ EditUserDialog.prototype.onSaveClicked = function () { var self = this; var user = self.getUser(); @@ -528,15 +537,19 @@ EditUserDialog.prototype.onSaveClicked = function () { user.setName(self.getName()); user.setSurname(self.getSurname()); if (self.getIsNewUser()) { - return ServerConnector.addUser(user); + return self.getServerConnector().addUser(user); } else { - return ServerConnector.updateUser(user); + return self.getServerConnector().updateUser(user); } }).then(function () { return self.callListeners("onSave", user); }); }; +/** + * + * @returns {Promise} + */ EditUserDialog.prototype.checkValidity = function () { var self = this; var isValid = true; @@ -545,7 +558,7 @@ EditUserDialog.prototype.checkValidity = function () { error += "<li>Password doesn't match</li>"; isValid = false; } - if (self.getLogin() === "" || self.getLogin() === undefined || self.getLogin() === null) { + if (self.getLogin() === "" || self.getLogin() === undefined) { error += "<li>Login must not be empty</li>"; isValid = false; } @@ -567,63 +580,94 @@ EditUserDialog.prototype.checkValidity = function () { }); }; +/** + * + * @returns {string} + */ EditUserDialog.prototype.getPassword = function () { var self = this; return $("[name='userPassword']", self.getElement()).val(); }; + +/** + * + * @returns {string} + */ EditUserDialog.prototype.getPassword2 = function () { var self = this; return $("[name='userPassword2']", self.getElement()).val(); }; +/** + * + * @returns {string} + */ EditUserDialog.prototype.getLogin = function () { var self = this; return $("[name='userLogin']", self.getElement()).val(); }; +/** + * + * @returns {string} + */ EditUserDialog.prototype.getEmail = function () { var self = this; return $("[name='userEmail']", self.getElement()).val(); }; + +/** + * + * @returns {string} + */ EditUserDialog.prototype.getName = function () { var self = this; return $("[name='userName']", self.getElement()).val(); }; + +/** + * + * @returns {string} + */ EditUserDialog.prototype.getSurname = function () { var self = this; return $("[name='userSurname']", self.getElement()).val(); }; - +/** + * + */ EditUserDialog.prototype.close = function () { var self = this; $(self.getElement()).dialog("close"); }; +/** + * + * @returns {{title: string, privilegeType: PrivilegeType|undefined}[]} + */ EditUserDialog.prototype.createUserPrivilegeColumns = function () { var self = this; if (self._userPrivilegeColumns !== undefined) { - return Promise.resolve(self._userPrivilegeColumns); + return self._userPrivilegeColumns; } - return ServerConnector.getConfiguration().then(function (configuration) { - self._userPrivilegeColumns = [{ - title: "ProjectId" - }]; - var privilegeTypes = configuration.getPrivilegeTypes(); - for (var i = 0; i < privilegeTypes.length; i++) { - var type = privilegeTypes[i]; - if (type.getObjectType() === "Project") { - self._userPrivilegeColumns.push({ - "title": type.getCommonName(), - privilegeType: type - }); - } + var configuration = self.getConfiguration(); + self._userPrivilegeColumns = [{ + title: "ProjectId" + }]; + var privilegeTypes = configuration.getPrivilegeTypes(); + for (var i = 0; i < privilegeTypes.length; i++) { + var type = privilegeTypes[i]; + if (type.getObjectType() === "Project") { + self._userPrivilegeColumns.push({ + "title": type.getCommonName(), + privilegeType: type + }); } - return self._userPrivilegeColumns; - }); - + } + return self._userPrivilegeColumns; }; diff --git a/frontend-js/src/main/js/gui/admin/UsersAdminPanel.js b/frontend-js/src/main/js/gui/admin/UsersAdminPanel.js index 2eb25ce86ccf98dcca46ae0316b02f832fd6855b..5332f39c23749f849e7f56e5676dd83552bb6201 100644 --- a/frontend-js/src/main/js/gui/admin/UsersAdminPanel.js +++ b/frontend-js/src/main/js/gui/admin/UsersAdminPanel.js @@ -171,7 +171,7 @@ UsersAdminPanel.prototype._createUsersTableRow = function () { } }).catch(function (error) { GuiConnector.alert(error); - }).finally(function(){ + }).finally(function () { GuiConnector.hideProcessing(); }); }); @@ -220,7 +220,8 @@ UsersAdminPanel.prototype.getDialog = function (user) { type: "div" }), user: user, - customMap: null + configuration: self.getConfiguration(), + serverConnector: self.getServerConnector() }); self._dialogs[user.getLogin()] = dialog; if (user.getLogin() === undefined) { diff --git a/frontend-js/src/main/js/map/data/User.js b/frontend-js/src/main/js/map/data/User.js index d0befc57c8f7cb0305724f860df026726b8d9d68..c123aa391785d01cdc1b1c03aa17aa22833ddb79 100644 --- a/frontend-js/src/main/js/map/data/User.js +++ b/frontend-js/src/main/js/map/data/User.js @@ -251,7 +251,7 @@ User.prototype.hasPrivilege = function (type, objectId) { /** * * @param {Object} params - * @param {number} params.objectId + * @param {number} [params.objectId] * @param {PrivilegeType} params.type * @param {number} [params.value=1] */ diff --git a/frontend-js/src/test/js/gui/admin/EditUserDialog-test.js b/frontend-js/src/test/js/gui/admin/EditUserDialog-test.js index b6061dcb0ef22b52c02147460307d2dd9fc7b08e..46f2d6f4ce775b9f34214aa575f024aeba637146 100644 --- a/frontend-js/src/test/js/gui/admin/EditUserDialog-test.js +++ b/frontend-js/src/test/js/gui/admin/EditUserDialog-test.js @@ -13,6 +13,16 @@ var chai = require('chai'); var assert = chai.assert; var expect = chai.expect; +function createEditUserDialog(project, user) { + return new EditUserDialog({ + element: testDiv, + project: project, + user: user, + configuration: helper.getConfiguration(), + serverConnector: ServerConnector + }); +} + describe('EditUserDialog', function () { describe('init', function () { @@ -22,12 +32,7 @@ describe('EditUserDialog', function () { var user = new User({}); return ServerConnector.getProject().then(function (result) { project = result; - dialog = new EditUserDialog({ - element: testDiv, - project: project, - user: user, - customMap: null - }); + dialog = createEditUserDialog(project, user); return dialog.init(); }).then(function () { assert.equal(0, logger.getWarnings().length); @@ -45,12 +50,7 @@ describe('EditUserDialog', function () { var user = new User({}); return ServerConnector.getProject().then(function (result) { project = result; - dialog = new EditUserDialog({ - element: testDiv, - project: project, - user: user, - customMap: null - }); + dialog = createEditUserDialog(project, user); return dialog.init(); }).then(function () { return dialog.checkValidity().then(function () { @@ -72,12 +72,7 @@ describe('EditUserDialog', function () { return ServerConnector.getProject(); }).then(function (result) { project = result; - dialog = new EditUserDialog({ - element: testDiv, - project: project, - user: user, - customMap: null - }); + dialog = createEditUserDialog(project, user); return dialog.init(); }).then(function () { return dialog.checkValidity(); @@ -99,12 +94,7 @@ describe('EditUserDialog', function () { return ServerConnector.getProject(); }).then(function (result) { project = result; - dialog = new EditUserDialog({ - element: testDiv, - project: project, - user: user, - customMap: null - }); + dialog = createEditUserDialog(project, user); return dialog.init(); }).then(function () { return dialog.onSaveClicked(); @@ -127,12 +117,7 @@ describe('EditUserDialog', function () { return ServerConnector.getProject(); }).then(function (result) { project = result; - dialog = new EditUserDialog({ - element: testDiv, - project: project, - user: user, - customMap: null - }); + dialog = createEditUserDialog(project, user); return dialog.init(); }).then(function () { return $("[name=privilege-checkbox]", dialog.getElement()).click(); @@ -156,12 +141,7 @@ describe('EditUserDialog', function () { return ServerConnector.getProject(); }).then(function (result) { project = result; - dialog = new EditUserDialog({ - element: testDiv, - project: project, - user: user, - customMap: null - }); + dialog = createEditUserDialog(project, user); return dialog.init(); }).then(function () { $("[name=privilege-int]", dialog.getElement()).val("101010");