class SakaiInfo::WikiPageHistory
Public Class Methods
all_serializations()
click to toggle source
# File lib/sakai-info/wiki.rb, line 280 def self.all_serializations [ :default, :permissions, :content, ] end
clear_cache()
click to toggle source
# File lib/sakai-info/wiki.rb, line 227 def self.clear_cache @@cache = {} end
find(id)
click to toggle source
# File lib/sakai-info/wiki.rb, line 232 def self.find(id) if @@cache[id].nil? row = DB.connect[:rwikihistory].filter(:id => id).first if row.nil? raise ObjectNotFoundException.new(WikiPageHistory, id) end @@cache[id] = WikiPageHistory.new(row) end @@cache[id] end
find_by_wiki_page_id(id)
click to toggle source
# File lib/sakai-info/wiki.rb, line 255 def self.find_by_wiki_page_id(id) results = [] DB.connect[:rwikihistory].filter(:rwikiobjectid => id). order(:revision).all.collect do |row| @@cache[row[:id]] = WikiPageHistory.new(row) results << @@cache[row[:id]] end results end
Public Instance Methods
content()
click to toggle source
# File lib/sakai-info/wiki.rb, line 243 def content @content ||= DB.connect[:rwikihistorycontent].where(:rwikiid => self.id).first[:content].read end
default_serialization()
click to toggle source
Calls superclass method
SakaiInfo::WikiPage#default_serialization
# File lib/sakai-info/wiki.rb, line 265 def default_serialization result = super result["current_version"] = self.wiki_page.serialize(:history_summary) result end
history_serialization()
click to toggle source
# File lib/sakai-info/wiki.rb, line 271 def history_serialization { "id" => self.id, "revision" => self.revision, "last_updated" => self.last_updated, "last_updated_by" => self.last_updated_by.eid, } end
wiki_page()
click to toggle source
# File lib/sakai-info/wiki.rb, line 251 def wiki_page @wiki_page ||= WikiPage.find(self.wiki_page_id) end
wiki_page_id()
click to toggle source
# File lib/sakai-info/wiki.rb, line 247 def wiki_page_id @dbrow[:rwikiobjectid] end