46 lines
1.2 KiB
HTML
46 lines
1.2 KiB
HTML
<section class="login-section">
|
|
<div class="login-card">
|
|
<div class="login-header">
|
|
<img src="svg/small-flower.svg" alt="" class="login-flower" aria-hidden="true">
|
|
<h1>Sign In</h1>
|
|
<p>Admin access for KMountain Flower Radio</p>
|
|
</div>
|
|
|
|
<form (ngSubmit)="onSubmit()" class="login-form">
|
|
<div class="form-group">
|
|
<label for="username">Username</label>
|
|
<input
|
|
id="username"
|
|
type="text"
|
|
[(ngModel)]="username"
|
|
name="username"
|
|
autocomplete="username"
|
|
placeholder="Enter username"
|
|
required
|
|
>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="password">Password</label>
|
|
<input
|
|
id="password"
|
|
type="password"
|
|
[(ngModel)]="password"
|
|
name="password"
|
|
autocomplete="current-password"
|
|
placeholder="Enter password"
|
|
required
|
|
>
|
|
</div>
|
|
|
|
@if (error) {
|
|
<div class="login-error" role="alert">{{ error }}</div>
|
|
}
|
|
|
|
<button type="submit" class="btn btn-login" [disabled]="loading">
|
|
{{ loading ? 'Signing in…' : 'Sign In' }}
|
|
</button>
|
|
</form>
|
|
</div>
|
|
</section>
|