From a70433e78fc3e938d3ac5bb9d65c780da9bafec5 Mon Sep 17 00:00:00 2001 From: BrokenEagle Date: Fri, 6 Mar 2020 07:27:00 +0000 Subject: [PATCH] Support numeric inputs for the category --- app/logical/tag_category.rb | 4 ++++ app/models/tag.rb | 9 ++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/app/logical/tag_category.rb b/app/logical/tag_category.rb index efd094c1f..ea3d40b7c 100644 --- a/app/logical/tag_category.rb +++ b/app/logical/tag_category.rb @@ -71,6 +71,10 @@ class TagCategory def short_name_regex @@short_name_regex ||= short_name_list.join("|") end + + def category_ids_regex + @@category_ids_regex ||= "[#{category_ids.join("")}]" + end end extend Mappings diff --git a/app/models/tag.rb b/app/models/tag.rb index e6b3e4b03..aafe59dd2 100644 --- a/app/models/tag.rb +++ b/app/models/tag.rb @@ -87,7 +87,14 @@ class Tag < ApplicationRecord end def value_for(string) - TagCategory.mapping[string.to_s.downcase] || 0 + norm_string = string.to_s.downcase + if norm_string =~ /#{TagCategory.category_ids_regex}/ + norm_string.to_i + elsif TagCategory.mapping[string.to_s.downcase] + TagCategory.mapping[string.to_s.downcase] + else + 0 + end end end