Files
netig.net/routes/noyau.rb
T

50 lines
1.2 KiB
Ruby

class Netig
hash_branch "noyau" do |r|
require_core_member!(r)
@page_title = "Noyau — NETig"
@page_description = "Espace de gestion de l'association NETig."
@canonical_url = "https://netig.net/noyau"
r.is do
r.get do
view "noyau"
end
end
r.on "members" do
r.is do
r.get do
@page_title = "Adhérents — Noyau — NETig"
@members = DB[:members]
.join(:accounts, id: :account_id)
.select_all(:members)
.select_append(Sequel[:accounts][:email].as(:email))
.order(Sequel[:members][:id])
.all
memberships_by_member = DB[:memberships]
.order(Sequel.desc(:requested_at), Sequel.desc(:id))
.all
.group_by { |membership| membership[:member_id] }
@members.each do |member|
memberships = memberships_by_member.fetch(member[:id], [])
membership = memberships.find do |item|
%w[pending accepted].include?(item[:status])
end
membership ||= memberships.first
member[:membership_status] = membership && membership[:status]
end
view "noyau/members"
end
end
end
end
end