From 7bdca213fa9c158400e75d14dc2ba3caf3d22d38 Mon Sep 17 00:00:00 2001 From: Jonathan Kolyer Date: Tue, 23 Jul 2013 15:20:39 -0500 Subject: [PATCH] vrfs-310: added removed_music_session method, and after_destroy callback --- lib/jam_ruby/models/music_session.rb | 4 ++++ lib/jam_ruby/models/music_session_history.rb | 12 +++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/jam_ruby/models/music_session.rb b/lib/jam_ruby/models/music_session.rb index 31dbe5a53..828564905 100644 --- a/lib/jam_ruby/models/music_session.rb +++ b/lib/jam_ruby/models/music_session.rb @@ -23,6 +23,10 @@ module JamRuby after_save :require_at_least_one_genre, :limit_max_genres + after_destroy do |obj| + JamRuby::MusicSessionHistory.removed_music_session(obj.user_id, obj.id) + end + validates :description, :presence => true validates :fan_chat, :inclusion => {:in => [true, false]} validates :fan_access, :inclusion => {:in => [true, false]} diff --git a/lib/jam_ruby/models/music_session_history.rb b/lib/jam_ruby/models/music_session_history.rb index 7c83e9e4f..65e319984 100644 --- a/lib/jam_ruby/models/music_session_history.rb +++ b/lib/jam_ruby/models/music_session_history.rb @@ -56,5 +56,15 @@ module JamRuby session_history.genres = music_session.genres.map { |g| g.id }.join '|' session_history.save! end + + def self.removed_music_session(user_id, session_id) + hist = self + .where(:user_id => user_id) + .where(:music_session_id => session_id) + .limit(1) + .first + hist.update_attribute(:session_removed_at, Time.now) if hist + end + end -end \ No newline at end of file +end