volunteers/app/controllers/members_controller.rb
2023-11-28 10:54:06 +02:00

65 lines
1.6 KiB
Ruby

class MembersController < ApplicationController
before_action :set_member, only: %i[ show edit update destroy ]
# GET /members
def index
@members = Member.public_scope.
where("arriving < ? " , Date.today).
where("leaving > ?" , Date.today).
order(:leaving).
page params[:page]
@private = Member.where("arriving < ? " , Date.today).
where("leaving > ?" , Date.today).count - @members.length
end
def timeline
@members = Member.visible_scope.order(:name).page params[:page]
end
# GET /members/1
def show
end
# GET /members/1/edit
def edit
end
# POST /members
def create
@member = Member.new(member_params)
if @member.save
redirect_to @member, notice: "Member was successfully created."
else
render :new, status: :unprocessable_entity
end
end
# PATCH/PUT /members/1
def update
if @member.update(member_params)
redirect_to @member, notice: "Member was successfully updated."
else
render :edit, status: :unprocessable_entity
end
end
# DELETE /members/1
def destroy
@member.destroy
redirect_to members_url, notice: "Member was successfully destroyed."
end
private
# Use callbacks to share common setup or constraints between actions.
def set_member
@member = Member.find(params[:id])
end
# Only allow a list of trusted parameters through.
def member_params
params.require(:member).permit(:name, :public, :bio , :picture,
:picture_cache , :arriving ,:leaving)
end
end