From 245b534c83abb79ed21b9a2b72f8c4cd0cad1470 Mon Sep 17 00:00:00 2001
From: Toshi MARUYAMA
Date: Sun, 20 Nov 2011 06:13:26 +0000
Subject: [PATCH] attachment: add a new feature to switch "side by side" and
"inline" for patches (#9612)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7860 e93f8b46-1217-0410-a6f0-8f06a7374b81
---
app/controllers/attachments_controller.rb | 2 ++
app/views/attachments/diff.html.erb | 11 +++++++++--
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/app/controllers/attachments_controller.rb b/app/controllers/attachments_controller.rb
index b0e09cb80..9e6dd4cb8 100644
--- a/app/controllers/attachments_controller.rb
+++ b/app/controllers/attachments_controller.rb
@@ -27,6 +27,8 @@ class AttachmentsController < ApplicationController
format.html {
if @attachment.is_diff?
@diff = File.new(@attachment.diskfile, "rb").read
+ @diff_type = params[:type] || User.current.pref[:diff_type] || 'inline'
+ @diff_type = 'inline' unless %w(inline sbs).include?(@diff_type)
render :action => 'diff'
elsif @attachment.is_text? && @attachment.filesize <= Setting.file_max_size_displayed.to_i.kilobyte
@content = File.new(@attachment.diskfile, "rb").read
diff --git a/app/views/attachments/diff.html.erb b/app/views/attachments/diff.html.erb
index 96047926f..fa4e182fc 100644
--- a/app/views/attachments/diff.html.erb
+++ b/app/views/attachments/diff.html.erb
@@ -5,9 +5,16 @@
<%= link_to_user(@attachment.author) %>, <%= format_time(@attachment.created_on) %>
<%= link_to_attachment @attachment, :text => l(:button_download), :download => true -%>
(<%= number_to_human_size @attachment.filesize %>)
-
-
+
+<% form_tag({}, :method => 'get') do %>
+
+ <%= select_tag 'type',
+ options_for_select(
+ [[l(:label_diff_inline), "inline"], [l(:label_diff_side_by_side), "sbs"]], @diff_type),
+ :onchange => "if (this.value != '') {this.form.submit()}" %>
+<% end %>
+
<%= render :partial => 'common/diff', :locals => {:diff => @diff, :diff_type => @diff_type} %>
<% html_title @attachment.filename %>