diff app/models/.svn/text-base/role.rb.svn-base @ 441:cbce1fd3b1b7 redmine-1.2

Update to Redmine 1.2-stable branch (Redmine SVN rev 6000)
author Chris Cannam
date Mon, 06 Jun 2011 14:24:13 +0100
parents 8661b858af72
children
line wrap: on
line diff
--- a/app/models/.svn/text-base/role.rb.svn-base	Thu Mar 03 11:42:28 2011 +0000
+++ b/app/models/.svn/text-base/role.rb.svn-base	Mon Jun 06 14:24:13 2011 +0100
@@ -1,5 +1,5 @@
-# redMine - project management software
-# Copyright (C) 2006  Jean-Philippe Lang
+# Redmine - project management software
+# Copyright (C) 2006-2011  Jean-Philippe Lang
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -19,6 +19,12 @@
   # Built-in roles
   BUILTIN_NON_MEMBER = 1
   BUILTIN_ANONYMOUS  = 2
+  
+  ISSUES_VISIBILITY_OPTIONS = [
+    ['all', :label_issues_visibility_all],
+    ['default', :label_issues_visibility_public],
+    ['own', :label_issues_visibility_own]
+  ]
 
   named_scope :givable, { :conditions => "builtin = 0", :order => 'position' }
   named_scope :builtin, lambda { |*args|
@@ -43,7 +49,10 @@
   validates_presence_of :name
   validates_uniqueness_of :name
   validates_length_of :name, :maximum => 30
-
+  validates_inclusion_of :issues_visibility,
+    :in => ISSUES_VISIBILITY_OPTIONS.collect(&:first),
+    :if => lambda {|role| role.respond_to?(:issues_visibility)}
+  
   def permissions
     read_attribute(:permissions) || []
   end
@@ -84,6 +93,14 @@
     name
   end
   
+  def name
+    case builtin
+    when 1; l(:label_role_non_member, :default => read_attribute(:name))
+    when 2; l(:label_role_anonymous,  :default => read_attribute(:name))
+    else; read_attribute(:name)
+    end
+  end
+  
   # Return true if the role is a builtin role
   def builtin?
     self.builtin != 0