negos_app/app/controllers/admin/needs_controller.rb
2015-12-04 14:34:12 +01:00

64 lines
1.5 KiB
Ruby

class Admin::NeedsController < ApplicationController
layout "admin"
def index
# Get all needs to validate
@needs_to_validate = Need.where(state: 'created').order(created_at: :desc)
# Get all controlled needs
@needs = Kaminari.paginate_array(Need.shared.order(created_at: :desc))
.page(params[:page])
.per(10)
end
def edit
@need = Need.find(params[:id])
end
def update
@need = Need.find(params[:id])
if @need.update_attributes(need_params)
flash[:notice] = "Besoin sauvegardé avec succès."
redirect_to admin_needs_path
else
render :action => "edit"
end
end
def destroy
@need = Need.find(params[:id])
if(@need.destroy)
flash[:notice] = "Besoin supprimé avec succès."
end
redirect_to admin_needs_path
end
def validate
@need = Need.find(params[:id])
if @need.validate!
flash[:notice] = "Besoin validé avec succès"
CustomerMailer.validate_need(@need).deliver
else
flash[:error] = "L'état actuel de ce besoin ne permet pas sa validation"
end
redirect_to admin_needs_path
end
def refuse
@need = Need.find(params[:id])
if @need.refuse!
flash[:notice] = "Besoin refusé avec succès"
CustomerMailer.refuse_need(@need).deliver
else
flash[:error] = "L'état actuel de ce besoin ne permet son refus"
end
redirect_to admin_needs_path
end
def need_params
params.require(:need).permit(:title, :description)
end
end