class ExpertSessionsMailer

Public Instance Methods

completed_email(expert_session) click to toggle source

to send session completion email

# File app/mailers/expert_sessions_mailer.rb, line 107
def completed_email(expert_session)
  @user = expert_session.fixxpert
  @expert_session = expert_session
  @url = root_url
  mail(to: @user.email, bcc: Configurations::General.bcc_list, subject: "Appointment request updated") do |format|
    format.html { render :layout => 'mailer' }
  end
end
confirmed_email_customer(expert_session) click to toggle source

Sends confirmation email to customer if fixxpert accept the session request.

# File app/mailers/expert_sessions_mailer.rb, line 28
def confirmed_email_customer(expert_session)
  session_created_by = User.find(expert_session.user_id)
  @user = session_created_by
  @fixxpert = User.find(expert_session.fixxpert_id)
  @expert_session = expert_session
  @message = expert_session.messages.nil? ? "" : expert_session.messages.last.try(:message)
  @url = root_url
  if Configurations::BalancedPayment.enabled?
    @credits = session_created_by.credits
    @session_amount = (1.029 * (expert_session.total_amount.to_f + 0.30)).round(2)
  end
  attach_user_image(@fixxpert)
  mail(to: @user.email, bcc: Configurations::General.bcc_list,
    subject: "Appointment request accepted") do |format|
    format.html { render :layout => 'mailer' }
  end
end
confirmed_email_fixxpert(expert_session) click to toggle source

Sends confirmation email to fixxpert when fixxpert accept the session request.

# File app/mailers/expert_sessions_mailer.rb, line 47
def confirmed_email_fixxpert(expert_session)
  @customer = expert_session.created_by
  @expert_session = expert_session
  @user = User.find(@expert_session.fixxpert_id)
  @url = root_url
  attach_user_image(@customer)
  mail(to: @user.email, bcc: Configurations::General.bcc_list,
    subject: "Appointment request  accepted") do |format|
    format.html { render :layout => 'mailer' }
  end
end
create_email(expert_session) click to toggle source

Sends email to fixxpert when new expert session is created for that fixxpert

# File app/mailers/expert_sessions_mailer.rb, line 12
def create_email(expert_session)
  @user = expert_session.created_for
  @sender_user = expert_session.created_by
  @expert_session = expert_session
  if @user.customer?
    @url = root_url
  else
    @url = root_url
  end
  attach_user_image(@sender_user)
  mail(to: @user.email, bcc: Configurations::General.bcc_list, subject: "New Appointment request") do |format|
    format.html { render :layout => 'mailer' }
  end
end
new_comment_email(comment) click to toggle source

Send email to user when user comment on session.

# File app/mailers/expert_sessions_mailer.rb, line 92
def new_comment_email(comment)
  @comment = comment
  @user = @comment.for_user
  @expert_session = @comment.expert_session
  if @comment.fixxpert_comment?
    @url = root_url
  else
    @url = root_url
  end
  mail(to: @user.email, subject: "New comment") do |format|
    format.html { render :layout => 'mailer' }
  end
end
passed_unconfirmed_session_email_customer(expert_session) click to toggle source

Sends unconfirmation email to customer when customer reject the session request.

# File app/mailers/expert_sessions_mailer.rb, line 137
def passed_unconfirmed_session_email_customer(expert_session)
  @fixxpert = User.find(expert_session.fixxpert_id)
  @expert_session = expert_session
  @user = User.find(@expert_session.user_id)
  @url = root_url
  attach_user_image(@fixxpert)
  mail(to: @user.email, bcc: Configurations::General.bcc_list,
    subject: "Reschedule expert session") do |format|
    format.html { render :layout => 'mailer' }
  end
end
passed_unconfirmed_session_email_fixxpert(expert_session) click to toggle source

Sends unconfirmation mail to fixxpert when fixxpert reject the session request.

# File app/mailers/expert_sessions_mailer.rb, line 150
def passed_unconfirmed_session_email_fixxpert(expert_session)
  @customer = User.find(expert_session.user_id)
  @expert_session = expert_session
  @user = User.find(@expert_session.fixxpert_id)
  @url = root_url
  attach_user_image(@user)
  mail(to: @user.email, bcc: Configurations::General.bcc_list,
    subject: "Reschedule expert session") do |format|
    format.html { render :layout => 'mailer' }
  end
end
rate_change(user, new_rate, rate_change_reason) click to toggle source

Send request email to user to change the rate.

# File app/mailers/expert_sessions_mailer.rb, line 117
def rate_change(user, new_rate, rate_change_reason)
  @user = user
  @new_rate = new_rate
  @rate_change_reason = rate_change_reason
  mail(to: [@user.email, Setting.support_email], bcc: ENV["FIXXBOOK_BCC_LIST"], subject: "Request for rate change") do |format|
    format.html { render :layout => 'mailer' }
  end
end
rejected_email(expert_session, refund_credits = nil, current_user) click to toggle source

Sends email to customer when the session request is rejected.

# File app/mailers/expert_sessions_mailer.rb, line 60
def rejected_email(expert_session, refund_credits = nil, current_user)
  session_created_by = User.find(expert_session.user_id)
  session_created_for = User.find(expert_session.fixxpert_id)
  if current_user.id  == session_created_by.id
    @user = session_created_for
  else
    @user = session_created_by
  end
  @fixxpert = session_created_for
  @credits = refund_credits
  @expert_session = expert_session
  @invoice = expert_session.invoice
  @url = root_url
  attach_user_image(@fixxpert)
  mail(to: @user.email, bcc: Configurations::General.bcc_list, subject: "Appointment request rejected") do |format|
    format.html { render :layout => 'mailer' }
  end
end
session_messages(user, message, name) click to toggle source

Send email when user sends a message.

# File app/mailers/expert_sessions_mailer.rb, line 127
def session_messages(user, message, name)
  @user = user
  @name = name
  @message = message
  mail(to: [@user.email], bcc: Configurations::General.bcc_list, subject: "Message from #{name}") do |format|
    format.html { render :layout => 'mailer' }
  end
end
setup_expert_sessions_attachments() click to toggle source

default from: DEFAULT_MAIL_FROM

# File app/mailers/expert_sessions_mailer.rb, line 5
def setup_expert_sessions_attachments
  attachments.inline['confirm.png'] = File.read(File.join(Rails.root, 'app/assets/images/confirm.png'))
  attachments.inline['cancel.png'] = File.read(File.join(Rails.root, 'app/assets/images/cancel.png'))
  attachments.inline['calendar.png'] = File.read(File.join(Rails.root, 'app/assets/images/calendar.png'))
end
updated_email(expert_session, to, from) click to toggle source

Send update session email.

# File app/mailers/expert_sessions_mailer.rb, line 80
def updated_email(expert_session, to, from)
  @expert_session = expert_session
  @recipient = to
  @from = from
  @url = root_url
  attach_user_image(@from)
  mail(to: @recipient.email, bcc: Configurations::General.bcc_list, subject: "Appointment updated") do |format|
    format.html { render :layout => 'mailer' }
  end
end