X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Bmy-account%2Fmy-account-settings%2Fmy-account-settings.component.ts;h=577f4a252a7d31e5ee8e03595962b5ba1544be6c;hb=0c9a83546687d2ae80b3f5299a8ee59d741f894f;hp=4800be24bce4b904c165af21a98e059e0cee574d;hpb=67ed6552b831df66713bac9e672738796128d33f;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+my-account/my-account-settings/my-account-settings.component.ts b/client/src/app/+my-account/my-account-settings/my-account-settings.component.ts index 4800be24b..577f4a252 100644 --- a/client/src/app/+my-account/my-account-settings/my-account-settings.component.ts +++ b/client/src/app/+my-account/my-account-settings/my-account-settings.component.ts @@ -1,8 +1,8 @@ -import { BytesPipe } from 'ngx-pipes' import { ViewportScroller } from '@angular/common' +import { HttpErrorResponse } from '@angular/common/http' import { AfterViewChecked, Component, OnInit } from '@angular/core' import { AuthService, Notifier, User, UserService } from '@app/core' -import { I18n } from '@ngx-translate/i18n-polyfill' +import { genericUploadErrorHandler } from '@app/helpers' @Component({ selector: 'my-account-settings', @@ -12,22 +12,13 @@ import { I18n } from '@ngx-translate/i18n-polyfill' export class MyAccountSettingsComponent implements OnInit, AfterViewChecked { user: User = null - userVideoQuota = '0' - userVideoQuotaUsed = 0 - userVideoQuotaPercentage = 15 - - userVideoQuotaDaily = '0' - userVideoQuotaUsedDaily = 0 - userVideoQuotaDailyPercentage = 15 - private lastScrollHash: string constructor ( private viewportScroller: ViewportScroller, private userService: UserService, private authService: AuthService, - private notifier: Notifier, - private i18n: I18n + private notifier: Notifier ) {} get userInformationLoaded () { @@ -36,30 +27,6 @@ export class MyAccountSettingsComponent implements OnInit, AfterViewChecked { ngOnInit () { this.user = this.authService.getUser() - - this.authService.userInformationLoaded.subscribe( - () => { - if (this.user.videoQuota !== -1) { - this.userVideoQuota = new BytesPipe().transform(this.user.videoQuota, 0).toString() - this.userVideoQuotaPercentage = this.user.videoQuota * 100 / this.userVideoQuotaUsed - } else { - this.userVideoQuota = this.i18n('Unlimited') - } - - if (this.user.videoQuotaDaily !== -1) { - this.userVideoQuotaDaily = new BytesPipe().transform(this.user.videoQuotaDaily, 0).toString() - this.userVideoQuotaDailyPercentage = this.user.videoQuotaDaily * 100 / this.userVideoQuotaUsedDaily - } else { - this.userVideoQuotaDaily = this.i18n('Unlimited') - } - } - ) - - this.userService.getMyVideoQuotaUsed() - .subscribe(data => { - this.userVideoQuotaUsed = data.videoQuotaUsed - this.userVideoQuotaUsedDaily = data.videoQuotaUsedDaily - }) } ngAfterViewChecked () { @@ -72,18 +39,31 @@ export class MyAccountSettingsComponent implements OnInit, AfterViewChecked { onAvatarChange (formData: FormData) { this.userService.changeAvatar(formData) - .subscribe( - data => { - this.notifier.success(this.i18n('Avatar changed.')) + .subscribe({ + next: data => { + this.notifier.success($localize`Avatar changed.`) - this.user.updateAccountAvatar(data.avatar) + this.user.updateAccountAvatar(data.avatars) }, - err => this.notifier.error(err.message) - ) + error: (err: HttpErrorResponse) => genericUploadErrorHandler({ + err, + name: $localize`avatar`, + notifier: this.notifier + }) + }) } - hasDailyQuota () { - return this.user.videoQuotaDaily !== -1 + onAvatarDelete () { + this.userService.deleteAvatar() + .subscribe({ + next: data => { + this.notifier.success($localize`Avatar deleted.`) + + this.user.updateAccountAvatar() + }, + + error: (err: HttpErrorResponse) => this.notifier.error(err.message) + }) } }