liquid_feedback_frontend

annotate app/main/area/show.lua @ 51:0849be391140

Public read access; Read-only API for initiatives; Prepared integration of OpenID
author bsw
date Sun Apr 04 22:05:11 2010 +0200 (2010-04-04)
parents 00d1004545f1
children 88ac7798b562
rev   line source
bsw/jbe@0 1 local area = Area:new_selector():add_where{ "id = ?", param.get_id() }:single_object_mode():exec()
bsw/jbe@0 2
bsw/jbe@0 3 slot.put_into("title", encode.html(_"Area '#{name}'":gsub("#{name}", area.name)))
bsw/jbe@0 4
bsw/jbe@0 5 ui.container{
bsw/jbe@0 6 attr = { class = "vertical"},
bsw/jbe@0 7 content = function()
bsw/jbe@0 8 ui.field.text{ value = area.description }
bsw/jbe@0 9 end
bsw/jbe@0 10 }
bsw/jbe@0 11
bsw@51 12 if app.session.member_id then
bsw@51 13 slot.select("actions", function()
bsw@51 14 ui.link{
bsw@51 15 content = function()
bsw@51 16 ui.image{ static = "icons/16/folder_add.png" }
bsw@51 17 slot.put(_"Create new issue")
bsw@51 18 end,
bsw@51 19 module = "initiative",
bsw@51 20 view = "new",
bsw@51 21 params = { area_id = area.id }
bsw@51 22 }
bsw@51 23 end)
bsw@51 24 end
bsw/jbe@0 25
bsw/jbe@4 26 util.help("area.show")
bsw/jbe@4 27
bsw@51 28 if app.session.member_id then
bsw@51 29 execute.view{
bsw@51 30 module = "membership",
bsw@51 31 view = "_show_box",
bsw@51 32 params = { area = area }
bsw@51 33 }
bsw/jbe@0 34
bsw@51 35 execute.view{
bsw@51 36 module = "delegation",
bsw@51 37 view = "_show_box",
bsw@51 38 params = { area_id = area.id }
bsw@51 39 }
bsw@51 40
bsw@51 41 end
bsw/jbe@0 42
bsw/jbe@19 43 --[[
bsw/jbe@19 44 for i, issue in ipairs(area.issues) do
bsw/jbe@19 45 local head_name = "issue_head_content_" .. tostring(issue.id)
bsw/jbe@19 46 local name = "issue_content_" .. tostring(issue.id)
bsw/jbe@19 47 local icon_name = "issue_icon_" .. tostring(issue.id)
bsw/jbe@19 48 ui.container{
bsw/jbe@19 49 attr = { class = "ui_tabs" },
bsw/jbe@0 50 content = function()
bsw/jbe@19 51 local onclick =
bsw/jbe@19 52 'if (ui_tabs_active["' .. name .. '"]) {' ..
bsw/jbe@19 53 'el=document.getElementById("' .. name .. '");' ..
bsw/jbe@19 54 'el.innerHTML="";' ..
bsw/jbe@19 55 'el.style.display="none";' ..
bsw/jbe@19 56 'ui_tabs_active["' .. name .. '"]=false' ..
bsw/jbe@19 57 '} else {' ..
bsw/jbe@19 58 'ui_tabs_active["' .. name .. '"]=true;' ..
bsw/jbe@19 59 'document.getElementById("' .. name .. '").style.display="block"; ' ..
bsw/jbe@19 60 'var hourglass_el = document.getElementById("' .. icon_name .. '");' ..
bsw/jbe@19 61 'var hourglass_src = hourglass_el.src;' ..
bsw/jbe@19 62 'hourglass_el.src = "' .. encode.url{ static = "icons/16/connect.png" } .. '";' ..
bsw/jbe@19 63 'partialMultiLoad(' ..
bsw/jbe@19 64 '{ trace: "trace", system_error: "system_error", ' .. name .. '_title: "title", ' .. name .. '_actions: "actions", ' .. name .. '_content: "default" },' ..
bsw/jbe@19 65 '{},' ..
bsw/jbe@19 66 '"error",' ..
bsw/jbe@19 67 '"' .. request.get_relative_baseurl() .. 'issue/show/' .. tostring(issue.id) .. '.html?&_webmcp_json_slots[]=title&_webmcp_json_slots[]=actions&_webmcp_json_slots[]=default&_webmcp_json_slots[]=trace&_webmcp_json_slots[]=system_error&dyn=1",' ..
bsw/jbe@19 68 '{},' ..
bsw/jbe@19 69 '{},' ..
bsw/jbe@19 70 'function() {' ..
bsw/jbe@19 71 'hourglass_el.src = hourglass_src;' ..
bsw/jbe@19 72 '},' ..
bsw/jbe@19 73 'function() {' ..
bsw/jbe@19 74 'hourglass_el.src = hourglass_src;' ..
bsw/jbe@19 75 '}' ..
bsw/jbe@19 76 '); ' ..
bsw/jbe@19 77 '}' ..
bsw/jbe@19 78 'return(false);'
bsw/jbe@19 79 ui.link{
bsw/jbe@19 80 attr = {
bsw/jbe@19 81 name = name,
bsw/jbe@19 82 class = "ui_tabs_accordeon_head",
bsw/jbe@19 83 id = head_name,
bsw/jbe@19 84 onclick = onclick,
bsw/jbe@19 85 },
bsw/jbe@19 86 module = "issue",
bsw/jbe@19 87 view = "show",
bsw/jbe@19 88 id = issue.id,
bsw/jbe@19 89 params = params,
bsw/jbe@19 90 anchor = name,
bsw/jbe@19 91 content = function()
bsw/jbe@19 92 ui.image{
bsw/jbe@19 93 attr = { id = icon_name },
bsw/jbe@19 94 static = "icons/16/script.png"
bsw/jbe@19 95 }
bsw/jbe@19 96 ui.container{
bsw/jbe@19 97 attr = { style = "float: right;" },
bsw/jbe@19 98 content = function()
bsw/jbe@19 99
bsw/jbe@19 100 end
bsw/jbe@19 101 }
bsw/jbe@19 102 slot.put(tostring(issue.id))
bsw/jbe@19 103 end
bsw/jbe@0 104 }
bsw/jbe@0 105 end
bsw/jbe@19 106 }
bsw/jbe@19 107
bsw/jbe@19 108 ui.container{
bsw/jbe@19 109 attr = {
bsw/jbe@19 110 id = name,
bsw/jbe@19 111 class = "ui_tabs_accordeon_content",
bsw/jbe@19 112 },
bsw/jbe@0 113 content = function()
bsw/jbe@19 114 ui.container{ attr = { id = name .. "_title", }, content = function() slot.put(" ") end }
bsw/jbe@19 115 ui.container{ attr = { id = name .. "_actions", }, content = function() slot.put(" ") end }
bsw/jbe@19 116 ui.container{ attr = { id = name .. "_content", }, content = function()
bsw/jbe@19 117 execute.view{
bsw/jbe@19 118 module = "initiative",
bsw/jbe@19 119 view = "_list",
bsw/jbe@19 120 params = {
bsw/jbe@19 121 issue = issue,
bsw/jbe@19 122 initiatives_selector = issue:get_reference_selector("initiatives"),
bsw/jbe@19 123 limit = 3,
bsw/jbe@19 124 per_page = 3,
bsw/jbe@19 125 no_sort = true,
bsw/jbe@19 126 }
bsw/jbe@19 127 }
bsw/jbe@19 128 end }
bsw/jbe@0 129 end
bsw/jbe@19 130 }
bsw/jbe@19 131
bsw/jbe@19 132 if config.user_tab_mode == "accordeon_all_expanded" then
bsw/jbe@19 133 ui.script{ script = 'document.getElementById("' .. head_name .. '").onclick();' }
bsw/jbe@19 134 end
bsw/jbe@19 135 end
bsw/jbe@19 136 --]]
bsw/jbe@19 137
bsw/jbe@19 138 execute.view{
bsw/jbe@19 139 module = "area",
bsw/jbe@19 140 view = "show_tab",
bsw/jbe@19 141 params = { area = area }
bsw/jbe@0 142 }
bsw/jbe@0 143

Impressum / About Us