fixes #268
This commit is contained in:
@@ -3,7 +3,12 @@ class PoolElementsController < ApplicationController
|
|||||||
before_filter :member_only
|
before_filter :member_only
|
||||||
|
|
||||||
def create
|
def create
|
||||||
@pool = Pool.find_by_name(params[:pool_name]) || Pool.find(params[:pool_id])
|
@pool = Pool.find_by_name(params[:pool_name]) || Pool.find_by_id(params[:pool_id])
|
||||||
|
|
||||||
|
if @pool.nil?
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
@post = Post.find(params[:post_id])
|
@post = Post.find(params[:post_id])
|
||||||
@pool.add!(@post)
|
@pool.add!(@post)
|
||||||
append_pool_to_session(@pool)
|
append_pool_to_session(@pool)
|
||||||
|
|||||||
@@ -42,6 +42,16 @@ class Pool < ActiveRecord::Base
|
|||||||
post_ids.gsub(/\s{2,}/, " ").strip
|
post_ids.gsub(/\s{2,}/, " ").strip
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.find_by_name(name)
|
||||||
|
if name =~ /^\d+$/
|
||||||
|
where("id = ?", name.to_i).first
|
||||||
|
elsif name
|
||||||
|
where("name = ?", normalize_name(name)).first
|
||||||
|
else
|
||||||
|
nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def initialize_creator
|
def initialize_creator
|
||||||
self.creator_id = CurrentUser.id
|
self.creator_id = CurrentUser.id
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ class Tag < ActiveRecord::Base
|
|||||||
module NameMethods
|
module NameMethods
|
||||||
module ClassMethods
|
module ClassMethods
|
||||||
def normalize_name(name)
|
def normalize_name(name)
|
||||||
name.downcase.tr(" ", "_").gsub(/\A[-~]+/, "")
|
name.downcase.tr(" ", "_").gsub(/\A[-~]+/, "").gsub(/\*/, "")
|
||||||
end
|
end
|
||||||
|
|
||||||
def find_or_create_by_name(name, options = {})
|
def find_or_create_by_name(name, options = {})
|
||||||
|
|||||||
Reference in New Issue
Block a user