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@173: local membership = Membership:by_pk(issue.area_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@173:             if interest.autoreject == true or
bsw@176:               (interest.autoreject == nil and membership and membership.autoreject == true)
bsw@173:             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@173:             if interest.autoreject == false then
bsw@173:               ui.image{
bsw@173:                 static = "icons/16/thumb_down_red_crossed.png"
bsw@173:               }
bsw@173:             end
bsw@173: 
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@173:             if interest.autoreject == nil then
bsw@173:               if membership then
bsw@173:                 if membership.autoreject then
bsw@173:                   ui.field.text{ value = _"Autoreject is inherited from area. (Currently turned on)" }
bsw@173:                 else
bsw@173:                   ui.field.text{ value = _"Autoreject is inherited from area. (Currently turned off)" }
bsw@173:                 end
bsw@173:               else
bsw@173:                 ui.field.text{ value = _"Autoreject is inherited from area. (No member of this area)" }
bsw@173:               end
bsw@173:               slot.put("
")
bsw/jbe@5:               if issue.state ~= "finished" and issue.state ~= "cancelled" then
bsw/jbe@5:                 ui.link{
bsw@173:                   text    = _"Turn on autoreject for issue",
bsw@173:                   module  = "interest",
bsw@173:                   action  = "update",
bsw@173:                   params  = { issue_id = issue.id, autoreject = true },
bsw@173:                   routing = { default = { mode = "redirect", module = "issue", view = "show", id = issue.id } }
bsw@173:                 }
bsw@173:                 ui.link{
bsw@173:                   text    = _"Turn off autoreject for issue",
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@173:             elseif interest.autoreject == true then
bsw@173:               ui.field.text{ value = _"Autoreject for this issue is turned on." }
bsw@173:               slot.put("
")
bsw/jbe@5:               if issue.state ~= "finished" and issue.state ~= "cancelled" then
bsw/jbe@5:                 ui.link{
bsw@173:                   text    = _"Inherit autoreject from area",
bsw@173:                   module  = "interest",
bsw@173:                   action  = "update",
bsw@173:                   params  = { issue_id = issue.id, autoreject = nil },
bsw@173:                   routing = { default = { mode = "redirect", module = "issue", view = "show", id = issue.id } }
bsw@173:                 }
bsw@173:                 ui.link{
bsw@173:                   text    = _"Turn off autoreject for issue",
bsw@173:                   module  = "interest",
bsw@173:                   action  = "update",
bsw@173:                   params  = { issue_id = issue.id, autoreject = false },
bsw@173:                   routing = { default = { mode = "redirect", module = "issue", view = "show", id = issue.id } }
bsw@173:                 }
bsw@173:               end
bsw@173:             elseif interest.autoreject == false then
bsw@173:               ui.field.text{ value = _"Autoreject for this issue is turned off." }
bsw@173:               slot.put("
")
bsw@173:               if issue.state ~= "finished" and issue.state ~= "cancelled" then
bsw@173:                 ui.link{
bsw@173:                   text    = _"Inherit autoreject from area",
bsw@173:                   module  = "interest",
bsw@173:                   action  = "update",
bsw@173:                   params  = { issue_id = issue.id, autoreject = nil },
bsw@173:                   routing = { default = { mode = "redirect", module = "issue", view = "show", id = issue.id } }
bsw@173:                 }
bsw@173:                 ui.link{
bsw@173:                   text    = _"Turn on autoreject for issue",
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