diff --git a/public/css/style.css b/public/css/style.css index b66eba3..8ba43bf 100644 --- a/public/css/style.css +++ b/public/css/style.css @@ -487,6 +487,29 @@ summary:focus-visible { color: var(--color-text); } +/* Admin +------------------------------------------------------------------------ */ + +.admin-table { + width: 100%; + border-collapse: collapse; + text-align: left; +} + +.admin-table th, +.admin-table td { + padding: 10px 16px; + border-bottom: 1px solid var(--color-shadow-light); +} + +.admin-table th { + color: var(--color-highlight); +} + +.admin-table td { + vertical-align: top; +} + /* Pied de page ------------------------------------------------------------------------ */ @@ -572,4 +595,4 @@ footer { .box__link:hover { transform: none; } -} \ No newline at end of file +} diff --git a/routes/admin.rb b/routes/admin.rb index f0418bf..920ea34 100644 --- a/routes/admin.rb +++ b/routes/admin.rb @@ -11,6 +11,23 @@ class Netig view "admin" end end + + r.on "members" do + r.is do + r.get do + @page_title = "Adhérents — Admin — NETig" + + @members = DB[:members] + .join(:accounts, id: :account_id) + .select_all(:members) + .select_append(Sequel[:accounts][:email].as(:email)) + .order(Sequel[:members][:id]) + .all + + view "admin/members" + end + end + end end private diff --git a/views/admin.erb b/views/admin.erb index d2e27db..ce4012f 100644 --- a/views/admin.erb +++ b/views/admin.erb @@ -1,6 +1,11 @@
-

Interface d'administration de NETig

-

Test

+

Administration de NETig

+ +

+ + Gérer les adhérents + +

diff --git a/views/admin/members.erb b/views/admin/members.erb new file mode 100644 index 0000000..e691762 --- /dev/null +++ b/views/admin/members.erb @@ -0,0 +1,38 @@ +
+
+

Adhérents

+ + <% if @members.empty? %> +

Aucun adhérent enregistré.

+ <% else %> + + + + + + + + + + + + <% @members.each do |member| %> + + + + + + + <% end %> + +
IdentitéTypeAdresse électroniqueAdministration
+ <%= member[:kind] == "individual" ? + "#{member[:first_name]} #{member[:last_name]}" : + member[:organization_name] %> + + <%= member[:kind] == "individual" ? + "Personne physique" : "Personne morale" %> + <%= member[:email] %><%= member[:admin] ? "Oui" : "Non" %>
+ <% end %> +
+