User display format is now configurable in administration settings.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1103 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
1 parent
3d5d1a38e3
commit
79f92a675a
30 files changed
+65
-6
No files matched your search
+18
-3
@@ -23,6 +23,14 @@ class User < ActiveRecord::Base
|
||||
STATUS_ACTIVE = 1
|
||||
STATUS_REGISTERED = 2
|
||||
STATUS_LOCKED = 3
|
||||
|
||||
USER_FORMATS = {
|
||||
:firstname_lastname => '#{firstname} #{lastname}',
|
||||
:firstname => '#{firstname}',
|
||||
:lastname_firstname => '#{lastname} #{firstname}',
|
||||
:lastname_coma_firstname => '#{lastname}, #{firstname}',
|
||||
:username => '#{login}'
|
||||
}
|
||||
|
||||
has_many :memberships, :class_name => 'Member', :include => [ :project, :role ], :conditions => "#{Project.table_name}.status=#{Project::STATUS_ACTIVE}", :order => "#{Project.table_name}.name", :dependent => :delete_all
|
||||
has_many :projects, :through => :memberships
|
||||
@@ -107,8 +115,9 @@ class User < ActiveRecord::Base
|
||||
end
|
||||
|
||||
# Return user's full name for display
|
||||
def name
|
||||
"#{firstname} #{lastname}"
|
||||
def name(formatter = nil)
|
||||
f = USER_FORMATS[formatter || Setting.user_format] || USER_FORMATS[:firstname_lastname]
|
||||
eval '"' + f + '"'
|
||||
end
|
||||
|
||||
def active?
|
||||
@@ -164,7 +173,13 @@ class User < ActiveRecord::Base
|
||||
end
|
||||
|
||||
def <=>(user)
|
||||
user.nil? ? -1 : (lastname == user.lastname ? firstname <=> user.firstname : lastname <=> user.lastname)
|
||||
if user.nil?
|
||||
-1
|
||||
elsif lastname.to_s.downcase == user.lastname.to_s.downcase
|
||||
firstname.to_s.downcase <=> user.firstname.to_s.downcase
|
||||
else
|
||||
lastname.to_s.downcase <=> user.lastname.to_s.downcase
|
||||
end
|
||||
end
|
||||
|
||||
def to_s
|
||||
|
||||
Reference in new issue
Block a user