import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { Router } from '@angular/router';
import { APIService } from '../services/api.service';
import { MatSnackBar } from '@angular/material/snack-bar';
import { HttpErrorResponse } from '@angular/common/http';
@Component({
selector: 'app-register',
templateUrl: './register.component.html',
styleUrls: ['./register.component.scss']
})
export class RegisterComponent implements OnInit {
registerFormGroup: FormGroup = this.fb.group({
emailaddress: ['', [Validators.required, Validators.email]],
password: ['', [Validators.required, Validators.minLength(6), Validators.maxLength(16)]],
})
constructor(private router: Router, private apiService: APIService, private fb: FormBuilder, private snackBar: MatSnackBar) {
}
ngOnInit(): void {
}
RegisterUser(){
if(this.registerFormGroup.valid)
{
this.apiService.RegisterUser(this.registerFormGroup.value).subscribe(() => {
this.registerFormGroup.reset();
this.router.navigate(['']).then((navigated: boolean) => {
if(navigated) {
this.snackBar.open(`Registered successfully`, 'X', {duration: 5000});
}
});
})
}
// if(this.registerFormGroup.valid)
// {
// this.apiService.RegisterUser(this.registerFormGroup.value).subscribe(() => {
// this.registerFormGroup.reset();
// this.router.navigate(['']).then((navigated: boolean) => {
// if(navigated) {
// this.snackBar.open(`Registered successfully`, 'X', {duration: 5000});
// }
// });
// }, (response: HttpErrorResponse) => {
// if (response.status === 403) {
// this.snackBar.open(response.error, 'X', {duration: 5000});
// }
// if (response.status === 500){
// this.snackBar.open(response.error, 'X', {duration: 5000});
// }
// })
// }
}
}