some New and some old

Added some new stuff (mainly the fix for the "new" ranks suffixes) and
removed some uneeded bits.
Also changed the gemfile so it will work on Windows too.
This commit is contained in:
Jonas Folvik
2016-01-11 18:21:21 +01:00
parent d9b971ab34
commit c35a36a5c5
9 changed files with 138 additions and 125 deletions

View File

@@ -21,8 +21,6 @@ class User < ActiveRecord::Base
validates :email, uniqueness: {case_sensitive: false}, format: {with: /\A.+@(.+\..{2,}|\[[0-9a-f:.]+\])\z/i, message: "That doesn't look like an email address."}
validates :ign, uniqueness: {case_sensitive: false}, format: {with: /\A[a-z\d_]+\z/i, message: "Username is invalid (a-z, 0-9, _)."}
validate :account_exists?, :if => lambda {|user| user.ign_changed? }
has_many :blogposts
has_many :comments
@@ -39,16 +37,16 @@ class User < ActiveRecord::Base
!!self.retired
end
def developer?
!!self.developer
def dev?
!!self.dev
end
def trainingmod?
!!self.trainingmod
def mit?
!!self.mit
end
def lead_mod?
!!self.lead_mod
def lead?
!!self.lead
end
def confirmed?
@@ -129,32 +127,6 @@ class User < ActiveRecord::Base
end
end
# def haspaid?
# begin
# response = open("https://sessionserver.mojang.com/session/minecraft/profile/#{CGI.escape(self.uuid)}", read_timeout: 0.5)
# if response.status[0] == "200"
# session_profile = JSON.load(response.read)
# # unpaid accounts are called 'demo' accounts
# return session_profile["demo"] == true
# elsif response.status[0] == "204"
# # user doesn't exist
# return false
# else
# Rails.logger.error "---"
# Rails.logger.error "ERROR: unexpected response code while checking '#{self.uuid}' for premium account"
# Rails.logger.error "code: #{reponse.status}, body: '#{reponse.read}'"
# Rails.logger.error "---"
# end
# rescue => e
# Rails.logger.error "---"
# Rails.logger.error "ERROR: failed to check for premium account for '#{self.uuid}'. Minecraft servers down?"
# Rails.logger.error e.message
# Rails.logger.error "---"
# end
# # mojang servers have trouble
# return true
# end
# def correct_case?(ign)
# begin
# http = Net::HTTP.start("skins.minecraft.net")
@@ -220,13 +192,6 @@ class User < ActiveRecord::Base
self.name ||= self.ign
end
def account_exists?
profile = self.get_profile
if !profile || profile["demo"] == true
errors.add(:ign, "'#{self.ign}' is not a paid account!")
end
end
def strip_whitespaces
self.name.strip! if self.name
self.ign.strip! if self.ign