mirror of
https://github.com/redmine/redmine.git
synced 2025-11-08 14:26:04 +01:00
Return 404 if revision URL doesn't exist (#36561).
Patch by Mizuki ISHIKAWA. git-svn-id: http://svn.redmine.org/redmine/trunk@21413 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -89,7 +89,7 @@ class WikiController < ApplicationController
|
|||||||
end
|
end
|
||||||
@content = @page.content_for_version(params[:version])
|
@content = @page.content_for_version(params[:version])
|
||||||
if @content.nil?
|
if @content.nil?
|
||||||
if User.current.allowed_to?(:edit_wiki_pages, @project) && editable? && !api_request?
|
if params[:version].blank? && User.current.allowed_to?(:edit_wiki_pages, @project) && editable? && !api_request?
|
||||||
edit
|
edit
|
||||||
render :action => 'edit'
|
render :action => 'edit'
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -162,11 +162,7 @@ class WikiPage < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def content_for_version(version=nil)
|
def content_for_version(version=nil)
|
||||||
if content
|
(content && version) ? content.versions.find_by_version(version.to_i) : content
|
||||||
result = content.versions.find_by_version(version.to_i) if version
|
|
||||||
result ||= content
|
|
||||||
result
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def diff(version_to=nil, version_from=nil)
|
def diff(version_to=nil, version_from=nil)
|
||||||
|
|||||||
@@ -201,6 +201,12 @@ class WikiControllerTest < Redmine::ControllerTest
|
|||||||
assert_select 'select[name=?] option[value="2"][selected=selected]', 'wiki_page[parent_id]'
|
assert_select 'select[name=?] option[value="2"][selected=selected]', 'wiki_page[parent_id]'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_show_unexistent_version_page
|
||||||
|
@request.session[:user_id] = 2
|
||||||
|
get :show, :params => {:project_id => 1, :id => 'CookBook_documentation', :version => 100}
|
||||||
|
assert_response 404
|
||||||
|
end
|
||||||
|
|
||||||
def test_show_should_not_show_history_without_permission
|
def test_show_should_not_show_history_without_permission
|
||||||
Role.anonymous.remove_permission! :view_wiki_edits
|
Role.anonymous.remove_permission! :view_wiki_edits
|
||||||
get :show, :params => {:project_id => 1, :id => 'Page with sections', :version => 2}
|
get :show, :params => {:project_id => 1, :id => 'Page with sections', :version => 2}
|
||||||
|
|||||||
Reference in New Issue
Block a user