# HG changeset patch # User bsw # Date 1539876995 -7200 # Node ID 54efe6c8ae9db7832ff6c10499f1e93cf782f6d1 # Parent f3082de1422830e0d4d7bdc9f4ff3df910cbf14d New layout for admin newsletter views diff -r f3082de14228 -r 54efe6c8ae9d app/main/admin/newsletter_edit.lua --- a/app/main/admin/newsletter_edit.lua Thu Oct 18 17:35:17 2018 +0200 +++ b/app/main/admin/newsletter_edit.lua Thu Oct 18 17:36:35 2018 +0200 @@ -8,52 +8,63 @@ ui.titleAdmin(_"Newsletter") -ui.form{ - attr = { class = "vertical section" }, - module = "admin", - action = "newsletter_update", - id = newsletter and newsletter.id, - record = newsletter, - routing = { - default = { - mode = "redirect", - modules = "admin", - view = "newsletter_list" - } - }, - content = function() +ui.grid{ content = function() + + ui.cell_main{ content = function() + ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function() + ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function() + ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = _"Member list" } + end } + ui.container{ attr = { class = "mdl-card__content" }, content = function() + ui.form{ + attr = { class = "vertical section" }, + module = "admin", + action = "newsletter_update", + id = newsletter and newsletter.id, + record = newsletter, + routing = { + default = { + mode = "redirect", + modules = "admin", + view = "newsletter_list" + } + }, + content = function() - ui.sectionHead( function() - ui.heading { level = 1, content = newsletter and (newsletter.subject) or _"New newsletter" } - end ) - - ui.sectionRow( function() - local units = { - { id = 0, name = _"All members" }, - { id = "_", name = _"" }, - } - for i, unit in ipairs(Unit:get_flattened_tree()) do - units[#units+1] = unit - end - ui.field.text{ label = _"Date", name = "published" } - ui.field.select{ - label = "Recipient", - name = "unit_id", - foreign_records = units, - foreign_id = "id", - foreign_name = "name", - disabled_records = { ["_"] = true }, - value = newsletter.unit_id - } - ui.field.boolean{ label = _"Override disable notifications?", name = "include_all_members" } - slot.put("
") - ui.field.text{ label = _"Subject", name = "subject" } - ui.field.text{ label = _"Content", name = "content", multiline = true, attr = { rows = "20" } } + ui.sectionHead( function() + ui.heading { level = 1, content = newsletter and (newsletter.subject) or _"New newsletter" } + end ) + + ui.sectionRow( function() + local units = { + { id = 0, name = _"All members" }, + { id = "_", name = _"" }, + } + for i, unit in ipairs(Unit:get_flattened_tree()) do + units[#units+1] = unit + end + ui.field.text{ label = _"Date", name = "published" } + ui.field.select{ + label = "Recipient", + name = "unit_id", + foreign_records = units, + foreign_id = "id", + foreign_name = "name", + disabled_records = { ["_"] = true }, + value = newsletter.unit_id + } + ui.field.boolean{ label = _"Override disable notifications?", name = "include_all_members" } + slot.put("
") + ui.field.text{ label = _"Subject", name = "subject" } + ui.field.text{ label = _"Content", name = "content", multiline = true, attr = { rows = "20" } } - ui.submit{ text = _"create newsletter" } - slot.put(" ") - ui.link { module = "admin", view = "index", content = _"cancel" } - end ) - end -} - + ui.submit{ text = _"create newsletter" } + slot.put(" ") + ui.link { module = "admin", view = "index", content = _"cancel" } + end ) + end + } + end } + end } + end } +end } diff -r f3082de14228 -r 54efe6c8ae9d app/main/admin/newsletter_list.lua --- a/app/main/admin/newsletter_list.lua Thu Oct 18 17:35:17 2018 +0200 +++ b/app/main/admin/newsletter_list.lua Thu Oct 18 17:36:35 2018 +0200 @@ -4,29 +4,31 @@ ui.titleAdmin(_"Newsletter") -ui.section( function() +ui.grid{ content = function() - ui.sectionHead( function() - ui.heading { level = 1, content = _"Newsletter list" } - end ) - - ui.sectionRow( function () + ui.cell_main{ content = function() + ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function() + ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function() + ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = _"Newsletter list" } + end } + ui.container{ attr = { class = "mdl-card__content" }, content = function() - ui.list{ - records = newsletter, - columns = { - { label = _"Unit", content = function(r) ui.tag{ content = r.unit and r.unit.name or _"All members" } end }, - { name = "published", label = _"Published" }, - { name = "subject", label = _"Subject" }, - { label = _"sent", content = function(r) - if not r.sent then - ui.link{ text = _"Edit", module = "admin", view = "newsletter_edit", id = r.id } - else - ui.tag{ content = format.timestamp(r.sent) } - end - end } - } - } - - end) -end) + ui.list{ + records = newsletter, + columns = { + { label = _"Unit", content = function(r) ui.tag{ content = r.unit and r.unit.name or _"All members" } end }, + { name = "published", label = _"Published" }, + { name = "subject", label = _"Subject" }, + { label = _"sent", content = function(r) + if not r.sent then + ui.link{ text = _"Edit", module = "admin", view = "newsletter_edit", id = r.id } + else + ui.tag{ content = format.timestamp(r.sent) } + end + end } + } + } + end } + end } + end } +end }