VRFS-1668 merge with test fixes for notification changes

This commit is contained in:
Brian Smith 2014-05-15 01:06:48 -04:00
commit baee1b7506
10 changed files with 69 additions and 13 deletions

View File

@ -46,7 +46,6 @@ message ClientMessage {
SCHEDULED_SESSION_REMINDER = 181;
SCHEDULED_SESSION_COMMENT = 182;
// recording notifications
MUSICIAN_RECORDING_SAVED = 200;
BAND_RECORDING_SAVED = 205;

View File

@ -66,6 +66,8 @@ require "jam_ruby/models/max_mind_isp"
require "jam_ruby/models/band_genre"
require "jam_ruby/models/genre"
require "jam_ruby/models/user"
require "jam_ruby/models/rsvp_request"
require "jam_ruby/models/rsvp_slot"
require "jam_ruby/models/user_observer"
require "jam_ruby/models/user_authorization"
require "jam_ruby/models/join_request"

View File

@ -452,14 +452,14 @@ module JamRuby
)
end
# SCHEDULED_SESSION_RSVP = 175;
# SCHEDULED_SESSION_RSVP_APPROVED = 176;
# SCHEDULED_SESSION_RSVP_CANCELLED = 177;
# SCHEDULED_SESSION_RSVP_CANCELLED_ORG = 178;
# SCHEDULED_SESSION_CANCELLED = 179;
# SCHEDULED_SESSION_RESCHEDULED = 180;
# SCHEDULED_SESSION_REMINDER = 181;
# SCHEDULED_SESSION_COMMENT = 182;
# SCHEDULED_SESSION_RSVP = 175;
# SCHEDULED_SESSION_RSVP_APPROVED = 176;
# SCHEDULED_SESSION_RSVP_CANCELLED = 177;
# SCHEDULED_SESSION_RSVP_CANCELLED_ORG = 178;
# SCHEDULED_SESSION_CANCELLED = 179;
# SCHEDULED_SESSION_RESCHEDULED = 180;
# SCHEDULED_SESSION_REMINDER = 181;
# SCHEDULED_SESSION_COMMENT = 182;
def scheduled_session_rsvp(receiver_id, session_id, photo_url, msg, slots, instruments, session_name, session_date, notification_id, created_at)
scheduled_session_rsvp = Jampb::ScheduledSessionRsvp.new(
@ -479,7 +479,6 @@ module JamRuby
)
end
def band_session_join(receiver_id, session_id, photo_url, fan_access, musician_access, approval_required, msg, notification_id, created_at)
band_session_join = Jampb::BandSessionJoin.new(
:session_id => session_id,

View File

@ -0,0 +1,17 @@
module JamRuby
class RsvpRequest < ActiveRecord::Base
belongs_to :user, :class_name => "JamRuby::User"
belongs_to :rsvp_slot, :class_name => "JamRuby::RsvpSlot"
validates :message, length: {maximum: 1000}, no_profanity: true
validates :chosen, :inclusion => {:in => [nil, true, false]}
validates :canceled, :inclusion => {:in => [nil, true, false]}
validates :rsvp_slot, presence: true
# XXX we need to validate that only one RsvpRequest.chosen = true for a given RsvpSlot
# in other words, you can have many requests to a slot, but only 0 or 1 rsvp_request.chosen = true)
end
end

View File

@ -0,0 +1,10 @@
module JamRuby
class RsvpSlot < ActiveRecord::Base
belongs_to :instrument, :class_name => "JamRuby::Instrument"
belongs_to :music_session
has_many :rsvp_requests, :class_name => "JamRuby::RsvpRequest"
# TODO: validates :proficiency_level
end
end

View File

@ -458,4 +458,18 @@ FactoryGirl.define do
creator JamRuby::Diagnostic::CLIENT
data Faker::Lorem.sentence
end
factory :rsvp_slot, class: JamRuby::RsvpSlot do
association :instrument, factory: :instrument
association :music_session, factory: :music_session
proficiency_level 'beginner'
end
factory :rsvp_request, class: JamRuby::RsvpRequest do
association :user, factory: :user
association :rsvp_slot, factory: :rsvp_slot
sequence(:message) { |n| "I want to join!#{n}" }
chosen false
canceled false
end
end

View File

@ -0,0 +1,8 @@
require 'spec_helper'
describe RsvpRequest do
it "success" do
FactoryGirl.create(:rsvp_request)
end
end

View File

@ -0,0 +1,8 @@
require 'spec_helper'
describe RsvpSlot do
it "success" do
FactoryGirl.create(:rsvp_slot)
end
end

View File

@ -33,8 +33,9 @@
JOIN_REQUEST_REJECTED : "JOIN_REQUEST_REJECTED",
SESSION_JOIN : "SESSION_JOIN",
SESSION_DEPART : "SESSION_DEPART",
MUSICIAN_SESSION_JOIN : "MUSICIAN_SESSION_JOIN",
TRACKS_CHANGED : "TRACKS_CHANGED",
MUSICIAN_SESSION_JOIN : "MUSICIAN_SESSION_JOIN",
BAND_SESSION_JOIN : "BAND_SESSION_JOIN",
SCHEDULED_SESSION_INVITATION : "SCHEDULED_SESSION_INVITATION",
SCHEDULED_SESSION_RSVP : "SCHEDULED_SESSION_RSVP",
SCHEDULED_SESSION_RSVP_APPROVED : "SCHEDULED_SESSION_RSVP_APPROVED",
@ -56,7 +57,6 @@
// band notifications
BAND_INVITATION : "BAND_INVITATION",
BAND_INVITATION_ACCEPTED : "BAND_INVITATION_ACCEPTED",
BAND_SESSION_JOIN : "BAND_SESSION_JOIN",
// text message
TEXT_MESSAGE : "TEXT_MESSAGE",

View File

@ -807,7 +807,6 @@
}
notifyQueue.push({message: message, descriptor: buttons});
// JW - speeding up the in/out parts of notify. Extending non-moving time.
$notify.slideDown(250)
.delay(4000)