• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

codebar / planner / 20458165864

23 Dec 2025 10:25AM UTC coverage: 95.04% (-0.004%) from 95.044%
20458165864

Pull #2423

github

web-flow
Merge 57e4b6fd8 into 9df21ba62
Pull Request #2423: Upgrade Pagy

4 of 5 new or added lines in 3 files covered. (80.0%)

3238 of 3407 relevant lines covered (95.04%)

80.29 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

87.5
/app/controllers/admin/members_controller.rb
1
class Admin::MembersController < Admin::ApplicationController
2✔
2
  before_action :set_member, only: %i[events update_subscriptions send_attendance_email send_eligibility_email]
2✔
3

4
  def index
2✔
5
    @members = Member.all
×
6
  end
7

8
  def show
2✔
9
    @member = MemberPresenter.new(Member.find(params[:id]))
24✔
10
    load_attendance_data(@member)
24✔
11

12
    @actions = admin_actions(@member).sort_by(&:created_at).reverse
24✔
13
  end
14

15
  def events
2✔
16
    load_attendance_data(@member)
×
17

18
    past_rsvps = @member.past_rsvps
×
NEW
19
    @pagy, @past_rsvps = pagy(:offset, items: past_rsvps)
×
20
  end
21

22
  def update_subscriptions
2✔
23
    subscription = @member.subscriptions.find_by(group_id: params[:group])
2✔
24
    flash[:notice] = t('.unsubscribe', member: @member.full_name,
2✔
25
                                       chapter: subscription.group.chapter.city,
26
                                       group: subscription.group.name)
27
    subscription.destroy
2✔
28
    redirect_back fallback_location: root_path
2✔
29
  end
30

31
  def send_eligibility_email
2✔
32
    @member.eligibility_inquiries.create!(issued_by: current_user)
2✔
33

34
    redirect_to [:admin, @member], notice: t('.success')
2✔
35
  end
36

37
  def send_attendance_email
2✔
38
    @member.attendance_warnings.create!(issued_by: current_user)
2✔
39

40
    redirect_to [:admin, @member], notice: t('.success')
2✔
41
  end
42

43
  private
2✔
44

45
  def set_member
2✔
46
    @member = Member.find(params[:member_id])
6✔
47
  end
48

49
  def load_attendance_data(member)
2✔
50
    @workshop_attendances = member.workshop_invitations.joins(:workshop).taken_place.attended.count
24✔
51
    @event_rsvps = member.invitations.joins(:event).taken_place.accepted.count
24✔
52
    @meeting_rsvps = member.meeting_invitations.joins(:meeting).taken_place.count
24✔
53
  end
54

55
  def admin_actions(member)
2✔
56
    [member.bans,
24✔
57
     member.member_notes,
58
     member.eligibility_inquiries,
59
     member.attendance_warnings].reduce([], :concat)
60
  end
61
end
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc