You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
1.9 KiB
85 lines
1.9 KiB
module ActiveRecord
|
|
class PremissionDenied < RuntimeError
|
|
end
|
|
end
|
|
|
|
class ApplicationController < LinguaFrancaApplicationController
|
|
# Prevent CSRF attacks by raising an exception.
|
|
# For APIs, you may want to use :null_session instead.
|
|
protect_from_forgery with: :exception
|
|
|
|
before_filter :capture_page_info
|
|
|
|
@@test_host
|
|
@@test_location
|
|
|
|
def capture_page_info
|
|
#u = User.find_by_email('goodgodwin@hotmail.com')
|
|
#auto_login(u)
|
|
#logout()
|
|
|
|
# set the translator to the current user if we're logged in
|
|
I18n.config.translator = current_user
|
|
|
|
# get the current confernece and set it globally
|
|
@conference = Conference.order("start_date DESC").first
|
|
|
|
# add some style sheets
|
|
@stylesheets ||= Array.new
|
|
# add the translations stylesheet if translating
|
|
@stylesheets << params[:controller] if params[:controller] == 'translations'
|
|
|
|
ActionMailer::Base.default_url_options = {:host => "#{request.protocol}#{request.host_with_port}"}
|
|
|
|
# call the base method to detect the language
|
|
super
|
|
end
|
|
|
|
def home
|
|
end
|
|
|
|
def about
|
|
end
|
|
|
|
def robots
|
|
robot = is_production? && !is_test_server? ? 'live' : 'dev'
|
|
render :text => File.read("config/robots-#{robot}.txt"), :content_type => 'text/plain'
|
|
end
|
|
|
|
def humans
|
|
render :text => File.read("config/humans.txt"), :content_type => 'text/plain'
|
|
end
|
|
|
|
def self.set_host(host)
|
|
@@test_host = host
|
|
end
|
|
|
|
def self.set_location(location)
|
|
@@test_location = location
|
|
end
|
|
|
|
def self.get_location()
|
|
@@test_location
|
|
end
|
|
|
|
def do_404
|
|
render 'application/404', status: 404
|
|
end
|
|
|
|
def do_403(template = nil)
|
|
@template = template
|
|
render 'application/permission_denied', status: 403
|
|
end
|
|
|
|
rescue_from ActiveRecord::RecordNotFound do |exception|
|
|
do_404
|
|
end
|
|
|
|
rescue_from ActiveRecord::PremissionDenied do |exception|
|
|
do_403
|
|
end
|
|
|
|
rescue_from AbstractController::ActionNotFound do |exception|
|
|
do_403 'translator_login'
|
|
end
|
|
end
|
|
|