From 43315e14f97f5b9f969c7bc52259b88c80fded74 Mon Sep 17 00:00:00 2001
From: danielgrippi <daniel@joindiaspora.com>
Date: Wed, 23 Mar 2011 10:16:55 -0700
Subject: [PATCH] sort contacts by name, not by a potentially nil field

---
 app/controllers/aspects_controller.rb       | 2 +-
 spec/controllers/aspects_controller_spec.rb | 5 ++++-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/app/controllers/aspects_controller.rb b/app/controllers/aspects_controller.rb
index 19ccd919eb..3a4e78286d 100644
--- a/app/controllers/aspects_controller.rb
+++ b/app/controllers/aspects_controller.rb
@@ -104,7 +104,7 @@ class AspectsController < ApplicationController
 
   def edit
     @aspect = current_user.aspects.where(:id => params[:id]).includes(:contacts => {:person => :profile}).first
-    @contacts = current_user.contacts.includes(:person => :profile).all.sort!{|x, y| x.person.profile.first_name <=> y.person.profile.first_name }.reverse!
+    @contacts = current_user.contacts.includes(:person => :profile).all.sort!{|x, y| x.person.name <=> y.person.name}.reverse!
     unless @aspect
       render :file => "#{Rails.root}/public/404.html", :layout => false, :status => 404
     else
diff --git a/spec/controllers/aspects_controller_spec.rb b/spec/controllers/aspects_controller_spec.rb
index 9a7f6ce219..a2045961f5 100644
--- a/spec/controllers/aspects_controller_spec.rb
+++ b/spec/controllers/aspects_controller_spec.rb
@@ -287,6 +287,9 @@ describe AspectsController do
     before do
       @bob = bob
       @eve = eve
+      @eve.profile.first_name = nil
+      @eve.profile.save
+      @eve.save
     end
     it 'renders' do
       get :edit, :id => @alices_aspect_1.id
@@ -297,7 +300,7 @@ describe AspectsController do
       connect_users(@alice, @alices_aspect_1, @eve, @eve.aspects.first)
       
       get :edit, :id => @alices_aspect_1.id
-      assigns[:contacts].should  == [@alice.contact_for(@bob.person), @alice.contact_for(@eve.person)]
+      assigns[:contacts].should == [@alice.contact_for(@eve.person), @alice.contact_for(@bob.person)]
     end
   end
 
-- 
GitLab