Update: Admin can create Admin or Advertiser
This commit is contained in:
parent
e6b8eef43c
commit
a428e5cff2
1 changed files with 20 additions and 2 deletions
|
|
@ -73,10 +73,28 @@ exports.create = (req, res) => {
|
||||||
if(typeof req.body.role !== 'undefined'){
|
if(typeof req.body.role !== 'undefined'){
|
||||||
switch(req.body.role){
|
switch(req.body.role){
|
||||||
case 'admin':
|
case 'admin':
|
||||||
|
const token = checkLogin(req, res);
|
||||||
|
const role = roles.Admin;
|
||||||
|
if(token && typeof token.role !== 'undefined' &&
|
||||||
|
((Array.isArray(role) && role.includes(token.role)) ||
|
||||||
|
( typeof role === 'object' && typeof token.role.permission !== 'undefined' && token.role.permission >= role.permission && token.role.isAccepted === true))){
|
||||||
var_role = roles.Admin;
|
var_role = roles.Admin;
|
||||||
|
var_role.isAccepted = true;
|
||||||
|
} else {
|
||||||
|
var_role = roles.Admin;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 'advertiser':
|
case 'advertiser':
|
||||||
|
const token = checkLogin(req, res);
|
||||||
|
const role = roles.Admin;
|
||||||
|
if(token && typeof token.role !== 'undefined' &&
|
||||||
|
((Array.isArray(role) && role.includes(token.role)) ||
|
||||||
|
( typeof role === 'object' && typeof token.role.permission !== 'undefined' && token.role.permission >= role.permission && token.role.isAccepted === true))){
|
||||||
var_role = roles.Advertiser;
|
var_role = roles.Advertiser;
|
||||||
|
var_role.isAccepted = true;
|
||||||
|
} else {
|
||||||
|
var_role = roles.Advertiser;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
var_role = roles.User;
|
var_role = roles.User;
|
||||||
|
|
|
||||||
Reference in a new issue