liquid_feedback_frontend

changeset 584:6fc640d87c8f

Made member administration more powerfull
author bsw
date Wed Jun 20 21:31:48 2012 +0200 (2012-06-20)
parents edf6b6814a68
children b489613c99d5
files app/main/admin/_action/member_update.lua app/main/admin/member_edit.lua app/main/admin/member_list.lua
line diff
     1.1 --- a/app/main/admin/_action/member_update.lua	Wed Jun 20 21:31:14 2012 +0200
     1.2 +++ b/app/main/admin/_action/member_update.lua	Wed Jun 20 21:31:48 2012 +0200
     1.3 @@ -2,7 +2,20 @@
     1.4  
     1.5  local member = Member:by_id(id) or Member:new()
     1.6  
     1.7 -param.update(member, "identification", "notify_email", "admin", "locked")
     1.8 +param.update(member, "identification", "notify_email", "admin")
     1.9 +
    1.10 +local locked = param.get("locked", atom.boolean)
    1.11 +if locked then
    1.12 +  member.locked = locked
    1.13 +end
    1.14 +local login = param.get("login")
    1.15 +if login then
    1.16 +  member.login = login
    1.17 +end
    1.18 +local name = param.get("name")
    1.19 +if name then
    1.20 +  member.name = name
    1.21 +end
    1.22  
    1.23  local err = member:try_save()
    1.24  
     2.1 --- a/app/main/admin/member_edit.lua	Wed Jun 20 21:31:14 2012 +0200
     2.2 +++ b/app/main/admin/member_edit.lua	Wed Jun 20 21:31:48 2012 +0200
     2.3 @@ -35,7 +35,8 @@
     2.4    content = function()
     2.5      ui.field.text{     label = _"Identification", name = "identification" }
     2.6      ui.field.text{     label = _"Notification email", name = "notify_email" }
     2.7 -    if member and member.login then
     2.8 +    if member and member.activated then
     2.9 +      ui.field.text{     label = _"Screen name",        name = "name" }
    2.10        ui.field.text{     label = _"Login name",        name = "login" }
    2.11      end
    2.12      ui.field.boolean{  label = _"Admin?",       name = "admin" }
    2.13 @@ -55,7 +56,7 @@
    2.14        ui.field.boolean{  label = _"Send invite?",       name = "invite_member" }
    2.15      end
    2.16      
    2.17 -    if member then
    2.18 +    if member and member.activated then
    2.19        ui.field.boolean{  label = _"Lock member?",       name = "locked" }
    2.20      end
    2.21      
     3.1 --- a/app/main/admin/member_list.lua	Wed Jun 20 21:31:14 2012 +0200
     3.2 +++ b/app/main/admin/member_list.lua	Wed Jun 20 21:31:48 2012 +0200
     3.3 @@ -1,21 +1,7 @@
     3.4 -local show_locked = param.get("show_locked", atom.boolean)
     3.5 -
     3.6 -local locked = show_locked or false
     3.7  local search = param.get("search")
     3.8 -if search then
     3.9 -  locked = nil
    3.10 -end
    3.11 -
    3.12 -local members_selector = Member:build_selector{
    3.13 -  admin_search = search,
    3.14 -  locked = locked,
    3.15 -  order = "identification"
    3.16 -}
    3.17 -
    3.18  
    3.19  ui.title(_"Member list")
    3.20  
    3.21 -
    3.22  slot.select("head", function()
    3.23    ui.container{ attr = { class = "content" }, content = function()
    3.24      ui.container{ attr = { class = "actions" }, content = function()
    3.25 @@ -25,23 +11,6 @@
    3.26          module = "admin",
    3.27          view = "member_edit"
    3.28        }
    3.29 -      slot.put(" · ")
    3.30 -      if show_locked then
    3.31 -        ui.link{
    3.32 -          attr = { class = { "admin_only" } },
    3.33 -          text = _"Show active members",
    3.34 -          module = "admin",
    3.35 -          view = "member_list"
    3.36 -        }
    3.37 -      else
    3.38 -        ui.link{
    3.39 -          attr = { class = { "admin_only" } },
    3.40 -          text = _"Show locked members",
    3.41 -          module = "admin",
    3.42 -          view = "member_list",
    3.43 -          params = { show_locked = true }
    3.44 -        }
    3.45 -      end
    3.46      end }
    3.47    end }
    3.48  end)
    3.49 @@ -58,6 +27,16 @@
    3.50    end
    3.51  }
    3.52  
    3.53 +if not search then
    3.54 +  return
    3.55 +end
    3.56 +
    3.57 +local members_selector = Member:build_selector{
    3.58 +  admin_search = search,
    3.59 +  order = "identification"
    3.60 +}
    3.61 +
    3.62 +
    3.63  ui.paginate{
    3.64    selector = members_selector,
    3.65    per_page = 30,
    3.66 @@ -94,6 +73,8 @@
    3.67                ui.field.text{ value = "not activated" }
    3.68              elseif not record.active then
    3.69                ui.field.text{ value = "inactive" }
    3.70 +            else
    3.71 +              ui.field.text{ value = "active" }
    3.72              end
    3.73            end
    3.74          },

Impressum / About Us