app/controllers/manage/messages_controller.rb in hackathon_manager-0.7.1 vs app/controllers/manage/messages_controller.rb in hackathon_manager-0.8.0
- old
+ new
@@ -6,11 +6,11 @@
def index
end
def datatable
- render json: MessageDatatable.new(view_context)
+ render json: BulkMessageDatatable.new(view_context)
end
def show
respond_with(:manage, @message)
end
@@ -38,10 +38,14 @@
@message.destroy
respond_with(:manage, @message)
end
def deliver
+ if @message.automated?
+ flash[:notice] = "Automated messages cannot be manually delivered. Only bulk messages can."
+ return redirect_to manage_message_path(@message)
+ end
if @message.status != "drafted"
flash[:notice] = "Message cannot be re-delivered"
return redirect_to manage_messages_path
end
@message.update_attribute(:queued_at, Time.now)
@@ -53,10 +57,17 @@
def preview
email = Mailer.bulk_message_email(@message.id, current_user.id)
render html: email.body.raw_source.html_safe
end
+ def live_preview
+ body = params[:body] || ''
+ message = Message.new(body: body)
+ email = Mailer.bulk_message_email(nil, current_user.id, message)
+ render html: email.body.raw_source.html_safe
+ end
+
def duplicate
new_message = @message.dup
new_message.update_attributes(
delivered_at: nil,
started_at: nil,
@@ -69,10 +80,10 @@
private
def message_params
params.require(:message).permit(
- :name, :subject, :template, :body, :trigger, recipients: []
+ :type, :name, :subject, :template, :body, :trigger, recipients: []
)
end
def set_message
@message = Message.find(params[:id])