Sha256: fb1e13d81950dd3021ba87b7211a38100c552ffebafd80640a036eac330f38c3
Contents?: true
Size: 1.17 KB
Versions: 92
Compression:
Stored size: 1.17 KB
Contents
class Caboose::Authenticator def authenticate(username, password, site = nil) resp = Caboose::StdClass.new( 'error' => nil, 'user' => nil ) pass = Digest::SHA1.hexdigest(Caboose::salt + password) user = Caboose::User.where(:username => username, :site_id => site.id).first user = Caboose::User.where(:email => username, :site_id => site.id).first if user.nil? valid_credentials = false if user && user.password == pass valid_credentials = true elsif site mp = Caboose::Setting.where(:site_id => site.id, :name => 'master_password').first mp = mp ? mp.value : nil if mp && mp.strip.length > 0 && mp == pass valid_credentials = true end end if valid_credentials resp.user = user else resp.error = "Invalid credentials" end #resp.user = Caboose::User.where(:username => username, :password => pass).first #if (resp.user.nil?) # resp.user = Caboose::User.where(:email => username, :password => pass).first #end #resp.error = "Invalid credentials" if resp.user.nil? return resp end end
Version data entries
92 entries across 92 versions & 1 rubygems