From 51ca31ef8d729a5a90388ce01cbf00960a2521a7 Mon Sep 17 00:00:00 2001 From: evazion Date: Sat, 17 Aug 2019 02:47:49 -0500 Subject: [PATCH] Drop unused tag subscription model. --- app/models/tag_subscription.rb | 62 ---------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 app/models/tag_subscription.rb diff --git a/app/models/tag_subscription.rb b/app/models/tag_subscription.rb deleted file mode 100644 index d00c59d18..000000000 --- a/app/models/tag_subscription.rb +++ /dev/null @@ -1,62 +0,0 @@ -class TagSubscription < ApplicationRecord - belongs_to :creator, :class_name => "User" - validates_presence_of :name, :tag_query, :creator_id - - def migrate_to_saved_searches - tag_query.split(/\r\n|\r|\n/).each do |query| - creator.saved_searches.create(query: query, labels: [name]) - end - end - - def pretty_name - name.tr("_", " ") - end - - def pretty_tag_query - tag_query_array.join(", ") - end - - def tag_query_array - tag_query.scan(/[^\r\n]+/).map(&:strip) - end - - def editable_by?(user) - user.is_moderator? || creator_id == user.id - end - - module SearchMethods - def visible_to(user) - where("(is_public = TRUE OR creator_id = ? OR ?)", user.id, user.is_moderator?) - end - - def owned_by(user) - where("creator_id = ?", user.id) - end - - def name_matches(name) - where("lower(name) like ? escape E'\\\\'", name.to_escaped_for_sql_like) - end - - def search(params) - q = super - - if params[:creator_id] - q = q.where("creator_id = ?", params[:creator_id].to_i) - elsif params[:creator_name] - q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].mb_chars.downcase.strip.tr(" ", "_")) - else - q = q.where("creator_id = ?", CurrentUser.user.id) - end - - if params[:name_matches] - q = q.name_matches(params[:name_matches].mb_chars.downcase.strip.tr(" ", "_")) - end - - q = q.visible_to(CurrentUser.user) - - q.apply_default_order(params) - end - end - - extend SearchMethods -end