diff --git a/app/controllers/aspects_controller.rb b/app/controllers/aspects_controller.rb index 483a516ba..370074bb0 100644 --- a/app/controllers/aspects_controller.rb +++ b/app/controllers/aspects_controller.rb @@ -54,7 +54,7 @@ class AspectsController < ApplicationController flash[:notice] = I18n.t('aspects.create.success', :name => @aspect.name) if current_user.getting_started redirect_to :back - elsif request.env['HTTP_REFERER'].include?("aspects/manage") + elsif request.env['HTTP_REFERER'].include?("contacts") redirect_to :back elsif params[:aspect][:person_id] @person = Person.where(:id => params[:aspect][:person_id]).first @@ -64,9 +64,6 @@ class AspectsController < ApplicationController else @contact = current_user.share_with(@person, @aspect) end - - - else respond_with @aspect end diff --git a/app/controllers/contacts_controller.rb b/app/controllers/contacts_controller.rb index 5bcfb750d..74ad899f8 100644 --- a/app/controllers/contacts_controller.rb +++ b/app/controllers/contacts_controller.rb @@ -11,7 +11,9 @@ class ContactsController < ApplicationController @all_contacts_count = current_user.contacts.count @my_contacts_count = current_user.contacts.receiving.count - unless params[:set] == "all" + if params["a_id"] + @contacts = current_user.aspects.find(params["a_id"]).contacts.includes(:aspects, :person => :profile).order('profiles.last_name ASC').paginate(:page => params[:page], :per_page => 25) + elsif params[:set] != "all" @contacts = current_user.contacts.receiving.includes(:aspects, :person => :profile).order('profiles.last_name ASC').paginate(:page => params[:page], :per_page => 25) else @contacts = current_user.contacts.includes(:aspects, :person => :profile).order('profiles.last_name ASC').paginate(:page => params[:page], :per_page => 25) diff --git a/app/views/contacts/index.html.haml b/app/views/contacts/index.html.haml index ee082eae7..9189aa599 100644 --- a/app/views/contacts/index.html.haml +++ b/app/views/contacts/index.html.haml @@ -12,30 +12,34 @@ .span-5.append-1 %ul#left_nav %li{:class => ("active" unless params["set"] == "all")} - - %a{:href => contacts_path} + %a{:href => contacts_path, :class => ("sub_selected" if params["a_id"])} .contact_count = @my_contacts_count My Contacts %ul#aspect_sub_nav - for aspect in all_aspects - %li - = link_to aspect, contacts_path(:a_id => aspect) - %li - = link_to "Add new aspect", "#", :class => "add_new_aspect_link" + %li{:class => ("active" if params["a_id"].to_i == aspect.id)} + %a{:href => contacts_path(:a_id => aspect.id)} + .contact_count + = aspect.contacts.count + = aspect + %li + = link_to "+ Add new aspect", "#add_aspect_pane", :class => "new_aspect", :rel => "facebox" %li{:class => ("active" if params["set"] == "all")} - %a{:href => contacts_path(:set => "all")} .contact_count = @all_contacts_count All Contacts - .span-15 #people_stream.stream - - for contact in @contacts - = render :partial => 'people/person', :locals => {:contact => contact, :person => contact.person} + - if @contacts.size > 0 + - for contact in @contacts + = render :partial => 'people/person', :locals => {:contact => contact, :person => contact.person} + - else + %h3.no_contacts + No contacts. = will_paginate @contacts diff --git a/public/stylesheets/sass/application.sass b/public/stylesheets/sass/application.sass index 1da5a989c..b62caff97 100644 --- a/public/stylesheets/sass/application.sass +++ b/public/stylesheets/sass/application.sass @@ -2965,6 +2965,7 @@ ul#left_nav li :position relative + :width 100% a :display block @@ -2978,11 +2979,19 @@ ul#left_nav :decoration none li.active - > a + > a:not(.sub_selected) :color #333 :font :weight 700 + .contact_count + :font + :weight 700 + :color #666 + + ul#aspect_sub_nav + :display block + .contact_count @include border-radius(4px) :float right @@ -2995,15 +3004,23 @@ ul#left_nav :font :size 11px - li.active - .contact_count - :font - :weight 700 - :color #666 - ul#aspect_sub_nav :padding 0 - :left 15px :margin 0 :display none + a + :padding + :left 15px + :width 182px +.new_aspect + :color #999 + :font + :style italic + + &:hover + :color #777 + +.no_contacts + :text-align center + :top 50px diff --git a/spec/controllers/contacts_controller_spec.rb b/spec/controllers/contacts_controller_spec.rb index b459923b6..c730461ee 100644 --- a/spec/controllers/contacts_controller_spec.rb +++ b/spec/controllers/contacts_controller_spec.rb @@ -50,7 +50,7 @@ describe ContactsController do get :index, :set => "mine" contacts = assigns(:contacts) - contacts.to_set.should == bob.contacts.sharing.to_set + contacts.to_set.should == bob.contacts.receiving.to_set end it "shows all contacts (sharing and receiving)" do