Fix newDocument/document issue; keep newDocument for backwards compatibility

This commit is contained in:
SachaG 2019-01-31 21:27:20 +09:00
parent a42a3b492a
commit a292f0908d
2 changed files with 10 additions and 8 deletions

View file

@ -63,8 +63,10 @@ export const createMutator = async ({ collection, document, data, currentUser, v
Properties Properties
Note: keep newDocument for backwards compatibility
*/ */
const properties = { data, currentUser, collection, context, document: document }; const properties = { data, currentUser, collection, context, document, newDocument: document };
/* /*

View file

@ -55,7 +55,7 @@ const schema = {
canRead: ['guests'], canRead: ['guests'],
canUpdate: ['admins'], canUpdate: ['admins'],
canCreate: ['members'], canCreate: ['members'],
onCreate: ({ newDocument: user }) => { onCreate: ({ document: user }) => {
if ((!user.username) && user.services && user.services.twitter && user.services.twitter.screenName) { if ((!user.username) && user.services && user.services.twitter && user.services.twitter.screenName) {
return user.services.twitter.screenName; return user.services.twitter.screenName;
} }
@ -137,7 +137,7 @@ const schema = {
canUpdate: ['members'], canUpdate: ['members'],
canRead: ['guests'], canRead: ['guests'],
order: 10, order: 10,
onCreate: ({ newDocument: user }) => { onCreate: ({ document: user }) => {
return createDisplayName(user); return createDisplayName(user);
}, },
searchable: true searchable: true
@ -155,7 +155,7 @@ const schema = {
canUpdate: ['members'], canUpdate: ['members'],
canRead: ownsOrIsAdmin, canRead: ownsOrIsAdmin,
order: 20, order: 20,
onCreate: ({ newDocument: user }) => { onCreate: ({ document: user }) => {
// look in a few places for the user email // look in a few places for the user email
const meteorEmails = Utils.getNestedProperty(user, 'services.meteor-developer.emails'); const meteorEmails = Utils.getNestedProperty(user, 'services.meteor-developer.emails');
const facebookEmail = Utils.getNestedProperty(user, 'services.facebook.email'); const facebookEmail = Utils.getNestedProperty(user, 'services.facebook.email');
@ -180,7 +180,7 @@ const schema = {
type: String, type: String,
optional: true, optional: true,
canRead: ['guests'], canRead: ['guests'],
onCreate: ({ newDocument: user }) => { onCreate: ({ document: user }) => {
if (user.email) { if (user.email) {
return getCollection('Users').avatar.hash(user.email); return getCollection('Users').avatar.hash(user.email);
} }
@ -190,7 +190,7 @@ const schema = {
type: String, type: String,
optional: true, optional: true,
canRead: ['guests'], canRead: ['guests'],
onCreate: ({ newDocument: user }) => { onCreate: ({ document: user }) => {
const twitterAvatar = Utils.getNestedProperty(user, 'services.twitter.profile_image_url_https'); const twitterAvatar = Utils.getNestedProperty(user, 'services.twitter.profile_image_url_https');
const facebookId = Utils.getNestedProperty(user, 'services.facebook.id'); const facebookId = Utils.getNestedProperty(user, 'services.facebook.id');
@ -227,7 +227,7 @@ const schema = {
optional: true, optional: true,
canRead: ['guests'], canRead: ['guests'],
order: 40, order: 40,
onCreate: ({ newDocument: user }) => { onCreate: ({ document: user }) => {
// create a basic slug from display name and then modify it if this slugs already exists; // create a basic slug from display name and then modify it if this slugs already exists;
const displayName = createDisplayName(user); const displayName = createDisplayName(user);
const basicSlug = Utils.slugify(displayName); const basicSlug = Utils.slugify(displayName);
@ -252,7 +252,7 @@ const schema = {
return Users.getTwitterName(await Connectors.get(Users, user._id)); return Users.getTwitterName(await Connectors.get(Users, user._id));
}, },
}, },
onCreate: ({ newDocument: user }) => { onCreate: ({ document: user }) => {
if (user.services && user.services.twitter && user.services.twitter.screenName) { if (user.services && user.services.twitter && user.services.twitter.screenName) {
return user.services.twitter.screenName; return user.services.twitter.screenName;
} }