| rev |
line source |
|
bsw/jbe@1309
|
1 local verification = Verification:by_id(param.get_id())
|
|
bsw/jbe@1309
|
2
|
|
bsw/jbe@1309
|
3 local function update_data()
|
|
bsw@1356
|
4 local old_verification_data = verification.verification_data or {}
|
|
bsw/jbe@1309
|
5 verification.verification_data = json.object()
|
|
bsw/jbe@1309
|
6
|
|
bsw/jbe@1309
|
7 for i, field in ipairs(config.self_registration.fields) do
|
|
bsw/jbe@1309
|
8 local value = param.get(field.name)
|
|
bsw/jbe@1309
|
9 if field.name == "fiscal_code" then
|
|
bsw/jbe@1309
|
10 value = string.gsub(value, "[^A-Z0-9]", "")
|
|
bsw/jbe@1309
|
11 elseif field.name == "mobile_phone" then
|
|
bsw/jbe@1309
|
12 value = string.gsub(value, "[^0-9]", "")
|
|
bsw@1352
|
13 elseif field.name == "unit" then
|
|
bsw@1352
|
14 value = string.gsub(value, "[^0-9]", "")
|
|
bsw@1356
|
15 if old_verification_data.unit and old_verification_data.unit ~= "" then
|
|
bsw@1356
|
16 local old_unit_privilege = Privilege:by_pk(verification.verified_member_id, old_verification_data.unit)
|
|
bsw@1356
|
17 old_unit_privilege:destroy()
|
|
bsw@1356
|
18 end
|
|
bsw@1356
|
19 if value ~= old_verification_data.unit and value ~= "" then
|
|
bsw@1353
|
20 local unit_privilege = Privilege:new()
|
|
bsw@1352
|
21 unit_privilege.member_id = verification.verified_member_id
|
|
bsw@1355
|
22 unit_privilege.unit_id = tonumber(value)
|
|
bsw@1352
|
23 unit_privilege.voting_right = true
|
|
bsw@1352
|
24 unit_privilege.initiative_right = true
|
|
bsw@1354
|
25 unit_privilege:save()
|
|
bsw@1352
|
26 end
|
|
bsw@1346
|
27 elseif field.type ~= "image" then
|
|
bsw/jbe@1309
|
28 value = string.gsub(value, "^%s+", "")
|
|
bsw/jbe@1309
|
29 value = string.gsub(value, "%s+$", "")
|
|
bsw/jbe@1309
|
30 value = string.gsub(value, "%s+", " ")
|
|
bsw/jbe@1309
|
31 end
|
|
bsw/jbe@1309
|
32 verification.verification_data[field.name] = value
|
|
bsw/jbe@1309
|
33 end
|
|
bsw/jbe@1309
|
34 end
|
|
bsw/jbe@1309
|
35
|
|
bsw/jbe@1309
|
36 if verification.verified_member_id then
|
|
bsw/jbe@1309
|
37
|
|
bsw/jbe@1309
|
38 local member = Member:by_id(verification.verified_member_id)
|
|
bsw/jbe@1309
|
39
|
|
bsw/jbe@1309
|
40 if param.get("cancel") then
|
|
bsw/jbe@1309
|
41 db:query({ "SELECT delete_member(?)", member.id })
|
|
bsw/jbe@1309
|
42 return
|
|
bsw/jbe@1309
|
43 end
|
|
bsw/jbe@1309
|
44
|
|
bsw/jbe@1309
|
45 member.identification = param.get("identification")
|
|
bsw/jbe@1309
|
46 member.notify_email = param.get("email")
|
|
bsw/jbe@1309
|
47 member:save()
|
|
bsw/jbe@1309
|
48
|
|
bsw/jbe@1309
|
49 update_data()
|
|
bsw/jbe@1309
|
50
|
|
bsw/jbe@1309
|
51 verification:save()
|
|
bsw/jbe@1309
|
52
|
|
bsw/jbe@1309
|
53 if param.get("invite") then
|
|
bsw/jbe@1309
|
54 member:send_invitation()
|
|
bsw/jbe@1309
|
55 end
|
|
bsw/jbe@1309
|
56
|
|
bsw/jbe@1309
|
57 elseif param.get("drop") then
|
|
bsw/jbe@1309
|
58
|
|
bsw/jbe@1309
|
59 verification.denied = "now"
|
|
bsw/jbe@1309
|
60 verification:save()
|
|
bsw/jbe@1309
|
61 return
|
|
bsw/jbe@1309
|
62
|
|
bsw/jbe@1309
|
63 elseif param.get("accredit") then
|
|
bsw/jbe@1309
|
64
|
|
bsw/jbe@1309
|
65 local member = Member:by_id(verification.requesting_member_id)
|
|
bsw/jbe@1309
|
66 member.identification = param.get("identification")
|
|
bsw/jbe@1309
|
67 member.notify_email = param.get("email")
|
|
bsw/jbe@1309
|
68 member:save()
|
|
bsw/jbe@1309
|
69 member:send_invitation()
|
|
bsw/jbe@1309
|
70
|
|
bsw/jbe@1309
|
71 for i, unit_id in ipairs(config.self_registration.grant_privileges_for_unit_ids) do
|
|
bsw/jbe@1309
|
72 local privilege = Privilege:new()
|
|
bsw/jbe@1309
|
73 privilege.member_id = member.id
|
|
bsw/jbe@1309
|
74 privilege.unit_id = unit_id
|
|
bsw/jbe@1309
|
75 privilege.initiative_right = true
|
|
bsw/jbe@1309
|
76 privilege.voting_right = true
|
|
bsw/jbe@1309
|
77 privilege:save()
|
|
bsw/jbe@1309
|
78 end
|
|
bsw/jbe@1309
|
79
|
|
bsw/jbe@1309
|
80 update_data()
|
|
bsw/jbe@1309
|
81
|
|
bsw/jbe@1309
|
82 verification.verified_member_id = verification.requesting_member_id
|
|
bsw/jbe@1309
|
83 verification.verifying_member_id = app.session.member_id
|
|
bsw/jbe@1309
|
84 verification.verified = "now"
|
|
bsw/jbe@1309
|
85
|
|
bsw/jbe@1309
|
86 verification:save()
|
|
bsw/jbe@1309
|
87
|
|
bsw/jbe@1309
|
88
|
|
bsw/jbe@1309
|
89 else
|
|
bsw/jbe@1309
|
90
|
|
bsw/jbe@1309
|
91 update_data()
|
|
bsw/jbe@1309
|
92 verification:save()
|
|
bsw/jbe@1309
|
93
|
|
bsw/jbe@1309
|
94 end
|