jbe/bsw@0: function ui_deprecated.select(args) jbe/bsw@0: local record = assert(slot.get_state_table(), "ui_deprecated.select was not called within a form.").form_record jbe/bsw@0: local value = param.get(args.field) or record[args.field] jbe/bsw@0: local html_options = args.html_options or {} jbe/bsw@0: html_options.name = args.field jbe/bsw@0: jbe/bsw@0: ui_deprecated.tag("div", { html_options = { class="ui_field ui_select" }, content = function() jbe/bsw@0: if args.label then jbe/bsw@0: ui_deprecated.tag("div", { html_options = { class="label" }, content = function() jbe/bsw@0: ui_deprecated.text(args.label) jbe/bsw@0: end }) jbe/bsw@0: end jbe/bsw@0: ui_deprecated.tag("div", { html_options = { class="value" }, content = function() jbe/bsw@0: ui_deprecated.tag("select", { html_options = html_options, content = function() jbe/bsw@0: if args.include_option then jbe/bsw@0: ui_deprecated.tag("option", { html_options = { value = "" }, content = args.include_option }) jbe/bsw@0: end jbe/bsw@0: for i, object in ipairs(args.foreign_records) do jbe/bsw@0: local selected = nil jbe/bsw@0: if tostring(object[args.foreign_id]) == tostring(value) then jbe/bsw@0: selected = "1" jbe/bsw@0: end jbe/bsw@0: ui_deprecated.tag("option", { html_options = { value = object[args.foreign_id], selected = selected }, content = object[args.foreign_name] }) jbe/bsw@0: end jbe/bsw@0: end }) -- /select jbe/bsw@0: end }) -- /div jbe/bsw@0: end }) -- /div jbe/bsw@0: end jbe/bsw@0: jbe/bsw@0: jbe/bsw@0: