liquid_feedback_frontend

diff 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
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/env/ui/order.lua	Wed Nov 18 12:00:00 2009 +0100
     1.3 @@ -0,0 +1,40 @@
     1.4 +function ui.order(args)
     1.5 +  local name = args.name or "order"
     1.6 +  local current_order = atom.string:load(cgi.params[name]) or args.options[1].name
     1.7 +  local id     = param.get_id_cgi()
     1.8 +  local params = param.get_all_cgi()
     1.9 +  ui.container{
    1.10 +    attr = { class = "ui_order" },
    1.11 +    content = function()
    1.12 +      ui.container{
    1.13 +        attr = { class = "ui_order_head" },
    1.14 +        content = function()
    1.15 +          slot.put(_"Order by")
    1.16 +          slot.put(": ")
    1.17 +          for i, option in ipairs(args.options) do
    1.18 +            params[name] = option.name
    1.19 +            local attr = {}
    1.20 +            if current_order == option.name then
    1.21 +              attr.class = "active"
    1.22 +              args.selector:add_order_by(option.order_by)
    1.23 +            end
    1.24 +            ui.link{
    1.25 +              attr    = attr,
    1.26 +              module  = request.get_module(),
    1.27 +              view    = request.get_view(),
    1.28 +              id      = id,
    1.29 +              params  = params,
    1.30 +              content = option.label
    1.31 +            }
    1.32 +          end
    1.33 +        end
    1.34 +      }
    1.35 +      ui.container{
    1.36 +        attr = { class = "ui_order_content" },
    1.37 +        content = function()
    1.38 +          args.content()
    1.39 +        end
    1.40 +      }
    1.41 +    end
    1.42 +  }
    1.43 +end

Impressum / About Us