diff options
Diffstat (limited to 'app/controllers')
| -rw-r--r-- | app/controllers/revisions_controller.rb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/app/controllers/revisions_controller.rb b/app/controllers/revisions_controller.rb index 4b0c549..0aed243 100644 --- a/app/controllers/revisions_controller.rb +++ b/app/controllers/revisions_controller.rb | |||
| @@ -29,8 +29,13 @@ class RevisionsController < ApplicationController | |||
| 29 | redirect_to(node_path(@node)) and return | 29 | redirect_to(node_path(@node)) and return |
| 30 | end | 30 | end |
| 31 | 31 | ||
| 32 | @locale_summary = @end.locale_diff_summary(@start) | ||
| 33 | requested_locale = params[:locale].presence&.to_sym | ||
| 34 | default_locale = @locale_summary.find { |s| s[:changed] }&.dig(:locale) || I18n.default_locale | ||
| 35 | @locale = @locale_summary.any? { |s| s[:locale] == requested_locale } ? requested_locale : default_locale | ||
| 36 | |||
| 32 | @diff_view = params[:view] == "side_by_side" ? :side_by_side : :inline | 37 | @diff_view = params[:view] == "side_by_side" ? :side_by_side : :inline |
| 33 | @diff = @end.diff_against(@start, view: @diff_view) | 38 | @diff = @end.diff_against(@start, view: @diff_view, locale: @locale) |
| 34 | @available_layer_pairs = @node.available_layer_pairs | 39 | @available_layer_pairs = @node.available_layer_pairs |
| 35 | @locked_by_other = @node.locked? && @node.lock_owner != current_user | 40 | @locked_by_other = @node.locked? && @node.lock_owner != current_user |
| 36 | end | 41 | end |
