Class: SubjModel::User
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- SubjModel::User
- Includes:
- ComprisingExternalId, RademadeAdmin::UserModule, SharedScopes, TypesSupport::CardReceiveTypes, TypesSupport::UserTypes, ValuesChecker
- Defined in:
- lib/subj_model/user.rb
Instance Attribute Summary collapse
-
#skip_validations ⇒ Object
Returns the value of attribute skip_validations.
Class Method Summary collapse
Instance Method Summary collapse
- #admin? ⇒ Boolean
- #available_categories_ids ⇒ Object
- #available_nomenclature_ids ⇒ Object
- #legal_person? ⇒ Boolean
- #natural_person? ⇒ Boolean
- #password ⇒ Object
- #password=(password) ⇒ Object
- #to_s ⇒ Object
- #user_type=(value) ⇒ Object
- #valid_password?(password) ⇒ Boolean
Instance Attribute Details
#skip_validations ⇒ Object
Returns the value of attribute skip_validations.
40 41 42 |
# File 'lib/subj_model/user.rb', line 40 def skip_validations @skip_validations end |
Class Method Details
.get_by_email(email) ⇒ Object
58 59 60 |
# File 'lib/subj_model/user.rb', line 58 def self.get_by_email(email) self.where(:email => email).first end |
Instance Method Details
#admin? ⇒ Boolean
78 79 80 |
# File 'lib/subj_model/user.rb', line 78 def admin? self.user_type == 'админ' end |
#available_categories_ids ⇒ Object
86 87 88 |
# File 'lib/subj_model/user.rb', line 86 def available_categories_ids Category.joins(:nomenclatures).where("nomenclatures.id IN (?) OR nomenclatures.is_professional=FALSE", available_nomenclature_ids).uniq.pluck(:id) end |
#available_nomenclature_ids ⇒ Object
82 83 84 |
# File 'lib/subj_model/user.rb', line 82 def available_nomenclature_ids Nomenclature.joins(access_groups: [user_specializations: :users]).where("users.id" => self.id).uniq.pluck(:id) end |
#legal_person? ⇒ Boolean
50 51 52 |
# File 'lib/subj_model/user.rb', line 50 def legal_person? user_type == USER_TYPES.key(LEGAL_PERSON) end |
#natural_person? ⇒ Boolean
46 47 48 |
# File 'lib/subj_model/user.rb', line 46 def natural_person? user_type == USER_TYPES.key(NATURAL_PERSON) end |
#password ⇒ Object
66 67 68 |
# File 'lib/subj_model/user.rb', line 66 def password self.encrypted_password end |
#password=(password) ⇒ Object
62 63 64 |
# File 'lib/subj_model/user.rb', line 62 def password=(password) self.encrypted_password = encrypt_password(password) unless password.blank? end |
#to_s ⇒ Object
74 75 76 |
# File 'lib/subj_model/user.rb', line 74 def to_s email end |
#user_type=(value) ⇒ Object
54 55 56 |
# File 'lib/subj_model/user.rb', line 54 def user_type=(value) super(check_string_for_int(value)) end |
#valid_password?(password) ⇒ Boolean
70 71 72 |
# File 'lib/subj_model/user.rb', line 70 def valid_password?(password) self.encrypted_password == encrypt_password(password) end |