diff --git a/lib/jam_ruby/models/user.rb b/lib/jam_ruby/models/user.rb index 7cffb60cb..319cd5da5 100644 --- a/lib/jam_ruby/models/user.rb +++ b/lib/jam_ruby/models/user.rb @@ -82,7 +82,7 @@ module JamRuby has_secure_password before_save { |user| user.email = email.downcase } - before_save :create_remember_token + before_save :create_remember_token, :if => :should_validate_password? validates :first_name, presence: true, length: {maximum: 50} validates :last_name, presence: true, length: {maximum: 50} @@ -92,7 +92,6 @@ module JamRuby validates_length_of :password, minimum: 6, maximum: 100, :if => :should_validate_password? validates_presence_of :password_confirmation, :if => :should_validate_password? - #validates :password_confirmation, presence: true validates_confirmation_of :password, :if => :should_validate_password? def online @@ -144,7 +143,15 @@ module JamRuby end def confirm_email! - self.email_confirmed = true + self.email_confirmed = true + end + + def my_session_settings + unless self.session_settings.nil? + return JSON.parse(self.session_settings) + else + return "" + end end def to_s @@ -302,6 +309,23 @@ module JamRuby JamRuby::UserFavorite.delete_all "(user_id = '#{user_id}' AND recording_id = '#{recording_id}')" end + def self.save_session_settings(user, music_session) + unless user.nil? + + session_settings = { :band_id => music_session.band_id, + :musician_access => music_session.musician_access, + :approval_required => music_session.approval_required, + :fan_chat => music_session.fan_chat, + :fan_access => music_session.fan_access, + :description => music_session.description, + :genres => music_session.genres + }.to_json + + user.session_settings = session_settings + user.save + end + end + # throws ActiveRecord::RecordNotFound if instrument is invalid # throws an email delivery error if unable to connect out to SMTP def self.signup(first_name, last_name, email, password, password_confirmation,