1 import { Component, OnInit } from '@angular/core';
2 import { FormBuilder, FormGroup, Validators } from '@angular/forms';
3 import { MustMatch } from 'src/app/shared/helpers/must-match-validator';
4 import { UsersService } from 'src/app/shared/services';
5 import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
8 selector: 'app-user-details-form',
9 templateUrl: './user-details-form.component.html',
10 styleUrls: ['./user-details-form.component.scss']
12 export class UserDetailsFormComponent implements OnInit {
13 addNewUserForm: FormGroup;
16 constructor(private formBuilder: FormBuilder,
17 private usersService: UsersService,
18 public activeModal: NgbActiveModal) { }
21 this.addNewUserForm = this.formBuilder.group({
22 firstName: ['', Validators.required],
24 lastName: ['', Validators.required],
25 email: ['', [Validators.required, Validators.email]],
26 loginId: ['', Validators.required],
27 loginPwd: ['', [Validators.required, Validators.minLength(6)]],
28 confirmPassword: ['', Validators.required]
30 validator: MustMatch('loginPwd', 'confirmPassword')
35 return this.addNewUserForm.controls;
39 this.submitted = true;
40 if (this.addNewUserForm.invalid) {
41 console.log("Invalid form!!");
44 console.log("New user Json : " + JSON.stringify(this.addNewUserForm.value));
45 console.log("Get Raw value : " + this.addNewUserForm.getRawValue());
46 let newUserFormData = JSON.stringify(this.addNewUserForm.getRawValue());
47 this.usersService.addNewUser(newUserFormData);
48 this.activeModal.close();