diff --git a/app/controllers/profiles_controller.rb b/app/controllers/profiles_controller.rb index 641355bbc..25aa1f3bb 100644 --- a/app/controllers/profiles_controller.rb +++ b/app/controllers/profiles_controller.rb @@ -20,6 +20,7 @@ class ProfilesController < ApplicationController def update # upload and set new profile photo params[:profile] ||= {} + params[:tags] << params[:profile][:tag_string] unless params[:profile][:tag_string].nil? params[:profile][:tag_string] = (params[:tags]) ? params[:tags].gsub(',',' ') : "" params[:profile][:searchable] ||= false params[:profile][:photo] = Photo.where(:author_id => current_user.person.id, diff --git a/spec/controllers/profiles_controller_spec.rb b/spec/controllers/profiles_controller_spec.rb index 21340e95d..4d760e3f8 100644 --- a/spec/controllers/profiles_controller_spec.rb +++ b/spec/controllers/profiles_controller_spec.rb @@ -49,6 +49,15 @@ describe ProfilesController do put :update, params @user.person(true).profile.tag_list.to_set.should == ['apples', 'oranges'].to_set end + + it 'sets plaintext tags' do + params = { :id => @user.person.id, + :tags => ',#apples,#oranges,', + :profile => {:tag_string => '#pears'} } + + put :update, params + @user.person(true).profile.tag_list.to_set.should == ['apples', 'oranges', 'pears'].to_set + end context 'with a profile photo set' do before do