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