Merged r1442, r1443 and r1446 to r1449 from trunk.

git-svn-id: http://redmine.rubyforge.org/svn/branches/0.7-stable@1450 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang committed 2008-05-25 11:33:04 +00:00
1 parent 729d1176ea
commit 290bd1756d
11 files changed
+63 -7

No files matched your search

+4
View File
@@ -19,4 +19,8 @@ class Change < ActiveRecord::Base
belongs_to :changeset
validates_presence_of :changeset_id, :action, :path
def relative_path
changeset.repository.relative_path(path)
end
end
+5
View File
@@ -64,6 +64,11 @@ class Repository < ActiveRecord::Base
:order => "committed_on DESC, #{Changeset.table_name}.id DESC").collect(&:changeset)
end
# Returns a path relative to the url of the repository
def relative_path(path)
path
end
def latest_changeset
@latest_changeset ||= changesets.find(:first)
end
+15
View File
@@ -35,6 +35,11 @@ class Repository::Subversion < Repository
revisions ? changesets.find_all_by_revision(revisions.collect(&:identifier), :order => "committed_on DESC") : []
end
# Returns a path relative to the url of the repository
def relative_path(path)
path.gsub(Regexp.new("^\/?#{Regexp.escape(relative_url)}"), '')
end
def fetch_changesets
scm_info = scm.info
if scm_info
@@ -71,4 +76,14 @@ class Repository::Subversion < Repository
end
end
end
private
# Returns the relative url of the repository
# Eg: root_url = file:///var/svn/foo
# url = file:///var/svn/foo/bar
# => returns /bar
def relative_url
@relative_url ||= url.gsub(Regexp.new("^#{Regexp.escape(root_url)}"), '')
end
end
+1 -2
View File
@@ -258,13 +258,12 @@ class User < ActiveRecord::Base
end
def self.anonymous
return @anonymous_user if @anonymous_user
anonymous_user = AnonymousUser.find(:first)
if anonymous_user.nil?
anonymous_user = AnonymousUser.create(:lastname => 'Anonymous', :firstname => '', :mail => '', :login => '', :status => 0)
raise 'Unable to create the anonymous user.' if anonymous_user.new_record?
end
@anonymous_user = anonymous_user
anonymous_user
end
private