UI: Remove qr code widgets for tenant level
This commit is contained in:
parent
bbb2531c2e
commit
7a60c0fbfd
@ -820,8 +820,7 @@ const defaultUserMenuMap = new Map<Authority, MenuReference[]>([
|
||||
id: MenuId.mobile_center,
|
||||
pages: [
|
||||
{id: MenuId.mobile_apps},
|
||||
{id: MenuId.mobile_bundles},
|
||||
{id: MenuId.mobile_qr_code_widget}
|
||||
{id: MenuId.mobile_bundles}
|
||||
]
|
||||
},
|
||||
{id: MenuId.api_usage},
|
||||
|
||||
@ -14,7 +14,7 @@
|
||||
/// limitations under the License.
|
||||
///
|
||||
|
||||
import { ChangeDetectorRef, Component, Injector } from '@angular/core';
|
||||
import { Component } from '@angular/core';
|
||||
import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
|
||||
import { Store } from '@ngrx/store';
|
||||
import { AppState } from '@core/core.state';
|
||||
@ -42,8 +42,6 @@ export class MobileAppQrCodeBasicConfigComponent extends BasicWidgetConfigCompon
|
||||
|
||||
constructor(protected store: Store<AppState>,
|
||||
protected widgetConfigComponent: WidgetConfigComponent,
|
||||
private cd: ChangeDetectorRef,
|
||||
private $injector: Injector,
|
||||
private fb: UntypedFormBuilder) {
|
||||
super(store, widgetConfigComponent);
|
||||
}
|
||||
|
||||
@ -27,12 +27,7 @@
|
||||
<div style="height: 4px;" *ngIf="!(isLoading$ | async)"></div>
|
||||
<mat-card-content style="padding-top: 16px">
|
||||
<div class="tb-form-panel no-border no-padding" [formGroup]="mobileAppSettingsForm">
|
||||
<div class="tb-form-row no-border no-padding-bottom" *ngIf="isTenantAdmin()">
|
||||
<mat-slide-toggle class="mat-slide" formControlName="useSystemSettings">
|
||||
{{ 'admin.mobile-app.use-system-settings' | translate }}
|
||||
</mat-slide-toggle>
|
||||
</div>
|
||||
<div class="tb-form-panel" *ngIf="!mobileAppSettingsForm.get('useSystemSettings').value">
|
||||
<div class="tb-form-panel">
|
||||
<div class="tb-form-row column-xs no-border no-padding space-between">
|
||||
<div class="tb-form-panel-title" translate>admin.mobile-app.applications</div>
|
||||
<tb-toggle-select formControlName="useDefaultApp">
|
||||
@ -63,7 +58,7 @@
|
||||
</mat-slide-toggle>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tb-form-panel" formGroupName="qrCodeConfig" *ngIf="!mobileAppSettingsForm.get('useSystemSettings').value">
|
||||
<div class="tb-form-panel" formGroupName="qrCodeConfig">
|
||||
<div class="tb-form-row column-xs no-border no-padding space-between">
|
||||
<div class="tb-form-panel-title" translate>admin.mobile-app.appearance-on-home-page</div>
|
||||
<tb-toggle-select formControlName="showOnHomePage">
|
||||
@ -98,7 +93,7 @@
|
||||
matTooltipClass="tb-error-tooltip"
|
||||
[matTooltip]="(mobileAppSettingsForm.get('qrCodeConfig.qrCodeLabel').hasError('required') ?
|
||||
'admin.mobile-app.label-required' : 'admin.mobile-app.label-max-length') | translate"
|
||||
*ngIf="mobileAppSettingsForm.get('qrCodeConfig.qrCodeLabel').touched &&
|
||||
*ngIf="!mobileAppSettingsForm.get('qrCodeConfig.qrCodeLabel').untouched &&
|
||||
mobileAppSettingsForm.get('qrCodeConfig.qrCodeLabel').hasError('required') ||
|
||||
mobileAppSettingsForm.get('qrCodeConfig.qrCodeLabel').hasError('maxlength')"
|
||||
class="tb-error">
|
||||
|
||||
@ -24,8 +24,6 @@ import { MobileApplicationService } from '@core/http/mobile-application.service'
|
||||
import { BadgePosition, badgePositionTranslationsMap, QrCodeSettings } from '@shared/models/mobile-app.models';
|
||||
import { ActionUpdateMobileQrCodeEnabled } from '@core/auth/auth.actions';
|
||||
import { EntityType } from '@shared/models/entity-type.models';
|
||||
import { getCurrentAuthUser } from '@core/auth/auth.selectors';
|
||||
import { Authority } from '@shared/models/authority.enum';
|
||||
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
||||
|
||||
@Component({
|
||||
@ -39,7 +37,6 @@ export class MobileQrCodeWidgetSettingsComponent extends PageComponent implement
|
||||
readonly entityType = EntityType;
|
||||
|
||||
mobileAppSettingsForm = this.fb.group({
|
||||
useSystemSettings: [false],
|
||||
useDefaultApp: [true],
|
||||
mobileAppBundleId: [{value: null, disabled: true}, Validators.required],
|
||||
androidEnabled: [true],
|
||||
@ -53,7 +50,6 @@ export class MobileQrCodeWidgetSettingsComponent extends PageComponent implement
|
||||
})
|
||||
});
|
||||
|
||||
private authUser = getCurrentAuthUser(this.store);
|
||||
private mobileAppSettings: QrCodeSettings;
|
||||
|
||||
constructor(protected store: Store<AppState>,
|
||||
@ -62,24 +58,6 @@ export class MobileQrCodeWidgetSettingsComponent extends PageComponent implement
|
||||
super(store);
|
||||
this.mobileAppService.getMobileAppSettings()
|
||||
.subscribe(settings => this.processMobileAppSettings(settings));
|
||||
if (this.isTenantAdmin()) {
|
||||
this.mobileAppSettingsForm.get('useSystemSettings').valueChanges.pipe(
|
||||
takeUntilDestroyed()
|
||||
).subscribe(value => {
|
||||
if (value) {
|
||||
this.mobileAppSettingsForm.get('mobileAppBundleId').disable({emitEvent: false});
|
||||
this.mobileAppSettingsForm.get('qrCodeConfig.qrCodeLabel').disable({emitEvent: false});
|
||||
} else {
|
||||
const formValue = this.mobileAppSettingsForm.value;
|
||||
if (!formValue.useDefaultApp) {
|
||||
this.mobileAppSettingsForm.get('mobileAppBundleId').enable({emitEvent: false});
|
||||
}
|
||||
if (formValue.qrCodeConfig.qrCodeLabelEnabled && formValue.qrCodeConfig.showOnHomePage) {
|
||||
this.mobileAppSettingsForm.get('qrCodeConfig.qrCodeLabel').enable({emitEvent: false});
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
this.mobileAppSettingsForm.get('useDefaultApp').valueChanges.pipe(
|
||||
takeUntilDestroyed()
|
||||
).subscribe(value => {
|
||||
@ -138,15 +116,8 @@ export class MobileQrCodeWidgetSettingsComponent extends PageComponent implement
|
||||
});
|
||||
}
|
||||
|
||||
public isTenantAdmin(): boolean {
|
||||
return this.authUser.authority === Authority.TENANT_ADMIN;
|
||||
}
|
||||
|
||||
private processMobileAppSettings(mobileAppSettings: QrCodeSettings): void {
|
||||
this.mobileAppSettings = {...mobileAppSettings};
|
||||
if (!this.isTenantAdmin()) {
|
||||
this.mobileAppSettings.useSystemSettings = false;
|
||||
}
|
||||
this.mobileAppSettingsForm.reset(this.mobileAppSettings);
|
||||
}
|
||||
|
||||
|
||||
@ -22,7 +22,6 @@ import { MobileAppBundleId } from '@shared/models/id/mobile-app-bundle-id';
|
||||
import { deepClone, isNotEmptyStr } from '@core/utils';
|
||||
|
||||
export interface QrCodeSettings extends HasTenantId {
|
||||
useSystemSettings: boolean;
|
||||
useDefaultApp: boolean;
|
||||
mobileAppBundleId: MobileAppBundleId
|
||||
androidEnabled: boolean;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user