]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/admin/users/user-add/user-add.component.ts
Client: update to new form api
[github/Chocobozzz/PeerTube.git] / client / src / app / admin / users / user-add / user-add.component.ts
1 import { Validators } from '@angular/common';
2 import { Component, OnInit } from '@angular/core';
3 import { FormGroup, FormControl, REACTIVE_FORM_DIRECTIVES } from '@angular/forms';
4 import { Router } from '@angular/router';
5
6 import { UserService } from '../shared';
7
8 @Component({
9 selector: 'my-user-add',
10 template: require('./user-add.component.html'),
11 directives: [ REACTIVE_FORM_DIRECTIVES ]
12 })
13 export class UserAddComponent implements OnInit {
14 userAddForm: FormGroup;
15 error: string = null;
16 username = '';
17 password = '';
18
19 constructor(private router: Router, private userService: UserService) {}
20
21 ngOnInit() {
22 this.userAddForm = new FormGroup({
23 username: new FormControl('', [ <any>Validators.required, <any>Validators.minLength(3), <any>Validators.maxLength(20) ]),
24 password: new FormControl('', [ <any>Validators.required, <any>Validators.minLength(6) ]),
25 });
26 }
27
28 addUser() {
29 this.error = null;
30
31 this.userService.addUser(this.username, this.password).subscribe(
32 ok => this.router.navigate([ '/admin/users/list' ]),
33
34 err => this.error = err
35 );
36 }
37 }