2023-08-13 10:44:11 (UTC-03:00)
Marcel Rodrigues <marcelgmr@gmail.com>
show invitees in user page
diff --git a/data.lua b/data.lua index 792bf7e..d919615 100644 --- a/data.lua +++ b/data.lua @@ -118,6 +118,10 @@ function Model:get_indexed_users() return users end +function Model:get_invitees(user_id) + return self.db:execute("SELECT nick, name FROM User WHERE invited_by = ?;", user_id) +end + function Model:can_manage(user, other) local parent_id = other.invited_by while parent_id ~= nil do diff --git a/skopos.lua b/skopos.lua index c40e828..8ed88bc 100644 --- a/skopos.lua +++ b/skopos.lua @@ -134,10 +134,12 @@ function App:routes() if user == nil then return "/login?after="..req.path, 303 end local other = self.model:get_user(nick, true) if other == nil then return "not found", 404 end + local invitees = self.model:get_invitees(other.id) local manage = self.model:can_manage(user, other) local projs = self.model:get_user_projects(other.id) local env = { - title=self.title, user=user, other=other, manage=manage, projs=projs + title=self.title, user=user, other=other, invitees=invitees, + manage=manage, projs=projs } return lud.template.render_file("view/user.html", env) end}, diff --git a/view/user.html b/view/user.html index cebb4cd..edec42e 100644 --- a/view/user.html +++ b/view/user.html @@ -29,6 +29,13 @@ (root) % end </p> + % if #$invitees > 0 then + <p><strong>invited:</strong> + % for invitee in $invitees do + <a href="/u/{{$invitee.nick}}">{{$invitee.name}}</a> + % end + </p> + % end <p><strong>projects:</strong> <ul class="proj-list"> % for proj in $projs do