Sistema_Gestion_Transporte/src/pages/site/Login.svelte

55 lines
2.0 KiB
Svelte
Raw Normal View History

2023-06-24 17:49:52 -04:00
<script>
import { Link } from 'svelte-navigator'
2023-06-25 22:41:51 -04:00
import { createToken } from '$/services/login'
2023-06-24 17:49:52 -04:00
let form = { username: '', pass: '' }
let message_error = '';
// validar usuario contraseña
async function onIngresar() {
try {
2023-06-25 22:41:51 -04:00
message_error = ''
const { token } = await createToken(form)
2023-06-24 17:49:52 -04:00
sessionStorage.setItem('token', token)
document.location.reload();
} catch(error) {
message_error = error.message || error
2023-06-25 22:41:51 -04:00
setTimeout(() => message_error = '', 3000)
2023-06-24 17:49:52 -04:00
}
}
</script>
<div class="card">
<div class="card-body">
<div class="m-sm-4">
2023-06-25 22:41:51 -04:00
<div class="text-center mb-4">
2023-06-26 16:50:59 -04:00
<img src="/avatars/avatar2.png" alt="Avatar"
2023-06-25 22:41:51 -04:00
class="img-fluid rounded-circle" width="132" height="132"
/>
2023-06-24 17:49:52 -04:00
</div>
<form on:submit|preventDefault={onIngresar}>
<div class="mb-3">
<label class="form-label" for={null}>Cuenta</label>
<input class="form-control form-control-lg" type="text" bind:value={form.username} required
placeholder="Ingrese su cuenta de usuario">
</div>
<div class="mb-3">
<label class="form-label" for={null}>Contraseña</label>
2023-06-25 22:41:51 -04:00
<input class="form-control form-control-lg" type="password" bind:value={form.password} required
2023-06-24 17:49:52 -04:00
placeholder="Ingrese su contraseña">
</div>
{#if message_error}
<div class="mb-3 text-danger">{message_error}</div>
{/if}
<Link to="/recovery">Olvido su contraseña?</Link>
<div class="text-center mt-3">
<button type="submit" class="btn btn-lg btn-primary">Ingresar al sistema</button>
</div>
</form>
</div>
</div>
</div>