bsw/jbe@0:
bsw/jbe@0: local issue = param.get("issue", "table")
bsw/jbe@0:
bsw/jbe@4: local interest = Interest:by_pk(issue.id, app.session.member.id)
bsw/jbe@0:
bsw/jbe@4: if interest then
bsw/jbe@4: slot.select("actions", function()
bsw/jbe@0:
bsw/jbe@0: ui.container{
bsw/jbe@4: attr = { class = "interest vote_info"},
bsw/jbe@0: content = function()
bsw/jbe@4: ui.container{
bsw/jbe@4: attr = {
bsw/jbe@19: class = "head head_active" .. (interest.autoreject and " head_autoreject" or ""),
bsw/jbe@4: onclick = "document.getElementById('interest_content').style.display = 'block';"
bsw/jbe@4: },
bsw/jbe@4: content = function()
bsw/jbe@5: ui.image{
bsw/jbe@5: static = "icons/16/eye.png"
bsw/jbe@5: }
bsw/jbe@4: slot.put(_"Your are interested")
bsw/jbe@19:
bsw/jbe@19: if interest.autoreject then
bsw/jbe@19: ui.image{
bsw/jbe@19: static = "icons/16/thumb_down_red.png"
bsw/jbe@19: }
bsw/jbe@19: end
bsw/jbe@19:
bsw/jbe@4: ui.image{
bsw/jbe@4: static = "icons/16/dropdown.png"
bsw/jbe@4: }
bsw/jbe@4: end
bsw/jbe@0: }
bsw/jbe@4:
bsw/jbe@4: ui.container{
bsw/jbe@4: attr = { class = "content", id = "interest_content" },
bsw/jbe@4: content = function()
bsw/jbe@4: ui.container{
bsw/jbe@4: attr = {
bsw/jbe@4: class = "close",
bsw/jbe@4: style = "cursor: pointer;",
bsw/jbe@4: onclick = "document.getElementById('interest_content').style.display = 'none';"
bsw/jbe@4: },
bsw/jbe@4: content = function()
bsw/jbe@4: ui.image{ static = "icons/16/cross.png" }
bsw/jbe@4: end
bsw/jbe@4: }
bsw/jbe@5: if issue.state ~= "finished" and issue.state ~= "cancelled" and issue.state ~= "voting" then
bsw/jbe@5: ui.link{
bsw/jbe@19: text = _"Remove my interest",
bsw/jbe@19: module = "interest",
bsw/jbe@19: action = "update",
bsw/jbe@19: params = { issue_id = issue.id, delete = true },
bsw/jbe@5: routing = { default = { mode = "redirect", module = "issue", view = "show", id = issue.id } }
bsw/jbe@5: }
bsw/jbe@5: slot.put("
")
bsw/jbe@5: slot.put("
")
bsw/jbe@5: end
bsw/jbe@4: if interest.autoreject then
bsw/jbe@4: ui.field.text{ value = _"Autoreject is on." }
bsw/jbe@5: if issue.state ~= "finished" and issue.state ~= "cancelled" then
bsw/jbe@5: ui.link{
bsw/jbe@19: text = _"Remove autoreject",
bsw/jbe@19: module = "interest",
bsw/jbe@19: action = "update",
bsw/jbe@19: params = { issue_id = issue.id, autoreject = false },
bsw/jbe@5: routing = { default = { mode = "redirect", module = "issue", view = "show", id = issue.id } }
bsw/jbe@5: }
bsw/jbe@5: end
bsw/jbe@4: else
bsw/jbe@4: ui.field.text{ value = _"Autoreject is off." }
bsw/jbe@5: if issue.state ~= "finished" and issue.state ~= "cancelled" then
bsw/jbe@5: ui.link{
bsw/jbe@19: text = _"Set autoreject",
bsw/jbe@19: module = "interest",
bsw/jbe@19: action = "update",
bsw/jbe@19: params = { issue_id = issue.id, autoreject = true },
bsw/jbe@5: routing = { default = { mode = "redirect", module = "issue", view = "show", id = issue.id } }
bsw/jbe@5: }
bsw/jbe@5: end
bsw/jbe@4: end
bsw/jbe@4: end
bsw/jbe@0: }
bsw/jbe@0: end
bsw/jbe@4: }
bsw/jbe@4: end)
bsw@16: else
bsw@16: if not issue.closed and not issue.fully_frozen then
bsw@16: ui.link{
bsw/jbe@19: image = { static = "icons/16/user_add.png" },
bsw/jbe@19: text = _"Add my interest",
bsw/jbe@19: module = "interest",
bsw/jbe@19: action = "update",
bsw/jbe@19: params = { issue_id = issue.id },
bsw@16: routing = { default = { mode = "redirect", module = "issue", view = "show", id = issue.id } }
bsw@16: }
bsw@16: end
bsw/jbe@4: end