Skip to content
Snippets Groups Projects
Commit 052d509d authored by Eugen Ciur's avatar Eugen Ciur
Browse files

add spinner to the signin button to indicate progress

parent 253c5a56
Branches
No related tags found
No related merge requests found
{{#if @disabled}}
<button
class="btn btn-block btn-primary btn-lg w-100"
disabled
type="submit">Sign In</button>
{{else}}
<button
class="btn btn-block btn-primary btn-lg w-100"
type="submit"
{{on "click" @onSubmit}}>
<Spinner @inProgress={{@inProgress}} />
Sign In
</button>
{{/if}}
\ No newline at end of file
......@@ -16,17 +16,12 @@
<label for="password" class="form-label">Password</label>
</div>
{{#if this.disabled}}
<button
class="btn btn-block btn-primary btn-lg w-100"
disabled
type="submit">Sign In</button>
{{else}}
<button
class="btn btn-block btn-primary btn-lg w-100"
type="submit"
{{on "click" this.onSubmit}}>Sign In</button>
{{/if}}
<Button::SignIn
@disabled={{this.disabled}}
@onSubmit={{this.onSubmit}}
@inProgress={{@inProgress}}>
</Button::SignIn>
<div class="mt-3">
<input type="checkbox" id="remember" name="remember">
<label class="font-weight-normal my-2" for="remember">
......
<span
class="spinner-border spinner-border-sm {{if @inProgress 'visible' 'invisible'}}"
role="status"
aria-hidden="true">
</span>
\ No newline at end of file
......@@ -7,12 +7,14 @@ import { base_url } from 'papermerge/utils';
export default class LoginController extends Controller {
@tracked errorMessage;
@tracked in_progress = false;
@service session;
@service router;
@action
async authenticate(username, password) {
try {
this.in_progress = true;
await this.session.authenticate(
'authenticator:auth-token',
username,
......@@ -27,6 +29,8 @@ export default class LoginController extends Controller {
} else {
this.errorMessage = error;
}
} finally {
this.in_progress = false;
}
if (this.session.isAuthenticated) {
......@@ -34,4 +38,8 @@ export default class LoginController extends Controller {
this.router.transitionTo('authenticated.index');
}
}
get inProgress() {
return this.in_progress;
}
}
......@@ -11,7 +11,9 @@
Please sign in to start your session
</p>
<Login @onSubmit={{this.authenticate}}>
<Login
@onSubmit={{this.authenticate}}
@inProgress={{this.inProgress}}>
{{#if this.errorMessage}}
<p class="text-danger">{{this.errorMessage}}</p>
{{/if}}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment