diff --git a/app/controllers/wiki_controller.rb b/app/controllers/wiki_controller.rb index 53c5ec5..0a2af29 100644 --- a/app/controllers/wiki_controller.rb +++ b/app/controllers/wiki_controller.rb @@ -119,6 +119,12 @@ class WikiController < ApplicationController @annotate = @page.annotate(params[:version]) end + def delete + @page = @wiki.find_page(params[:page]) + @page.delete_version(params[:version]) if @page + redirect_to :action => 'history', :id => @project, :page => @page.title + end + # remove a wiki page and its history def destroy @page = @wiki.find_page(params[:page]) diff --git a/app/models/wiki_page.rb b/app/models/wiki_page.rb index 8ce71cb..3cde805 100644 --- a/app/models/wiki_page.rb +++ b/app/models/wiki_page.rb @@ -71,6 +71,10 @@ class WikiPage < ActiveRecord::Base WikiPage.pretty_title(title) end + def delete_version(version) + content.versions.find_by_version(version.to_i) + end + def content_for_version(version=nil) result = content.versions.find_by_version(version.to_i) if version result ||= content diff --git a/app/views/wiki/history.rhtml b/app/views/wiki/history.rhtml index 6462e9f..e7a8ba2 100644 --- a/app/views/wiki/history.rhtml +++ b/app/views/wiki/history.rhtml @@ -12,6 +12,7 @@