require "abstracted_responder" class AbstractResourcesController < ApplicationController self.responder = ::AbstractedResponder respond_to :html, :xml, :js, :json before_action :set_resource #, except: :index before_action :set_fab_button_options before_filter :set_parents, only: [ :new, :edit, :show ] before_action :set_resources, only: [:index, :print] before_action :set_variant_template before_filter :authenticate_user! after_action :verify_authorized # after_action :manage_parenthood, only: [:create,:update,:destroy] # default implementation def prefer authorize resource if resource.prefer parent flash[:info] = t(:resource_preferred_correct) render :prefer, layout: false, status: 200 and return else flash[:error] = t(:resource_preferred_incorrect) render :prefer, layout: false, status: 401 and return end rescue Exception => e scoop_from_error e end def defer authorize resource if resource.defer parent flash[:info] = t(:resource_deferred_correct) render :defer, layout: false, status: 200 and return else flash[:error] = t(:resource_deferred_incorrect) render :defer, layout: false, status: 401 and return end rescue Exception => e scoop_from_error e end def activate authorize resource if resource.activate flash[:info] = t(:resource_activated_correct) render :activate, layout: false, status: 200 and return else flash[:error] = t(:resource_activated_incorrect) render :activate, layout: false, status: 401 and return end rescue Exception => e scoop_from_error e end def deactivate authorize resource if resource.deactivate flash[:info] = t(:resource_deactivated_correct) render :deactivate, layout: false, status: 200 and return else flash[:error] = t(:resource_deactivated_incorrect) render :deactivate, layout: false, status: 401 and return end rescue Exception => e scoop_from_error e end def attach authorize resource if resource.attach parent flash[:info] = t(:resource_attached_correct) render :attach, layout: false, status: 200 and return else flash[:error] = t(:resource_attached_incorrect) render :attach, layout: false, status: 401 and return end rescue Exception => e scoop_from_error e end def detach authorize resource if resource.detach parent flash[:info] = t(:resource_detached_correct) render :detach, layout: false, status: 200 and return else flash[:error] = t(:resource_detached_incorrect) render :detach, layout: false, status: 401 and return end rescue Exception => e scoop_from_error e end # # build an array of the resource - particular to