diff --git a/tracks/app/models/user.rb b/tracks/app/models/user.rb index 22920265..f27fe3ec 100644 --- a/tracks/app/models/user.rb +++ b/tracks/app/models/user.rb @@ -44,7 +44,7 @@ class User < ActiveRecord::Base end def alphabetize(scope_conditions = {}) projects = find(:all, :conditions => scope_conditions) - projects.sort!{ |x,y| x.name <=> y.name } + projects.sort!{ |x,y| x.name.downcase <=> y.name.downcase } self.update_positions(projects.map{ |p| p.id }) return projects end diff --git a/tracks/test/unit/user_test.rb b/tracks/test/unit/user_test.rb index 387e3944..03a9c7b4 100644 --- a/tracks/test/unit/user_test.rb +++ b/tracks/test/unit/user_test.rb @@ -278,5 +278,15 @@ class UserTest < Test::Unit::TestCase assert_equal 3, projects(:moremoney).position end + def test_sort_active_projects_alphabetically_case_insensitive + u = users(:admin_user) + projects(:timemachine).name = projects(:timemachine).name.downcase + projects(:timemachine).save! + u.projects.alphabetize(:state => "active") + assert_equal 1, projects(:timemachine).position + assert_equal 2, projects(:gardenclean).position + assert_equal 3, projects(:moremoney).position + end + end