liquid_feedback_frontend
view app/main/member/developer_settings.lua @ 1062:f03fbffc1800
New layout for suggestion details view
| author | bsw | 
|---|---|
| date | Wed Jul 16 21:52:17 2014 +0200 (2014-07-16) | 
| parents | 701a5cf6b067 | 
| children | 04809990c2e7 | 
 line source
     1 ui.title(_"Developer settings")
     3 execute.view {
     4   module = "member", view = "_sidebar_whatcanido", params = {
     5     member = app.session.member
     6   }
     7 }
     9 local setting_key = "liquidfeedback_frontend_developer_features"
    10 local setting = Setting:by_pk(app.session.member.id, setting_key)
    12 if true or setting then
    13   ui.section( function()
    14     ui.sectionHead( function ()
    15       ui.heading{ content = "CSS development settings" }
    16     end )
    18     ui.sectionRow( function()
    19       ui.form{
    20         attr = { class = "vertical" },
    21         module = "member",
    22         action = "update_stylesheet_url",
    23         routing = {
    24           ok = {
    25             mode = "redirect",
    26             module = "member",
    27             view = "show",
    28             id = app.session.member_id
    29           }
    30         },
    31         content = function()
    32           local setting_key = "liquidfeedback_frontend_stylesheet_url"
    33           local setting = Setting:by_pk(app.session.member.id, setting_key)
    34           local value = setting and setting.value
    35           ui.field.text{ 
    36             label = "stylesheet URL",
    37             name = "stylesheet_url",
    38             value = value
    39           }
    40           ui.submit{ value = _"Set URL" }
    41         end
    42       }
    43     end )
    44   end )
    45 end
    47 ui.section( function()
    48   ui.sectionHead( function ()
    49     ui.heading{ content = "API keys" }
    50   end )
    52   ui.sectionRow( function()
    53     local member_applications = MemberApplication:new_selector()
    54       :add_where{ "member_id = ?", app.session.member.id }
    55       :add_order_by("name, id")
    56       :exec()
    58     if #member_applications > 0 then
    60       ui.list{
    61         records = member_applications,
    62         columns = {
    63           {
    64             name = "name",
    65             label = "Name"
    66           },
    67           {
    68             name = "access_level",
    69             label = "Access level"
    70           },
    71           {
    72             name = "key",
    73             label = "API Key"
    74           },
    75           {
    76             name = "last_usage",
    77             label = "Last usage"
    78           },
    79           {
    80             content = function(member_application)
    81               ui.link{
    82                 text = "delete",
    83                 module = "member", action = "update_api_key", id = member_application.id,
    84                 params = { delete = true },
    85                 routing = {
    86                   default = {
    87                     mode = "redirect",
    88                     module = "member",
    89                     view = "developer_settings"
    90                   }
    91                 }
    92               }
    93             end
    94           },
    95         }
    96       }
    98     else
   100       slot.put(_"Currently no API key is set.")
   101       slot.put(" ")
   102       ui.link{
   103         text = _"Generate API key",
   104         module = "member",
   105         action = "update_api_key",
   106         routing = {
   107           default = {
   108             mode = "redirect",
   109             module = "member",
   110             view = "developer_settings"
   111           }
   112         }
   113       }
   114     end
   115   end )
   116 end )
