liquid_feedback_frontend

diff app/main/member/_show.lua @ 4:80c215dbf076

Version alpha5

Many optical changes and improved usability

Support for different wiki-formatting-engines

Help system
author bsw/jbe
date Thu Dec 10 12:00:00 2009 +0100 (2009-12-10)
parents 768faea1096d
children 0ee1e0c42d4c
line diff
     1.1 --- a/app/main/member/_show.lua	Mon Nov 30 12:00:00 2009 +0100
     1.2 +++ b/app/main/member/_show.lua	Thu Dec 10 12:00:00 2009 +0100
     1.3 @@ -1,24 +1,116 @@
     1.4  local member = param.get("member", "table")
     1.5  
     1.6 -ui.form{
     1.7 -  attr = { class = "vertical" },
     1.8 -  record = member,
     1.9 -  readonly = true,
    1.10 -  content = function()
    1.11 -    if member.admin then
    1.12 -      ui.field.boolean{ label = _"Admin?",       name = "admin" }
    1.13 +ui.tabs{
    1.14 +  {
    1.15 +    name = "profile",
    1.16 +    label = _"Profile",
    1.17 +    content = function()
    1.18 +      ui.form{
    1.19 +        attr = { class = "member vertical" },
    1.20 +        record = member,
    1.21 +        readonly = true,
    1.22 +        content = function()
    1.23 +
    1.24 +          ui.container{
    1.25 +            attr = { class = "right" },
    1.26 +            content = function()
    1.27 +
    1.28 +            execute.view{
    1.29 +              module = "member_image",
    1.30 +              view = "_show",
    1.31 +              params = {
    1.32 +                member = member,
    1.33 +                image_type = "photo"
    1.34 +              }
    1.35 +            }
    1.36 +
    1.37 +              ui.container{
    1.38 +                attr = { class = "contact_data" },
    1.39 +                content = function()
    1.40 +                end
    1.41 +              }
    1.42 +
    1.43 +            end
    1.44 +          }
    1.45 +
    1.46 +          if member.admin then
    1.47 +            ui.field.boolean{ label = _"Admin?",       name = "admin" }
    1.48 +          end
    1.49 +          if member.locked then
    1.50 +            ui.field.boolean{ label = _"Locked?",      name = "locked" }
    1.51 +          end
    1.52 +          if member.ident_number then
    1.53 +            ui.field.text{    label = _"Ident number", name = "ident_number" }
    1.54 +          end
    1.55 +          ui.field.text{ label = _"Name", name = "name" }
    1.56 +
    1.57 +          if member.realname and #member.realname > 0 then
    1.58 +            ui.field.text{ label = _"Real name", name = "realname" }
    1.59 +          end
    1.60 +          if member.email and #member.email > 0 then
    1.61 +            ui.field.text{ label = _"email", name = "email" }
    1.62 +          end
    1.63 +          if member.xmpp_address and #member.xmpp_address > 0 then
    1.64 +            ui.field.text{ label = _"xmpp", name = "xmpp_address" }
    1.65 +          end
    1.66 +          if member.website and #member.website > 0 then
    1.67 +            ui.field.text{ label = _"Website", name = "website" }
    1.68 +          end
    1.69 +          if member.phone and #member.phone > 0 then
    1.70 +            ui.field.text{ label = _"Phone", name = "phone" }
    1.71 +          end
    1.72 +          if member.mobile_phone and #member.mobile_phone > 0 then
    1.73 +            ui.field.text{ label = _"Mobile phone", name = "mobile_phone" }
    1.74 +          end
    1.75 +          if member.address and #member.address > 0 then
    1.76 +            ui.container{
    1.77 +              content = function()
    1.78 +                ui.tag{
    1.79 +                  tag = "label",
    1.80 +                  attr = { class = "ui_field_label" },
    1.81 +                  content = _"Address"
    1.82 +                }
    1.83 +                ui.tag{
    1.84 +                  tag = "span",
    1.85 +                  content = function()
    1.86 +                    slot.put(encode.html_newlines(member.address))
    1.87 +                  end
    1.88 +                }
    1.89 +              end
    1.90 +            }
    1.91 +          end
    1.92 +          if member.profession and #member.profession > 0 then
    1.93 +            ui.field.text{ label = _"Profession", name = "profession" }
    1.94 +          end
    1.95 +          if member.birthday and #member.birthday > 0 then
    1.96 +            ui.field.text{ label = _"Birthday", name = "birthday" }
    1.97 +          end
    1.98 +          if member.organizational_unit and #member.organizational_unit > 0 then
    1.99 +            ui.field.text{ label = _"Organizational unit", name = "organizational_unit" }
   1.100 +          end
   1.101 +          if member.internal_posts and #member.internal_posts > 0 then
   1.102 +            ui.field.text{ label = _"Internal posts", name = "internal_posts" }
   1.103 +          end
   1.104 +          if member.external_memberships and #member.external_memberships > 0 then
   1.105 +            ui.field.text{ label = _"Memberships", name = "external_memberships", multiline = true }
   1.106 +          end
   1.107 +          if member.external_posts and #member.external_posts > 0 then
   1.108 +            ui.field.text{ label = _"Posts", name = "external_posts", multiline = true }
   1.109 +          end
   1.110 +          slot.put('<br style="clear: right;" />')
   1.111 +
   1.112 +        end
   1.113 +      }
   1.114 +      if member.statement and #member.statement > 0 then
   1.115 +        ui.container{
   1.116 +          attr = { class = "member_statement wiki" },
   1.117 +          content = function()
   1.118 +            slot.put(format.wiki_text(member.statement))
   1.119 +          end
   1.120 +        }
   1.121 +      end
   1.122      end
   1.123 -    if member.locked then
   1.124 -      ui.field.boolean{ label = _"Locked?",      name = "locked" }
   1.125 -    end
   1.126 -    if member.ident_number then
   1.127 -      ui.field.text{    label = _"Ident number", name = "ident_number" }
   1.128 -    end
   1.129 -    ui.submit{        text  = _"Save" }
   1.130 -  end
   1.131 -}
   1.132 -
   1.133 -ui.tabs{
   1.134 +  },
   1.135    {
   1.136      name = "areas",
   1.137      label = _"Areas",
   1.138 @@ -42,8 +134,8 @@
   1.139      end
   1.140    },
   1.141    {
   1.142 -    name = "initiatives",
   1.143 -    label = _"Initiatives",
   1.144 +    name = "supported_initiatives",
   1.145 +    label = _"Supported initiatives",
   1.146      content = function()
   1.147        execute.view{
   1.148          module = "initiative",
   1.149 @@ -53,6 +145,17 @@
   1.150      end
   1.151    },
   1.152    {
   1.153 +    name = "initiatied_initiatives",
   1.154 +    label = _"Initiated initiatives",
   1.155 +    content = function()
   1.156 +      execute.view{
   1.157 +        module = "initiative",
   1.158 +        view = "_list",
   1.159 +        params = { initiatives_selector = member:get_reference_selector("initiated_initiatives") }
   1.160 +      }
   1.161 +    end
   1.162 +  },
   1.163 +  {
   1.164      name = "incoming_delegations",
   1.165      label = _"Incoming delegations",
   1.166      content = function()
   1.167 @@ -64,7 +167,7 @@
   1.168      end
   1.169    },
   1.170    {
   1.171 -    name = "outgoing_delegations",
   1.172 +    name = "Outgoing delegations",
   1.173      label = _"Outgoing delegations",
   1.174      content = function()
   1.175        execute.view{

Impressum / About Us