mirror of
https://github.com/astuto/astuto.git
synced 2025-12-15 19:27:52 +01:00
Add New Comment on your post notifications
This notification is sent only to the post owner, unless this person turned off the notifications. A simple first step into the notifications by mail world :) The mail contains a link to user profile The link to the user profile is required to give an easy access to notifications disabling. Also having a preview for the notify_post_owner method We can `Comment.first` because it is part of the db:seeds method. So there should, in development, always be one.
This commit is contained in:
committed by
Riccardo Graziosi
parent
9dfb13eff6
commit
007d08a051
@@ -1,6 +1,6 @@
|
||||
class CommentsController < ApplicationController
|
||||
before_action :authenticate_user!, only: [:create, :update]
|
||||
|
||||
|
||||
def index
|
||||
comments = Comment
|
||||
.select(
|
||||
@@ -23,6 +23,8 @@ class CommentsController < ApplicationController
|
||||
comment = Comment.new(comment_params)
|
||||
|
||||
if comment.save
|
||||
send_notifications(comment)
|
||||
|
||||
render json: comment.attributes.merge(
|
||||
{ user_full_name: current_user.full_name, user_email: current_user.email}
|
||||
), status: :created
|
||||
@@ -55,14 +57,19 @@ class CommentsController < ApplicationController
|
||||
end
|
||||
|
||||
private
|
||||
def comment_params
|
||||
params
|
||||
.require(:comment)
|
||||
.permit(:body, :parent_id, :is_post_update)
|
||||
.merge(
|
||||
user_id: current_user.id,
|
||||
post_id: params[:post_id]
|
||||
)
|
||||
end
|
||||
|
||||
def comment_params
|
||||
params
|
||||
.require(:comment)
|
||||
.permit(:body, :parent_id, :is_post_update)
|
||||
.merge(
|
||||
user_id: current_user.id,
|
||||
post_id: params[:post_id]
|
||||
)
|
||||
def send_notifications(comment)
|
||||
if comment.post.user.notifications_enabled?
|
||||
UserMailer.notify_post_owner(comment: comment).deliver_later
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user