5
0
Fork 0
mirror of https://0xacab.org/sutty/sutty synced 2024-07-03 12:06:08 +00:00
panel/lib/sutty/login.rb

43 lines
968 B
Ruby
Raw Normal View History

2017-09-25 22:35:06 +00:00
# frozen_string_literal: true
require 'net/imap'
require 'rack-flash'
require 'sinatra/base'
require 'sinatra_warden'
2017-09-28 20:20:31 +00:00
require_relative '../sutty'
2017-09-25 22:35:06 +00:00
require_relative '../warden/imap'
require_relative 'models/usuaria'
module Sutty
# Login
class Login < Sinatra::Base
2017-09-28 20:20:31 +00:00
set :root, Sutty.root
2017-09-25 22:35:06 +00:00
use Rack::Flash
register Sinatra::Warden
enable :sessions
enable :logging
enable :auth_use_referrer
2017-09-26 15:43:31 +00:00
set :auth_error_message, 'Hubo un error al ingresar'
set :auth_success_message, '¡Bienvenida!'
2017-09-25 22:35:06 +00:00
# Configura Warden para usar la estrategia IMAP y obtener la cuenta
# de usuaria a partir de la cookie.
use Warden::Manager do |config|
config.default_scope = :user
config.scope_defaults :user, strategies: [:imap]
config.serialize_into_session(&:username)
config.serialize_from_session { |u| Usuaria.find(u) }
config.failure_app = self
end
2017-09-26 15:43:31 +00:00
before do
@has_cover = true
end
2017-09-25 22:35:06 +00:00
end
end