From dab53a1ef28ecc281d574b50d3433e806db375cd Mon Sep 17 00:00:00 2001 From: erdgeist Date: Sun, 2 Aug 2026 14:31:50 +0200 Subject: Keep the compared translation independent of the interface language --- app/controllers/revisions_controller.rb | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'app/controllers/revisions_controller.rb') diff --git a/app/controllers/revisions_controller.rb b/app/controllers/revisions_controller.rb index cddb9e72..b8e66218 100644 --- a/app/controllers/revisions_controller.rb +++ b/app/controllers/revisions_controller.rb @@ -8,9 +8,9 @@ class RevisionsController < ApplicationController layout 'admin' def index - @node = Node.find(params[:node_id]) - @pages = @node.pages.all - @locale = resolve_locale(params[:locale]) + @node = Node.find(params[:node_id]) + @pages = @node.pages.all + @translation_locale = resolve_locale(params[:translation_locale]) end def diff @@ -31,21 +31,21 @@ class RevisionsController < ApplicationController redirect_to(node_path(@node)) and return end - @locale_summary = @end.locale_diff_summary(@start) - requested_locale = params[:locale].presence&.to_sym - default_locale = @locale_summary.find { |s| s[:changed] }&.dig(:locale) || I18n.default_locale - @locale = @locale_summary.any? { |s| s[:locale] == requested_locale } ? requested_locale : default_locale + @locale_summary = @end.locale_diff_summary(@start) + requested_locale = params[:translation_locale].presence&.to_sym + default_locale = @locale_summary.find { |s| s[:changed] }&.dig(:locale) || I18n.default_locale + @translation_locale = @locale_summary.any? { |s| s[:locale] == requested_locale } ? requested_locale : default_locale @diff_view = params[:view] == "side_by_side" ? :side_by_side : :inline - @diff = @end.diff_against(@start, view: @diff_view, locale: @locale) + @diff = @end.diff_against(@start, view: @diff_view, locale: @translation_locale) @available_layer_pairs = @node.available_layer_pairs @locked_by_other = @node.locked? && @node.lock_owner != current_user end def show - @node = Node.find(params[:node_id]) - @page = @node.pages.find(params[:id]) - @locale = resolve_locale(params[:locale]) + @node = Node.find(params[:node_id]) + @page = @node.pages.find(params[:id]) + @translation_locale = resolve_locale(params[:translation_locale]) end def restore -- cgit v1.3