mirror of
https://github.com/strapi/strapi.git
synced 2025-09-26 00:39:49 +00:00
Merge pull request #3777 from strapi/chore/clear-ids
Clear _id now that queries return an id everytime
This commit is contained in:
commit
dcbee6a1c4
@ -13,9 +13,8 @@ const sanitizeUser = user => {
|
|||||||
* @param {object} admon - admin user
|
* @param {object} admon - admin user
|
||||||
*/
|
*/
|
||||||
const createJwtToken = admin => {
|
const createJwtToken = admin => {
|
||||||
const payload = _.pick(admin.toJSON ? admin.toJSON() : admin, ['_id', 'id']);
|
|
||||||
return strapi.plugins['users-permissions'].services.jwt.issue({
|
return strapi.plugins['users-permissions'].services.jwt.issue({
|
||||||
...payload,
|
id: admin.id,
|
||||||
isAdmin: true,
|
isAdmin: true,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
@ -16,9 +16,6 @@ const _ = require('lodash');
|
|||||||
|
|
||||||
module.exports = scope => {
|
module.exports = scope => {
|
||||||
function generateRoutes() {
|
function generateRoutes() {
|
||||||
const tokenID =
|
|
||||||
scope.args.tpl && scope.args.tpl !== 'mongoose' ? 'id' : '_id';
|
|
||||||
|
|
||||||
const routes = {
|
const routes = {
|
||||||
routes: [
|
routes: [
|
||||||
{
|
{
|
||||||
@ -39,7 +36,7 @@ module.exports = scope => {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
method: 'GET',
|
method: 'GET',
|
||||||
path: '/' + scope.idPluralized + '/:' + tokenID,
|
path: '/' + scope.idPluralized + '/:id',
|
||||||
handler: scope.globalID + '.findOne',
|
handler: scope.globalID + '.findOne',
|
||||||
config: {
|
config: {
|
||||||
policies: [],
|
policies: [],
|
||||||
@ -55,7 +52,7 @@ module.exports = scope => {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
method: 'PUT',
|
method: 'PUT',
|
||||||
path: '/' + scope.idPluralized + '/:' + tokenID,
|
path: '/' + scope.idPluralized + '/:id',
|
||||||
handler: scope.globalID + '.update',
|
handler: scope.globalID + '.update',
|
||||||
config: {
|
config: {
|
||||||
policies: [],
|
policies: [],
|
||||||
@ -63,12 +60,12 @@ module.exports = scope => {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
method: 'DELETE',
|
method: 'DELETE',
|
||||||
path: '/' + scope.idPluralized + '/:' + tokenID,
|
path: '/' + scope.idPluralized + '/:id',
|
||||||
handler: scope.globalID + '.delete',
|
handler: scope.globalID + '.delete',
|
||||||
config: {
|
config: {
|
||||||
policies: [],
|
policies: [],
|
||||||
},
|
},
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -97,7 +97,7 @@ module.exports = {
|
|||||||
|
|
||||||
fetch(params) {
|
fetch(params) {
|
||||||
return strapi.query('file', 'upload').findOne({
|
return strapi.query('file', 'upload').findOne({
|
||||||
id: params._id || params.id,
|
id: params.id,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -5,22 +5,22 @@ module.exports = async (ctx, next) => {
|
|||||||
|
|
||||||
if (ctx.request && ctx.request.header && ctx.request.header.authorization) {
|
if (ctx.request && ctx.request.header && ctx.request.header.authorization) {
|
||||||
try {
|
try {
|
||||||
const { _id, id, isAdmin = false } = await strapi.plugins[
|
const { id, isAdmin = false } = await strapi.plugins[
|
||||||
'users-permissions'
|
'users-permissions'
|
||||||
].services.jwt.getToken(ctx);
|
].services.jwt.getToken(ctx);
|
||||||
|
|
||||||
if ((id || _id) === undefined) {
|
if (id === undefined) {
|
||||||
throw new Error('Invalid token: Token did not contain required fields');
|
throw new Error('Invalid token: Token did not contain required fields');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isAdmin) {
|
if (isAdmin) {
|
||||||
ctx.state.admin = await strapi
|
ctx.state.admin = await strapi
|
||||||
.query('administrator', 'admin')
|
.query('administrator', 'admin')
|
||||||
.findOne({ id: _id || id });
|
.findOne({ id });
|
||||||
} else {
|
} else {
|
||||||
ctx.state.user = await strapi
|
ctx.state.user = await strapi
|
||||||
.query('user', 'users-permissions')
|
.query('user', 'users-permissions')
|
||||||
.findOne({ id: _id || id });
|
.findOne({ id });
|
||||||
}
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
return handleErrors(ctx, err, 'unauthorized');
|
return handleErrors(ctx, err, 'unauthorized');
|
||||||
@ -87,7 +87,7 @@ module.exports = async (ctx, next) => {
|
|||||||
.query('permission', 'users-permissions')
|
.query('permission', 'users-permissions')
|
||||||
.findOne(
|
.findOne(
|
||||||
{
|
{
|
||||||
role: role._id || role.id,
|
role: role.id,
|
||||||
type: route.plugin || 'application',
|
type: route.plugin || 'application',
|
||||||
controller: route.controller,
|
controller: route.controller,
|
||||||
action: route.action,
|
action: route.action,
|
||||||
|
@ -25,11 +25,6 @@ module.exports = {
|
|||||||
me: UsersPermissionsMe
|
me: UsersPermissionsMe
|
||||||
`,
|
`,
|
||||||
resolver: {
|
resolver: {
|
||||||
UsersPermissionsMe: {
|
|
||||||
id(obj) {
|
|
||||||
return obj.id || obj._id;
|
|
||||||
},
|
|
||||||
},
|
|
||||||
Query: {
|
Query: {
|
||||||
me: {
|
me: {
|
||||||
resolverOf: 'User.me',
|
resolverOf: 'User.me',
|
||||||
|
@ -122,9 +122,9 @@ module.exports = {
|
|||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
ctx.send({
|
ctx.send({
|
||||||
jwt: strapi.plugins['users-permissions'].services.jwt.issue(
|
jwt: strapi.plugins['users-permissions'].services.jwt.issue({
|
||||||
_.pick(user.toJSON ? user.toJSON() : user, ['_id', 'id'])
|
id: user.id,
|
||||||
),
|
}),
|
||||||
user: _.omit(user.toJSON ? user.toJSON() : user, [
|
user: _.omit(user.toJSON ? user.toJSON() : user, [
|
||||||
'password',
|
'password',
|
||||||
'resetPasswordToken',
|
'resetPasswordToken',
|
||||||
@ -157,9 +157,9 @@ module.exports = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ctx.send({
|
ctx.send({
|
||||||
jwt: strapi.plugins['users-permissions'].services.jwt.issue(
|
jwt: strapi.plugins['users-permissions'].services.jwt.issue({
|
||||||
_.pick(user, ['_id', 'id'])
|
id: user.id,
|
||||||
),
|
}),
|
||||||
user: _.omit(user.toJSON ? user.toJSON() : user, [
|
user: _.omit(user.toJSON ? user.toJSON() : user, [
|
||||||
'password',
|
'password',
|
||||||
'resetPasswordToken',
|
'resetPasswordToken',
|
||||||
@ -203,9 +203,9 @@ module.exports = {
|
|||||||
.update({ id: user.id }, user);
|
.update({ id: user.id }, user);
|
||||||
|
|
||||||
ctx.send({
|
ctx.send({
|
||||||
jwt: strapi.plugins['users-permissions'].services.jwt.issue(
|
jwt: strapi.plugins['users-permissions'].services.jwt.issue({
|
||||||
_.pick(user.toJSON ? user.toJSON() : user, ['_id', 'id'])
|
id: user.id,
|
||||||
),
|
}),
|
||||||
user: _.omit(user.toJSON ? user.toJSON() : user, [
|
user: _.omit(user.toJSON ? user.toJSON() : user, [
|
||||||
'password',
|
'password',
|
||||||
'resetPasswordToken',
|
'resetPasswordToken',
|
||||||
@ -418,7 +418,7 @@ module.exports = {
|
|||||||
params.email = params.email.toLowerCase();
|
params.email = params.email.toLowerCase();
|
||||||
}
|
}
|
||||||
|
|
||||||
params.role = role._id || role.id;
|
params.role = role.id;
|
||||||
params.password = await strapi.plugins[
|
params.password = await strapi.plugins[
|
||||||
'users-permissions'
|
'users-permissions'
|
||||||
].services.user.hashPassword(params);
|
].services.user.hashPassword(params);
|
||||||
@ -535,12 +535,12 @@ module.exports = {
|
|||||||
async emailConfirmation(ctx) {
|
async emailConfirmation(ctx) {
|
||||||
const params = ctx.query;
|
const params = ctx.query;
|
||||||
|
|
||||||
const user = await strapi.plugins['users-permissions'].services.jwt.verify(
|
const decodedToken = await strapi.plugins[
|
||||||
params.confirmation
|
'users-permissions'
|
||||||
);
|
].services.jwt.verify(params.confirmation);
|
||||||
|
|
||||||
await strapi.plugins['users-permissions'].services.user.edit(
|
await strapi.plugins['users-permissions'].services.user.edit(
|
||||||
_.pick(user, ['_id', 'id']),
|
{ id: decodedToken.id },
|
||||||
{ confirmed: true }
|
{ confirmed: true }
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ module.exports = {
|
|||||||
.query('role', 'users-permissions')
|
.query('role', 'users-permissions')
|
||||||
.findOne({ type: 'public' });
|
.findOne({ type: 'public' });
|
||||||
|
|
||||||
const publicRoleID = publicRole.id || publicRole._id;
|
const publicRoleID = publicRole.id;
|
||||||
|
|
||||||
const roleID = ctx.params.role;
|
const roleID = ctx.params.role;
|
||||||
|
|
||||||
|
@ -97,7 +97,7 @@ exports.connect = (provider, query) => {
|
|||||||
// Create the new user.
|
// Create the new user.
|
||||||
const params = _.assign(profile, {
|
const params = _.assign(profile, {
|
||||||
provider: provider,
|
provider: provider,
|
||||||
role: defaultRole._id || defaultRole.id,
|
role: defaultRole.id,
|
||||||
});
|
});
|
||||||
|
|
||||||
const createdUser = await strapi
|
const createdUser = await strapi
|
||||||
|
@ -28,7 +28,7 @@ module.exports = {
|
|||||||
).forEach(action => {
|
).forEach(action => {
|
||||||
acc.push(
|
acc.push(
|
||||||
strapi.query('permission', 'users-permissions').create({
|
strapi.query('permission', 'users-permissions').create({
|
||||||
role: role._id || role.id,
|
role: role.id,
|
||||||
type,
|
type,
|
||||||
controller,
|
controller,
|
||||||
action: action.toLowerCase(),
|
action: action.toLowerCase(),
|
||||||
@ -72,7 +72,7 @@ module.exports = {
|
|||||||
acc.push(
|
acc.push(
|
||||||
strapi.query('user', 'users-permissions').update(
|
strapi.query('user', 'users-permissions').update(
|
||||||
{
|
{
|
||||||
id: user._id || user.id,
|
id: user.id,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
role: publicRoleID,
|
role: publicRoleID,
|
||||||
@ -87,7 +87,7 @@ module.exports = {
|
|||||||
role.permissions.forEach(permission => {
|
role.permissions.forEach(permission => {
|
||||||
arrayOfPromises.push(
|
arrayOfPromises.push(
|
||||||
strapi.query('permission', 'users-permissions').delete({
|
strapi.query('permission', 'users-permissions').delete({
|
||||||
id: permission._id || permission.id,
|
id: permission.id,
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
@ -225,8 +225,6 @@ module.exports = {
|
|||||||
.find({ _sort: 'name' }, []);
|
.find({ _sort: 'name' }, []);
|
||||||
|
|
||||||
for (let i = 0; i < roles.length; ++i) {
|
for (let i = 0; i < roles.length; ++i) {
|
||||||
roles[i].id = roles[i].id || roles[i]._id;
|
|
||||||
|
|
||||||
roles[i].nb_users = await strapi
|
roles[i].nb_users = await strapi
|
||||||
.query('user', 'users-permissions')
|
.query('user', 'users-permissions')
|
||||||
.count({ role: roles[i].id });
|
.count({ role: roles[i].id });
|
||||||
@ -411,7 +409,7 @@ module.exports = {
|
|||||||
toAdd.map(action => {
|
toAdd.map(action => {
|
||||||
const data = {
|
const data = {
|
||||||
...defaultPolicy(action, role),
|
...defaultPolicy(action, role),
|
||||||
...{ role: role.id || role._id },
|
role: role.id,
|
||||||
};
|
};
|
||||||
|
|
||||||
return query.create(data);
|
return query.create(data);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user