liquid_feedback_frontend

annotate app/main/initiative/new.lua @ 0:3bfb2fcf7ab9

Version alpha1
author bsw/jbe
date Wed Nov 18 12:00:00 2009 +0100 (2009-11-18)
parents
children 5c601807d397
rev   line source
bsw/jbe@0 1 local issue
bsw/jbe@0 2 local area
bsw/jbe@0 3
bsw/jbe@0 4 local issue_id = param.get("issue_id", atom.integer)
bsw/jbe@0 5 if issue_id then
bsw/jbe@0 6 issue = Issue:new_selector():add_where{"id=?",issue_id}:single_object_mode():exec()
bsw/jbe@0 7 area = issue.area
bsw/jbe@0 8
bsw/jbe@0 9 else
bsw/jbe@0 10 local area_id = param.get("area_id", atom.integer)
bsw/jbe@0 11 area = Area:new_selector():add_where{"id=?",area_id}:single_object_mode():exec()
bsw/jbe@0 12 end
bsw/jbe@0 13
bsw/jbe@0 14 if issue_id then
bsw/jbe@0 15 slot.put_into("title", _"Add new initiative to issue")
bsw/jbe@0 16 else
bsw/jbe@0 17 slot.put_into("title", _"Create new issue")
bsw/jbe@0 18 end
bsw/jbe@0 19
bsw/jbe@0 20 ui.form{
bsw/jbe@0 21 module = "initiative",
bsw/jbe@0 22 action = "create",
bsw/jbe@0 23 params = {
bsw/jbe@0 24 area_id = area.id,
bsw/jbe@0 25 issue_id = issue and issue.id or nil
bsw/jbe@0 26 },
bsw/jbe@0 27 attr = { class = "vertical" },
bsw/jbe@0 28 content = function()
bsw/jbe@0 29 ui.field.text{ label = _"Area", value = area.name }
bsw/jbe@0 30 if issue_id then
bsw/jbe@0 31 ui.field.text{ label = _"Issue", value = issue_id }
bsw/jbe@0 32 else
bsw/jbe@0 33 ui.field.select{
bsw/jbe@0 34 label = _"Policy",
bsw/jbe@0 35 name = "policy_id",
bsw/jbe@0 36 foreign_records = Policy:new_selector():exec(),
bsw/jbe@0 37 foreign_id = "id",
bsw/jbe@0 38 foreign_name = "name"
bsw/jbe@0 39 }
bsw/jbe@0 40 end
bsw/jbe@0 41 ui.field.text{ label = _"Name", name = "name" }
bsw/jbe@0 42 ui.field.text{ label = _"Draft", name = "draft", multiline = true }
bsw/jbe@0 43 ui.submit{ text = _"Save" }
bsw/jbe@0 44 end
bsw/jbe@0 45 }

Impressum / About Us