* fixed Issue 61: Redmine xapian and dmsf problems

git-svn-id: http://redmine-dmsf.googlecode.com/svn/trunk/redmine_dmsf@110 5e329b0b-a2ee-ea63-e329-299493fc886d
This commit is contained in:
vit.jonas@gmail.com 2011-05-31 10:56:02 +00:00
parent 6e418d637e
commit 40d92128d7

View File

@ -28,6 +28,9 @@ class DmsfFile < ActiveRecord::Base
unloadable unloadable
belongs_to :project belongs_to :project
belongs_to :folder, :class_name => "DmsfFolder", :foreign_key => "dmsf_folder_id" belongs_to :folder, :class_name => "DmsfFolder", :foreign_key => "dmsf_folder_id"
has_many :revisions, :class_name => "DmsfFileRevision", :foreign_key => "dmsf_file_id",
:order => "major_version DESC, minor_version DESC, updated_at DESC",
:conditions => { :deleted => false }
has_many :locks, :class_name => "DmsfFileLock", :foreign_key => "dmsf_file_id", has_many :locks, :class_name => "DmsfFileLock", :foreign_key => "dmsf_file_id",
:order => "updated_at DESC" :order => "updated_at DESC"
belongs_to :deleted_by_user, :class_name => "User", :foreign_key => "deleted_by_user_id" belongs_to :deleted_by_user, :class_name => "User", :foreign_key => "deleted_by_user_id"
@ -78,27 +81,16 @@ class DmsfFile < ActiveRecord::Base
end end
def last_revision def last_revision
if @last_revision.nil? self.revisions.first
@last_revision = DmsfFileRevision.find(:first, :conditions =>
["dmsf_file_id = :file_id and deleted = :deleted",
{:file_id => self.id, :deleted => false}],
:order => "major_version DESC, minor_version DESC, updated_at DESC")
end
@last_revision
end end
def reload #def revisions(offset = nil, limit = nil)
@last_revision = nil # DmsfFileRevision.find(:all, :conditions =>
super # ["dmsf_file_id = :file_id and deleted = :deleted",
end # {:file_id => self.id, :deleted => false}],
# :order => "major_version DESC, minor_version DESC, updated_at DESC",
def revisions(offset = nil, limit = nil) # :limit => limit, :offset => offset)
DmsfFileRevision.find(:all, :conditions => #end
["dmsf_file_id = :file_id and deleted = :deleted",
{:file_id => self.id, :deleted => false}],
:order => "major_version DESC, minor_version DESC, updated_at DESC",
:limit => limit, :offset => offset)
end
def delete def delete
return false if locked_for_user? return false if locked_for_user?