lib/chook/server/routes.rb in chook-1.1.0 vs lib/chook/server/routes.rb in chook-1.1.1
- old
+ new
@@ -26,37 +26,18 @@
module Chook
# the server
class Server < Sinatra::Base
- # These two helpers let us decude which routes need
- # http basic auth and which don't
- #
- # To protect a route, put `protected!` as the
- # first line of code in the route.
- #
- # See http://sinatrarb.com/faq.html#auth
- #
- helpers do
- def protected!
- # don't protect if user isn't defined
- return unless Chook.config.webhooks_user
+ HANDLE_EVENT_ROUTE = '/handle_webhook_event'.freeze
- return if authorized?
- headers['WWW-Authenticate'] = 'Basic realm="Restricted Area"'
- halt 401, "Not authorized\n"
- end
+ # before do
+ # break if request.path_info == Chook::Server::HANDLE_EVENT_ROUTE
+ # # break if request.path_info == '/' && session[:authed_admin]
+ # # redirect '/' unless session[:authed_admin]
+ # end
- def authorized?
- @auth ||= Rack::Auth::Basic::Request.new(request.env)
- @auth.provided? && \
- @auth.basic? && \
- @auth.credentials && \
- @auth.credentials == [Chook.config.webhooks_user, Chook::Server.webhooks_user_pw]
- end
- end
-
# log errors in production (in dev, they go to stdout and the browser)
error do
logger.error "ERROR: #{env['sinatra.error'].message}"
env['sinatra.error'].backtrace.each { |l| logger.error "..#{l}" }
500
@@ -67,6 +48,7 @@
end # Chook
require 'chook/server/routes/home'
require 'chook/server/routes/handle_webhook_event'
require 'chook/server/routes/handlers'
+require 'chook/server/routes/login_logout'
require 'chook/server/routes/log'