From c7358c86643cff24a6367593cdaade16ad088fd3 Mon Sep 17 00:00:00 2001 From: Raphael Sofaer Date: Tue, 3 May 2011 10:49:57 -0700 Subject: [PATCH] Fix rendering into json for names with quotes --- app/controllers/conversations_controller.rb | 7 ++++--- app/views/conversations/new.haml | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/app/controllers/conversations_controller.rb b/app/controllers/conversations_controller.rb index b19efa588..6894dbdf7 100644 --- a/app/controllers/conversations_controller.rb +++ b/app/controllers/conversations_controller.rb @@ -56,10 +56,11 @@ class ConversationsController < ApplicationController end def new - @all_contacts_and_ids = Contact.connection.execute(current_user.contacts.joins(:person => :profile).select("contacts.id, profiles.first_name, profiles.last_name, profiles.diaspora_handle").to_sql).map do |r| - {:value => r[0], :name => Person.name_from_attrs(r[1], r[2], r[3])} + all_contacts_and_ids = Contact.connection.execute(current_user.contacts.joins(:person => :profile).select("contacts.id, profiles.first_name, profiles.last_name, profiles.diaspora_handle").to_sql).map do |r| + {:value => r[0], + :name => Person.name_from_attrs(r[1], r[2], r[3]).gsub(/(")/, "'")} end - + @contacts_json = all_contacts_and_ids.to_json.gsub!(/(")/, '\\"') @contact = current_user.contacts.find(params[:contact_id]) if params[:contact_id] render :layout => false end diff --git a/app/views/conversations/new.haml b/app/views/conversations/new.haml index 40301b10e..b7877372b 100644 --- a/app/views/conversations/new.haml +++ b/app/views/conversations/new.haml @@ -4,7 +4,7 @@ :javascript $(document).ready(function () { - var data = $.parseJSON( '#{@all_contacts_and_ids.to_json.gsub("'", "\\\\'")}' ), + var data = $.parseJSON( "#{@contacts_json}" ), autocompleteInput = $("#contact_autocomplete"); autocompleteInput.autoSuggest(data, {