import { Component, OnInit } from '@angular/core'; import { FormBuilder, FormGroup, Validators } from '@angular/forms'; import { Router } from '@angular/router'; import { AccountService } from '../account.service'; @Component({ selector: 'app-admin', templateUrl: './admin.component.html', styleUrls: ['./admin.component.scss'] }) export class AdminComponent implements OnInit { public passwordForm: FormGroup public passwordError = false public username = '' constructor(public account: AccountService, router: Router, private formBuilder: FormBuilder) { this.passwordForm = this.formBuilder.group({ password: ['', Validators.required], password_repeat: ['', Validators.required] }) account.subscribe((username: string) => { if (account.username.length == 0) { router.navigate(['login']) } this.username = username }) } ngOnInit(): void { } onPasswordSubmit() { if (this.passwordForm.invalid) { return } this.passwordError = this.passwordForm.controls['password'].value != this.passwordForm.controls['password_repeat'].value if (this.passwordError) { return } this.account.changePassword(this.passwordForm.controls['password'].value, () => { this.passwordForm.reset() }, () => {}) } }