liquid_feedback_frontend

annotate app/main/admin/member_edit.lua @ 583:edf6b6814a68

Added delegation chain preview for inherited unit/area delegations
author bsw
date Wed Jun 20 21:31:14 2012 +0200 (2012-06-20)
parents c676054cb0bc
children 6fc640d87c8f
rev   line source
bsw/jbe@0 1 local id = param.get_id()
bsw/jbe@0 2
bsw@193 3 local member = Member:by_id(id)
bsw@193 4
bsw@193 5 if member then
bsw@581 6 ui.title(_("Member: '#{identification}' (#{name})", { identification = member.identification, name = member.name }))
bsw/jbe@0 7 else
bsw@581 8 ui.title(_"Register new member")
bsw/jbe@0 9 end
bsw/jbe@0 10
bsw@513 11 local units_selector = Unit:new_selector()
bsw@512 12
bsw@513 13 if member then
bsw@513 14 units_selector
bsw@513 15 :left_join("privilege", nil, { "privilege.member_id = ? AND privilege.unit_id = unit.id", member.id })
bsw@513 16 :add_field("privilege.voting_right", "voting_right")
bsw@513 17 end
bsw@513 18
bsw@513 19 local units = units_selector:exec()
bsw@512 20
bsw/jbe@0 21 ui.form{
bsw/jbe@0 22 attr = { class = "vertical" },
bsw/jbe@0 23 module = "admin",
bsw/jbe@0 24 action = "member_update",
bsw/jbe@0 25 id = member and member.id,
bsw/jbe@0 26 record = member,
bsw/jbe@0 27 readonly = not app.session.member.admin,
bsw/jbe@0 28 routing = {
bsw/jbe@0 29 default = {
bsw/jbe@0 30 mode = "redirect",
bsw/jbe@0 31 modules = "admin",
bsw/jbe@0 32 view = "member_list"
bsw/jbe@0 33 }
bsw/jbe@0 34 },
bsw/jbe@0 35 content = function()
bsw@254 36 ui.field.text{ label = _"Identification", name = "identification" }
bsw@286 37 ui.field.text{ label = _"Notification email", name = "notify_email" }
bsw@581 38 if member and member.login then
bsw@581 39 ui.field.text{ label = _"Login name", name = "login" }
bsw@581 40 end
bsw/jbe@0 41 ui.field.boolean{ label = _"Admin?", name = "admin" }
bsw@310 42
bsw@512 43 slot.put("<br />")
bsw@512 44
bsw@512 45 for i, unit in ipairs(units) do
bsw@512 46 ui.field.boolean{
bsw@512 47 name = "unit_" .. unit.id,
bsw@512 48 label = unit.name,
bsw@512 49 value = unit.voting_right
bsw@512 50 }
bsw@512 51 end
bsw@310 52 slot.put("<br /><br />")
bsw@310 53
bsw@581 54 if not member or not member.activated then
bsw@581 55 ui.field.boolean{ label = _"Send invite?", name = "invite_member" }
bsw@581 56 end
bsw@581 57
bsw@581 58 if member then
bsw@581 59 ui.field.boolean{ label = _"Lock member?", name = "locked" }
bsw@581 60 end
bsw@581 61
bsw@581 62 slot.put("<br />")
bsw/jbe@0 63 ui.submit{ text = _"Save" }
bsw/jbe@0 64 end
bsw/jbe@0 65 }

Impressum / About Us