liquid_feedback_frontend

annotate env/ui/tabs.lua @ 280:808269b7f41c

More repositioning and optical enhancements
author bsw
date Thu Feb 16 14:08:55 2012 +0100 (2012-02-16)
parents fecd4c13054a
children c587d8762e62
rev   line source
bsw@278 1 function ui.tabs(tabs)
bsw@278 2 ui.container{
bsw@278 3 attr = { class = "ui_tabs" },
bsw@278 4 content = function()
bsw/jbe@0 5 local params = param.get_all_cgi()
bsw@278 6 local current_tab = params["tab"]
bsw@278 7 ui.container{
bsw@278 8 attr = { class = "ui_tabs_links" },
bsw/jbe@0 9 content = function()
bsw@278 10 for i, tab in ipairs(tabs) do
bsw@278 11 params["tab"] = i > 1 and tab.name or nil
bsw@278 12 ui.link{
bsw@278 13 attr = {
bsw@278 14 class = (
bsw@278 15 tab.name == current_tab and "selected" .. (tab.class and (" " .. tab.class) or "") or
bsw@278 16 not current_tab and i == 1 and "selected" .. (tab.class and (" " .. tab.class) or "") or
bsw@278 17 "" .. (tab.class and (" " .. tab.class) or "")
bsw@278 18 )
bsw@278 19 },
bsw@278 20 module = request.get_module(),
bsw@278 21 view = request.get_view(),
bsw@278 22 id = param.get_id_cgi(),
bsw@278 23 content = tab.label,
bsw@278 24 params = params
bsw/jbe@0 25 }
bsw@278 26 slot.put(" ")
bsw/jbe@0 27 end
bsw/jbe@0 28 end
bsw/jbe@0 29 }
bsw@278 30 for i, tab in ipairs(tabs) do
bsw@278 31 if tab.name == current_tab and i > 1 then
bsw@278 32 app.html_title.prefix = tab.label
bsw/jbe@19 33 end
bsw@278 34 if tab.name == current_tab or not current_tab and i == 1 then
bsw@278 35 ui.container{
bsw@278 36 attr = { class = "ui_tabs_content" },
bsw@278 37 content = function()
bsw@278 38 if tab.content then
bsw@278 39 tab.content()
bsw@278 40 else
bsw@278 41 execute.view{
bsw@278 42 module = tab.module,
bsw@278 43 view = tab.view,
bsw@278 44 id = tab.id,
bsw@278 45 params = tab.params,
bsw@278 46 }
bsw@278 47 end
bsw@278 48 end
bsw@278 49 }
bsw/jbe@19 50 end
bsw/jbe@19 51 end
bsw/jbe@0 52 end
bsw@278 53 }
jorges@102 54 end

Impressum / About Us