Make accounts frontend!

This commit is contained in:
2025-06-26 18:08:59 +03:00
parent 652b391d6f
commit 169c4faa7d
7 changed files with 285 additions and 64 deletions

View File

@@ -41,12 +41,16 @@ module Players
end
def self.pass_req(email)
return unless self[email]
return false unless by_email(email)
code = Array.new(24) { ALPHANUM.sample }.join
DB["update Players set new_pass_code = ? where email = ?", code, email].update
send_email(:pass_req, email, code)
Logman.log "Pass req: #{email} & #{code}\n"
true
# send_email(:pass_req, email, code)
end
def self.pass_reset(new_pass, code)
@@ -54,10 +58,18 @@ module Players
DB["update Players set digest = ?, new_pass_code = ? where new_pass_code = ?", digest, "", code].update != 0
end
def self.pass_reset?(code)
DB["select * from Players where new_pass_code = ?", code].first
end
def self.[](username)
DB["select * from Players where username = ?", username].first
end
def self.by_email(email)
DB["select * from Players where email = ?", email].first
end
def self.[]=(username, data)
DB["update Players set data = ? where username = ?", data, username].update
end