annotate framework/env/ui_deprecated/select.lua @ 139:a4ce17051eff
Work on JSON library (problem with stack still existent)
 | author | 
 jbe | 
 | date | 
 Tue Jul 29 22:02:01 2014 +0200 (2014-07-29) | 
 | parents | 
 9fdfb27f8e67  | 
 | children | 
  | 
 
 | rev | 
   line source | 
| 
jbe/bsw@0
 | 
     1 function ui_deprecated.select(args)
 | 
| 
jbe/bsw@0
 | 
     2   local record = assert(slot.get_state_table(), "ui_deprecated.select was not called within a form.").form_record
 | 
| 
jbe/bsw@0
 | 
     3   local value = param.get(args.field) or record[args.field]
 | 
| 
jbe/bsw@0
 | 
     4   local html_options = args.html_options or {}
 | 
| 
jbe/bsw@0
 | 
     5   html_options.name = args.field
 | 
| 
jbe/bsw@0
 | 
     6   
 | 
| 
jbe/bsw@0
 | 
     7   ui_deprecated.tag("div", { html_options = { class="ui_field ui_select" }, content = function()
 | 
| 
jbe/bsw@0
 | 
     8     if args.label then
 | 
| 
jbe/bsw@0
 | 
     9       ui_deprecated.tag("div", { html_options = { class="label" }, content = function()
 | 
| 
jbe/bsw@0
 | 
    10         ui_deprecated.text(args.label)
 | 
| 
jbe/bsw@0
 | 
    11       end })
 | 
| 
jbe/bsw@0
 | 
    12     end
 | 
| 
jbe/bsw@0
 | 
    13     ui_deprecated.tag("div", { html_options = { class="value" }, content = function()
 | 
| 
jbe/bsw@0
 | 
    14       ui_deprecated.tag("select", { html_options = html_options, content = function()
 | 
| 
jbe/bsw@0
 | 
    15         if args.include_option then
 | 
| 
jbe/bsw@0
 | 
    16           ui_deprecated.tag("option", { html_options = { value = "" }, content = args.include_option })
 | 
| 
jbe/bsw@0
 | 
    17         end
 | 
| 
jbe/bsw@0
 | 
    18         for i, object in ipairs(args.foreign_records) do
 | 
| 
jbe/bsw@0
 | 
    19           local selected = nil
 | 
| 
jbe/bsw@0
 | 
    20           if tostring(object[args.foreign_id]) == tostring(value) then
 | 
| 
jbe/bsw@0
 | 
    21             selected = "1"
 | 
| 
jbe/bsw@0
 | 
    22           end
 | 
| 
jbe/bsw@0
 | 
    23           ui_deprecated.tag("option", { html_options = { value = object[args.foreign_id], selected = selected }, content = object[args.foreign_name] })
 | 
| 
jbe/bsw@0
 | 
    24         end
 | 
| 
jbe/bsw@0
 | 
    25       end }) -- /select
 | 
| 
jbe/bsw@0
 | 
    26     end }) -- /div
 | 
| 
jbe/bsw@0
 | 
    27   end }) -- /div
 | 
| 
jbe/bsw@0
 | 
    28 end
 | 
| 
jbe/bsw@0
 | 
    29 
 | 
| 
jbe/bsw@0
 | 
    30 
 | 
| 
jbe/bsw@0
 | 
    31 
 |