Class: Dorsale::CustomerVault::PeopleController
- Inherits:
-
ApplicationController
- Object
- ApplicationController
- ApplicationController
- ApplicationController
- Dorsale::CustomerVault::PeopleController
- Defined in:
- app/controllers/dorsale/customer_vault/people_controller.rb
Instance Method Summary collapse
- #activity ⇒ Object
- #corporations ⇒ Object
- #create ⇒ Object
- #destroy ⇒ Object
- #edit ⇒ Object
- #index ⇒ Object
- #individuals ⇒ Object
- #new ⇒ Object
- #show ⇒ Object
- #update ⇒ Object
Instance Method Details
#activity ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 37 def activity model, :list? @people ||= scope @comments ||= policy_scope(::Dorsale::Comment) .where("commentable_type LIKE ?", "%CustomerVault%") .order("created_at DESC, id DESC") .preload(:commentable, :author) @comments = @comments.page(params[:page]).per(50) end |
#corporations ⇒ Object
27 28 29 30 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 27 def corporations index render :index end |
#create ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 64 def create model, :create? @person ||= scope.new(person_params_for_create) if @person.save flash[:notice] = t("messages.#{person_type.to_s.pluralize}.create_ok") redirect_to back_url else render :new end end |
#destroy ⇒ Object
99 100 101 102 103 104 105 106 107 108 109 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 99 def destroy @person, :delete? if @person.destroy flash[:notice] = t("messages.#{person_type.to_s.pluralize}.delete_ok") else flash[:alert] = t("messages.#{person_type.to_s.pluralize}.delete_error") end redirect_to customer_vault_people_path end |
#edit ⇒ Object
82 83 84 85 86 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 82 def edit @person, :update? @person.build_address if @person.address.nil? end |
#index ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 11 def index model, :list? @filters ||= ::Dorsale::CustomerVault::SmallData::FilterForPeople.new() @tags ||= customer_vault_tag_list @people ||= policy_scope(model).search(params[:q]) if params[:q].blank? @people = @filters.apply(@people) end @people_without_pagination = @people @people = @people.page(params[:page]).per(25) end |
#individuals ⇒ Object
32 33 34 35 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 32 def individuals index render :index end |
#new ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 50 def new model, :create? if model == Dorsale::CustomerVault::Person skip_policy_scope redirect_to url_for(action: :index) return end @person ||= scope.new @person.build_address if @person.address.nil? end |
#show ⇒ Object
77 78 79 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 77 def show @person, :read? end |
#update ⇒ Object
88 89 90 91 92 93 94 95 96 97 |
# File 'app/controllers/dorsale/customer_vault/people_controller.rb', line 88 def update @person, :update? if @person.update(person_params_for_update) flash[:notice] = t("messages.#{person_type.to_s.pluralize}.update_ok") redirect_to back_url else render :edit end end |