oldhaven/app/controllers/application_controller.rb
2011-09-17 14:20:07 +04:00

44 lines
1.1 KiB
Ruby

require 'digest'
class ApplicationController < ActionController::Base
protect_from_forgery
before_filter :set_locale
def authorized?
# secret_key = request.host == 'beathaven.org' ? 'sdgwSbl3nNE4ZxafuPrp' : 's5zyjb693z6uV4rbhEyc'
secret_key = 'sdgwSbl3nNE4ZxafuPrp'
unless params[:expire].nil? or params[:mid].nil? or params[:secret].nil? or params[:sid].nil? or params[:sig].nil?
# Calculating hash
hash = 'expire='+ params[:expire] +'mid='+ params[:mid] +'secret='+ params[:secret] +'sid='+ params[:sid] + secret_key
hash_md5 = Digest::MD5.hexdigest(hash)
if Digest::MD5.hexdigest(hash) == params[:sig]
return true
else
res = {status:'login failed'}
render :json => res
return false
end
else
res = {status:'bad params'}
render :json => res
return false
end
end
def set_locale
session = Session.find_by_key(request.cookies['_beathaven_session'][0..31])
unless session.nil?
I18n.locale = session.user.lang
end
end
def index
end
def greetings
render :partial => 'greetings'
end
end