fixes #1133
This commit is contained in:
@@ -58,7 +58,7 @@ class Artist < ActiveRecord::Base
|
|||||||
|
|
||||||
module ClassMethods
|
module ClassMethods
|
||||||
def normalize_name(name)
|
def normalize_name(name)
|
||||||
name.to_s.downcase.strip.gsub(/ /, '_')
|
name.to_s.mb_chars.downcase.strip.gsub(/ /, '_')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ class Ban < ActiveRecord::Base
|
|||||||
return q if params.blank?
|
return q if params.blank?
|
||||||
|
|
||||||
if params[:banner_name]
|
if params[:banner_name]
|
||||||
q = q.where("banner_id = (select _.id from users _ where lower(_.name) = ?)", params[:banner_name].downcase)
|
q = q.where("banner_id = (select _.id from users _ where lower(_.name) = ?)", params[:banner_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:banner_id]
|
if params[:banner_id]
|
||||||
@@ -24,7 +24,7 @@ class Ban < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
if params[:user_name]
|
if params[:user_name]
|
||||||
q = q.where("user_id = (select _.id from users _ where lower(_.name) = ?)", params[:user_name].downcase)
|
q = q.where("user_id = (select _.id from users _ where lower(_.name) = ?)", params[:user_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:user_id]
|
if params[:user_id]
|
||||||
|
|||||||
@@ -111,11 +111,11 @@ class Dmail < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def to_name_matches(name)
|
def to_name_matches(name)
|
||||||
where("to_id = (select _.id from users _ where lower(_.name) = ?)", name.downcase)
|
where("to_id = (select _.id from users _ where lower(_.name) = ?)", name.mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
def from_name_matches(name)
|
def from_name_matches(name)
|
||||||
where("from_id = (select _.id from users _ where lower(_.name) = ?)", name.downcase)
|
where("from_id = (select _.id from users _ where lower(_.name) = ?)", name.mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
def search(params)
|
def search(params)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class JanitorTrial < ActiveRecord::Base
|
|||||||
return q if params.blank?
|
return q if params.blank?
|
||||||
|
|
||||||
if params[:user_name]
|
if params[:user_name]
|
||||||
q = q.where("user_id = (select _.id from users _ where lower(_.name) = ?)", params[:user_name].downcase)
|
q = q.where("user_id = (select _.id from users _ where lower(_.name) = ?)", params[:user_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:user_id]
|
if params[:user_id]
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ class Pool < ActiveRecord::Base
|
|||||||
if name =~ /^\d+$/
|
if name =~ /^\d+$/
|
||||||
name.to_i
|
name.to_i
|
||||||
else
|
else
|
||||||
select_value_sql("SELECT id FROM pools WHERE lower(name) = ?", name.downcase.tr(" ", "_")).to_i
|
select_value_sql("SELECT id FROM pools WHERE lower(name) = ?", name.mb_chars.downcase.tr(" ", "_")).to_i
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -91,7 +91,7 @@ class Pool < ActiveRecord::Base
|
|||||||
if name =~ /^\d+$/
|
if name =~ /^\d+$/
|
||||||
where("id = ?", name.to_i).first
|
where("id = ?", name.to_i).first
|
||||||
elsif name
|
elsif name
|
||||||
where("lower(name) = ?", normalize_name(name).downcase).first
|
where("lower(name) = ?", normalize_name(name).mb_chars.downcase).first
|
||||||
else
|
else
|
||||||
nil
|
nil
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ class PoolVersion < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
if params[:updater_name].present?
|
if params[:updater_name].present?
|
||||||
q = q.where("updater_id = (select _.id from users _ where lower(_.name) = ?)", params[:updater_name].downcase)
|
q = q.where("updater_id = (select _.id from users _ where lower(_.name) = ?)", params[:updater_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:pool_id].present?
|
if params[:pool_id].present?
|
||||||
|
|||||||
@@ -973,7 +973,7 @@ class Post < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def updater_name_matches(name)
|
def updater_name_matches(name)
|
||||||
where("updater_id = (select _.id from users _ where lower(_.name) = ?)", name.downcase)
|
where("updater_id = (select _.id from users _ where lower(_.name) = ?)", name.mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
def after_id(num)
|
def after_id(num)
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ class PostAppeal < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
if params[:creator_name].present?
|
if params[:creator_name].present?
|
||||||
q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].downcase)
|
q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:post_id].present?
|
if params[:post_id].present?
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ class PostFlag < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
if params[:creator_name].present?
|
if params[:creator_name].present?
|
||||||
q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].downcase)
|
q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:post_id].present?
|
if params[:post_id].present?
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ class PostVersion < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def updater_name(name)
|
def updater_name(name)
|
||||||
where("updater_id = (select _.id from users _ where lower(_.name) = ?)", name.downcase)
|
where("updater_id = (select _.id from users _ where lower(_.name) = ?)", name.mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
def search(params)
|
def search(params)
|
||||||
|
|||||||
@@ -121,7 +121,7 @@ class Tag < ActiveRecord::Base
|
|||||||
|
|
||||||
module NameMethods
|
module NameMethods
|
||||||
def normalize_name(name)
|
def normalize_name(name)
|
||||||
name.downcase.tr(" ", "_").gsub(/\A[-~]+/, "").gsub(/\*/, "")
|
name.mb_chars.downcase.tr(" ", "_").gsub(/\A[-~]+/, "").gsub(/\*/, "").to_s
|
||||||
end
|
end
|
||||||
|
|
||||||
def find_or_create_by_name(name, options = {})
|
def find_or_create_by_name(name, options = {})
|
||||||
@@ -233,10 +233,10 @@ class Tag < ActiveRecord::Base
|
|||||||
|
|
||||||
def parse_tag(tag, output)
|
def parse_tag(tag, output)
|
||||||
if tag[0] == "-" && tag.size > 1
|
if tag[0] == "-" && tag.size > 1
|
||||||
output[:exclude] << tag[1..-1].downcase
|
output[:exclude] << tag[1..-1].mb_chars.downcase
|
||||||
|
|
||||||
elsif tag[0] == "~" && tag.size > 1
|
elsif tag[0] == "~" && tag.size > 1
|
||||||
output[:include] << tag[1..-1].downcase
|
output[:include] << tag[1..-1].mb_chars.downcase
|
||||||
|
|
||||||
elsif tag =~ /\*/
|
elsif tag =~ /\*/
|
||||||
matches = Tag.name_matches(tag.downcase).all(:select => "name", :limit => Danbooru.config.tag_query_limit, :order => "post_count DESC").map(&:name)
|
matches = Tag.name_matches(tag.downcase).all(:select => "name", :limit => Danbooru.config.tag_query_limit, :order => "post_count DESC").map(&:name)
|
||||||
@@ -244,7 +244,7 @@ class Tag < ActiveRecord::Base
|
|||||||
output[:include] += matches
|
output[:include] += matches
|
||||||
|
|
||||||
else
|
else
|
||||||
output[:related] << tag.downcase
|
output[:related] << tag.mb_chars.downcase
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -431,7 +431,7 @@ class Tag < ActiveRecord::Base
|
|||||||
|
|
||||||
module SearchMethods
|
module SearchMethods
|
||||||
def name_matches(name)
|
def name_matches(name)
|
||||||
where("name LIKE ? ESCAPE E'\\\\'", name.downcase.to_escaped_for_sql_like)
|
where("name LIKE ? ESCAPE E'\\\\'", name.mb_chars.downcase.to_escaped_for_sql_like)
|
||||||
end
|
end
|
||||||
|
|
||||||
def named(name)
|
def named(name)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class TagAlias < ActiveRecord::Base
|
|||||||
|
|
||||||
module SearchMethods
|
module SearchMethods
|
||||||
def name_matches(name)
|
def name_matches(name)
|
||||||
where("(antecedent_name like ? escape E'\\\\' or consequent_name like ? escape E'\\\\')", name.downcase.to_escaped_for_sql_like, name.downcase.to_escaped_for_sql_like)
|
where("(antecedent_name like ? escape E'\\\\' or consequent_name like ? escape E'\\\\')", name.mb_chars.downcase.to_escaped_for_sql_like, name.downcase.to_escaped_for_sql_like)
|
||||||
end
|
end
|
||||||
|
|
||||||
def active
|
def active
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ class TagSubscription < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
if params[:creator_name]
|
if params[:creator_name]
|
||||||
q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].downcase)
|
q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
q
|
q
|
||||||
@@ -113,7 +113,7 @@ class TagSubscription < ActiveRecord::Base
|
|||||||
relation = where("creator_id = ?", user_id)
|
relation = where("creator_id = ?", user_id)
|
||||||
|
|
||||||
if name
|
if name
|
||||||
relation = relation.where("lower(name) LIKE ? ESCAPE E'\\\\'", name.downcase.to_escaped_for_sql_like)
|
relation = relation.where("lower(name) LIKE ? ESCAPE E'\\\\'", name.mb_chars.downcase.to_escaped_for_sql_like)
|
||||||
end
|
end
|
||||||
|
|
||||||
relation.each do |tag_sub|
|
relation.each do |tag_sub|
|
||||||
|
|||||||
@@ -359,7 +359,7 @@ class Upload < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
if params[:uploader_name].present?
|
if params[:uploader_name].present?
|
||||||
q = q.where("uploader_id = (select _.id from users _ where lower(_.name) = ?)", params[:uploader_name].downcase)
|
q = q.where("uploader_id = (select _.id from users _ where lower(_.name) = ?)", params[:uploader_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:source].present?
|
if params[:source].present?
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ class UserFeedback < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
if params[:user_name].present?
|
if params[:user_name].present?
|
||||||
q = q.where("user_id = (select _.id from users _ where lower(_.name) = ?)", params[:user_name].downcase)
|
q = q.where("user_id = (select _.id from users _ where lower(_.name) = ?)", params[:user_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:creator_id].present?
|
if params[:creator_id].present?
|
||||||
@@ -43,7 +43,7 @@ class UserFeedback < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
if params[:creator_name].present?
|
if params[:creator_name].present?
|
||||||
q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].downcase)
|
q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].mb_chars.downcase)
|
||||||
end
|
end
|
||||||
|
|
||||||
q
|
q
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class WikiPage < ActiveRecord::Base
|
|||||||
|
|
||||||
module SearchMethods
|
module SearchMethods
|
||||||
def titled(title)
|
def titled(title)
|
||||||
where("title = ?", title.downcase.tr(" ", "_"))
|
where("title = ?", title.mb_chars.downcase.tr(" ", "_"))
|
||||||
end
|
end
|
||||||
|
|
||||||
def recent
|
def recent
|
||||||
@@ -30,7 +30,7 @@ class WikiPage < ActiveRecord::Base
|
|||||||
params = {} if params.blank?
|
params = {} if params.blank?
|
||||||
|
|
||||||
if params[:title].present?
|
if params[:title].present?
|
||||||
q = q.where("title LIKE ? ESCAPE E'\\\\'", params[:title].downcase.tr(" ", "_").to_escaped_for_sql_like)
|
q = q.where("title LIKE ? ESCAPE E'\\\\'", params[:title].mb_chars.downcase.tr(" ", "_").to_escaped_for_sql_like)
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:creator_id].present?
|
if params[:creator_id].present?
|
||||||
@@ -102,7 +102,7 @@ class WikiPage < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def normalize_title
|
def normalize_title
|
||||||
self.title = title.downcase.tr(" ", "_")
|
self.title = title.mb_chars.downcase.tr(" ", "_")
|
||||||
end
|
end
|
||||||
|
|
||||||
def creator_name
|
def creator_name
|
||||||
@@ -156,6 +156,6 @@ class WikiPage < ActiveRecord::Base
|
|||||||
else
|
else
|
||||||
match
|
match
|
||||||
end
|
end
|
||||||
end.map {|x| x.downcase.tr(" ", "_")}
|
end.map {|x| x.mb_chars.downcase.tr(" ", "_")}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user