X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/2f66877696957886b9c75026c9133c1d5430d772..c7e038a4d098ef9f42eb13edf29aef24cbd537ef:/app/controllers/messages_controller.rb diff --git a/app/controllers/messages_controller.rb b/app/controllers/messages_controller.rb index 658c43483..7162b900a 100644 --- a/app/controllers/messages_controller.rb +++ b/app/controllers/messages_controller.rb @@ -49,7 +49,7 @@ class MessagesController < ApplicationController elsif @message.save flash[:notice] = t ".message_sent" UserMailer.message_notification(@message).deliver_later if @message.notify_recipient? - redirect_to :action => :inbox + redirect_to messages_inbox_path else @title = t "messages.new.title" render :action => "new" @@ -66,7 +66,7 @@ class MessagesController < ApplicationController referer = safe_referer(params[:referer]) if params[:referer] - redirect_to referer || { :action => :inbox }, :status => :see_other + redirect_to referer || messages_inbox_path, :status => :see_other end rescue ActiveRecord::RecordNotFound @title = t "messages.no_such_message.title" @@ -88,6 +88,16 @@ class MessagesController < ApplicationController @title = @message.title + render :action => "new" + elsif message.sender == current_user + @message = Message.new( + :recipient => message.recipient, + :title => "Re: #{message.title.sub(/^Re:\s*/, '')}", + :body => "On #{message.sent_on} #{message.sender.display_name} wrote:\n\n#{message.body.gsub(/^/, '> ')}" + ) + + @title = @message.title + render :action => "new" else flash[:notice] = t ".wrong_user", :user => current_user.display_name @@ -98,23 +108,6 @@ class MessagesController < ApplicationController render :action => "no_such_message", :status => :not_found end - # Display the list of messages that have been sent to the user. - def inbox - @title = t ".title" - end - - # Display the list of messages that the user has sent to other users. - def outbox - @title = t ".title" - end - - # Display the list of muted messages received by the user. - def muted - @title = t ".title" - - redirect_to inbox_messages_path if current_user.muted_messages.none? - end - # Set the message as being read or unread. def mark @message = current_user.messages.unscope(:where => :muted).find(params[:message_id]) @@ -129,9 +122,9 @@ class MessagesController < ApplicationController if @message.save flash[:notice] = notice if @message.muted? - redirect_to muted_messages_path, :status => :see_other + redirect_to messages_muted_inbox_path, :status => :see_other else - redirect_to inbox_messages_path, :status => :see_other + redirect_to messages_inbox_path, :status => :see_other end end rescue ActiveRecord::RecordNotFound @@ -150,9 +143,9 @@ class MessagesController < ApplicationController end if current_user.muted_messages.none? - redirect_to inbox_messages_path + redirect_to messages_inbox_path else - redirect_to muted_messages_path + redirect_to messages_muted_inbox_path end end