Browse Source

Refactoring

pull/1512/head
Thomas 3 years ago
parent
commit
35cb0e9dcd
  1. 18
      apps/api/src/app/user/user.controller.ts
  2. 40
      apps/client/src/app/components/admin-overview/admin-overview.html
  3. 4
      apps/client/src/app/components/header/header.component.ts
  4. 6
      apps/client/src/app/pages/landing/landing-page.component.ts
  5. 9
      apps/client/src/app/pages/register/register-page.component.ts

18
apps/api/src/app/user/user.controller.ts

@ -1,9 +1,6 @@
import { ConfigurationService } from '@ghostfolio/api/services/configuration.service';
import { PropertyService } from '@ghostfolio/api/services/property/property.service';
import {
PROPERTY_IS_READ_ONLY_MODE,
PROPERTY_IS_USER_SIGNUP_ENABLED
} from '@ghostfolio/common/config';
import { PROPERTY_IS_USER_SIGNUP_ENABLED } from '@ghostfolio/common/config';
import { User, UserSettings } from '@ghostfolio/common/interfaces';
import { hasPermission, permissions } from '@ghostfolio/common/permissions';
import type { RequestWithUser } from '@ghostfolio/common/types';
@ -72,19 +69,6 @@ export class UserController {
@Post()
public async signupUser(): Promise<UserItem> {
if (this.configurationService.get('ENABLE_FEATURE_READ_ONLY_MODE')) {
const isReadOnlyMode = (await this.propertyService.getByKey(
PROPERTY_IS_READ_ONLY_MODE
)) as boolean;
if (isReadOnlyMode) {
throw new HttpException(
getReasonPhrase(StatusCodes.FORBIDDEN),
StatusCodes.FORBIDDEN
);
}
}
const isUserSignupEnabled =
((await this.propertyService.getByKey(
PROPERTY_IS_USER_SIGNUP_ENABLED

40
apps/client/src/app/components/admin-overview/admin-overview.html

@ -82,6 +82,26 @@
</table>
</div>
</div>
<div class="d-flex my-3">
<div class="w-50" i18n>User Signup</div>
<div class="w-50">
<mat-slide-toggle
color="primary"
[checked]="info.globalPermissions.includes(permissions.createUserAccount)"
(change)="onEnableUserSignupModeChange($event)"
></mat-slide-toggle>
</div>
</div>
<div *ngIf="hasPermissionToToggleReadOnlyMode" class="d-flex my-3">
<div class="w-50" i18n>Read-only Mode</div>
<div class="w-50">
<mat-slide-toggle
color="primary"
[checked]="info?.isReadOnlyMode"
(change)="onReadOnlyModeChange($event)"
></mat-slide-toggle>
</div>
</div>
<div *ngIf="hasPermissionForSystemMessage" class="d-flex my-3">
<div class="w-50" i18n>System Message</div>
<div class="w-50">
@ -109,26 +129,6 @@
</button>
</div>
</div>
<div class="d-flex my-3">
<div class="w-50" i18n>Enable User Signup</div>
<div class="w-50">
<mat-slide-toggle
color="primary"
[checked]="info.globalPermissions.includes(permissions.createUserAccount)"
(change)="onEnableUserSignupModeChange($event)"
></mat-slide-toggle>
</div>
</div>
<div *ngIf="hasPermissionToToggleReadOnlyMode" class="d-flex my-3">
<div class="w-50" i18n>Read-only Mode</div>
<div class="w-50">
<mat-slide-toggle
color="primary"
[checked]="info?.isReadOnlyMode"
(change)="onReadOnlyModeChange($event)"
></mat-slide-toggle>
</div>
</div>
<div
*ngIf="hasPermissionForSubscription"
class="d-flex my-3 subscription"

4
apps/client/src/app/components/header/header.component.ts

@ -81,9 +81,7 @@ export class HeaderComponent implements OnChanges {
permissions.enableFearAndGreedIndex
);
this.hasPermissionToCreateUser =
!this.info?.isReadOnlyMode &&
hasPermission(
this.hasPermissionToCreateUser = hasPermission(
this.info?.globalPermissions,
permissions.createUserAccount
);

6
apps/client/src/app/pages/landing/landing-page.component.ts

@ -48,7 +48,7 @@ export class LandingPageComponent implements OnDestroy, OnInit {
private dataService: DataService,
private deviceService: DeviceDetectorService
) {
const { globalPermissions, isReadOnlyMode, statistics } =
const { globalPermissions, statistics } =
this.dataService.fetchInfo();
this.hasPermissionForStatistics = hasPermission(
@ -56,9 +56,7 @@ export class LandingPageComponent implements OnDestroy, OnInit {
permissions.enableStatistics
);
this.hasPermissionToCreateUser =
!isReadOnlyMode &&
hasPermission(globalPermissions, permissions.createUserAccount);
this.hasPermissionToCreateUser = hasPermission(globalPermissions, permissions.createUserAccount);
this.statistics = statistics;
}

9
apps/client/src/app/pages/register/register-page.component.ts

@ -45,7 +45,7 @@ export class RegisterPageComponent implements OnDestroy, OnInit {
}
public ngOnInit() {
const { demoAuthToken, globalPermissions, isReadOnlyMode } =
const { demoAuthToken, globalPermissions } =
this.dataService.fetchInfo();
this.demoAuthToken = demoAuthToken;
@ -54,9 +54,10 @@ export class RegisterPageComponent implements OnDestroy, OnInit {
globalPermissions,
permissions.enableSocialLogin
);
this.hasPermissionToCreateUser =
!isReadOnlyMode &&
hasPermission(globalPermissions, permissions.createUserAccount);
this.hasPermissionToCreateUser = hasPermission(
globalPermissions,
permissions.createUserAccount
);
}
public async createAccount() {

Loading…
Cancel
Save