From 1141f2bd2e3759ae0232c8026ee3e62ccd402ab0 Mon Sep 17 00:00:00 2001 From: Brian Smith Date: Thu, 5 Jun 2014 00:55:15 -0400 Subject: [PATCH] VRFS-1693 bug fixes --- ruby/lib/jam_ruby/models/music_session.rb | 38 ++++++----------------- 1 file changed, 9 insertions(+), 29 deletions(-) diff --git a/ruby/lib/jam_ruby/models/music_session.rb b/ruby/lib/jam_ruby/models/music_session.rb index 139825c5a..0b1912d4b 100644 --- a/ruby/lib/jam_ruby/models/music_session.rb +++ b/ruby/lib/jam_ruby/models/music_session.rb @@ -73,7 +73,7 @@ module JamRuby new_session.band_id = self.band_id new_session.fan_access = self.fan_access # TODO: confirm this logic - new_session.scheduled_start = self.scheduled_start + self.scheduled_duration + # new_session.scheduled_start = self.scheduled_start + self.scheduled_duration new_session.scheduled_duration = self.scheduled_duration new_session.musician_access = self.musician_access new_session.approval_required = self.approval_required @@ -85,34 +85,26 @@ module JamRuby new_session.recurring_mode = self.recurring_mode new_session.timezone = self.timezone new_session.open_rsvps = self.open_rsvps - new_session.save - - chosen_slots = [] # copy rsvp_slots, rsvp_requests, and rsvp_requests_rsvp_slots RsvpSlot.find_each(:conditions => "music_session_id = '#{self.id}'") do |slot| new_slot = RsvpSlot.new new_slot.instrument_id = slot.instrument_id new_slot.proficiency_level = slot.proficiency_level - new_slot.music_session_id = new_session.id - new_slot.save + new_session.rsvp_slots << new_slot # get the request for this slot that was approved (should only be ONE) rsvp_request_slot = RsvpRequestRsvpSlot.where("chosen = true AND rsvp_slot_id = ?", slot.id).first unless rsvp_request_slot.nil? - chosen_slots << rsvp_request_slot - rsvp = RsvpRequest.find_by_id(rsvp_request_slot.rsvp_request_id) new_rsvp = RsvpRequest.new new_rsvp.user_id = rsvp.user_id - new_rsvp.save new_rsvp_req_slot = RsvpRequestRsvpSlot.new - new_rsvp_req_slot.rsvp_request_id = new_rsvp.id - new_rsvp_req_slot.rsvp_slot_id = new_slot.id + new_rsvp_req_slot.rsvp_request = new_rsvp + new_rsvp_req_slot.rsvp_slot = new_slot new_rsvp_req_slot.chosen = true - new_rsvp_req_slot.save # if this slot was not chosen, try to get any RSVPs that were 1-time cancellations and copy those else @@ -126,13 +118,11 @@ module JamRuby if rsvp.canceled && !rsvp.cancel_all new_rsvp = RsvpRequest.new new_rsvp.user_id = rsvp.user_id - new_rsvp.save new_rsvp_req_slot = RsvpRequestRsvpSlot.new - new_rsvp_req_slot.rsvp_request_id = new_rsvp.id - new_rsvp_req_slot.rsvp_slot_id = new_slot.id + new_rsvp_req_slot.rsvp_request = new_rsvp + new_rsvp_req_slot.rsvp_slot = new_slot new_rsvp_req_slot.chosen = true - new_rsvp_req_slot.save break end end @@ -143,24 +133,14 @@ module JamRuby MusicNotation.find_each(:conditions => "music_session_id = '#{self.id}'") do |notation| new_notation = MusicNotation.new new_notation.user_id = notation.user_id - new_notation.music_session_id = new_session.id + new_notation.music_session = new_session new_notation.file_url = notation.file_url # new_notation.file_name = notation.file_name new_notation.size = notation.size - new_notation.save + new_session.music_notations << new_notation end - # copy invitations - # Invitation.find_each(:conditions => "music_session_id = '#{self.id}'") do |invitation| - # new_invitation = Invitation.new - # new_invitation.sender_id = invitation.sender_id - # new_invitation.receiver_id = invitation.receiver_id - # new_invitation.music_session_id = new_session.id - # new_invitation.save - - # user = User.find(new_invitation.receiver_id) - # Notification.send_scheduled_session_invitation(new_session, user) - # end + new_session.save # mark the next session as scheduled self.next_session_scheduled = true