class Guff::Context getter :config, :dbs, :magic def initialize(@config : Config) @dbs = DatabasePair.new(@config.db_path, development?) @magic = Magic.new end def models @models ||= ModelSet.new(self) end def session @session ||= Session.new(self) end def user_id : Int64? session["user_id"]? ? session["user_id"].to_i64 : nil end def has_role?(roles : Array(String)) id = user_id id ? models.user.has_role?(id, roles) : false end def development? @is_development ||= (@config.env == "development") as Bool end end