2016-06-23 15:00:58 +09:00
|
|
|
import Users from 'meteor/nova:users';
|
|
|
|
|
2016-06-03 11:03:36 +09:00
|
|
|
const notificationsGroup = {
|
|
|
|
name: "notifications",
|
|
|
|
order: 2
|
|
|
|
};
|
2016-04-01 12:38:50 +09:00
|
|
|
|
2016-07-21 09:40:05 +09:00
|
|
|
// check if user can create a new account
|
|
|
|
const canInsert = user => Users.canDo(user, "users.new");
|
|
|
|
// check if user can edit a user
|
|
|
|
const canEdit = Users.canEdit;
|
|
|
|
|
2016-04-01 12:38:50 +09:00
|
|
|
// Add notifications options to user profile settings
|
|
|
|
Users.addField([
|
|
|
|
{
|
|
|
|
fieldName: 'telescope.notifications_users',
|
|
|
|
fieldSchema: {
|
|
|
|
label: 'New users',
|
|
|
|
type: Boolean,
|
|
|
|
optional: true,
|
|
|
|
defaultValue: false,
|
|
|
|
control: "checkbox",
|
2016-07-21 14:51:58 +09:00
|
|
|
insertableIf: Users.isAdmin,
|
|
|
|
editableIf: Users.isAdmin,
|
2016-06-03 11:03:36 +09:00
|
|
|
group: notificationsGroup
|
2016-04-01 12:38:50 +09:00
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
fieldName: 'telescope.notifications_posts',
|
|
|
|
fieldSchema: {
|
|
|
|
label: 'New posts',
|
|
|
|
type: Boolean,
|
|
|
|
optional: true,
|
|
|
|
defaultValue: false,
|
|
|
|
control: "checkbox",
|
2016-07-21 09:40:05 +09:00
|
|
|
insertableIf: canInsert,
|
|
|
|
editableIf: canEdit,
|
2016-06-03 11:03:36 +09:00
|
|
|
group: notificationsGroup
|
2016-04-01 12:38:50 +09:00
|
|
|
}
|
|
|
|
}
|
|
|
|
]);
|
2016-05-09 13:32:34 +09:00
|
|
|
|
|
|
|
if (typeof Comments !== "undefined") {
|
|
|
|
Users.addField([
|
|
|
|
{
|
|
|
|
fieldName: 'telescope.notifications_comments',
|
|
|
|
fieldSchema: {
|
|
|
|
label: 'Comments on my posts',
|
|
|
|
type: Boolean,
|
|
|
|
optional: true,
|
|
|
|
defaultValue: true,
|
|
|
|
control: "checkbox",
|
2016-07-21 09:40:05 +09:00
|
|
|
insertableIf: canInsert,
|
|
|
|
editableIf: canEdit
|
2016-05-09 13:32:34 +09:00
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
fieldName: 'telescope.notifications_replies',
|
|
|
|
fieldSchema: {
|
|
|
|
label: 'Replies to my comments',
|
|
|
|
type: Boolean,
|
|
|
|
optional: true,
|
|
|
|
defaultValue: true,
|
|
|
|
control: "checkbox",
|
2016-07-21 09:40:05 +09:00
|
|
|
insertableIf: canInsert,
|
|
|
|
editableIf: canEdit
|
2016-05-09 13:32:34 +09:00
|
|
|
}
|
|
|
|
}
|
|
|
|
]);
|
|
|
|
}
|