liquid_feedback_frontend
changeset 1465:54efe6c8ae9d
New layout for admin newsletter views
author | bsw |
---|---|
date | Thu Oct 18 17:36:35 2018 +0200 (2018-10-18) |
parents | f3082de14228 |
children | f921269f7788 |
files | app/main/admin/newsletter_edit.lua app/main/admin/newsletter_list.lua |
line diff
1.1 --- a/app/main/admin/newsletter_edit.lua Thu Oct 18 17:35:17 2018 +0200 1.2 +++ b/app/main/admin/newsletter_edit.lua Thu Oct 18 17:36:35 2018 +0200 1.3 @@ -8,52 +8,63 @@ 1.4 1.5 ui.titleAdmin(_"Newsletter") 1.6 1.7 -ui.form{ 1.8 - attr = { class = "vertical section" }, 1.9 - module = "admin", 1.10 - action = "newsletter_update", 1.11 - id = newsletter and newsletter.id, 1.12 - record = newsletter, 1.13 - routing = { 1.14 - default = { 1.15 - mode = "redirect", 1.16 - modules = "admin", 1.17 - view = "newsletter_list" 1.18 - } 1.19 - }, 1.20 - content = function() 1.21 +ui.grid{ content = function() 1.22 + 1.23 + ui.cell_main{ content = function() 1.24 + ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function() 1.25 + ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function() 1.26 + ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = _"Member list" } 1.27 + end } 1.28 + ui.container{ attr = { class = "mdl-card__content" }, content = function() 1.29 + ui.form{ 1.30 + attr = { class = "vertical section" }, 1.31 + module = "admin", 1.32 + action = "newsletter_update", 1.33 + id = newsletter and newsletter.id, 1.34 + record = newsletter, 1.35 + routing = { 1.36 + default = { 1.37 + mode = "redirect", 1.38 + modules = "admin", 1.39 + view = "newsletter_list" 1.40 + } 1.41 + }, 1.42 + content = function() 1.43 1.44 - ui.sectionHead( function() 1.45 - ui.heading { level = 1, content = newsletter and (newsletter.subject) or _"New newsletter" } 1.46 - end ) 1.47 - 1.48 - ui.sectionRow( function() 1.49 - local units = { 1.50 - { id = 0, name = _"All members" }, 1.51 - { id = "_", name = _"" }, 1.52 - } 1.53 - for i, unit in ipairs(Unit:get_flattened_tree()) do 1.54 - units[#units+1] = unit 1.55 - end 1.56 - ui.field.text{ label = _"Date", name = "published" } 1.57 - ui.field.select{ 1.58 - label = "Recipient", 1.59 - name = "unit_id", 1.60 - foreign_records = units, 1.61 - foreign_id = "id", 1.62 - foreign_name = "name", 1.63 - disabled_records = { ["_"] = true }, 1.64 - value = newsletter.unit_id 1.65 - } 1.66 - ui.field.boolean{ label = _"Override disable notifications?", name = "include_all_members" } 1.67 - slot.put("<br />") 1.68 - ui.field.text{ label = _"Subject", name = "subject" } 1.69 - ui.field.text{ label = _"Content", name = "content", multiline = true, attr = { rows = "20" } } 1.70 + ui.sectionHead( function() 1.71 + ui.heading { level = 1, content = newsletter and (newsletter.subject) or _"New newsletter" } 1.72 + end ) 1.73 + 1.74 + ui.sectionRow( function() 1.75 + local units = { 1.76 + { id = 0, name = _"All members" }, 1.77 + { id = "_", name = _"" }, 1.78 + } 1.79 + for i, unit in ipairs(Unit:get_flattened_tree()) do 1.80 + units[#units+1] = unit 1.81 + end 1.82 + ui.field.text{ label = _"Date", name = "published" } 1.83 + ui.field.select{ 1.84 + label = "Recipient", 1.85 + name = "unit_id", 1.86 + foreign_records = units, 1.87 + foreign_id = "id", 1.88 + foreign_name = "name", 1.89 + disabled_records = { ["_"] = true }, 1.90 + value = newsletter.unit_id 1.91 + } 1.92 + ui.field.boolean{ label = _"Override disable notifications?", name = "include_all_members" } 1.93 + slot.put("<br />") 1.94 + ui.field.text{ label = _"Subject", name = "subject" } 1.95 + ui.field.text{ label = _"Content", name = "content", multiline = true, attr = { rows = "20" } } 1.96 1.97 - ui.submit{ text = _"create newsletter" } 1.98 - slot.put(" ") 1.99 - ui.link { module = "admin", view = "index", content = _"cancel" } 1.100 - end ) 1.101 - end 1.102 -} 1.103 - 1.104 + ui.submit{ text = _"create newsletter" } 1.105 + slot.put(" ") 1.106 + ui.link { module = "admin", view = "index", content = _"cancel" } 1.107 + end ) 1.108 + end 1.109 + } 1.110 + end } 1.111 + end } 1.112 + end } 1.113 +end }
2.1 --- a/app/main/admin/newsletter_list.lua Thu Oct 18 17:35:17 2018 +0200 2.2 +++ b/app/main/admin/newsletter_list.lua Thu Oct 18 17:36:35 2018 +0200 2.3 @@ -4,29 +4,31 @@ 2.4 2.5 ui.titleAdmin(_"Newsletter") 2.6 2.7 -ui.section( function() 2.8 +ui.grid{ content = function() 2.9 2.10 - ui.sectionHead( function() 2.11 - ui.heading { level = 1, content = _"Newsletter list" } 2.12 - end ) 2.13 - 2.14 - ui.sectionRow( function () 2.15 + ui.cell_main{ content = function() 2.16 + ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function() 2.17 + ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function() 2.18 + ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = _"Newsletter list" } 2.19 + end } 2.20 + ui.container{ attr = { class = "mdl-card__content" }, content = function() 2.21 2.22 - ui.list{ 2.23 - records = newsletter, 2.24 - columns = { 2.25 - { label = _"Unit", content = function(r) ui.tag{ content = r.unit and r.unit.name or _"All members" } end }, 2.26 - { name = "published", label = _"Published" }, 2.27 - { name = "subject", label = _"Subject" }, 2.28 - { label = _"sent", content = function(r) 2.29 - if not r.sent then 2.30 - ui.link{ text = _"Edit", module = "admin", view = "newsletter_edit", id = r.id } 2.31 - else 2.32 - ui.tag{ content = format.timestamp(r.sent) } 2.33 - end 2.34 - end } 2.35 - } 2.36 - } 2.37 - 2.38 - end) 2.39 -end) 2.40 + ui.list{ 2.41 + records = newsletter, 2.42 + columns = { 2.43 + { label = _"Unit", content = function(r) ui.tag{ content = r.unit and r.unit.name or _"All members" } end }, 2.44 + { name = "published", label = _"Published" }, 2.45 + { name = "subject", label = _"Subject" }, 2.46 + { label = _"sent", content = function(r) 2.47 + if not r.sent then 2.48 + ui.link{ text = _"Edit", module = "admin", view = "newsletter_edit", id = r.id } 2.49 + else 2.50 + ui.tag{ content = format.timestamp(r.sent) } 2.51 + end 2.52 + end } 2.53 + } 2.54 + } 2.55 + end } 2.56 + end } 2.57 + end } 2.58 +end }