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])