From 709ac44da35d5d18680bcdaffe09c7febb23845f Mon Sep 17 00:00:00 2001 From: Ilya Zhitomirskiy <ilya@laptop.(none)> Date: Mon, 16 May 2011 02:16:46 -0700 Subject: [PATCH] fixed the incrementing aspect ids on the contacts#sharing modal window, showing 'Add to Aspect' button only on the tags and profile pages --- app/views/aspect_memberships/create.js.erb | 2 +- app/views/aspect_memberships/destroy.js.erb | 2 +- app/views/aspects/create.js.erb | 3 ++- app/views/contacts/_aspect_dropdown.html.haml | 11 ++++++----- app/views/tags/show.haml | 3 ++- public/javascripts/contact-edit.js | 12 +++++++++--- public/stylesheets/sass/application.sass | 6 ------ 7 files changed, 21 insertions(+), 18 deletions(-) diff --git a/app/views/aspect_memberships/create.js.erb b/app/views/aspect_memberships/create.js.erb index 35c232373d..595304cf6c 100644 --- a/app/views/aspect_memberships/create.js.erb +++ b/app/views/aspect_memberships/create.js.erb @@ -2,7 +2,7 @@ // licensed under the Affero General Public License version 3 or later. See // the COPYRIGHT file. -ContactEdit.updateNumber(); +ContactEdit.updateNumber("<%= @contact.person_id%>"); var element = $(".add[data-aspect_id=<%= @aspect.id %>][data-person_id=<%= @contact.person_id%>]"); diff --git a/app/views/aspect_memberships/destroy.js.erb b/app/views/aspect_memberships/destroy.js.erb index 9f3aea5467..3c48c72290 100644 --- a/app/views/aspect_memberships/destroy.js.erb +++ b/app/views/aspect_memberships/destroy.js.erb @@ -2,7 +2,7 @@ // licensed under the Affero General Public License version 3 or later. See // the COPYRIGHT file. -ContactEdit.updateNumber(); +ContactEdit.updateNumber("<%= @contact.person_id%>"); var element = $(".added[data-aspect_id=<%= @aspect.id %>][data-person_id=<%= @contact.person_id%>]"); element.parent().html("<%= escape_javascript(render('aspect_memberships/remove_from_aspect', :aspect => @aspect, :person => @contact.person, :contact => @contact)) %>"); element.fadeTo(200,1); diff --git a/app/views/aspects/create.js.erb b/app/views/aspects/create.js.erb index 68549ad429..a5ddd04e72 100644 --- a/app/views/aspects/create.js.erb +++ b/app/views/aspects/create.js.erb @@ -2,8 +2,9 @@ // licensed under the Affero General Public License version 3 or later. See // the COPYRIGHT file. -ContactEdit.updateNumber(); $('ul.dropdown_list[data-person_id=<%= @person.id %>] .newItem').before("<%= escape_javascript( render('contacts/aspect_dropdown_list_item', :aspect => @aspect, :person => @person, :contact => @contact)) %>"); + +ContactEdit.updateNumber("<%= @person.id %>"); $.facebox.close(); $('#profile .dropdown').toggleClass("active"); diff --git a/app/views/contacts/_aspect_dropdown.html.haml b/app/views/contacts/_aspect_dropdown.html.haml index 8c30d29f55..29bb8a7f7f 100644 --- a/app/views/contacts/_aspect_dropdown.html.haml +++ b/app/views/contacts/_aspect_dropdown.html.haml @@ -8,10 +8,11 @@ ▼ .wrapper - %ul.dropdown_list{:unSelectable => 'on', 'data-person_id' => ((@person.id) if @person)} + %ul.dropdown_list{:unSelectable => 'on', 'data-person_id' => ((person.id) if person)} - for aspect in @all_aspects = aspect_dropdown_list_item(aspect, contact, person) - - %li.newItem - .add_aspect - = link_to "Add a new aspect", new_aspect_path(:person_id => person.id), :rel => 'facebox' + + - if defined?(@aspect) && ( @aspect == :profile || @aspect == :tag) + %li.newItem + .add_aspect + = link_to "Add a new aspect", new_aspect_path(:person_id => person.id), :rel => 'facebox' diff --git a/app/views/tags/show.haml b/app/views/tags/show.haml index 8802710162..926f4aff1f 100644 --- a/app/views/tags/show.haml +++ b/app/views/tags/show.haml @@ -38,7 +38,8 @@ - if current_user - contact = current_user.contacts.find_by_person_id(person.id) - contact ||= Contact.new(:person => person) - = render 'contacts/aspect_dropdown', :contact => contact, :person => person, :hang => 'left' + .right + = render 'contacts/aspect_dropdown', :contact => contact, :person => person, :hang => 'left' .content %span.from diff --git a/public/javascripts/contact-edit.js b/public/javascripts/contact-edit.js index 157e700b8d..8d3e346b2d 100644 --- a/public/javascripts/contact-edit.js +++ b/public/javascripts/contact-edit.js @@ -8,9 +8,15 @@ var ContactEdit = { ContactEdit.processClick($(this), evt); }); }, - updateNumber: function(){ - var number = $(".dropdown_list input[type=checkbox]:checked").length - var element = $('.button.toggle'); + updateNumber: function(personId){ + console.log(personId); + var dropdown = $(".dropdown_list[data-person_id=" + personId.toString() +"]") + console.log(dropdown); + + var number = dropdown.find("input[type=checkbox]:checked").length + + console.log(number); + var element = dropdown.parents(".dropdown").children('.button.toggle'); var replacement; diff --git a/public/stylesheets/sass/application.sass b/public/stylesheets/sass/application.sass index 3670729ee3..01a0d41f92 100644 --- a/public/stylesheets/sass/application.sass +++ b/public/stylesheets/sass/application.sass @@ -2837,12 +2837,6 @@ ul.show_comments, :padding 10px 0 .avatar :float left - .right - :display none - - .stream_element:hover - .right - :display none .tag :display inline-block -- GitLab