start a conversation with an aspect from contact index page
This commit is contained in:
parent
2c3e403bc0
commit
b8ea8e9e75
6 changed files with 34 additions and 7 deletions
|
|
@ -61,8 +61,14 @@ class ConversationsController < ApplicationController
|
||||||
select("contacts.id, profiles.first_name, profiles.last_name, people.diaspora_handle").to_sql
|
select("contacts.id, profiles.first_name, profiles.last_name, people.diaspora_handle").to_sql
|
||||||
).map{|r| {:value => r[0], :name => Person.name_from_attrs(r[1], r[2], r[3]).gsub(/(")/, "'")} }
|
).map{|r| {:value => r[0], :name => Person.name_from_attrs(r[1], r[2], r[3]).gsub(/(")/, "'")} }
|
||||||
|
|
||||||
|
@contact_ids = ""
|
||||||
|
|
||||||
@contacts_json = all_contacts_and_ids.to_json.gsub!(/(")/, '\\"')
|
@contacts_json = all_contacts_and_ids.to_json.gsub!(/(")/, '\\"')
|
||||||
@contact = current_user.contacts.find(params[:contact_id]) if params[:contact_id]
|
if params[:contact_id]
|
||||||
|
@contact_ids = current_user.contacts.find(params[:contact_id]).id
|
||||||
|
elsif params[:aspect_id]
|
||||||
|
@contact_ids = current_user.aspects.find(params[:aspect_id]).contacts.map{|c| c.id}.join(',')
|
||||||
|
end
|
||||||
render :layout => false
|
render :layout => false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,9 @@
|
||||||
- content_for :page_title do
|
- content_for :page_title do
|
||||||
= t('.title')
|
= t('.title')
|
||||||
|
|
||||||
|
- content_for :head do
|
||||||
|
= include_javascripts :people
|
||||||
|
|
||||||
#section_header
|
#section_header
|
||||||
%h2
|
%h2
|
||||||
= t('.title')
|
= t('.title')
|
||||||
|
|
@ -44,6 +47,10 @@
|
||||||
.span-18.last
|
.span-18.last
|
||||||
#people_stream.stream.contacts
|
#people_stream.stream.contacts
|
||||||
- if @contacts.size > 0
|
- if @contacts.size > 0
|
||||||
|
#aspect_controls
|
||||||
|
- if @aspect_
|
||||||
|
= link_to "start a conversation", new_conversation_path(:aspect_id => @aspect_.id, :name => @aspect_.name), :class => "button conversation_button", :rel => "facebox"
|
||||||
|
|
||||||
- for contact in @contacts
|
- for contact in @contacts
|
||||||
.stream_element{:id => contact.person.id}
|
.stream_element{:id => contact.person.id}
|
||||||
.right
|
.right
|
||||||
|
|
|
||||||
|
|
@ -16,14 +16,12 @@
|
||||||
keyDelay: 0,
|
keyDelay: 0,
|
||||||
startText: '',
|
startText: '',
|
||||||
emptyText: '#{t('no_results')}',
|
emptyText: '#{t('no_results')}',
|
||||||
preFill: [{ 'name' : "#{params[:name]}",
|
preFill: [{name : "#{params[:name]}",
|
||||||
'value' : "#{params[:contact_id]}"}]
|
value : "#{@contact_ids}"}]
|
||||||
});
|
});
|
||||||
|
|
||||||
autocompleteInput.focus();
|
autocompleteInput.focus();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
#new_message_pane
|
#new_message_pane
|
||||||
.span-12.last
|
.span-12.last
|
||||||
#facebox_header
|
#facebox_header
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@
|
||||||
.right
|
.right
|
||||||
= link_to t('.mention'), new_status_message_path(:person_id => @person.id), :class => 'button', :rel => 'facebox'
|
= link_to t('.mention'), new_status_message_path(:person_id => @person.id), :class => 'button', :rel => 'facebox'
|
||||||
- if @contact.mutual?
|
- if @contact.mutual?
|
||||||
= link_to t('.message'), new_conversation_path(:contact_id => @contact.id, :name => @contact.person.name, :contact_id => @contact.id), :class => 'button', :rel => 'facebox'
|
= link_to t('.message'), new_conversation_path(:contact_id => @contact.id, :name => @contact.person.name), :class => 'button', :rel => 'facebox'
|
||||||
|
|
||||||
%h3
|
%h3
|
||||||
= @person.name
|
= @person.name
|
||||||
|
|
|
||||||
|
|
@ -3104,3 +3104,14 @@ ul#left_nav
|
||||||
a.close
|
a.close
|
||||||
:float right
|
:float right
|
||||||
:text-decoration none
|
:text-decoration none
|
||||||
|
|
||||||
|
#aspect_controls
|
||||||
|
@include border-radius(2px)
|
||||||
|
:background
|
||||||
|
:color #fafafa
|
||||||
|
:border 1px solid #ccc
|
||||||
|
:padding 10px
|
||||||
|
:min-height 23px
|
||||||
|
|
||||||
|
.conversation_button
|
||||||
|
:float right
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,12 @@ describe ConversationsController do
|
||||||
|
|
||||||
it "assigns a contact if passed a contact id" do
|
it "assigns a contact if passed a contact id" do
|
||||||
get :new, :contact_id => alice.contacts.first.id
|
get :new, :contact_id => alice.contacts.first.id
|
||||||
assigns(:contact).should == alice.contacts.first
|
assigns(:contact_ids).should == alice.contacts.first.id
|
||||||
|
end
|
||||||
|
|
||||||
|
it "assigns a set of contacts if passed an aspect id" do
|
||||||
|
get :new, :aspect_id => alice.aspects.first.id
|
||||||
|
assigns(:contact_ids).should == alice.aspects.first.contacts.map(&:id).join(',')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue