]> source.dussan.org Git - redmine.git/commitdiff
Fixes ApplicationHelper#link_to_user
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Wed, 11 Nov 2009 10:48:54 +0000 (10:48 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Wed, 11 Nov 2009 10:48:54 +0000 (10:48 +0000)
* No link to a locked user page (closes #4182)
* Translate Anonymous string

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3024 e93f8b46-1217-0410-a6f0-8f06a7374b81

39 files changed:
app/helpers/application_helper.rb
app/models/user.rb
config/locales/bg.yml
config/locales/bs.yml
config/locales/ca.yml
config/locales/cs.yml
config/locales/da.yml
config/locales/de.yml
config/locales/el.yml
config/locales/en.yml
config/locales/es.yml
config/locales/fi.yml
config/locales/fr.yml
config/locales/gl.yml
config/locales/he.yml
config/locales/hu.yml
config/locales/it.yml
config/locales/ja.yml
config/locales/ko.yml
config/locales/lt.yml
config/locales/nl.yml
config/locales/no.yml
config/locales/pl.yml
config/locales/pt-BR.yml
config/locales/pt.yml
config/locales/ro.yml
config/locales/ru.yml
config/locales/sk.yml
config/locales/sl.yml
config/locales/sr.yml
config/locales/sv.yml
config/locales/th.yml
config/locales/tr.yml
config/locales/uk.yml
config/locales/vi.yml
config/locales/zh-TW.yml
config/locales/zh.yml
test/fixtures/users.yml
test/unit/helpers/application_helper_test.rb

index bab883083ce515758500461ecc19acae285fd650..cacfe2986442ac200cd02c454edb2b8df003dcc5 100644 (file)
@@ -44,12 +44,17 @@ module ApplicationHelper
     link_to_remote(name, options, html_options) if authorize_for(url[:controller] || params[:controller], url[:action])
   end
 
-  # Display a link to user's account page
+  # Displays a link to user's account page if active
   def link_to_user(user, options={})
     if user.is_a?(User)
-      !user.anonymous? ? link_to(user.name(options[:format]), :controller => 'users', :action => 'show', :id => user) : 'Anonymous'
+      name = h(user.name(options[:format]))
+      if user.active?
+        link_to name, :controller => 'users', :action => 'show', :id => user
+      else
+        name
+      end
     else
-      user.to_s
+      h(user.to_s)
     end
   end
 
index 3e852aca3c3ea00f32f6fa67b84a2e61cbda0cee..e9c58bcc5734c09c6f423cabb36cd537d5c9519f 100644 (file)
@@ -346,7 +346,7 @@ class AnonymousUser < User
   # Overrides a few properties
   def logged?; false end
   def admin; false end
-  def name; 'Anonymous' end
+  def name(*args); I18n.t(:label_user_anonymous) end
   def mail; nil end
   def time_zone; nil end
   def rss_key; nil end
index c35138a1e2881ab851dc06ae270f451d8bbdedde..56a14ad5bb8b87763b2720a9805d1cc12c858917 100644 (file)
@@ -831,3 +831,4 @@ bg:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index f8bf5b13ef2be288bfb63cee52b58d5250836f1c..b23b2bbe237709ff0d7e7eb8cd6198c28837a5f1 100644 (file)
@@ -855,3 +855,4 @@ bs:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 6a85787befdddca6e5f2e3f84dfd90a410c00a95..a7903ade8cf082f922861595188067bfa6835aa4 100644 (file)
@@ -834,3 +834,4 @@ ca:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 68cbb412cc5e507cb19aade14db7697fabdcf556..d65895ee30a1714ac28683581b0132a474d4c108 100644 (file)
@@ -837,3 +837,4 @@ cs:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 00d430b7719364ac1a4c98b61689f048712b96c4..bb3a14ced8012f76a001b8c0d84c7a896ec92c97 100644 (file)
@@ -857,3 +857,4 @@ da:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index f9ffc1067f65dd666a50b5b070b8057697b97ac6..520284e9f88f59e00a96263cc3fdecbd9a1d76e1 100644 (file)
@@ -857,3 +857,4 @@ de:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index ce4fc26472062b8d334ade966afefef6517ce547..a54952dfaa7b16c3d265aa814164a21dafc64c59 100644 (file)
@@ -837,3 +837,4 @@ el:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index eedf48df5967f6114fe171a9730a972053ed552a..574ee9db0173ed07e486f9d97bd6e7932f6b0076 100644 (file)
@@ -376,6 +376,7 @@ en:
   label_user: User
   label_user_plural: Users
   label_user_new: New user
+  label_user_anonymous: Anonymous
   label_project: Project
   label_project_new: New project
   label_project_plural: Projects
index 864cd141dcc2a289a4931e5e155133d74ff81b9d..8776faa3b401e8f681c66578b9d1ce6fa05fa340 100644 (file)
@@ -878,3 +878,4 @@ es:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 34214fee0702898d2f19b8ddf342bee402dee2a7..ab677f81b4350cbc27671857dc0f5edc988b25d4 100644 (file)
@@ -867,3 +867,4 @@ fi:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 2c4dbf6f0cfd586127c1d5db7e198abfd06b411e..4d39724036be5223e7b6a31b5867acd6c30a7712 100644 (file)
@@ -398,6 +398,7 @@ fr:
   label_user: Utilisateur
   label_user_plural: Utilisateurs
   label_user_new: Nouvel utilisateur
+  label_user_anonymous: Anonyme
   label_project: Projet
   label_project_new: Nouveau projet
   label_project_plural: Projets
index b2a8d49d11a5d34c92bcb6f823cd757fa0725a15..85b59e8d2e49d69b3352b34920b91f4ba4da049a 100644 (file)
@@ -857,3 +857,4 @@ gl:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index d60b94e4b22f655177e7d5594dca7699525a46ab..f344e81ccd98602ae14ab53d45e51a9998a95ada 100644 (file)
@@ -841,3 +841,4 @@ he:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index b7c9dff69b232a8bb45a83b680a1fe31fc81f687..f8e0f130ef754b236e096572803c72c969434d6c 100644 (file)
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 7d6ccac21c43c39ee6cb22f9f942299989f15f3b..06fd50c99663fbbc448d4e23c5edb6bd52ae4ebe 100644 (file)
@@ -844,3 +844,4 @@ it:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 9e70679e93b0e1137648c894df81a3cbe072226e..99f8a4ab675caf30c877b8d805a397fa4231c1d9 100644 (file)
@@ -866,3 +866,4 @@ ja:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 4441ebe604ba2e58d42a29ce19e6d1ffdb3cab87..be3b8719e2f81e058f252bb1a4604dd3e93587c6 100644 (file)
@@ -897,3 +897,4 @@ ko:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 3d7fcc6cb8ff93dcba64fb2388dee83fc2b47de2..021391620a13b0556ddad1c47de99b15a3f6d915 100644 (file)
@@ -867,3 +867,4 @@ lt:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 4212d445da0ae4b68d865319283be9ef28e73104..ae5107d551281acf19e77075542a1a4ca6d971ad 100644 (file)
@@ -819,3 +819,4 @@ nl:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index df91bdf4fb4dafe0b27133c15e77a57d48e34cb3..39a9ac7f00307314005dd2fd6f8d63eb4a088312 100644 (file)
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index fa232a296abaf7e29637dc0e31db2cb096c86538..e5690967cf89b693c63bc6fa29a0cbbd96f5ace7 100644 (file)
@@ -860,3 +860,4 @@ pl:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 51d5221e29b872e26aab49cc5bbe817a3551acaf..2d43e29f24ad4c24b5af3b035e379ae2203e0540 100644 (file)
@@ -863,3 +863,4 @@ pt-BR:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index e9c6423a07420c6cca38818d9d13fd85bb541a15..3f4462794a7eff1e31702f7c0ef07a683c035785 100644 (file)
@@ -849,3 +849,4 @@ pt:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index b62449617668cbf0c5535bd010cb9c1ada57194f..9f0cc8763314fc0ed4b1430534e0ac2d86e4e531 100644 (file)
@@ -834,3 +834,4 @@ ro:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 14b00334113718f9eb2edb7adb8d7b928d6f6517..109d55e04216ea8106a3bea478517ab53963609b 100644 (file)
@@ -945,3 +945,4 @@ ru:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index efb0325b69b8555a75993c61bd9b0b56a2f6c2ef..b715533fbd15129d0fda45ed861cb68bbd4cbb79 100644 (file)
@@ -836,3 +836,4 @@ sk:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index d3a6a3113d0299532b2463a878d0fd04f3fde2c7..a1d142cd2899b13cf72f9b939804551eb01367af 100644 (file)
@@ -833,3 +833,4 @@ sl:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 90f3a2122e36c74a08e24aa1fa590be07ede1d39..ff7bb91785609276c7dbca15e7578325a7205aec 100644 (file)
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 301debd9521fe6b4b05785664262f41af728c411..3a2f82e8e2ed4a8bbc729bf65ae31ab7f8d0941b 100644 (file)
@@ -885,3 +885,4 @@ sv:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 24d16bf3174ac9c66f6ba83596bf33151a33554c..890b10e016ec1fc21ec8cfeff96ee17047ce2f4e 100644 (file)
@@ -834,3 +834,4 @@ th:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index d835ab1a822f2246b4517d5c48dc0e9168fd725f..a0f1977d927a1bedc43679a82a75700b9c54ff78 100644 (file)
@@ -864,3 +864,4 @@ tr:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 3502c52d0f5a128d63d39af73309a16db3142d2f..4307c91a0be03641cd3b69313dede422f1e91a1a 100644 (file)
@@ -833,3 +833,4 @@ uk:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 6ae8085123b6064af7d996ffb46a048d98844686..cdd04a4f564d01bdb1717ccb1c41ff7f05e95f77 100644 (file)
@@ -896,3 +896,4 @@ vi:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 05b4b214c38a4fd2e00bf41f65f2e7093af1900a..9ad4e9841ce5046dcf47d2c06802983cae06aa4f 100644 (file)
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index bb60315b09d216815eaaf4d3a141d3affd035fe4..04c7113e9fcb4e95722d087a6723cb853c971801 100644 (file)
@@ -859,3 +859,4 @@ zh:
   version_status_locked: locked
   version_status_open: open
   error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
+  label_user_anonymous: Anonymous
index 29d4f156515521df8becb95f3f0d61160552347c..29fc6be04b7d3681699c1203d05e7b7c30529f85 100644 (file)
@@ -83,7 +83,7 @@ users_005:
 users_006: 
   id: 6
   created_on: 2006-07-19 19:33:19 +02:00
-  status: 1
+  status: 0
   last_login_on: 
   language: ''
   hashed_password: 1
index 84fc3bd6ba0fbcc5a6aee9ffc958bb8eda19aff6..05742150b136fdfd59a2ce080204205099d94b67 100644 (file)
@@ -483,4 +483,24 @@ EXPECTED
     Setting.gravatar_enabled = '0'
     assert_nil avatar(User.find_by_mail('jsmith@somenet.foo'))
   end
+  
+  def test_link_to_user
+    user = User.find(2)
+    t = link_to_user(user)
+    assert_equal "<a href=\"/users/2\">#{ user.name }</a>", t
+  end
+                                      
+  def test_link_to_user_should_not_link_to_locked_user
+    user = User.find(5)
+    assert user.locked?
+    t = link_to_user(user)
+    assert_equal user.name, t
+  end
+                                                                          
+  def test_link_to_user_should_not_link_to_anonymous
+    user = User.anonymous
+    assert user.anonymous?
+    t = link_to_user(user)
+    assert_equal ::I18n.t(:label_user_anonymous), t
+  end
 end