Posts.addField({ fieldName: 'scheduledAt', fieldSchema: { type: Date, optional: true, viewableBy: ['guests'], } }); Users.addField([ { fieldName: 'newsletter_subscribeToNewsletter', fieldSchema: { label: 'Subscribe to Newsletter', type: Boolean, optional: true, defaultValue: false, insertableBy: ['members'], editableBy: ['members'], viewableBy: ['guests'], control: NewsletterSubscribe, group: { name: "newsletter", label: "Newsletter", order: 3 } } }, ]);
Users.addField([ { fieldName: 'subscribedItems', fieldSchema: { type: Object, optional: true, blackbox: true, hidden: true, // never show this } }, { fieldName: 'subscribers', fieldSchema: { type: Array, optional: true, hidden: true, // never show this, } }, { fieldName: 'subscribers.$', fieldSchema: { type: String, optional: true, hidden: true, // never show this, } }, { fieldName: 'subscriberCount', fieldSchema: { type: Number, optional: true, hidden: true, // never show this } } ]);
import Posts from "meteor/vulcan:posts"; import Comments from "meteor/vulcan:comments"; import Users from 'meteor/vulcan:users'; import { addCallback } from 'meteor/vulcan:core'; Users.addField({ fieldName: 'isDummy', fieldSchema: { type: Boolean, optional: true, hidden: true // never show this } }); Posts.addField({ fieldName: 'dummySlug', fieldSchema: { type: String, optional: true, hidden: true // never show this } }); Posts.addField({ fieldName: 'isDummy', fieldSchema: { type: Boolean, optional: true, hidden: true // never show this } });
Users.addField([ /** An array containing votes */ { fieldName: 'votes', fieldSchema: { type: Array, optional: true, canRead: Users.owns, resolveAs: { type: '[Vote]', arguments: 'collectionName: String', resolver: async (user, args, context) => { const selector = {userId: user._id}; if (args.collectionName) { selector.collectionName = args.collectionName; } const votes = await Connectors.find(Votes, selector); return votes; } }, } }, { fieldName: 'votes.$', fieldSchema: { type: Object, optional: true } }, ]);