| rev | 
   line source | 
| 
bsw/jbe@0
 | 
     1 local member = Member:by_id(param.get_id())
 | 
| 
bsw/jbe@0
 | 
     2 
 | 
| 
bsw/jbe@0
 | 
     3 slot.select("title", function()
 | 
| 
bsw/jbe@4
 | 
     4   execute.view{
 | 
| 
bsw/jbe@4
 | 
     5     module = "member_image",
 | 
| 
bsw/jbe@4
 | 
     6     view = "_show",
 | 
| 
bsw/jbe@4
 | 
     7     params = {
 | 
| 
bsw/jbe@4
 | 
     8       member = member,
 | 
| 
bsw/jbe@4
 | 
     9       image_type = "avatar"
 | 
| 
bsw/jbe@4
 | 
    10     }
 | 
| 
bsw/jbe@0
 | 
    11   }
 | 
| 
bsw/jbe@0
 | 
    12 end)
 | 
| 
bsw/jbe@0
 | 
    13 
 | 
| 
bsw/jbe@0
 | 
    14 slot.put_into("title", encode.html(_"Member '#{member}'":gsub("#{member}", member.name)))
 | 
| 
bsw/jbe@0
 | 
    15 
 | 
| 
bsw@9
 | 
    16 if member.id ~= app.session.member.id then
 | 
| 
bsw@3
 | 
    17   --TODO performance
 | 
| 
bsw@3
 | 
    18   local contact = Contact:by_pk(app.session.member.id, member.id)
 | 
| 
bsw@3
 | 
    19   if contact then
 | 
| 
bsw@3
 | 
    20     slot.select("actions", function()
 | 
| 
bsw/jbe@4
 | 
    21       ui.container{
 | 
| 
bsw/jbe@4
 | 
    22         attr = { class = "interest" },
 | 
| 
bsw/jbe@4
 | 
    23         content = _"You have saved this member as contact."
 | 
| 
bsw/jbe@4
 | 
    24       }
 | 
| 
bsw@3
 | 
    25       ui.link{
 | 
| 
bsw/jbe@4
 | 
    26         content = function()
 | 
| 
bsw/jbe@4
 | 
    27           ui.image{ static = "icons/16/book_delete.png" }
 | 
| 
bsw/jbe@4
 | 
    28           slot.put(encode.html(_"Remove from contacts"))
 | 
| 
bsw/jbe@4
 | 
    29         end,
 | 
| 
bsw@3
 | 
    30         module = "contact",
 | 
| 
bsw@3
 | 
    31         action = "remove_member",
 | 
| 
bsw@3
 | 
    32         id = contact.other_member_id,
 | 
| 
bsw@3
 | 
    33         routing = {
 | 
| 
bsw@3
 | 
    34           default = {
 | 
| 
bsw@3
 | 
    35             mode = "redirect",
 | 
| 
bsw@3
 | 
    36             module = request.get_module(),
 | 
| 
bsw@3
 | 
    37             view = request.get_view(),
 | 
| 
bsw@3
 | 
    38             id = param.get_id_cgi(),
 | 
| 
bsw@3
 | 
    39             params = param.get_all_cgi()
 | 
| 
bsw@3
 | 
    40           }
 | 
| 
bsw@3
 | 
    41         }
 | 
| 
bsw@3
 | 
    42       }
 | 
| 
bsw@3
 | 
    43     end)
 | 
| 
bsw@3
 | 
    44   else
 | 
| 
bsw@3
 | 
    45     slot.select("actions", function()
 | 
| 
bsw@3
 | 
    46       ui.link{
 | 
| 
bsw@3
 | 
    47         content = function()
 | 
| 
bsw@3
 | 
    48           ui.image{ static = "icons/16/book_add.png" }
 | 
| 
bsw@3
 | 
    49           slot.put(encode.html(_"Add to my contacts"))
 | 
| 
bsw@3
 | 
    50         end,
 | 
| 
bsw@3
 | 
    51         module  = "contact",
 | 
| 
bsw@3
 | 
    52         action  = "add_member",
 | 
| 
bsw@3
 | 
    53         id      = member.id,
 | 
| 
bsw@3
 | 
    54         routing = {
 | 
| 
bsw@3
 | 
    55           default = {
 | 
| 
bsw@3
 | 
    56             mode = "redirect",
 | 
| 
bsw@3
 | 
    57             module = request.get_module(),
 | 
| 
bsw@3
 | 
    58             view = request.get_view(),
 | 
| 
bsw@3
 | 
    59             id = param.get_id_cgi(),
 | 
| 
bsw@3
 | 
    60             params = param.get_all_cgi()
 | 
| 
bsw@3
 | 
    61           }
 | 
| 
bsw@3
 | 
    62         }
 | 
| 
bsw@3
 | 
    63       }
 | 
| 
bsw@3
 | 
    64     end)
 | 
| 
bsw@3
 | 
    65   end
 | 
| 
bsw/jbe@0
 | 
    66 end
 | 
| 
bsw/jbe@0
 | 
    67 
 | 
| 
bsw@9
 | 
    68 slot.select("actions", function()
 | 
| 
bsw@9
 | 
    69   ui.link{
 | 
| 
bsw@9
 | 
    70     content = function()
 | 
| 
bsw@9
 | 
    71       ui.image{ static = "icons/16/clock_edit.png" }
 | 
| 
bsw@9
 | 
    72       slot.put(encode.html(_"Show name history"))
 | 
| 
bsw@9
 | 
    73     end,
 | 
| 
bsw@9
 | 
    74     module  = "member",
 | 
| 
bsw@9
 | 
    75     view    = "history",
 | 
| 
bsw@9
 | 
    76     id      = member.id
 | 
| 
bsw@9
 | 
    77   }
 | 
| 
bsw@9
 | 
    78 end)
 | 
| 
bsw@9
 | 
    79 
 | 
| 
bsw/jbe@4
 | 
    80 util.help("member.show", _"Member page")
 | 
| 
bsw/jbe@0
 | 
    81 
 | 
| 
bsw/jbe@0
 | 
    82 execute.view{
 | 
| 
bsw/jbe@0
 | 
    83   module = "member",
 | 
| 
bsw/jbe@0
 | 
    84   view = "_show",
 | 
| 
bsw/jbe@0
 | 
    85   params = { member = member }
 | 
| 
bsw/jbe@0
 | 
    86 }
 | 
| 
bsw/jbe@0
 | 
    87 
 |