X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=skyquake%2Fplugins%2Fuser_management%2Fsrc%2FplatformRoleManagement%2FplatformRoleManagement.jsx;h=de5064bef408ba104ac24c3168eeb58caede9c45;hb=a0fefa94b21ae1620756cda0d22d5de90b9bcaa9;hp=49efb821745e22813edfda2f5c243188f52674f7;hpb=de8cda680ce17b1555789bf2f4d3145c0d4d4849;p=osm%2FUI.git diff --git a/skyquake/plugins/user_management/src/platformRoleManagement/platformRoleManagement.jsx b/skyquake/plugins/user_management/src/platformRoleManagement/platformRoleManagement.jsx index 49efb8217..de5064bef 100644 --- a/skyquake/plugins/user_management/src/platformRoleManagement/platformRoleManagement.jsx +++ b/skyquake/plugins/user_management/src/platformRoleManagement/platformRoleManagement.jsx @@ -5,7 +5,7 @@ import React from 'react'; import ReactDOM from 'react-dom'; import AppHeader from 'widgets/header/header.jsx'; -import ProjectManagementStore from './platformRoleManagementStore.js'; +import PlatformRoleManagementStore from './platformRoleManagementStore.js'; import SkyquakeComponent from 'widgets/skyquake_container/skyquakeComponent.jsx'; import 'style/layout.scss'; import './platformRoleManagement.scss'; @@ -23,15 +23,14 @@ import imgRemove from '../../node_modules/open-iconic/svg/trash.svg' class PlatformRoleManagement extends React.Component { constructor(props) { super(props); - this.Store = this.props.flux.stores.hasOwnProperty('ProjectManagementStore') ? this.props.flux.stores.ProjectManagementStore : this.props.flux.createStore(ProjectManagementStore); - this.Store.getProjects(); - this.Store.getUsers(); + this.Store = this.props.flux.stores.hasOwnProperty('PlatformRoleManagementStore') ? this.props.flux.stores.PlatformRoleManagementStore : this.props.flux.createStore(PlatformRoleManagementStore); this.state = this.Store.getState(); this.actions = this.state.actions; + this.Store.getPlatform(); + this.Store.getUsers(); } componentDidUpdate() { - let self = this; - ReactDOM.findDOMNode(this.projectList).addEventListener('transitionend', this.onTransitionEnd, false); + } componentWillMount() { this.Store.listen(this.updateState); @@ -86,65 +85,41 @@ class PlatformRoleManagement extends React.Component { 'name': this.state['name'] }); } - createProject = (e) => { + updatePlatform = (e) => { let self = this; e.preventDefault(); e.stopPropagation(); - let projectUsers = self.state.projectUsers; - let selectedUsers = []; - //Remove null values from role - projectUsers.map((u) => { - u.role && u.role.map((r,i) => { - let role = {}; - //you may add a user without a role or a keys, but if one is present then the other must be as well. - if(!r || ((r.role || r['keys']) && (!r.role || !r['keys']))) { - projectUsers.splice(i, 1); - } else { - return u; - } - }) - }) - this.Store.createProject({ - 'name': self.state['name'], - 'description': self.state.description, - 'project-config' : { - 'user': projectUsers + let platformUsers = self.state.platformUsers; + let cleanUsers = this.cleanUsers(platformUsers); + + + this.Store.updatePlatform({ + 'user': JSON.stringify(platformUsers) } - }); + ); } - updateProject = (e) => { - let self = this; - e.preventDefault(); - e.stopPropagation(); - let projectUsers = self.state.projectUsers; - + cleanUsers(projectUsers) { + let cleanUsers = []; //Remove null values from role projectUsers.map((u) => { - u.role && u.role.map((r,i) => { - let role = {}; - //you may add a user without a role or a keys, but if one is present then the other must be as well. - if(!r || ((r.role || r['keys']) && (!r.role || !r['keys']))) { - projectUsers.splice(i, 1); - } else { - return u; - } - }) - }) - - this.Store.updateProject(_.merge({ - 'name': self.state['name'], - 'description': self.state.description, - 'project-config' : { - 'user': projectUsers - } - })); + let cleanRoles = []; + u.role && u.role.map((r,i) => { + let role = {}; + if(r.role){ + //removing key for rbac-platform + delete r.keys; + cleanRoles.push(r) + } + }); + u.role = cleanRoles; + cleanUsers.push(u); + }); + return cleanUsers; } evaluateSubmit = (e) => { if (e.keyCode == 13) { if (this.props.isEdit) { - this.updateProject(e); - } else { - this.createProject(e); + this.updatePlatform(e); } e.preventDefault(); e.stopPropagation(); @@ -209,9 +184,9 @@ class PlatformRoleManagement extends React.Component {