liquid_feedback_frontend

diff app/main/admin/area_show.lua @ 1468:9a01089a6703

New layout for admin unit and area view
author bsw
date Thu Oct 18 17:40:09 2018 +0200 (2018-10-18)
parents 32cc544d5a5b
children 914611dc446b
line diff
     1.1 --- a/app/main/admin/area_show.lua	Thu Oct 18 17:38:36 2018 +0200
     1.2 +++ b/app/main/admin/area_show.lua	Thu Oct 18 17:40:09 2018 +0200
     1.3 @@ -10,70 +10,82 @@
     1.4  
     1.5  ui.titleAdmin(_"area")
     1.6  
     1.7 -ui.form{
     1.8 -  attr = { class = "vertical section" },
     1.9 -  record = area,
    1.10 -  module = "admin",
    1.11 -  action = "area_update",
    1.12 -  routing = {
    1.13 -    ok = {
    1.14 -      mode = "redirect",
    1.15 -      module = "admin",
    1.16 -      view = "index",
    1.17 -      params = { unit_id = area.unit_id }
    1.18 -    },
    1.19 -  },
    1.20 -  id = id,
    1.21 -  content = function()
    1.22 -    local policies = Policy:build_selector{ active = true }:exec()
    1.23 -    local def_policy = {
    1.24 -      {
    1.25 -        id = "-1",
    1.26 -        name = _"No default"
    1.27 -      }
    1.28 -    }
    1.29 -    for i, record in ipairs(policies) do
    1.30 -      def_policy[#def_policy+1] = record
    1.31 -    end
    1.32 +ui.grid{ content = function()
    1.33 +
    1.34 +  ui.cell_main{ content = function()
    1.35 +    ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function()
    1.36 +      ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function()
    1.37 +        ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = _"Member list" }
    1.38 +      end }
    1.39 +      ui.container{ attr = { class = "mdl-card__content" }, content = function()
    1.40 +        ui.form{
    1.41 +          attr = { class = "vertical section" },
    1.42 +          record = area,
    1.43 +          module = "admin",
    1.44 +          action = "area_update",
    1.45 +          routing = {
    1.46 +            ok = {
    1.47 +              mode = "redirect",
    1.48 +              module = "admin",
    1.49 +              view = "index",
    1.50 +              params = { unit_id = area.unit_id }
    1.51 +            },
    1.52 +          },
    1.53 +          id = id,
    1.54 +          content = function()
    1.55 +            local policies = Policy:build_selector{ active = true }:exec()
    1.56 +            local def_policy = {
    1.57 +              {
    1.58 +                id = "-1",
    1.59 +                name = _"No default"
    1.60 +              }
    1.61 +            }
    1.62 +            for i, record in ipairs(policies) do
    1.63 +              def_policy[#def_policy+1] = record
    1.64 +            end
    1.65  
    1.66 -    
    1.67 -    ui.section( function()
    1.68 -      ui.sectionHead( function()
    1.69 -        ui.heading { level = 1, content = area.name or _"New area" }
    1.70 -      end )
    1.71 -    
    1.72 -      ui.sectionRow( function()
    1.73 -        
    1.74 -        ui.field.hidden{ name = "unit_id", value = area.unit_id }
    1.75 -        ui.field.text{    label = _"Unit", value = area.unit.name, readonly = true }
    1.76 -        ui.field.text{    label = _"Name",        name = "name" }
    1.77 -        ui.field.text{    label = _"Description", name = "description", multiline = true }
    1.78 -        ui.field.text{    label = _"External reference", name = "external_reference" }
    1.79 -        ui.field.select{  label = _"Default Policy",   name = "default_policy",
    1.80 -                    value=area.default_policy and area.default_policy.id or "-1",
    1.81 -                    foreign_records = def_policy,
    1.82 -                    foreign_id      = "id",
    1.83 -                    foreign_name    = "name"
    1.84 +            
    1.85 +            ui.section( function()
    1.86 +              ui.sectionHead( function()
    1.87 +                ui.heading { level = 1, content = area.name or _"New area" }
    1.88 +              end )
    1.89 +            
    1.90 +              ui.sectionRow( function()
    1.91 +                
    1.92 +                ui.field.hidden{ name = "unit_id", value = area.unit_id }
    1.93 +                ui.field.text{    label = _"Unit", value = area.unit.name, readonly = true }
    1.94 +                ui.field.text{    label = _"Name",        name = "name" }
    1.95 +                ui.field.text{    label = _"Description", name = "description", multiline = true }
    1.96 +                ui.field.text{    label = _"External reference", name = "external_reference" }
    1.97 +                ui.field.select{  label = _"Default Policy",   name = "default_policy",
    1.98 +                            value=area.default_policy and area.default_policy.id or "-1",
    1.99 +                            foreign_records = def_policy,
   1.100 +                            foreign_id      = "id",
   1.101 +                            foreign_name    = "name"
   1.102 +                }
   1.103 +                ui.heading { level = 3, content = _"Allowed policies" }
   1.104 +                ui.multiselect{   name = "allowed_policies[]",
   1.105 +                                  foreign_records = policies,
   1.106 +                                  foreign_id      = "id",
   1.107 +                                  foreign_name    = "name",
   1.108 +                                  connecting_records = area.allowed_policies or {},
   1.109 +                                  foreign_reference  = "id",
   1.110 +                }
   1.111 +                ui.field.text{    label = _"Admission quorum standard", name = "quorum_standard", value = hint and 10 or nil }
   1.112 +                ui.field.text{    label = _"Admission quorum issues", name = "quorum_issues", value = hint and 10 or nil }
   1.113 +                ui.field.text{    label = _"Admission quorum time", name = "quorum_time", value = hint and "60 days" or nil }
   1.114 +                ui.field.text{    label = _"Admission quorum exponent", name = "quorum_exponent", value = hint and 0.5 or nil }
   1.115 +                ui.field.text{    label = _"Admission qourum factor", name = "quorum_factor", value = hint and 2 or nil }
   1.116 +                slot.put("<br /><br />")
   1.117 +                ui.field.boolean{ label = _"Active?",     name = "active", value = hint and true or nil }
   1.118 +                ui.submit{ text = _"update area" }
   1.119 +                slot.put(" ")
   1.120 +                ui.link{ module = "admin", view = "index", content = _"cancel" }
   1.121 +              end )
   1.122 +            end )
   1.123 +          end
   1.124          }
   1.125 -        ui.heading { level = 3, content = _"Allowed policies" }
   1.126 -        ui.multiselect{   name = "allowed_policies[]",
   1.127 -                          foreign_records = policies,
   1.128 -                          foreign_id      = "id",
   1.129 -                          foreign_name    = "name",
   1.130 -                          connecting_records = area.allowed_policies or {},
   1.131 -                          foreign_reference  = "id",
   1.132 -        }
   1.133 -        ui.field.text{    label = _"Admission quorum standard", name = "quorum_standard", value = hint and 10 or nil }
   1.134 -        ui.field.text{    label = _"Admission quorum issues", name = "quorum_issues", value = hint and 10 or nil }
   1.135 -        ui.field.text{    label = _"Admission quorum time", name = "quorum_time", value = hint and "60 days" or nil }
   1.136 -        ui.field.text{    label = _"Admission quorum exponent", name = "quorum_exponent", value = hint and 0.5 or nil }
   1.137 -        ui.field.text{    label = _"Admission qourum factor", name = "quorum_factor", value = hint and 2 or nil }
   1.138 -        slot.put("<br /><br />")
   1.139 -        ui.field.boolean{ label = _"Active?",     name = "active", value = hint and true or nil }
   1.140 -        ui.submit{ text = _"update area" }
   1.141 -        slot.put(" ")
   1.142 -        ui.link{ module = "admin", view = "index", content = _"cancel" }
   1.143 -      end )
   1.144 -    end )
   1.145 -  end
   1.146 -}
   1.147 +      end }
   1.148 +    end }
   1.149 +  end }
   1.150 +end }

Impressum / About Us