liquid_feedback_frontend

annotate app/main/registration/_register_form.lua @ 1332:2efee7c3bf44

Process unit registration field
author bsw
date Fri Aug 03 17:14:17 2018 +0200 (2018-08-03)
parents 5bbec1fd769d
children 21a2443c97d7
rev   line source
bsw/jbe@1309 1 for i, field in ipairs(config.self_registration.fields) do
bsw/jbe@1309 2 local class = ""
bsw/jbe@1309 3 local field_error = slot.get_content("self_registration__invalid_" .. field.name)
bsw/jbe@1309 4 if field_error == "" then
bsw/jbe@1309 5 field_error = nil
bsw/jbe@1309 6 end
bsw/jbe@1309 7 if field_error then
bsw/jbe@1309 8 class = " is-invalid"
bsw/jbe@1309 9 end
bsw/jbe@1309 10 if field.name == "date_of_birth" then
bsw/jbe@1309 11 slot.put("<br />")
bsw@1313 12 local label = field.label
bsw@1313 13 if field.optional then
bsw@1313 14 label = label .. config.self_registration.optional_field_indicator
bsw@1313 15 end
bsw/jbe@1309 16 ui.tag{ tag = "label", attr = { style = "vertical-align: bottom; border-bottom: 1px solid rgba(0,0,0, 0.12); color: #777; font-size: 16px;" }, content = field.label .. ":" }
bsw/jbe@1309 17 slot.put(" &nbsp; ")
bsw/jbe@1309 18 local days = { { id = 0, name = _"day" } }
bsw/jbe@1309 19 for i = 1, 31 do
bsw/jbe@1309 20 table.insert(days, { id = i, name = i })
bsw/jbe@1309 21 end
bsw/jbe@1309 22 local months = {
bsw/jbe@1309 23 { id = 0, name = _"month" },
bsw/jbe@1309 24 { id = 1, name = "gennaio" },
bsw/jbe@1309 25 { id = 2, name = "febbraio" },
bsw/jbe@1309 26 { id = 3, name = "marzo" },
bsw/jbe@1309 27 { id = 4, name = "aprile" },
bsw/jbe@1309 28 { id = 5, name = "maggio" },
bsw/jbe@1309 29 { id = 6, name = "giugno" },
bsw/jbe@1309 30 { id = 7, name = "luglio" },
bsw/jbe@1309 31 { id = 8, name = "agosto" },
bsw/jbe@1309 32 { id = 9, name = "settembre" },
bsw/jbe@1309 33 { id = 10, name = "ottobre" },
bsw/jbe@1309 34 { id = 11, name = "novembre" },
bsw/jbe@1309 35 { id = 12, name = "dicembre" },
bsw/jbe@1309 36 }
bsw/jbe@1309 37 if config.self_registration.lang == "en" then
bsw/jbe@1309 38 months = {
bsw/jbe@1309 39 { id = 0, name = _"month" },
bsw/jbe@1309 40 { id = 1, name = "January" },
bsw/jbe@1309 41 { id = 2, name = "February" },
bsw/jbe@1309 42 { id = 3, name = "March" },
bsw/jbe@1309 43 { id = 4, name = "April" },
bsw/jbe@1309 44 { id = 5, name = "May" },
bsw/jbe@1309 45 { id = 6, name = "June" },
bsw/jbe@1309 46 { id = 7, name = "July" },
bsw/jbe@1309 47 { id = 8, name = "August" },
bsw/jbe@1309 48 { id = 9, name = "September" },
bsw/jbe@1309 49 { id = 10, name = "October" },
bsw/jbe@1309 50 { id = 11, name = "November" },
bsw/jbe@1309 51 { id = 12, name = "December" },
bsw/jbe@1309 52 }
bsw/jbe@1309 53 end
bsw/jbe@1309 54 local years = { { id = 0, name = _"year" } }
bsw/jbe@1309 55 for i = 2002, 1900, -1 do
bsw/jbe@1309 56 table.insert(years, { id = i, name = i })
bsw/jbe@1309 57 end
bsw/jbe@1309 58 ui.field.select{
bsw/jbe@1309 59 container_attr = { style = "display: inline-block; " },
bsw/jbe@1309 60 attr = { class = class },
bsw/jbe@1309 61 foreign_records = days,
bsw/jbe@1309 62 foreign_id = "id",
bsw/jbe@1309 63 foreign_name = "name",
bsw/jbe@1309 64 name = "verification_data_" .. field.name .. "_day",
bsw/jbe@1309 65 value = tonumber(request.get_param{ name = "verification_data_" .. field.name .. "_day" })
bsw/jbe@1309 66 }
bsw/jbe@1309 67 slot.put(" &nbsp; ")
bsw/jbe@1309 68 ui.field.select{
bsw/jbe@1309 69 container_attr = { style = "display: inline-block; " },
bsw/jbe@1309 70 attr = { class = class },
bsw/jbe@1309 71 foreign_records = months,
bsw/jbe@1309 72 foreign_id = "id",
bsw/jbe@1309 73 foreign_name = "name",
bsw/jbe@1309 74 name = "verification_data_" .. field.name .. "_month",
bsw/jbe@1309 75 value = tonumber(request.get_param{ name = "verification_data_" .. field.name .. "_month" })
bsw/jbe@1309 76 }
bsw/jbe@1309 77 slot.put(" &nbsp; ")
bsw/jbe@1309 78 ui.field.select{
bsw/jbe@1309 79 container_attr = { style = "display: inline-block; " },
bsw/jbe@1309 80 attr = { class = class },
bsw/jbe@1309 81 foreign_records = years,
bsw/jbe@1309 82 foreign_id = "id",
bsw/jbe@1309 83 foreign_name = "name",
bsw/jbe@1309 84 name = "verification_data_" .. field.name .. "_year",
bsw/jbe@1309 85 value = tonumber(request.get_param{ name = "verification_data_" .. field.name .. "_year" })
bsw/jbe@1309 86 }
bsw@1327 87 slot.put("<br />")
bsw/jbe@1309 88
bsw@1330 89 elseif field.type == "image" then
bsw@1330 90 ui.tag{ tag = "label", content = field.label }
bsw@1332 91 ui.tag{ tag = "input", attr = { type = "file", name = "verification_data_" .. field.name } }
bsw@1330 92
bsw@1327 93 elseif field.name == "unit" then
bsw@1327 94 local units_selector = Unit:new_selector()
bsw@1327 95 :add_where{ "active" }
bsw@1327 96 if field.where then
bsw@1327 97 units_selector:add_where(field.where)
bsw@1327 98 end
bsw@1327 99 local units = units_selector:exec()
bsw@1329 100 if field.optional then
bsw@1329 101 table.insert(units, {
bsw@1329 102 id = "",
bsw@1329 103 name = _"None"
bsw@1329 104 })
bsw@1329 105 end
bsw@1327 106 ui.field.select{
bsw@1328 107 label = field.label,
bsw@1327 108 foreign_records = units,
bsw@1327 109 foreign_id = "id",
bsw@1327 110 foreign_name = "name",
bsw@1327 111 name = field.name,
bsw@1327 112 value = tonumber(request.get_param{ name = "verification_data_" .. field.name })
bsw@1327 113 }
bsw/jbe@1309 114 else
bsw/jbe@1309 115 if field.name == "mobile_phone" then
bsw/jbe@1309 116 if config.self_registration.lang ~= "en" then
bsw/jbe@1309 117 ui.tag{ content = "+39" }
bsw/jbe@1309 118 slot.put(" ")
bsw/jbe@1309 119 end
bsw/jbe@1309 120 end
bsw/jbe@1309 121 ui.field.text{
bsw/jbe@1309 122 container_attr = { class = "mdl-textfield mdl-js-textfield mdl-textfield--floating-label" .. class },
bsw/jbe@1309 123 attr = { id = "lf-register__data_" .. field.name, class = "mdl-textfield__input" },
bsw/jbe@1309 124 label_attr = { class = "mdl-textfield__label", ["for"] = "lf-register__data" .. field.name },
bsw/jbe@1309 125 label = field.label,
bsw/jbe@1309 126 name = "verification_data_" .. field.name,
bsw/jbe@1309 127 value = request.get_param{ name = "verification_data_" .. field.name }
bsw/jbe@1309 128 }
bsw/jbe@1309 129 end
bsw/jbe@1309 130 slot.put("<br />")
bsw/jbe@1309 131 end

Impressum / About Us