bsw/jbe@0: local issues_selector = param.get("issues_selector", "table") bsw@459: local member = param.get("for_member", "table") or app.session.member bsw@459: local for_member = param.get("for_member", "table") bsw@414: local for_state = param.get("for_state") bsw@414: local for_unit = param.get("for_unit", atom.boolean) bsw@414: local for_area = param.get("for_area", atom.boolean) bsw@414: bsw@414: bsw@414: if for_state == "open" then bsw@414: issues_selector:add_where("issue.closed ISNULL") bsw@414: elseif for_state == "closed" then bsw@414: issues_selector:add_where("issue.closed NOTNULL") bsw@414: end bsw/jbe@0: bsw/jbe@19: ui.add_partial_param_names{ bsw/jbe@19: "filter", bsw/jbe@19: "filter_open", bsw/jbe@19: "filter_voting", bsw/jbe@19: "filter_interest", bsw/jbe@19: "issue_list" bsw/jbe@19: } bsw/jbe@0: bsw@414: local filters = execute.load_chunk{module="issue", chunk="_filters.lua", params = { bsw@459: member = member, for_member = for_member, state = for_state, for_unit = for_unit, for_area = for_area bsw@414: }} bsw/jbe@19: bsw/jbe@19: filters.content = function() bsw@275: ui.paginate{ bsw@422: per_page = tonumber(param.get("per_page") or 25), bsw/jbe@19: selector = issues_selector, bsw/jbe@19: content = function() bsw/jbe@19: local highlight_string = param.get("highlight_string", "string") bsw@547: local issues = issues_selector:exec() bsw@551: issues:load_everything_for_member_id(member and member.id or nil) bsw@547: bsw@273: ui.container{ attr = { class = "issues" }, content = function() bsw@273: bsw@273: for i, issue in ipairs(issues) do bsw@273: bsw@547: execute.view{ module = "issue", view = "_show", params = { bsw@862: issue = issue, for_listing = true, for_member = for_member bsw@547: } } bsw@525: bsw@273: end bsw@273: end } bsw/jbe@19: end bsw/jbe@19: } bsw/jbe@19: end bsw/jbe@19: bsw@275: filters.opened = true bsw/jbe@19: filters.selector = issues_selector bsw/jbe@19: bsw/jbe@19: if param.get("no_filter", atom.boolean) then bsw/jbe@19: filters.content() bsw/jbe@19: else bsw/jbe@19: ui.filters(filters) bsw/jbe@19: end