liquid_feedback_frontend
view app/main/area/show.lua @ 1222:a38df55525d6
Removed support for old WebMCP 1.x and clean up of example configuration
| author | bsw | 
|---|---|
| date | Tue Dec 01 13:59:16 2015 +0100 (2015-12-01) | 
| parents | 904f6807f7fa | 
| children | 8288027edb54 | 
 line source
     1 local area = Area:by_id(param.get_id())
     3 if not area then
     4   execute.view { module = "index", view = "404" }
     5   request.set_status("404 Not Found")
     6   return
     7 end
     9 area:load_delegation_info_once_for_member_id(app.session.member_id)
    11 app.html_title.title = area.name
    12 app.html_title.subtitle = _("Area")
    14 execute.view {
    15   module = "area", view = "_head", params = {
    16     area = area, member = app.session.member
    17   }
    18 }
    20 execute.view {
    21   module = "area", view = "_sidebar_whatcanido", params = {
    22     area = area
    23   }
    24 }
    26 execute.view {
    27   module = "area", view = "_sidebar_members", params = {
    28     area = area
    29   }
    30 }
    32 local function getOpenIssuesSelector()
    33   return area:get_reference_selector("issues")
    34     :add_order_by("coalesce(issue.fully_frozen + issue.voting_time, issue.half_frozen + issue.verification_time, issue.accepted + issue.discussion_time, issue.created + issue.admission_time) - now()")
    35 end
    37 local admission_selector = getOpenIssuesSelector()
    38   :add_where("issue.state = 'admission'");
    40 local discussion_selector = getOpenIssuesSelector()
    41   :add_where("issue.state = 'discussion'");
    43 local verification_selector = getOpenIssuesSelector()
    44   :add_where("issue.state = 'verification'");
    46 local voting_selector = getOpenIssuesSelector()
    47   :add_where("issue.state = 'voting'");
    50 local closed_selector = area:get_reference_selector("issues")
    51   :add_where("issue.closed NOTNULL")
    52   :add_order_by("issue.closed DESC")
    54 local members_selector = area:get_reference_selector("members"):add_where("member.active")
    55 local delegations_selector = area:get_reference_selector("delegations")
    56   :join("member", "truster", "truster.id = delegation.truster_id AND truster.active")
    57   :join("member", "trustee", "trustee.id = delegation.trustee_id AND trustee.active")
    60 execute.view {
    61   module = "issue",
    62   view = "_list2",
    63   params = { for_area = area }
    64 }
