roysathome.net/auth/database_queries.rb

49 lines
1.0 KiB
Ruby

require 'sqlite3'
def create_new_user(username, password)
db = SQLite3::Database.new('./database/auth.db')
db.execute('
INSERT INTO users (username, hashed_password)
VALUES (?, ?)
', [username, create_password_for_user(password)])
end
def get_user_id(username)
db = SQLite3::Database.new('./database/auth.db')
user_id = db.get_first_value('
SELECT id
FROM users U
WHERE U.username = ?
', [username])
return user_id
end
def get_user_hashed_password(user_id)
db = SQLite3::Database.new('./database/auth.db')
password_hash = db.get_first_value('
SELECT hashed_password
FROM users U
WHERE U.id = ?
', [user_id])
return password_hash
end
def update_user_password(user_id, password)
db = SQLite3::Database.new('./database/auth.db')
db.execute('
UPDATE users
SET hashed_password = ?, salt = ?
WHERE id = ?
', [hash_password, salt, user_id])
end