liquid_feedback_frontend

diff app/main/member/developer_settings.lua @ 514:976d493106a1

Updated member api key settings to core 2.0
author bsw
date Sun Apr 15 12:32:59 2012 +0200 (2012-04-15)
parents 733f65c0c0a0
children 29683c7c7926
line diff
     1.1 --- a/app/main/member/developer_settings.lua	Thu Apr 12 00:10:54 2012 +0200
     1.2 +++ b/app/main/member/developer_settings.lua	Sun Apr 15 12:32:59 2012 +0200
     1.3 @@ -40,48 +40,57 @@
     1.4      }
     1.5    end
     1.6  
     1.7 -  local setting_key = "liquidfeedback_frontend_api_key"
     1.8 -  local setting = Setting:by_pk(app.session.member.id, setting_key)
     1.9 -  local api_key
    1.10 -  if setting then
    1.11 -    api_key = setting.value
    1.12 -  end
    1.13 -
    1.14 -  ui.heading{ content = _"Generate / change API key" }
    1.15 +  ui.heading{ content = _"API keys" }
    1.16 +  
    1.17    util.help("member.developer_settings.api_key", _"API key")
    1.18  
    1.19 -  if api_key then
    1.20 -    slot.put(_"Your API key:")
    1.21 -    slot.put(" ")
    1.22 -    slot.put("<tt>", api_key, "</tt>")
    1.23 -    slot.put(" ")
    1.24 -    ui.link{
    1.25 -      text = _"Change API key",
    1.26 -      module = "member",
    1.27 -      action = "update_api_key",
    1.28 -      routing = {
    1.29 -        default = {
    1.30 -          mode = "redirect",
    1.31 -          module = "member",
    1.32 -          view = "developer_settings"
    1.33 -        }
    1.34 +  local member_applications = MemberApplication:new_selector()
    1.35 +    :add_where{ "member_id = ?", app.session.member.id }
    1.36 +    :add_order_by("name, id")
    1.37 +    :exec()
    1.38 +    
    1.39 +  if #member_applications > 0 then
    1.40 +
    1.41 +    ui.list{
    1.42 +      records = member_applications,
    1.43 +      columns = {
    1.44 +        {
    1.45 +          name = "name",
    1.46 +          label = _"Name"
    1.47 +        },
    1.48 +        {
    1.49 +          name = "access_level",
    1.50 +          label = _"Access level"
    1.51 +        },
    1.52 +        {
    1.53 +          name = "key",
    1.54 +          label = _"API Key"
    1.55 +        },
    1.56 +        {
    1.57 +          name = "last_usage",
    1.58 +          label = "Last usage"
    1.59 +        },
    1.60 +        {
    1.61 +          content = function(member_application)
    1.62 +            ui.link{
    1.63 +              text = _"Delete",
    1.64 +              module = "member", action = "update_api_key", id = member_application.id,
    1.65 +              params = { delete = true },
    1.66 +              routing = {
    1.67 +                default = {
    1.68 +                  mode = "redirect",
    1.69 +                  module = "member",
    1.70 +                  view = "developer_settings"
    1.71 +                }
    1.72 +              }
    1.73 +            }
    1.74 +          end
    1.75 +        },
    1.76        }
    1.77      }
    1.78 -    slot.put(" ")
    1.79 -    ui.link{
    1.80 -      text = _"Delete API key",
    1.81 -      module = "member",
    1.82 -      action = "update_api_key",
    1.83 -      params = { delete = true },
    1.84 -      routing = {
    1.85 -        default = {
    1.86 -          mode = "redirect",
    1.87 -          module = "member",
    1.88 -          view = "developer_settings",
    1.89 -        }
    1.90 -      }
    1.91 -    }
    1.92 +  
    1.93    else
    1.94 +    
    1.95      slot.put(_"Currently no API key is set.")
    1.96      slot.put(" ")
    1.97      ui.link{

Impressum / About Us