A corporation manager and dashboard for EVE Online
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 
 
 

38 lignes
685 B

  1. require 'calefaction/eve'
  2. class User < ActiveRecord::Base
  3. has_secure_password
  4. alias_attribute :admin?, :is_admin
  5. def characters
  6. ensure_api_user
  7. chars = @api.characters
  8. chars.nil? ? [] : chars
  9. end
  10. def name
  11. ensure_api_user
  12. sheet = @api.character_sheet(userid)
  13. sheet.nil? ? '?' : sheet.name
  14. end
  15. def corp_id
  16. ensure_api_user
  17. sheet = @api.character_sheet(userid)
  18. sheet.nil? ? 0 : sheet.corporationID.to_i
  19. end
  20. def member_of?(corp)
  21. corp_id == corp
  22. end
  23. def in_corp?
  24. member_of? AdminSetting.get(:corp_id).to_i
  25. end
  26. private
  27. def ensure_api_user
  28. @api ||= Calefaction::EVE::APIUser.new(api_key, api_verify)
  29. end
  30. end