liquid_feedback_frontend
annotate env/ui/order.lua @ 0:3bfb2fcf7ab9
Version alpha1
author | bsw/jbe |
---|---|
date | Wed Nov 18 12:00:00 2009 +0100 (2009-11-18) |
parents | |
children | afd9f769c7ae |
rev | line source |
---|---|
bsw/jbe@0 | 1 function ui.order(args) |
bsw/jbe@0 | 2 local name = args.name or "order" |
bsw/jbe@0 | 3 local current_order = atom.string:load(cgi.params[name]) or args.options[1].name |
bsw/jbe@0 | 4 local id = param.get_id_cgi() |
bsw/jbe@0 | 5 local params = param.get_all_cgi() |
bsw/jbe@0 | 6 ui.container{ |
bsw/jbe@0 | 7 attr = { class = "ui_order" }, |
bsw/jbe@0 | 8 content = function() |
bsw/jbe@0 | 9 ui.container{ |
bsw/jbe@0 | 10 attr = { class = "ui_order_head" }, |
bsw/jbe@0 | 11 content = function() |
bsw/jbe@0 | 12 slot.put(_"Order by") |
bsw/jbe@0 | 13 slot.put(": ") |
bsw/jbe@0 | 14 for i, option in ipairs(args.options) do |
bsw/jbe@0 | 15 params[name] = option.name |
bsw/jbe@0 | 16 local attr = {} |
bsw/jbe@0 | 17 if current_order == option.name then |
bsw/jbe@0 | 18 attr.class = "active" |
bsw/jbe@0 | 19 args.selector:add_order_by(option.order_by) |
bsw/jbe@0 | 20 end |
bsw/jbe@0 | 21 ui.link{ |
bsw/jbe@0 | 22 attr = attr, |
bsw/jbe@0 | 23 module = request.get_module(), |
bsw/jbe@0 | 24 view = request.get_view(), |
bsw/jbe@0 | 25 id = id, |
bsw/jbe@0 | 26 params = params, |
bsw/jbe@0 | 27 content = option.label |
bsw/jbe@0 | 28 } |
bsw/jbe@0 | 29 end |
bsw/jbe@0 | 30 end |
bsw/jbe@0 | 31 } |
bsw/jbe@0 | 32 ui.container{ |
bsw/jbe@0 | 33 attr = { class = "ui_order_content" }, |
bsw/jbe@0 | 34 content = function() |
bsw/jbe@0 | 35 args.content() |
bsw/jbe@0 | 36 end |
bsw/jbe@0 | 37 } |
bsw/jbe@0 | 38 end |
bsw/jbe@0 | 39 } |
bsw/jbe@0 | 40 end |