Defect #36561 ยป defect-36561.patch
| app/controllers/wiki_controller.rb | ||
|---|---|---|
| 89 | 89 | 
    end  | 
| 90 | 90 | 
    @content = @page.content_for_version(params[:version])  | 
| 91 | 91 | 
    if @content.nil?  | 
| 92 | 
    if User.current.allowed_to?(:edit_wiki_pages, @project) && editable? && !api_request?  | 
|
| 92 | 
          if params[:version].blank? && User.current.allowed_to?(:edit_wiki_pages, @project) && editable? && !api_request?
   | 
|
| 93 | 93 | 
    edit  | 
| 94 | 94 | 
    render :action => 'edit'  | 
| 95 | 95 | 
    else  | 
| app/models/wiki_page.rb | ||
|---|---|---|
| 162 | 162 | 
    end  | 
| 163 | 163 | |
| 164 | 164 | 
    def content_for_version(version=nil)  | 
| 165 | 
    if content  | 
|
| 166 | 
    result = content.versions.find_by_version(version.to_i) if version  | 
|
| 167 | 
    result ||= content  | 
|
| 168 | 
    result  | 
|
| 169 | 
    end  | 
|
| 165 | 
    (content && version) ? content.versions.find_by_version(version.to_i) : content  | 
|
| 170 | 166 | 
    end  | 
| 171 | 167 | |
| 172 | 168 | 
    def diff(version_to=nil, version_from=nil)  | 
| test/functional/wiki_controller_test.rb | ||
|---|---|---|
| 201 | 201 | 
    assert_select 'select[name=?] option[value="2"][selected=selected]', 'wiki_page[parent_id]'  | 
| 202 | 202 | 
    end  | 
| 203 | 203 | |
| 204 | 
    def test_show_unexistent_version_page  | 
|
| 205 | 
    @request.session[:user_id] = 2  | 
|
| 206 | 
        get :show, :params => {:project_id => 1, :id => 'CookBook_documentation', :version => 100}
   | 
|
| 207 | 
    assert_response 404  | 
|
| 208 | 
    end  | 
|
| 209 | ||
| 204 | 210 | 
    def test_show_should_not_show_history_without_permission  | 
| 205 | 211 | 
    Role.anonymous.remove_permission! :view_wiki_edits  | 
| 206 | 212 | 
        get :show, :params => {:project_id => 1, :id => 'Page with sections', :version => 2}
   |