liquid_feedback_frontend
view app/main/admin/member_edit.lua @ 1222:a38df55525d6
Removed support for old WebMCP 1.x and clean up of example configuration
| author | bsw | 
|---|---|
| date | Tue Dec 01 13:59:16 2015 +0100 (2015-12-01) | 
| parents | f981928d1984 | 
| children | 32cc544d5a5b | 
 line source
     1 local id = param.get_id()
     3 local member = Member:by_id(id)
     5 local deactivated = member and member.locked and member.login == nil and member.authority_login == nil
     7 ui.titleAdmin(_"Member")
     9 local units_selector = Unit:new_selector()
    11 if member then
    12   units_selector
    13     :left_join("privilege", nil, { "privilege.member_id = ? AND privilege.unit_id = unit.id", member.id })
    14     :add_field("privilege.voting_right", "voting_right")
    15 end
    17 local units = units_selector:exec()
    19 ui.form{
    20   attr = { class = "vertical section" },
    21   module = "admin",
    22   action = "member_update",
    23   id = member and member.id,
    24   record = member,
    25   readonly = not app.session.member.admin,
    26   routing = {
    27     default = {
    28       mode = "redirect",
    29       modules = "admin",
    30       view = "index"
    31     }
    32   },
    33   content = function()
    35     ui.sectionHead( function()
    36       ui.heading { level = 1, content = member and (member.name or member.id) or _"New member" }
    37       if member and member.identification then
    38         ui.heading { level = 3, content = member.identification }
    39       end
    40     end )
    42     ui.sectionRow( function()
    43       ui.field.text{     label = _"Identification", name = "identification" }
    44       ui.field.text{     label = _"Notification email", name = "notify_email" }
    45       if member and member.activated then
    46         ui.field.text{     label = _"Screen name",        name = "name" }
    47       end
    49       if member and member.activated and not deactivated then
    50         ui.field.text{     label = _"Login name",        name = "login" }
    51       end
    53       for i, unit in ipairs(units) do
    54         ui.field.boolean{
    55           name = "unit_" .. unit.id,
    56           label = unit.name,
    57           value = unit.voting_right
    58         }
    59       end
    60       slot.put("<br /><br />")
    62       if member then
    63         ui.field.text{  label = _"Activated",       name = "activated", readonly = true }
    64       end
    66       if not member or not member.activated then
    67         ui.field.boolean{  label = _"Send invite?",       name = "invite_member" }
    68       end
    70       if member then
    71         ui.field.boolean{ 
    72           label = _"Member inactive?", name = "deactivate",
    73           readonly = true, 
    74           value = member and member.active == false
    75         }
    76       end
    78       if member then
    79         ui.field.boolean{
    80           label = _"Lock member?", name = "locked",
    81         }
    82       end
    84       slot.put("<br />")
    85       ui.field.boolean{  label = _"Admin?", name = "admin" }
    86       slot.put("<br />")
    87       ui.submit{         text  = _"update member" }
    88       slot.put(" ")
    89       if member then
    90         ui.link { module = "admin", view = "member_deactivate", content = _"Deactivate member", id = member.id }
    91         slot.put(" ")
    92       end
    93       ui.link { module = "admin", view = "index", content = _"cancel" }
    94     end )
    95   end
    96 }
