Class: WikiSweeper

Inherits:
ActionController::Caching::Sweeper
  • Object
show all
Defined in:
app/models/wiki_sweeper.rb

Overview

Motiro - A project tracking tool Copyright (C) 2006-2008 Thiago Arrais

This program is free software; you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation; either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Instance Method Summary collapse

Instance Method Details

#after_save(page) ⇒ Object



21
22
23
24
25
26
27
28
# File 'app/models/wiki_sweeper.rb', line 21

def after_save(page)
  expire_referers(page) if page.revisions.size > 1 &&
                           page.revisions[-1].done != page.revisions[-2].done

  expire_fragment(fragments_for(page))
  cache_dir = ActionController::Base.page_cache_directory
  FileUtils.rm_r(Dir.glob(cache_dir+"/wiki/history/#{page.name}*")) rescue Errno::ENOENT
end