diff --git a/common/repositories/criteria/content_filter_criteria.h b/common/repositories/criteria/content_filter_criteria.h index 5a0770fe5..697d72f71 100644 --- a/common/repositories/criteria/content_filter_criteria.h +++ b/common/repositories/criteria/content_filter_criteria.h @@ -54,22 +54,17 @@ namespace ContentFilterCriteria { ); std::vector flags = content_service.GetContentFlags(); - - for (auto &flag: flags) { - flag = "'" + flag + "'"; - } - - std::string flags_in_filter; + std::string flags_in_filter; if (!flags.empty()) { flags_in_filter = fmt::format( - " OR {}content_flags IN ({})", + " OR CONCAT(',', {}content_flags, ',') REGEXP ',({}),' ", table_prefix, - implode(", ", flags) + implode("|", flags) ); } criteria += fmt::format( - " AND ({}content_flags IS NULL{})", + " AND ({}content_flags IS NULL{}) ", table_prefix, flags_in_filter ); diff --git a/zone/main.cpp b/zone/main.cpp index 64bdece65..85da66f9e 100644 --- a/zone/main.cpp +++ b/zone/main.cpp @@ -417,7 +417,7 @@ int main(int argc, char** argv) { set_content_flags.push_back(flags.flag_name); LogInfo( - "Enabling content-flag [{}]", + "Enabled content flag [{}]", flags.flag_name ); }