Merge pull request #2433 from geckoxx/2274-empty-tag
Fix Bug 2274, empty tag
This commit is contained in:
commit
5a1b73dc61
4 changed files with 21 additions and 6 deletions
|
|
@ -22,6 +22,9 @@ class PeopleController < ApplicationController
|
|||
if (params[:q][0] == 35 || params[:q][0] == '#') && params[:q].length > 1
|
||||
redirect_to tag_path(:name => params[:q].gsub(/[#\.]/, ''), :q => params[:q])
|
||||
return
|
||||
elsif (params[:q][0] == 35 || params[:q][0] == '#') && params[:q].length == 1
|
||||
flash[:error] = I18n.t('tags.show.none', :name => params[:q])
|
||||
redirect_to :back
|
||||
end
|
||||
|
||||
limit = params[:limit] ? params[:limit].to_i : 15
|
||||
|
|
|
|||
|
|
@ -15,13 +15,18 @@ class TagFollowingsController < ApplicationController
|
|||
# POST /tag_followings.xml
|
||||
def create
|
||||
name_normalized = ActsAsTaggableOn::Tag.normalize(params['name'])
|
||||
@tag = ActsAsTaggableOn::Tag.find_or_create_by_name(name_normalized)
|
||||
@tag_following = current_user.tag_followings.new(:tag_id => @tag.id)
|
||||
|
||||
if @tag_following.save
|
||||
flash[:notice] = I18n.t('tag_followings.create.success', :name => name_normalized)
|
||||
|
||||
if name_normalized.nil? || name_normalized.empty?
|
||||
flash[:error] = I18n.t('tag_followings.create.none')
|
||||
else
|
||||
flash[:error] = I18n.t('tag_followings.create.failure', :name => name_normalized)
|
||||
@tag = ActsAsTaggableOn::Tag.find_or_create_by_name(name_normalized)
|
||||
@tag_following = current_user.tag_followings.new(:tag_id => @tag.id)
|
||||
|
||||
if @tag_following.save
|
||||
flash[:notice] = I18n.t('tag_followings.create.success', :name => name_normalized)
|
||||
else
|
||||
flash[:error] = I18n.t('tag_followings.create.failure', :name => name_normalized)
|
||||
end
|
||||
end
|
||||
|
||||
redirect_to :back
|
||||
|
|
|
|||
|
|
@ -848,10 +848,12 @@ en:
|
|||
following: "Following #%{tag}"
|
||||
stop_following: "Stop Following #%{tag}"
|
||||
followed_by: 'followed by'
|
||||
none: "The empty tag does not exist!"
|
||||
tag_followings:
|
||||
create:
|
||||
success: "Hooray! You're now following #%{name}."
|
||||
failure: "Failed to follow #%{name}. Are you already following it?"
|
||||
none: "You cannot follow a blank tag!"
|
||||
destroy:
|
||||
success: "Alas! You aren't following #%{name} anymore."
|
||||
failure: "Failed to stop following #%{name}. Maybe you already stopped following it?"
|
||||
|
|
|
|||
|
|
@ -91,6 +91,11 @@ describe PeopleController do
|
|||
get :index, :q => '#babi.es'
|
||||
response.should redirect_to(tag_path('babies', :q => '#babi.es'))
|
||||
end
|
||||
|
||||
it 'stay on the page if you search for the empty hash' do
|
||||
get :index, :q => '#'
|
||||
flash[:error].should be_present
|
||||
end
|
||||
end
|
||||
|
||||
describe '#tag_index' do
|
||||
|
|
|
|||
Loading…
Reference in a new issue