From d944a88c63deb7e50ea63c5863301ea7e3fcef84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mar=C3=ADa=20Checa?= Date: Mon, 18 Dec 2017 13:26:22 +0100 Subject: [PATCH] Added flag/unflag related content routes --- .../related_contents_controller.rb | 20 +++++++++++++++++++ config/routes.rb | 7 ++++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/app/controllers/related_contents_controller.rb b/app/controllers/related_contents_controller.rb index 1ea9e02f9..8e2cd854d 100644 --- a/app/controllers/related_contents_controller.rb +++ b/app/controllers/related_contents_controller.rb @@ -3,6 +3,8 @@ class RelatedContentsController < ApplicationController skip_authorization_check + respond_to :html, :js + def create if relationable_object && related_object @relationable.relate_content(@related) @@ -15,6 +17,24 @@ class RelatedContentsController < ApplicationController redirect_to @relationable end + def flag + @related = RelatedContent.find_by(id: params[:id]) + + Flag.flag(current_user, @related) + Flag.flag(current_user, @related.opposite_related_content) + + render template: 'relationable/_refresh_flag_actions' + end + + def unflag + @related = RelatedContent.find_by(id: params[:id]) + + Flag.unflag(current_user, @related) + Flag.unflag(current_user, @related.opposite_related_content) + + render template: 'relationable/_refresh_flag_actions' + end + private def valid_url? diff --git a/config/routes.rb b/config/routes.rb index 429e5a862..40eb2e139 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -462,7 +462,12 @@ Rails.application.routes.draw do root to: "dashboard#index" end - resources :related_contents, only: [:create] + resources :related_contents, only: [:create] do + member do + put :flag + put :unflag + end + end # GraphQL get '/graphql', to: 'graphql#query'