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 |