bsw/jbe@0: local issue = Issue:by_id(param.get_id())
bsw/jbe@0:
bsw/jbe@0: execute.view{
bsw/jbe@4: module = "issue",
bsw/jbe@4: view = "_show_head",
bsw/jbe@0: params = { issue = issue }
bsw/jbe@0: }
bsw/jbe@0:
bsw/jbe@19: --[[
bsw/jbe@19: if not issue.fully_frozen and not issue.closed then
bsw/jbe@19: slot.select("actions", function()
bsw/jbe@19: ui.link{
bsw/jbe@19: content = function()
bsw/jbe@19: ui.image{ static = "icons/16/script_add.png" }
bsw/jbe@19: slot.put(_"Create alternative initiative")
bsw/jbe@19: end,
bsw/jbe@19: module = "initiative",
bsw/jbe@19: view = "new",
bsw/jbe@19: params = { issue_id = issue.id }
bsw/jbe@19: }
bsw/jbe@19: end)
bsw/jbe@19: end
bsw/jbe@19: --]]
bsw/jbe@19:
bsw/jbe@4: util.help("issue.show")
bsw@2:
bsw/jbe@19: if issue.state == "cancelled" then
bsw/jbe@19: local policy = issue.policy
bsw/jbe@19: ui.container{
bsw/jbe@19: attr = { class = "not_admitted_info" },
bsw/jbe@19: content = _("This issue has been cancelled. It failed the quorum of #{quorum}.", { quorum = format.percentage(policy.issue_quorum_num / policy.issue_quorum_den) })
bsw/jbe@19: }
bsw@16: end
bsw@16:
bsw/jbe@19: ui.container{
bsw/jbe@19: attr = { class = "issue_initiative_list" },
bsw/jbe@19: content = function()
bsw/jbe@19: execute.view{
bsw/jbe@19: module = "initiative",
bsw/jbe@19: view = "_list",
bsw/jbe@19: params = {
bsw/jbe@19: initiatives_selector = issue:get_reference_selector("initiatives"),
bsw/jbe@19: issue = issue,
bsw/jbe@19: expandable = true,
bsw/jbe@19: for_initiative_id = param.get("for_initiative_id", atom.number),
bsw/jbe@19: show_for_issue = true
bsw@3: }
bsw/jbe@19: }
bsw/jbe@19: end
bsw/jbe@0: }
bsw/jbe@0:
bsw/jbe@19: slot.put("
")
bsw/jbe@0:
bsw/jbe@19: execute.view{
bsw/jbe@19: module = "issue",
bsw/jbe@19: view = "show_tab",
bsw/jbe@19: params = { issue = issue }
bsw/jbe@19: }
bsw/jbe@19:
bsw/jbe@19: if issue.snapshot then
bsw/jbe@19: slot.put("
")
bsw/jbe@19: ui.field.timestamp{ label = _"Last snapshot:", value = issue.snapshot }
bsw/jbe@19: end
bsw/jbe@19: