bsw/jbe@0: function ui.tabs(tabs) bsw/jbe@0: ui.container{ bsw/jbe@0: attr = { class = "ui_tabs" }, bsw/jbe@0: content = function() bsw/jbe@0: local params = param.get_all_cgi() bsw/jbe@0: local current_tab = params["tab"] bsw/jbe@0: ui.container{ bsw/jbe@0: attr = { class = "ui_tabs_links" }, bsw/jbe@0: content = function() bsw/jbe@0: for i, tab in ipairs(tabs) do bsw/jbe@0: params["tab"] = i > 1 and tab.name or nil bsw/jbe@0: ui.link{ bsw/jbe@0: attr = { bsw/jbe@0: class = ( bsw/jbe@0: tab.name == current_tab and "selected" or bsw/jbe@0: not current_tab and i == 1 and "selected" or bsw/jbe@0: "" bsw/jbe@0: ) bsw/jbe@0: }, bsw/jbe@0: module = request.get_module(), bsw/jbe@0: view = request.get_view(), bsw/jbe@0: id = param.get_id_cgi(), bsw/jbe@0: text = tab.label, bsw/jbe@0: params = params bsw/jbe@0: } bsw/jbe@4: slot.put(" ") bsw/jbe@0: end bsw/jbe@0: end bsw/jbe@0: } bsw/jbe@0: for i, tab in ipairs(tabs) do bsw/jbe@0: if tab.name == current_tab or not current_tab and i == 1 then bsw/jbe@0: ui.container{ bsw/jbe@0: attr = { class = "ui_tabs_content" }, bsw/jbe@0: content = tab.content bsw/jbe@0: } bsw/jbe@0: end bsw/jbe@0: end bsw/jbe@0: end bsw/jbe@0: } bsw/jbe@0: end bsw/jbe@0: