bsw/jbe@6: local secret = param.get("secret") bsw/jbe@6: bsw/jbe@6: local member = Member:new_selector() bsw/jbe@6: :add_where{ "notify_email_secret = ?", secret } bsw/jbe@6: :add_where("notify_email_secret_expiry > now()") bsw/jbe@6: :optional_object_mode() bsw/jbe@6: :exec() bsw/jbe@6: bsw/jbe@6: if member then bsw/jbe@6: member.notify_email = member.notify_email_unconfirmed bsw@75: member.notify_email_unconfirmed = nil bsw@75: member.notify_email_secret = nil bsw@75: member.notify_email_secret_expiry = nil bsw@75: member.notify_email_lock_expiry = nil bsw/jbe@6: member:save() bsw/jbe@6: slot.put_into("notice", _"Email address is confirmed now") bsw/jbe@6: else bsw/jbe@6: slot.put_into("error", _"Confirmation code invalid!") bsw/jbe@6: return false bsw/jbe@6: end