Class: Gluttonberg::Member
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Gluttonberg::Member
- Defined in:
- app/models/gluttonberg/member.rb
Instance Attribute Summary collapse
-
#image_delete ⇒ Object
Returns the value of attribute image_delete.
-
#return_url ⇒ Object
Returns the value of attribute return_url.
-
#term_and_conditions ⇒ Object
Returns the value of attribute term_and_conditions.
Class Method Summary collapse
- .does_email_verification_required ⇒ Object
- .enable_members ⇒ Object
- .generate_password_hash ⇒ Object
- .generateRandomString(length = 10) ⇒ Object
Instance Method Summary collapse
- #assign_groups(group_ids) ⇒ Object
- #can_login? ⇒ Boolean
- #deliver_password_reset_instructions!(current_localization_slug = "") ⇒ Object
- #does_member_have_access_to_the_page?(page) ⇒ Boolean
- #full_name ⇒ Object
- #generate_confirmation_key ⇒ Object
- #groups_name(join_str = ", ") ⇒ Object
- #have_group?(groups) ⇒ Boolean
Instance Attribute Details
#image_delete ⇒ Object
Returns the value of attribute image_delete.
24 25 26 |
# File 'app/models/gluttonberg/member.rb', line 24 def image_delete @image_delete end |
#return_url ⇒ Object
Returns the value of attribute return_url.
23 24 25 |
# File 'app/models/gluttonberg/member.rb', line 23 def return_url @return_url end |
#term_and_conditions ⇒ Object
Returns the value of attribute term_and_conditions.
23 24 25 |
# File 'app/models/gluttonberg/member.rb', line 23 def term_and_conditions @term_and_conditions end |
Class Method Details
.does_email_verification_required ⇒ Object
65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'app/models/gluttonberg/member.rb', line 65 def self.does_email_verification_required if Rails.configuration.enable_members == true true elsif Rails.configuration.enable_members.kind_of? Hash if Rails.configuration.enable_members.has_key?(:email_verification) Rails.configuration.enable_members[:email_verification] else true end else false end end |
.enable_members ⇒ Object
61 62 63 |
# File 'app/models/gluttonberg/member.rb', line 61 def self.enable_members Rails.configuration.enable_members == true || Rails.configuration.enable_members.kind_of?(Hash) end |
.generate_password_hash ⇒ Object
83 84 85 86 87 88 89 |
# File 'app/models/gluttonberg/member.rb', line 83 def self.generate_password_hash password = self.generateRandomString password_hash = { :password => password , :password_confirmation => password } end |
.generateRandomString(length = 10) ⇒ Object
79 80 81 |
# File 'app/models/gluttonberg/member.rb', line 79 def self.generateRandomString(length=10) RandomStringGenerator.generate(length) end |
Instance Method Details
#assign_groups(group_ids) ⇒ Object
91 92 93 94 95 96 97 |
# File 'app/models/gluttonberg/member.rb', line 91 def assign_groups(group_ids) if !group_ids.blank? && group_ids.kind_of?(String) self.group_ids = [group_ids] else self.group_ids = group_ids end end |
#can_login? ⇒ Boolean
57 58 59 |
# File 'app/models/gluttonberg/member.rb', line 57 def can_login? !respond_to?(:can_login) || self.can_login == true end |
#deliver_password_reset_instructions!(current_localization_slug = "") ⇒ Object
44 45 46 47 |
# File 'app/models/gluttonberg/member.rb', line 44 def deliver_password_reset_instructions!(current_localization_slug = "") reset_perishable_token! MemberNotifier.password_reset_instructions(self.id,current_localization_slug).deliver end |
#does_member_have_access_to_the_page?(page) ⇒ Boolean
99 100 101 |
# File 'app/models/gluttonberg/member.rb', line 99 def does_member_have_access_to_the_page?( page) self.have_group?(page.groups) end |
#full_name ⇒ Object
40 41 42 |
# File 'app/models/gluttonberg/member.rb', line 40 def full_name "#{self.first_name} #{self.last_name}".strip end |
#generate_confirmation_key ⇒ Object
111 112 113 |
# File 'app/models/gluttonberg/member.rb', line 111 def generate_confirmation_key self.confirmation_key = Digest::SHA1.hexdigest(Time.now.to_s + rand(12341234).to_s)[1..24] end |
#groups_name(join_str = ", ") ⇒ Object
49 50 51 52 53 54 55 |
# File 'app/models/gluttonberg/member.rb', line 49 def groups_name(join_str=", ") unless groups.blank? groups.map{|g| g.name}.join(join_str) else "" end end |
#have_group?(groups) ⇒ Boolean
103 104 105 106 107 108 109 |
# File 'app/models/gluttonberg/member.rb', line 103 def have_group?(groups) if groups.find_all{|g| self.group_ids.include?(g.id) }.blank? false else true end end |