50 lines
1.8 KiB
HTML
50 lines
1.8 KiB
HTML
<h2 mat-dialog-title>{{ (isEditMode ? 'admin.user_aliases.edit' : 'admin.user_aliases.create') | i18n }}</h2>
|
|
|
|
<mat-dialog-content>
|
|
<form [formGroup]="form">
|
|
<mat-form-field appearance="outline">
|
|
<mat-label>{{ 'admin.user_aliases.target' | i18n }}</mat-label>
|
|
<input matInput type="number" formControlName="target" [placeholder]="'admin.user_aliases.target' | i18n"
|
|
required>
|
|
@if (form.get('target')?.hasError('required')) {
|
|
<mat-error>
|
|
{{ 'admin.user_aliases.target_required' | i18n }}
|
|
</mat-error>
|
|
}
|
|
<mat-hint>{{ 'admin.user_aliases.target_hint' | i18n }}</mat-hint>
|
|
</mat-form-field>
|
|
|
|
<mat-form-field appearance="outline">
|
|
<mat-label>{{ 'admin.user_aliases.alias' | i18n }}</mat-label>
|
|
<input matInput formControlName="alias" [placeholder]="'admin.user_aliases.alias' | i18n" required>
|
|
@if (form.get('alias')?.hasError('required')) {
|
|
<mat-error>
|
|
{{ 'admin.user_aliases.alias_required' | i18n }}
|
|
</mat-error>
|
|
}
|
|
</mat-form-field>
|
|
|
|
<mat-form-field appearance="outline">
|
|
<mat-label>{{ 'admin.user_aliases.visibility' | i18n }}</mat-label>
|
|
<mat-select formControlName="visibility" required>
|
|
@for (visibility of visibilityOptions; track visibility) {
|
|
<mat-option [value]="visibility">
|
|
{{ visibility }}
|
|
</mat-option>
|
|
}
|
|
</mat-select>
|
|
@if (form.get('visibility')?.hasError('required')) {
|
|
<mat-error>
|
|
{{ 'admin.user_aliases.visibility_required' | i18n }}
|
|
</mat-error>
|
|
}
|
|
</mat-form-field>
|
|
</form>
|
|
</mat-dialog-content>
|
|
|
|
<mat-dialog-actions>
|
|
<a mat-raised-button color="primary" (click)="onSubmit()" [disabled]="!form.valid">
|
|
{{ (isEditMode ? 'admin.save' : 'admin.create') | i18n }}
|
|
</a>
|
|
<a mat-button (click)="onCancel()">{{ 'cancel' | i18n }}</a>
|
|
</mat-dialog-actions> |