diff options
Diffstat (limited to 'app/controllers')
| -rw-r--r-- | app/controllers/revisions_controller.rb | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/app/controllers/revisions_controller.rb b/app/controllers/revisions_controller.rb index 42d667e..9acb26f 100644 --- a/app/controllers/revisions_controller.rb +++ b/app/controllers/revisions_controller.rb | |||
| @@ -13,16 +13,18 @@ class RevisionsController < ApplicationController | |||
| 13 | 13 | ||
| 14 | def diff | 14 | def diff |
| 15 | @node = Node.find(params[:node_id]) | 15 | @node = Node.find(params[:node_id]) |
| 16 | 16 | ||
| 17 | if @node.pages.length > 1 | 17 | if @node.pages.length > 1 |
| 18 | params[:start_revision] ||= @node.pages.all[-2].revision | 18 | params[:start_revision] ||= @node.pages.all[-2].revision |
| 19 | params[:end_revision] ||= @node.pages.all[-1].revision | 19 | params[:end_revision] ||= @node.pages.all[-1].revision |
| 20 | else | 20 | else |
| 21 | params[:start], params[:end] = 1, 1 | 21 | params[:start_revision], params[:end_revision] = 1, 1 |
| 22 | end | 22 | end |
| 23 | 23 | ||
| 24 | @start = @node.pages.find_by_revision( params[:start_revision] ) | 24 | @start = @node.pages.find_by_revision( params[:start_revision] ) |
| 25 | @end = @node.pages.find_by_revision( params[:end_revision] ) | 25 | @end = @node.pages.find_by_revision( params[:end_revision] ) |
| 26 | @diff_view = params[:view] == "side_by_side" ? :side_by_side : :inline | ||
| 27 | @diff = @end.diff_against( @start, view: @diff_view ) | ||
| 26 | end | 28 | end |
| 27 | 29 | ||
| 28 | def show | 30 | def show |
