diff --git a/ruby/lib/jam_ruby/app/mailers/user_mailer.rb b/ruby/lib/jam_ruby/app/mailers/user_mailer.rb
index 22a66b54e..6a5d5ec92 100644
--- a/ruby/lib/jam_ruby/app/mailers/user_mailer.rb
+++ b/ruby/lib/jam_ruby/app/mailers/user_mailer.rb
@@ -218,31 +218,176 @@
end
end
- def scheduled_session_invitation(email, msg, session_id)
+ def scheduled_session_invitation(email, msg, session)
+ subject = "Session Invitation"
+ unique_args = {:type => "scheduled_session_invitation"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
- def scheduled_session_rsvp(email, msg)
+ def scheduled_session_rsvp(email, msg, session)
+ subject = "Session RSVP"
+ unique_args = {:type => "scheduled_session_rsvp"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
- def scheduled_session_rsvp_approved(email, msg)
+ def scheduled_session_rsvp_approved(email, msg, session)
+ subject = "Session RSVP Approved"
+ unique_args = {:type => "scheduled_session_rsvp_approved"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
- def scheduled_session_rsvp_cancelled(email, msg)
+ def scheduled_session_rsvp_cancelled(email, msg, session)
+ subject = "Session RSVP Cancelled"
+ unique_args = {:type => "scheduled_session_rsvp_cancelled"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
- def scheduled_session_rsvp_cancelled_org(email, msg)
+ def scheduled_session_rsvp_cancelled_org(email, msg, session)
+ subject = "Your Session RSVP Cancelled"
+ unique_args = {:type => "scheduled_session_rsvp_cancelled_org"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
- def scheduled_session_cancelled(email, msg)
+ def scheduled_session_cancelled(email, msg, session)
+ subject = "Session Cancelled"
+ unique_args = {:type => "scheduled_session_cancelled"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
- def scheduled_session_rescheduled(email, msg)
+ def scheduled_session_rescheduled(email, msg, session)
+ subject = "Session Rescheduled"
+ unique_args = {:type => "scheduled_session_rescheduled"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
- def scheduled_session_reminder(email, msg)
+ def scheduled_session_reminder(email, msg, session)
+ subject = "Session Rescheduled"
+ unique_args = {:type => "scheduled_session_reminder"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
- def scheduled_session_comment(email, msg)
+ def scheduled_session_comment(email, msg, comment, session)
+ subject = "New Session Comment"
+ unique_args = {:type => "scheduled_session_comment"}
+ @body = msg
+ @session_name = session.description
+ @session_date = session.scheduled_start
+ @comment = comment
+ @session_url = "#{APP_CONFIG.external_root_url}/sessions/#{session.id}/details"
+ sendgrid_category "Notification"
+ sendgrid_unique_args :type => unique_args[:type]
+
+ sendgrid_recipients([email])
+ sendgrid_substitute('@USERID', [User.id_for_email(email)])
+
+ mail(:to => email, :subject => subject) do |format|
+ format.text
+ format.html
+ end
end
def band_session_join(email, msg, session_id)
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_cancelled.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_cancelled.html.erb
index e69de29bb..d0ff59dc2 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_cancelled.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_cancelled.html.erb
@@ -0,0 +1,5 @@
+<% provide(:title, 'Scheduled Session Cancelled') %>
+
+
<%= @body %>
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_cancelled.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_cancelled.text.erb
index e69de29bb..40ec73f65 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_cancelled.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_cancelled.text.erb
@@ -0,0 +1,6 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_comment.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_comment.html.erb
index e69de29bb..7ebe56c8f 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_comment.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_comment.html.erb
@@ -0,0 +1,7 @@
+<% provide(:title, 'Scheduled Session Comment') %>
+
+<%= @body %>
+
+<%= @comment %>
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_comment.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_comment.text.erb
index e69de29bb..6a7dc5f59 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_comment.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_comment.text.erb
@@ -0,0 +1,8 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+<%= @comment %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_invitation.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_invitation.html.erb
index e69de29bb..7e62e683a 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_invitation.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_invitation.html.erb
@@ -0,0 +1,10 @@
+<% provide(:title, 'Scheduled Session Invitation') %>
+
+<%= @body %>
+
+
+ <%= @session_name %>
+ <%= @session_date %>
+
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_invitation.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_invitation.text.erb
index e69de29bb..40ec73f65 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_invitation.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_invitation.text.erb
@@ -0,0 +1,6 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_reminder.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_reminder.html.erb
index e69de29bb..1521bd74a 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_reminder.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_reminder.html.erb
@@ -0,0 +1,10 @@
+<% provide(:title, 'Scheduled Session Reminder') %>
+
+<%= @body %>
+
+
+ <%= @session_name %>
+ <%= @session_date %>
+
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_reminder.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_reminder.text.erb
index e69de29bb..40ec73f65 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_reminder.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_reminder.text.erb
@@ -0,0 +1,6 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rescheduled.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rescheduled.html.erb
index e69de29bb..e0e534018 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rescheduled.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rescheduled.html.erb
@@ -0,0 +1,10 @@
+<% provide(:title, 'Scheduled Session Reschedule') %>
+
+<%= @body %>
+
+
+ <%= @session_name %>
+ <%= @session_date %>
+
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rescheduled.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rescheduled.text.erb
index e69de29bb..40ec73f65 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rescheduled.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rescheduled.text.erb
@@ -0,0 +1,6 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp.html.erb
index e69de29bb..c615903a8 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp.html.erb
@@ -0,0 +1,10 @@
+<% provide(:title, 'Scheduled Session RSVP') %>
+
+<%= @body %>
+
+
+ <%= @session_name %>
+ <%= @session_date %>
+
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp.text.erb
index e69de29bb..40ec73f65 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp.text.erb
@@ -0,0 +1,6 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_approved.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_approved.html.erb
index e69de29bb..03305ce72 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_approved.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_approved.html.erb
@@ -0,0 +1,10 @@
+<% provide(:title, 'Scheduled Session RSVP Approved') %>
+
+<%= @body %>
+
+
+ <%= @session_name %>
+ <%= @session_date %>
+
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_approved.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_approved.text.erb
index e69de29bb..40ec73f65 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_approved.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_approved.text.erb
@@ -0,0 +1,6 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled.html.erb
index e69de29bb..b7740ea1a 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled.html.erb
@@ -0,0 +1,10 @@
+<% provide(:title, 'Scheduled Session RSVP Cancelled') %>
+
+<%= @body %>
+
+
+ <%= @session_name %>
+ <%= @session_date %>
+
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled.text.erb
index e69de29bb..40ec73f65 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled.text.erb
@@ -0,0 +1,6 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled_org.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled_org.html.erb
index e69de29bb..3cfa830d0 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled_org.html.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled_org.html.erb
@@ -0,0 +1,10 @@
+<% provide(:title, 'Scheduled Session RSVP Cancelled By Organizer') %>
+
+<%= @body %>
+
+
+ <%= @session_name %>
+ <%= @session_date %>
+
+
+View Session Details
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled_org.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled_org.text.erb
index e69de29bb..40ec73f65 100644
--- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled_org.text.erb
+++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/scheduled_session_rsvp_cancelled_org.text.erb
@@ -0,0 +1,6 @@
+<%= @body %>
+
+<%= @session_name %>
+<%= @session_date %>
+
+See session details at <%= @session_url %>.
\ No newline at end of file
diff --git a/ruby/lib/jam_ruby/models/notification.rb b/ruby/lib/jam_ruby/models/notification.rb
index 71677e970..4ca4f1935 100644
--- a/ruby/lib/jam_ruby/models/notification.rb
+++ b/ruby/lib/jam_ruby/models/notification.rb
@@ -188,19 +188,19 @@ module JamRuby
return "A musician has cancelled an RSVP to your session."
when NotificationTypes::SCHEDULED_SESSION_RSVP_CANCELLED_ORG
- return "The session organizer has cancelled this session:"
+ return "The session organizer has cancelled your RSVP to this session."
when NotificationTypes::SCHEDULED_SESSION_CANCELLED
- return "The session organizer has cancelled this session:"
+ return "The session organizer has cancelled this session."
when NotificationTypes::SCHEDULED_SESSION_RESCHEDULED
- return "The following session has been rescheduled:"
+ return "The following session has been rescheduled."
when NotificationTypes::SCHEDULED_SESSION_REMINDER
return "A session to which you have RSVPd will begin in one hour, so get ready to play!"
when NotificationTypes::SCHEDULED_SESSION_COMMENT
- return "New message about session:"
+ return "New message about session."
# recording notifications
when NotificationTypes::MUSICIAN_RECORDING_SAVED
@@ -589,18 +589,26 @@ module JamRuby
notification_msg = format_msg(notification.description, {:user => source_user, :session => music_session})
- msg = @@message_factory.scheduled_session_invitation(
- target_user.id,
- music_session.id,
- source_user.photo_url,
- notification_msg,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_invitation(
+ target_user.id,
+ music_session.id,
+ source_user.photo_url,
+ notification_msg,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.scheduled_session_invitation(target_user.email, notification_msg, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send scheduled_session_invitation email to offline user #{target_user.email} #{e}")
+ end
+ end
end
def send_scheduled_session_rsvp(music_session, user, instruments)
@@ -616,20 +624,28 @@ module JamRuby
notification_msg = format_msg(notification.description, {:user => source_user, :session => music_session})
- msg = @@message_factory.scheduled_session_rsvp(
- target_user.id,
- music_session.id,
- source_user.photo_url,
- notification_msg,
- source_user.id,
- instruments,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_rsvp(
+ target_user.id,
+ music_session.id,
+ source_user.photo_url,
+ notification_msg,
+ source_user.id,
+ instruments,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.scheduled_session_rsvp(target_user.email, notification_msg, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send scheduled_session_rsvp email to offline user #{target_user.email} #{e}")
+ end
+ end
end
def send_scheduled_session_rsvp_approved(music_session, user)
@@ -645,17 +661,25 @@ module JamRuby
notification_msg = format_msg(notification.description, {:session => music_session})
- msg = @@message_factory.scheduled_session_rsvp_approved(
- target_user.id,
- music_session.id,
- notification_msg,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_rsvp_approved(
+ target_user.id,
+ music_session.id,
+ notification_msg,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.scheduled_session_rsvp_approved(target_user.email, notification_msg, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send scheduled_session_rsvp_approved email to offline user #{target_user.email} #{e}")
+ end
+ end
end
def send_scheduled_session_rsvp_cancelled(music_session, user)
@@ -671,17 +695,25 @@ module JamRuby
notification_msg = format_msg(notification.description, {:session => music_session})
- msg = @@message_factory.scheduled_session_rsvp_cancelled(
- target_user.id,
- music_session.id,
- notification_msg,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_rsvp_cancelled(
+ target_user.id,
+ music_session.id,
+ notification_msg,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.send_scheduled_session_rsvp_cancelled(target_user.email, notification_msg, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send send_scheduled_session_rsvp_cancelled email to offline user #{target_user.email} #{e}")
+ end
+ end
end
def send_scheduled_session_rsvp_cancelled_org(music_session, user)
@@ -697,17 +729,25 @@ module JamRuby
notification_msg = format_msg(notification.description, {:session => music_session})
- msg = @@message_factory.scheduled_session_rsvp_cancelled_org(
- target_user.id,
- music_session.id,
- notification_msg,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_rsvp_cancelled_org(
+ target_user.id,
+ music_session.id,
+ notification_msg,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.scheduled_session_rsvp_cancelled_org(target_user.email, notification_msg, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send scheduled_session_rsvp_cancelled_org email to offline user #{target_user.email} #{e}")
+ end
+ end
end
def send_scheduled_session_cancelled(music_session)
@@ -726,17 +766,25 @@ module JamRuby
notification_msg = format_msg(notification.description, {:session => music_session})
- msg = @@message_factory.scheduled_session_cancelled(
- target_user.id,
- music_session.id,
- notification_msg,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_cancelled(
+ target_user.id,
+ music_session.id,
+ notification_msg,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.scheduled_session_cancelled(target_user.email, notification_msg, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send scheduled_session_cancelled email to offline user #{target_user.email} #{e}")
+ end
+ end
end
end
@@ -756,17 +804,25 @@ module JamRuby
notification_msg = format_msg(notification.description, {:session => music_session})
- msg = @@message_factory.scheduled_session_rescheduled(
- target_user.id,
- music_session.id,
- notification_msg,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_rescheduled(
+ target_user.id,
+ music_session.id,
+ notification_msg,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.scheduled_session_rescheduled(target_user.email, notification_msg, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send scheduled_session_rescheduled email to offline user #{target_user.email} #{e}")
+ end
+ end
end
end
@@ -786,17 +842,25 @@ module JamRuby
notification_msg = format_msg(notification.description, {:session => music_session})
- msg = @@message_factory.scheduled_session_reminder(
- target_user.id,
- music_session.id,
- notification_msg,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_reminder(
+ target_user.id,
+ music_session.id,
+ notification_msg,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.scheduled_session_reminder(target_user.email, notification_msg, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send scheduled_session_reminder email to offline user #{target_user.email} #{e}")
+ end
+ end
end
end
@@ -816,18 +880,26 @@ module JamRuby
notification_msg = format_msg(notification.description, {:session => music_session})
- msg = @@message_factory.scheduled_session_comment(
- target_user.id,
- music_session.id,
- notification_msg,
- comment,
- music_session.description,
- music_session.scheduled_start,
- notification.id,
- notification.created_date
- )
+ if target_user.online
+ msg = @@message_factory.scheduled_session_comment(
+ target_user.id,
+ music_session.id,
+ notification_msg,
+ comment,
+ music_session.description,
+ music_session.scheduled_start,
+ notification.id,
+ notification.created_date
+ )
- @@mq_router.publish_to_user(target_user.id, msg)
+ @@mq_router.publish_to_user(target_user.id, msg)
+ else
+ begin
+ UserMailer.scheduled_session_comment(target_user.email, notification_msg, comment, music_session).deliver
+ rescue => e
+ @@log.error("Unable to send scheduled_session_comment email to offline user #{target_user.email} #{e}")
+ end
+ end
end
end