in the firewall editor the port field allows "all" as well
This commit is contained in:
parent
e1086d66d2
commit
6c9e6dd811
Binary file not shown.
Binary file not shown.
@ -34,12 +34,27 @@
|
||||
<span *ngIf="editorForm.get('protocol').value === 'ICMP'">Type and code</span>
|
||||
</h5>
|
||||
|
||||
<input type="text" class="form-control" id="protocolConfig" formControlName="protocolConfig"
|
||||
[appAutofocus]="!editorForm.get('protocolConfig').value && editorForm.get('protocol').value" [appAutofocusDelay]="250"
|
||||
[placeholder]="editorForm.get('protocol').value === 'icmp' ? 'Type:Code [0:255]' : 'Port [1-9999]'"
|
||||
[appAlphaOnly]="editorForm.get('protocol').value === 'icmp' ? '^[0-9:]+$' : '^[0-9]+$'">
|
||||
<div class="input-group mb-3" dropdown placement="bottom right">
|
||||
<button class="btn btn-outline-info dropdown-toggle" type="button" dropdownToggle>
|
||||
<span *ngIf="editorForm.get('protocolConfig').value === 'all'">All ports</span>
|
||||
<span *ngIf="editorForm.get('protocolConfig').value !== 'all'">Specific port</span>
|
||||
</button>
|
||||
<ul *dropdownMenu class="dropdown-menu" role="menu">
|
||||
<li>
|
||||
<button class="dropdown-item" (click)="setProtocolConfig()">Specific port</button>
|
||||
</li>
|
||||
<li>
|
||||
<button class="dropdown-item" (click)="setProtocolConfig('all')">All ports</button>
|
||||
</li>
|
||||
</ul>
|
||||
<input type="text" class="form-control text-capitalize" id="protocolConfig" formControlName="protocolConfig"
|
||||
[appAutofocus]="!editorForm.get('protocolConfig').value && editorForm.get('protocol').value" [appAutofocusDelay]="250"
|
||||
[placeholder]="editorForm.get('protocol').value === 'icmp' ? 'Type:Code [0:255]' : 'Port [1-9999]'"
|
||||
[appAlphaOnly]="editorForm.get('protocol').value === 'icmp' ? '^[0-9:]+$' : '^[0-9]+$'">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row g-4">
|
||||
<div class="col-sm-6">
|
||||
<h5>From</h5>
|
||||
<div class="row">
|
||||
|
@ -38,3 +38,9 @@ h5
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.input-group > .dropdown-toggle
|
||||
{
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
@ -83,7 +83,10 @@ export class FirewallEditorComponent implements OnInit, OnDestroy
|
||||
{
|
||||
action: [this.firewallRule?.action.toUpperCase(), [Validators.required]],
|
||||
protocol: [this.firewallRule?.protocol.toLowerCase(), [Validators.required]],
|
||||
protocolConfig: [this.firewallRule?.protocolConfig, [Validators.required]],
|
||||
protocolConfig: [
|
||||
{ value: this.firewallRule?.protocolConfig, disabled: this.firewallRule?.protocolConfig === 'all' },
|
||||
[Validators.required]
|
||||
],
|
||||
from,
|
||||
to,
|
||||
description: [this.firewallRule?.description || '']
|
||||
@ -159,6 +162,17 @@ export class FirewallEditorComponent implements OnInit, OnDestroy
|
||||
});
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------------------------------------------
|
||||
setProtocolConfig(value?: string)
|
||||
{
|
||||
this.editorForm.get('protocolConfig').setValue(value);
|
||||
|
||||
if (value === 'all')
|
||||
this.editorForm.get('protocolConfig').disable();
|
||||
else
|
||||
this.editorForm.get('protocolConfig').enable();
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------------------------------------------
|
||||
addFromRule(rule: { type: string; config: string })
|
||||
{
|
||||
|
@ -114,7 +114,7 @@
|
||||
tooltip="More options" container="body" placement="top" [adaptivePosition]="false">
|
||||
<fa-icon icon="ellipsis-v" [fixedWidth]="true" size="sm"></fa-icon>
|
||||
</button>
|
||||
<ul id="dropdown-split" *dropdownMenu class="dropdown-menu dropdown-menu-right" role="menu" aria-labelledby="button-split">
|
||||
<ul *dropdownMenu class="dropdown-menu dropdown-menu-right" role="menu">
|
||||
<li role="menuitem">
|
||||
<button class="dropdown-item" (click)="deleteFirewallRule(fw)">
|
||||
<fa-icon icon="trash" [fixedWidth]="true"></fa-icon>
|
||||
|
Reference in New Issue
Block a user