diff --git a/.gitignore b/.gitignore index 4424173..ffbc6aa 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ tmp.* *.log .env +p.vim diff --git a/main.rb b/main.rb index ca9c64b..b5b5edf 100644 --- a/main.rb +++ b/main.rb @@ -7,18 +7,20 @@ require "uri" require "xxhash" require "zlib" +load "logman.rb" + ALPHANUM = [*"0".."9", *"A".."Z", *"a".."z", "-", "_"].freeze env_data = File.read(".env") ENV_HASH = {} env_data.each_line do |line| - if (match = line.match(/^([A-Z_][A-Z0-9_]*)=(.*)$/)) - _, key, val = match - ENV_HASH[key] = val - end + next unless (match = line.match(/^([A-Z_][A-Z0-9_]*)=(.*)$/)) + ENV_HASH[match[1]] = match[2] end +Logman.log ENV_HASH.inspect + CODE_ENV = :dev db_file = File.expand_path("infinsweeper.db") @@ -26,7 +28,6 @@ DB = Sequel.connect("sqlite:///#{db_file}", single_threaded: false) DB.run("PRAGMA foreign_keys = ON;") $active_users = DB[:SignedInUsers].all.map { |x| [x[:code], x[:player]] }.to_h -load "logman.rb" load "mailer.rb" load "players.rb" load "session.rb" @@ -35,7 +36,7 @@ set :public_folder, "public" get "/" do session = Sessions.new request, response - Logman.log session["message"] + Logman.log session["message"].inspect send_file "index.html" end diff --git a/players.rb b/players.rb index 04d8e47..c16991b 100644 --- a/players.rb +++ b/players.rb @@ -64,6 +64,7 @@ module Players def self.authorized?(username, pass) digest = XXhash.xxh32(pass, ENV_HASH["SALT"]) + Logman.log "Authorized: #{username} & #{digest}\n" player = self[username] player && player[:digest].to_i == digest.to_i ? player : false end diff --git a/session.rb b/session.rb index 4cf90a4..f6d56ab 100644 --- a/session.rb +++ b/session.rb @@ -20,6 +20,8 @@ class Sessions end def login(username, pass) + Logman.log "Logging in: #{username} & #{pass} #{ENV_HASH["SALT"]}\n" + player = Players.authorized?(username, pass) if player code = Array.new(24) { ALPHANUM.sample }.join