-import { } from '@angular/common';
-import { Component, OnInit } from '@angular/core';
-import { FormBuilder, FormGroup } from '@angular/forms';
-import { Router } from '@angular/router';
+import { Component, OnInit } from '@angular/core'
+import { FormBuilder, FormGroup } from '@angular/forms'
+import { Router } from '@angular/router'
-import { AccountService } from './account.service';
-import { FormReactive, USER_PASSWORD } from '../shared';
+import { NotificationsService } from 'angular2-notifications'
+
+import { AuthService } from '../core'
+import {
+ FormReactive,
+ User,
+ UserService,
+ USER_PASSWORD
+} from '../shared'
@Component({
selector: 'my-account',
- templateUrl: './account.component.html'
+ templateUrl: './account.component.html',
+ styleUrls: [ './account.component.scss' ]
})
+export class AccountComponent implements OnInit {
+ user: User = null
-export class AccountComponent extends FormReactive implements OnInit {
- information: string = null;
- error: string = null;
-
- form: FormGroup;
- formErrors = {
- 'new-password': '',
- 'new-confirmed-password': ''
- };
- validationMessages = {
- 'new-password': USER_PASSWORD.MESSAGES,
- 'new-confirmed-password': USER_PASSWORD.MESSAGES
- };
-
- constructor(
- private accountService: AccountService,
- private formBuilder: FormBuilder,
- private router: Router
- ) {
- super();
- }
-
- buildForm() {
- this.form = this.formBuilder.group({
- 'new-password': [ '', USER_PASSWORD.VALIDATORS ],
- 'new-confirmed-password': [ '', USER_PASSWORD.VALIDATORS ],
- });
-
- this.form.valueChanges.subscribe(data => this.onValueChanged(data));
- }
-
- ngOnInit() {
- this.buildForm();
- }
-
- changePassword() {
- const newPassword = this.form.value['new-password'];
- const newConfirmedPassword = this.form.value['new-confirmed-password'];
-
- this.information = null;
- this.error = null;
-
- if (newPassword !== newConfirmedPassword) {
- this.error = 'The new password and the confirmed password do not correspond.';
- return;
- }
-
- this.accountService.changePassword(newPassword).subscribe(
- ok => this.information = 'Password updated.',
+ constructor (private authService: AuthService) {}
- err => this.error = err
- );
+ ngOnInit () {
+ this.user = this.authService.getUser()
}
}