mirror of
https://github.com/vale981/Vulcan
synced 2025-03-10 12:36:39 -04:00
102 lines
2.5 KiB
JavaScript
102 lines
2.5 KiB
JavaScript
![]() |
Herald.collection.deny({
|
||
|
update: ! can.editById,
|
||
|
remove: ! can.editById
|
||
|
});
|
||
|
|
||
|
var commentEmail = function (userToNotify) {
|
||
|
var notification = this;
|
||
|
// put in setTimeout so it doesn't hold up the rest of the method
|
||
|
Meteor.setTimeout(function () {
|
||
|
notificationEmail = buildEmailNotification(notification);
|
||
|
sendEmail(getEmail(userToNotify), notificationEmail.subject, notificationEmail.html);
|
||
|
}, 1);
|
||
|
}
|
||
|
|
||
|
Herald.addCourier('newPost', {
|
||
|
media: {
|
||
|
email: {
|
||
|
emailRunner: function (user) {
|
||
|
var p = getPostProperties(this.data);
|
||
|
var subject = p.postAuthorName+' has created a new post: '+p.postTitle;
|
||
|
var html = buildEmailTemplate(getEmailTemplate('emailNewPost')(p));
|
||
|
sendEmail(getEmail(user), subject, html);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
// message: function (user) { return 'email template?' }
|
||
|
});
|
||
|
|
||
|
Herald.addCourier('newComment', {
|
||
|
media: {
|
||
|
onsite: {},
|
||
|
email: {
|
||
|
emailRunner: commentEmail
|
||
|
}
|
||
|
},
|
||
|
message: {
|
||
|
default: function (user) {
|
||
|
return Blaze.toHTML(Blaze.With(this, function(){
|
||
|
return Template[getTemplate('notificationNewComment')]
|
||
|
}));
|
||
|
}
|
||
|
},
|
||
|
transform: {
|
||
|
profileUrl: function () {
|
||
|
var user = Meteor.users.findOne(this.data.comment.userId);
|
||
|
if(user)
|
||
|
return getProfileUrl(user);
|
||
|
},
|
||
|
postCommentUrl: function () {
|
||
|
return '/posts/'+ this.data.post._id;
|
||
|
},
|
||
|
author: function () {
|
||
|
var user = Meteor.users.findOne(this.data.comment.userId);
|
||
|
if(user)
|
||
|
return getUserName(user);
|
||
|
},
|
||
|
postTitle: function () {
|
||
|
return this.data.post.title;
|
||
|
},
|
||
|
url: function () {
|
||
|
return /comments/ + this.comment._id;
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
Herald.addCourier('newReply', {
|
||
|
media: {
|
||
|
onsite: {},
|
||
|
email: {
|
||
|
emailRunner: commentEmail
|
||
|
}
|
||
|
},
|
||
|
message: {
|
||
|
default: function (user) {
|
||
|
return Blaze.toHTML(Blaze.With(this, function(){
|
||
|
return Template[getTemplate('notificationNewReply')]
|
||
|
}));
|
||
|
}
|
||
|
},
|
||
|
transform: {
|
||
|
profileUrl: function () {
|
||
|
var user = Meteor.users.findOne(this.data.comment.userId);
|
||
|
if(user)
|
||
|
return getProfileUrl(user);
|
||
|
},
|
||
|
postCommentUrl: function () {
|
||
|
return '/posts/'+ this.data.post._id;
|
||
|
},
|
||
|
author: function () {
|
||
|
var user = Meteor.users.findOne(this.data.comment.userId);
|
||
|
if(user)
|
||
|
return getUserName(user);
|
||
|
},
|
||
|
postTitle: function () {
|
||
|
return this.data.post.title;
|
||
|
},
|
||
|
url: function () {
|
||
|
return /comments/ + this.parentComment._id;
|
||
|
}
|
||
|
}
|
||
|
});
|