diff --git a/apps/rule-manager/app/controllers/RulesController.scala b/apps/rule-manager/app/controllers/RulesController.scala index ae267b133..58f3998fb 100644 --- a/apps/rule-manager/app/controllers/RulesController.scala +++ b/apps/rule-manager/app/controllers/RulesController.scala @@ -40,7 +40,7 @@ class RulesController( .map(toFormError("refresh-sheet")) _ <- RuleManager.destructivelyPublishRules(dbRules, bucketRuleResource) } yield { - RuleManager.searchDraftRules(1, None, List.empty) + RuleManager.searchDraftRules(1) } maybeWrittenRules match { @@ -72,9 +72,15 @@ class RulesController( } } - def list(page: Int = 1, word: Option[String] = None, sortBy: List[String] = List.empty) = + def list( + page: Int = 1, + word: Option[String] = None, + tags: List[Int] = List.empty, + ruleTypes: List[String] = List.empty, + sortBy: List[String] = List.empty + ) = APIAuthAction { - Ok(Json.toJson(RuleManager.searchDraftRules(page, word, sortBy))) + Ok(Json.toJson(RuleManager.searchDraftRules(page, word, tags, ruleTypes, sortBy))) } def get(id: Int) = APIAuthAction { diff --git a/apps/rule-manager/app/service/RuleManager.scala b/apps/rule-manager/app/service/RuleManager.scala index a209f1b1b..f74a74316 100644 --- a/apps/rule-manager/app/service/RuleManager.scala +++ b/apps/rule-manager/app/service/RuleManager.scala @@ -165,10 +165,16 @@ object RuleManager extends Loggable { } } - def searchDraftRules(page: Int, queryStr: Option[String], sortBy: List[String])(implicit + def searchDraftRules( + page: Int, + queryStr: Option[String] = None, + tags: List[Int] = List.empty, + ruleTypes: List[String] = List.empty, + sortBy: List[String] = List.empty + )(implicit session: DBSession = autoSession ): PaginatedResponse[DbRuleDraft] = - DbRuleDraft.searchRules(page, queryStr, sortBy) + DbRuleDraft.searchRules(page, queryStr, tags = tags, ruleTypes = ruleTypes, sortBy = sortBy) def getDraftDictionaryRules(word: Option[String], page: Int)(implicit session: DBSession = autoSession diff --git a/apps/rule-manager/conf/routes b/apps/rule-manager/conf/routes index 34a61241c..4a8206c08 100644 --- a/apps/rule-manager/conf/routes +++ b/apps/rule-manager/conf/routes @@ -13,7 +13,7 @@ POST /api/refresh controllers.RulesController.refresh() +nocsrf POST /api/refreshDictionary controllers.RulesController.refreshDictionaryRules() +nocsrf -GET /api/rules controllers.RulesController.list(page: Int, queryStr: Option[String], sortBy: List[String]) +GET /api/rules controllers.RulesController.list(page: Int, queryStr: Option[String], tags: List[Int], ruleTypes: List[String], sortBy: List[String]) +nocsrf POST /api/rules controllers.RulesController.create() +nocsrf