34 lines
1.4 KiB
HTML
34 lines
1.4 KiB
HTML
<div class="row mt-md-5">
|
|
<div class="col-12 col-md-6 col-lg-4 mx-auto">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3>Login</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
<form autocomplete="off" [formGroup]="loginForm" (ngSubmit)="onSubmit()">
|
|
<div class="form-group">
|
|
<label>Username</label>
|
|
<input type="text" class="form-control auto-invalid" formControlName="username" autofocus />
|
|
<div class="invalid-feedback">
|
|
Username is required.
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label>Password</label>
|
|
<input type="password" class="form-control auto-invalid" formControlName="password" />
|
|
<div class="invalid-feedback">
|
|
Password is required.
|
|
</div>
|
|
</div>
|
|
|
|
<app-alert *ngIf="loginError">
|
|
<app-alert-message>Username or password is invalid!</app-alert-message>
|
|
</app-alert>
|
|
|
|
<button type="submit" class="btn btn-success float-right" [disabled]="!loginForm.valid">Login</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div> |