Mercurial > prosody-modules
comparison mod_invites_register_web/mod_invites_register_web.lua @ 4833:15cf32e666da
mod_invites_register_web: Add mod_password_policy checks for web registration
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Wed, 22 Dec 2021 15:05:31 +0000 |
| parents | 39d1a4ecdee6 |
| children | 29a646bad096 |
comparison
equal
deleted
inserted
replaced
| 4832:bfd4af4caddc | 4833:15cf32e666da |
|---|---|
| 14 return (url:gsub("^[^:]+:", "")); | 14 return (url:gsub("^[^:]+:", "")); |
| 15 end; | 15 end; |
| 16 }); | 16 }); |
| 17 | 17 |
| 18 module:depends("register_apps"); | 18 module:depends("register_apps"); |
| 19 local mod_password_policy = module:depends("password_policy"); | |
| 19 | 20 |
| 20 local site_name = module:get_option_string("site_name", module.host); | 21 local site_name = module:get_option_string("site_name", module.host); |
| 21 local site_apps = module:shared("register_apps/apps"); | 22 local site_apps = module:shared("register_apps/apps"); |
| 22 | 23 |
| 23 local webchat_url = module:get_option_string("webchat_url"); | 24 local webchat_url = module:get_option_string("webchat_url"); |
| 57 uri = invite.uri; | 58 uri = invite.uri; |
| 58 type = invite.type; | 59 type = invite.type; |
| 59 jid = invite.jid; | 60 jid = invite.jid; |
| 60 inviter = invite.inviter; | 61 inviter = invite.inviter; |
| 61 app = query_params.c and site_apps[query_params.c]; | 62 app = query_params.c and site_apps[query_params.c]; |
| 63 password_policy = mod_password_policy.get_policy(); | |
| 62 }); | 64 }); |
| 63 return invite_page; | 65 return invite_page; |
| 64 end | 66 end |
| 65 | 67 |
| 66 function handle_register_form(event) | 68 function handle_register_form(event) |
| 90 token = invite.token; | 92 token = invite.token; |
| 91 domain = module.host; | 93 domain = module.host; |
| 92 uri = invite.uri; | 94 uri = invite.uri; |
| 93 type = invite.type; | 95 type = invite.type; |
| 94 jid = invite.jid; | 96 jid = invite.jid; |
| 97 password_policy = mod_password_policy.get_policy(); | |
| 95 | 98 |
| 96 msg_class = "alert-warning"; | 99 msg_class = "alert-warning"; |
| 97 message = "Please fill in all fields."; | 100 message = "Please fill in all fields."; |
| 98 }); | 101 }); |
| 99 end | 102 end |
| 107 token = invite.token; | 110 token = invite.token; |
| 108 domain = module.host; | 111 domain = module.host; |
| 109 uri = invite.uri; | 112 uri = invite.uri; |
| 110 type = invite.type; | 113 type = invite.type; |
| 111 jid = invite.jid; | 114 jid = invite.jid; |
| 115 password_policy = mod_password_policy.get_policy(); | |
| 112 | 116 |
| 113 msg_class = "alert-warning"; | 117 msg_class = "alert-warning"; |
| 114 message = "This username contains invalid characters."; | 118 message = "This username contains invalid characters."; |
| 115 }); | 119 }); |
| 116 end | 120 end |
| 121 token = invite.token; | 125 token = invite.token; |
| 122 domain = module.host; | 126 domain = module.host; |
| 123 uri = invite.uri; | 127 uri = invite.uri; |
| 124 type = invite.type; | 128 type = invite.type; |
| 125 jid = invite.jid; | 129 jid = invite.jid; |
| 130 password_policy = mod_password_policy.get_policy(); | |
| 126 | 131 |
| 127 msg_class = "alert-warning"; | 132 msg_class = "alert-warning"; |
| 128 message = "This username is already in use."; | 133 message = "This username is already in use."; |
| 134 }); | |
| 135 end | |
| 136 | |
| 137 local pw_ok, pw_error = mod_password_policy.check_password(password, { | |
| 138 username = prepped_username; | |
| 139 }); | |
| 140 if not pw_ok then | |
| 141 return render_html_template(register_page_template, { | |
| 142 site_name = site_name; | |
| 143 token = invite.token; | |
| 144 domain = module.host; | |
| 145 uri = invite.uri; | |
| 146 type = invite.type; | |
| 147 jid = invite.jid; | |
| 148 password_policy = mod_password_policy.get_policy(); | |
| 149 | |
| 150 msg_class = "alert-warning"; | |
| 151 message = pw_error; | |
| 129 }); | 152 }); |
| 130 end | 153 end |
| 131 | 154 |
| 132 local registering = { | 155 local registering = { |
| 133 validated_invite = invite; | 156 validated_invite = invite; |
