407d9d2d4b2e95639d7c01629e62b2144fcbce85
2 * STANDARD_RIFT_IO_COPYRIGHT
4 import UserManagementActions
from './userMgmtActions.js';
5 import UserManagementSource
from './userMgmtSource.js';
6 import _
from 'lodash';
7 export default class UserManagementStore
{
9 this.actions
= UserManagementActions(this.alt
);
10 this.bindActions(this.actions
);
11 this.registerAsync(UserManagementSource
);
13 this['user-name'] = '';
14 this['user-domain'] = '';
15 this.disabled
= false;
16 this.platformRoles
= {
18 platform_admin
: false,
21 this.projectRoles
= ['Project:Role'];
22 this.projectRolesOptions
= ['Choose your adventure', 'Project:Role', 'Project:Another Role'];
23 this.currentPassword
= '';
24 this['old-password'] = '';
25 this['new-password'] = '';
26 this['confirm-password'] = '';
28 this.activeIndex
= null;
29 this.userOpen
= false;
30 this.hideColumns
= false;
32 // this.exportPublicMethods({})
35 * [handleFieldUpdate description]
36 * @param {Object} data {
37 * [store_property] : [value]
39 * @return {[type]} [description]
41 handleUpdateInput(data
) {
44 handleAddProjectItem(item
) {
45 let projectRoles
= this.projectRoles
;
46 projectRoles
.push('');
47 this.setState({projectRoles
});
49 handleRemoveProjectItem(i
) {
50 let projectRoles
= this.projectRoles
;
51 projectRoles
.splice(i
, 1);
52 console
.log('Removing', projectRoles
)
53 this.setState({projectRoles
});
55 handleUpdateProjectRole(data
) {
58 let projectRoles
= this.projectRoles
59 projectRoles
[i
] = JSON
.parse(e
.currentTarget
.value
);
66 let userIndex
= data
[1];
69 'user-name': user
['user-name'],
70 'user-domain': user
['user-domain'],
71 platformRoles
: user
.platformRoles
|| this.platformRoles
,
72 disabled
: user
.disabled
|| this.disabled
,
73 projectRoles
: user
.projectRoles
|| this.projectRoles
76 activeIndex
: userIndex
,
82 handleCloseUserPanel() {
88 handleHideColumns(e
) {
89 if(this.userOpen
&& e
.currentTarget
.classList
.contains('hideColumns')) {
99 handleDisabledChange(isDisabled
){
104 handlePlatformRoleUpdate(data
){
105 let platform_role
= data
[0];
106 let checked
= data
[1];
107 let platformRoles
= this.platformRoles
;
108 platformRoles
[platform_role
] = checked
;
116 let disabled
= false;
117 let platformRoles
= {
119 platform_admin
: false,
122 let projectRoles
= [];
123 let currentPassword
= '';
124 let oldPassword
= '';
125 let newPassword
= '';
126 let confirmPassword
= '';
128 'user-name' : username
,
129 'user-domain' : domain
,
134 'old-password': oldPassword
,
135 'new-password': newPassword
,
136 'confirm-password': confirmPassword
140 let currentPassword
= '';
141 let oldPassword
= '';
142 let newPassword
= '';
143 let confirmPassword
= '';
146 'old-password': oldPassword
,
147 'new-password': newPassword
,
148 'confirm-password': confirmPassword
152 this.setState(_
.merge( this.resetUser() ,{ isEdit
: false, userOpen
: true }))
161 getUsersSuccess(users
) {
162 this.alt
.actions
.global
.hideScreenLoader
.defer();
163 this.setState({users
});
165 updateUserSuccess() {
166 this.alt
.actions
.global
.hideScreenLoader
.defer();
167 let users
= this.users
|| [];
168 users
[this.activeIndex
] = {
169 'user-name': this['user-name'],
170 'user-domain': this['user-domain'],
171 platformRoles
: this.platformRoles
,
172 disabled
: this.disabled
,
173 projectRoles
: this.projectRoles
175 this.setState({users
})
177 deleteUserSuccess() {
178 this.alt
.actions
.global
.hideScreenLoader
.defer();
179 let users
= this.users
;
180 users
.splice(this.activeIndex
, 1);
181 this.setState({users
, userOpen
: false})
183 createUserSuccess() {
184 this.alt
.actions
.global
.hideScreenLoader
.defer();
185 let users
= this.users
|| [];
187 'user-name': this['user-name'],
188 'user-domain': this['user-domain'],
189 platformRoles
: this.platformRoles
,
190 disabled
: this.disabled
,
191 projectRoles
: this.projectRoles
193 let newState
= {users
, isEdit
: true};
194 _
.merge(newState
, this.resetPassword())
195 this.setState(newState
);