bsw@1248: local id = param.get_id() bsw@1248: bsw@1248: local newsletter bsw@1248: bsw@1248: if id then bsw@1248: newsletter = Newsletter:by_id(id) bsw@1248: if newsletter.sent then bsw@1248: slot.select("error", function() bsw@1248: ui.tag{ content = _"Newsletter has already been sent out" } bsw@1248: end) bsw@1248: return false bsw@1248: end bsw@1248: else bsw@1248: newsletter = Newsletter:new() bsw@1248: end bsw@1248: bsw@1248: newsletter.published = param.get("published") bsw@1248: if newsletter.published == nil or newsletter.published == "" then bsw@1248: newsletter.published = "now" bsw@1248: end bsw@1248: newsletter.unit_id = param.get("unit_id", atom.integer) bsw@1248: if newsletter.unit_id == 0 then bsw@1248: newsletter.unit_id = nil bsw@1248: end bsw@1248: newsletter.include_all_members = param.get("include_all_members", atom.boolean) bsw@1248: newsletter.subject = param.get("subject") bsw@1248: newsletter.content = param.get("content") bsw@1248: bsw@1248: newsletter:save()