Deleted all references to PageRenderer from PageSet selectors; using wiki_references instead

This commit is contained in:
Alexey Verkhovsky 2005-09-11 08:05:19 +00:00
parent bec3c98227
commit 541a5d3994
7 changed files with 16 additions and 13 deletions

View file

@ -5,6 +5,8 @@ class ApplicationController < ActionController::Base
before_filter :set_utf8_http_header, :connect_to_model, :setup_url_generator
after_filter :remember_location, :teardown_url_generator
observer :page_observer
# For injecting a different wiki model implementation. Intended for use in tests
def self.wiki=(the_wiki)
# a global variable is used here because Rails reloads controller and model classes in the

View file

@ -4,10 +4,6 @@ class Page < ActiveRecord::Base
has_many :wiki_references, :order => 'referenced_page_name'
has_one :current_revision, :class_name => 'Revision', :order => 'id DESC'
def before_create
WikiReference.register_page_creation(self)
end
def revise(content, time, author, renderer)
revisions_size = new_record? ? 0 : revisions.size
if (revisions_size > 0) and content == current_revision.content

View file

@ -31,15 +31,18 @@ class PageSet < Array
end
def pages_that_reference(page_name)
self.select { |page| PageRenderer.new(page.revisions.last).wiki_references.include?(page_name) }
all_referring_pages = WikiReference.pages_that_reference(page_name)
self.select { |page| all_referring_pages.include?(page.name) }
end
def pages_that_link_to(page_name)
self.select { |page| PageRenderer.new(page.revisions.last).wiki_words.include?(page_name) }
all_linking_pages = WikiReference.pages_that_link_to(page_name)
self.select { |page| all_linking_pages.include?(page.name) }
end
def pages_that_include(page_name)
self.select { |page| PageRenderer.new(page.revisions.last).wiki_includes.include?(page_name) }
all_including_pages = WikiReference.pages_that_include(page_name)
self.select { |page| all_including_pages.include?(page.name) }
end
def pages_authored_by(author)
@ -78,7 +81,7 @@ class PageSet < Array
end
def wiki_words
self.inject([]) { |wiki_words, page| wiki_words << PageRenderer.new(page.revisions.last).wiki_words }.flatten.uniq
self.inject([]) { |wiki_words, page| WikiReference.wiki_words(page) }.flatten.uniq
end
def authors