| rev | line source | 
| bsw@1248 | 1 local id = param.get_id() | 
| bsw@1248 | 2 | 
| bsw@1248 | 3 local newsletter = {} | 
| bsw@1248 | 4 | 
| bsw@1248 | 5 if id then | 
| bsw@1248 | 6   newsletter = Newsletter:by_id(id) | 
| bsw@1248 | 7 end | 
| bsw@1248 | 8 | 
| bsw@1248 | 9 ui.titleAdmin(_"Newsletter") | 
| bsw@1248 | 10 | 
| bsw@1465 | 11 ui.grid{ content = function() | 
| bsw@1465 | 12 | 
| bsw@1465 | 13   ui.cell_main{ content = function() | 
| bsw@1465 | 14     ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function() | 
| bsw@1465 | 15       ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function() | 
| bsw@1466 | 16         ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = newsletter and (newsletter.subject) or _"New newsletter" } | 
| bsw@1465 | 17       end } | 
| bsw@1465 | 18       ui.container{ attr = { class = "mdl-card__content" }, content = function() | 
| bsw@1465 | 19         ui.form{ | 
| bsw@1465 | 20           attr = { class = "vertical section" }, | 
| bsw@1465 | 21           module = "admin", | 
| bsw@1465 | 22           action = "newsletter_update", | 
| bsw@1465 | 23           id = newsletter and newsletter.id, | 
| bsw@1465 | 24           record = newsletter, | 
| bsw@1465 | 25           routing = { | 
| bsw@1465 | 26             default = { | 
| bsw@1465 | 27               mode = "redirect", | 
| bsw@1465 | 28               modules = "admin", | 
| bsw@1465 | 29               view = "newsletter_list" | 
| bsw@1465 | 30             } | 
| bsw@1465 | 31           }, | 
| bsw@1465 | 32           content = function() | 
| bsw@1248 | 33 | 
| bsw@1466 | 34             local units = { | 
| bsw@1466 | 35               { id = 0, name = _"All members" }, | 
| bsw@1466 | 36               { id = "_", name = _"" }, | 
| bsw@1466 | 37             } | 
| bsw@1505 | 38             for i, unit in ipairs(Unit:get_flattened_tree{include_hidden = true}) do | 
| bsw@1466 | 39               units[#units+1] = unit | 
| bsw@1466 | 40             end | 
| bsw@1466 | 41             ui.field.text{ label = _"Date", name = "published" } | 
| bsw@1466 | 42             ui.field.select{ | 
| bsw@1466 | 43               label = "Recipient", | 
| bsw@1466 | 44               name = "unit_id", | 
| bsw@1466 | 45               foreign_records = units, | 
| bsw@1466 | 46               foreign_id = "id", | 
| bsw@1466 | 47               foreign_name = "name", | 
| bsw@1466 | 48               disabled_records = { ["_"] = true }, | 
| bsw@1466 | 49               value = newsletter.unit_id | 
| bsw@1466 | 50             } | 
| bsw@1466 | 51             ui.field.boolean{  label = _"Override disable notifications?", name = "include_all_members" } | 
| bsw@1466 | 52             slot.put("<br />") | 
| bsw@1466 | 53             ui.field.text{     label = _"Subject", name = "subject" } | 
| bsw@1466 | 54             ui.field.text{     label = _"Content", name = "content", multiline = true, attr = { rows = "20" } } | 
| bsw@1248 | 55 | 
| bsw@1467 | 56             ui.submit{ | 
| bsw@1467 | 57               attr = { class = "mdl-button mdl-js-button mdl-button--raised mdl-button--colored mdl-js-ripple-effect" }, | 
| bsw@1467 | 58               text  = _"create newsletter" | 
| bsw@1467 | 59             } | 
| bsw@1466 | 60             slot.put(" ") | 
| bsw@1467 | 61             ui.link { | 
| bsw@1467 | 62               attr = { class = "mdl-button mdl-js-button" }, | 
| bsw@1467 | 63               module = "admin", view = "index", content = _"cancel" | 
| bsw@1467 | 64             } | 
| bsw@1466 | 65 | 
| bsw@1465 | 66           end | 
| bsw@1465 | 67         } | 
| bsw@1465 | 68       end } | 
| bsw@1465 | 69     end } | 
| bsw@1465 | 70   end } | 
| bsw@1465 | 71 end } |