liquid_feedback_frontend
view app/main/member/_profile.lua @ 273:7196685f9dd7
More optical enhancements, more repositioning
| author | bsw | 
|---|---|
| date | Wed Feb 08 18:49:22 2012 +0100 (2012-02-08) | 
| parents | d13b27a37ad5 | 
| children | 23c98752e697 | 
 line source
     1 local member = param.get("member", "table")
     3 if not member then
     4   local member_id = param.get("member_id", atom.integer)
     5   if member_id then
     6     member = Member:by_id(member_id)
     7   end
     8 end
    10 --slot.select("actions", function()
    12   if app.session.member and app.session.member_id == member.id then
    13     ui.link{
    14       attr = { class = "actions" },
    15       content = function()
    16           ui.image{ static = "icons/16/application_form.png" }
    17           slot.put(_"Edit my profile")
    18       end,
    19       module = "member",
    20       view = "edit"
    21     }
    22     ui.link{
    23       attr = { class = "actions" },
    24       content = function()
    25           ui.image{ static = "icons/16/user_gray.png" }
    26           slot.put(_"Upload images")
    27       end,
    28       module = "member",
    29       view = "edit_images"
    30     }
    31     if config.download_dir then
    32       ui.link{
    33         attr = { class = "actions" },
    34         content = function()
    35             ui.image{ static = "icons/16/database_save.png" }
    36             slot.put(_"Download")
    37         end,
    38         module = "index",
    39         view = "download"
    40       }
    41     end
    42     slot.put("<br /><br />")
    43   end
    44 --end)
    46 ui.form{
    47   attr = { class = "member vertical" },
    48   record = member,
    49   readonly = true,
    50   content = function()
    52     ui.container{
    53       attr = { class = "right" },
    54       content = function()
    56       execute.view{
    57         module = "member_image",
    58         view = "_show",
    59         params = {
    60           member = member,
    61           image_type = "photo"
    62         }
    63       }
    65       ui.container{
    66         attr = { class = "contact_data" },
    67         content = function()
    68         end
    69       }
    71       end
    72     }
    74     if member.ident_number then
    75       ui.field.text{    label = _"Ident number", name = "ident_number" }
    76     end
    77     ui.field.text{ label = _"Name", name = "name" }
    79     if member.realname and #member.realname > 0 then
    80       ui.field.text{ label = _"Real name", name = "realname" }
    81     end
    82     if member.email and #member.email > 0 then
    83       ui.field.text{ label = _"email", name = "email" }
    84     end
    85     if member.xmpp_address and #member.xmpp_address > 0 then
    86       ui.field.text{ label = _"xmpp", name = "xmpp_address" }
    87     end
    88     if member.website and #member.website > 0 then
    89       ui.field.text{ label = _"Website", name = "website" }
    90     end
    91     if member.phone and #member.phone > 0 then
    92       ui.field.text{ label = _"Phone", name = "phone" }
    93     end
    94     if member.mobile_phone and #member.mobile_phone > 0 then
    95       ui.field.text{ label = _"Mobile phone", name = "mobile_phone" }
    96     end
    97     if member.address and #member.address > 0 then
    98       ui.container{
    99         content = function()
   100           ui.tag{
   101             tag = "label",
   102             attr = { class = "ui_field_label" },
   103             content = _"Address"
   104           }
   105           ui.tag{
   106             tag = "span",
   107             content = function()
   108               slot.put(encode.html_newlines(encode.html(member.address)))
   109             end
   110           }
   111         end
   112       }
   113     end
   114     if member.profession and #member.profession > 0 then
   115       ui.field.text{ label = _"Profession", name = "profession" }
   116     end
   117     if member.birthday and #member.birthday > 0 then
   118       ui.field.text{ label = _"Birthday", name = "birthday" }
   119     end
   120     if member.organizational_unit and #member.organizational_unit > 0 then
   121       ui.field.text{ label = _"Organizational unit", name = "organizational_unit" }
   122     end
   123     if member.internal_posts and #member.internal_posts > 0 then
   124       ui.field.text{ label = _"Internal posts", name = "internal_posts" }
   125     end
   126     if member.external_memberships and #member.external_memberships > 0 then
   127       ui.field.text{ label = _"Memberships", name = "external_memberships", multiline = true }
   128     end
   129     if member.external_posts and #member.external_posts > 0 then
   130       ui.field.text{ label = _"Posts", name = "external_posts", multiline = true }
   131     end
   132     slot.put('<br style="clear: right;" />')
   134     if member.statement and #member.statement > 0 then
   135       ui.container{
   136         attr = { class = "member_statement wiki" },
   137         content = function()
   138           slot.put(format.wiki_text(member.statement))
   139         end
   140       }
   141     end
   143     if member.admin then
   144       ui.field.boolean{ label = _"Admin?",       name = "admin" }
   145     end
   146     if member.locked then
   147       ui.field.boolean{ label = _"Locked?",      name = "locked" }
   148     end
   149     ui.field.text{ label = _"Last activity (updated daily)", value = format.date(member.last_activity) or _"not yet" }
   151   end
   152 }
