aboutsummaryrefslogtreecommitdiff
path: root/src/hydrilla/proxy/policies/rule.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/hydrilla/proxy/policies/rule.py')
-rw-r--r--src/hydrilla/proxy/policies/rule.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/hydrilla/proxy/policies/rule.py b/src/hydrilla/proxy/policies/rule.py
index 8c5e69b..1f39295 100644
--- a/src/hydrilla/proxy/policies/rule.py
+++ b/src/hydrilla/proxy/policies/rule.py
@@ -67,11 +67,25 @@ class BlockPolicy(base.Policy):
class RuleAllowPolicy(AllowPolicy):
pattern: ParsedPattern
+ def make_info_page(self, http_info: http_messages.FullHTTPInfo) \
+ -> t.Optional[str]:
+ return base.get_info_template('js_rule_allowed_info.html.jinja').render(
+ url = http_info.request_info.url.orig_url,
+ pattern = self.pattern.orig_url
+ )
+
@dc.dataclass(frozen=True)
class RuleBlockPolicy(BlockPolicy):
pattern: ParsedPattern
+ def make_info_page(self, http_info: http_messages.FullHTTPInfo) \
+ -> t.Optional[str]:
+ return base.get_info_template('js_rule_blocked_info.html.jinja').render(
+ url = http_info.request_info.url.orig_url,
+ pattern = self.pattern.orig_url
+ )
+
@dc.dataclass(frozen=True, unsafe_hash=True) # type: ignore[misc]
class RulePolicyFactory(base.PolicyFactory):