Skip to content

Commit 304ce97

Browse files
committed
refactor: extract PERM_VIEW_RULE constant for duplicated permission string
1 parent 25534d9 commit 304ce97

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

netbox_interface_name_rules/views.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323

2424
logger = logging.getLogger(__name__)
2525

26+
PERM_VIEW_RULE = "netbox_interface_name_rules.view_interfacenamerule"
27+
2628
try:
2729
_plugins_config = getattr(settings, "PLUGINS_CONFIG", {})
2830
APPLY_BATCH_LIMIT = max(1, int(_plugins_config.get("netbox_interface_name_rules", {}).get("apply_batch_limit", 50)))
@@ -124,7 +126,7 @@ class InterfaceNameRuleYAMLExportView(BaseMultiObjectView):
124126

125127
def get_required_permission(self):
126128
"""Return the permission required to export rules."""
127-
return "netbox_interface_name_rules.view_interfacenamerule"
129+
return PERM_VIEW_RULE
128130

129131
def _rules_to_yaml_data(self, queryset):
130132
"""Return a list of dicts (one per rule) using import-form field names."""
@@ -178,7 +180,7 @@ def get(self, request):
178180
initial = {}
179181
loaded_rule = None
180182
rule_id = request.GET.get("rule_id")
181-
can_view = request.user.has_perm("netbox_interface_name_rules.view_interfacenamerule")
183+
can_view = request.user.has_perm(PERM_VIEW_RULE)
182184
if rule_id and not can_view:
183185
messages.warning(request, "You do not have permission to load an existing rule.")
184186
if rule_id and can_view:
@@ -260,7 +262,7 @@ def _handle_save_rule(self, request, cd):
260262
# Skip duplicate detection when the user lacks view permission — we cannot
261263
# query existing rules without it, so add-only users always land on the
262264
# create form (potentially allowing duplicates).
263-
if request.user.has_perm("netbox_interface_name_rules.view_interfacenamerule"):
265+
if request.user.has_perm(PERM_VIEW_RULE):
264266
existing = self._find_existing_rule(cd)
265267
if existing:
266268
messages.info(
@@ -372,7 +374,7 @@ class RuleApplyListView(BaseMultiObjectView):
372374

373375
def get_required_permission(self):
374376
"""Return the permission required to access the apply-rules page."""
375-
return "netbox_interface_name_rules.view_interfacenamerule"
377+
return PERM_VIEW_RULE
376378

377379
def get(self, request):
378380
"""Render the list of all rules with apply/preview buttons."""

0 commit comments

Comments
 (0)