Switch to using nix.
This commit is contained in:
@@ -5,7 +5,6 @@ require "net/http"
|
||||
require "sequel"
|
||||
require "sinatra"
|
||||
require "uri"
|
||||
require "xxhash"
|
||||
require "zlib"
|
||||
|
||||
ALPHANUM = [*"0".."9", *"A".."Z", *"a".."z", "-", "_"].freeze
|
||||
@@ -21,15 +20,32 @@ end
|
||||
load "logman.rb"
|
||||
# Logman.log ENV_HASH.inspect
|
||||
|
||||
db_file = File.expand_path("infinsweeper.db")
|
||||
db_file = File.expand_path("infinsweeper.db", __dir__)
|
||||
DB = Sequel.connect("sqlite:///#{db_file}", single_threaded: false)
|
||||
DB.run("PRAGMA foreign_keys = ON;")
|
||||
DB.create_table? :Players do
|
||||
String :username, primary_key: true
|
||||
String :email, unique: true
|
||||
File :digest
|
||||
File :data
|
||||
String :activation_code
|
||||
String :new_pass_code
|
||||
DateTime :created_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
end
|
||||
DB.create_table? :SignedInUsers do
|
||||
String :code, primary_key: true
|
||||
String :player
|
||||
DateTime :created_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
DateTime :last_used_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
foreign_key [:player], :Players, key: :username, on_delete: :cascade
|
||||
end
|
||||
$active_users = DB[:SignedInUsers].all.map { |x| [x[:code], x[:player]] }.to_h
|
||||
|
||||
load "mailer.rb"
|
||||
load "players.rb"
|
||||
load "session.rb"
|
||||
|
||||
set :port, ENV.fetch("PORT", 5161)
|
||||
set :public_folder, "public"
|
||||
|
||||
get "/" do
|
||||
|
||||
Reference in New Issue
Block a user