X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FUI.git;a=blobdiff_plain;f=skyquake%2Fplugins%2Fuser_management%2Fsrc%2Fdashboard%2Fdashboard.jsx;h=0377a54b180926c59efa8a6517b4ffee398c4687;hp=2494df0fb0cfeaa8f2e04e91a85b024ea1311762;hb=c33cde7c8824d79e9825698fe957c24dfa1fe798;hpb=5c4f59da424ebcca19a0fdd8d1a6cfcf7441e5fc
diff --git a/skyquake/plugins/user_management/src/dashboard/dashboard.jsx b/skyquake/plugins/user_management/src/dashboard/dashboard.jsx
index 2494df0fb..0377a54b1 100644
--- a/skyquake/plugins/user_management/src/dashboard/dashboard.jsx
+++ b/skyquake/plugins/user_management/src/dashboard/dashboard.jsx
@@ -19,6 +19,7 @@ import SelectOption from 'widgets/form_controls/selectOption.jsx';
import 'widgets/form_controls/formControls.scss';
import imgAdd from '../../node_modules/open-iconic/svg/plus.svg'
import imgRemove from '../../node_modules/open-iconic/svg/trash.svg';
+import {merge} from 'lodash';
import ROLES from 'utils/roleConstants.js';
const PLATFORM = ROLES.PLATFORM;
@@ -81,7 +82,7 @@ class UserManagementDashboard extends React.Component {
cancelEditUser = () => {
this.actions.editUser(true)
}
- osePanel = () => {
+ closePanel = () => {
this.actions.handleCloseUserPanel();
}
// updateUser = (e) => {
@@ -93,10 +94,13 @@ class UserManagementDashboard extends React.Component {
deleteUser = (e) => {
e.preventDefault();
e.stopPropagation();
- this.Store.deleteUser({
+ if (confirm('Are you sure you want to delete this user?')) {
+ this.Store.deleteUser({
'user-name': this.state['user-name'],
'user-domain': this.state['user-domain']
});
+ }
+
}
createUser = (e) => {
e.preventDefault();
@@ -104,6 +108,12 @@ class UserManagementDashboard extends React.Component {
if(this.state['new-password'] != this.state['confirm-password']) {
this.props.actions.showNotification('Passwords do not match')
} else {
+ let isDisabled = {};
+ if (this.state.disabled == "TRUE") {
+ let isDisabled = {
+ disabled: [null]
+ }
+ }
this.Store.createUser({
'user-name': this.state['user-name'],
'user-domain': this.state['user-domain'],
@@ -118,18 +128,35 @@ class UserManagementDashboard extends React.Component {
e.stopPropagation();
let validatedPasswords = validatePasswordFields(this.state);
if(validatedPasswords) {
+ let isDisabled = {};
+ let password = {};
+ if (self.state.disabled == "TRUE") {
+ isDisabled = {
+ disabled: [null]
+ }
+ }
+ if (this.state['new-password'] != '') {
+ password = {'password': this.state['new-password']}
+ } else {
+ password = {
+ 'password': this.state.currentPassword
+ }
+ }
this.Store.updateUser(_.merge({
'user-name': this.state['user-name'],
- 'user-domain': this.state['user-domain'],
- 'password': this.state['new-password']
- }));
+ 'user-domain': this.state['user-domain']
+ }, _.merge(isDisabled, password)));
}
function validatePasswordFields(state) {
let oldOne = state['old-password'];
let newOne = state['new-password'];
let confirmOne = state['confirm-password'];
if(true) {
- if(oldOne == newOne) {
+ // if(!oldOne || !newOne) {
+ // self.props.actions.showNotification('Please fill in all fields.');
+ // return false;
+ // }
+ if((oldOne || newOne) && (oldOne == newOne)) {
self.props.actions.showNotification('Your new password must not match your old one');
return false;
}
@@ -165,12 +192,7 @@ class UserManagementDashboard extends React.Component {
disableChange = (e) => {
let value = e.target.value;
value = value.toUpperCase();
- if (value=="TRUE") {
- value = true;
- } else {
- value = false;
- }
- console.log(value)
+ this.actions.handleDisabledChange(value);
}
render() {
let self = this;
@@ -273,6 +295,13 @@ class UserManagementDashboard extends React.Component {
:
}
+