diff --git a/src/components/InputRut.svelte b/src/components/InputRut.svelte new file mode 100644 index 0000000..06a1978 --- /dev/null +++ b/src/components/InputRut.svelte @@ -0,0 +1,18 @@ + + + \ No newline at end of file diff --git a/src/pages/site/Login.svelte b/src/pages/site/Login.svelte index 88f4f64..13a48df 100644 --- a/src/pages/site/Login.svelte +++ b/src/pages/site/Login.svelte @@ -1,8 +1,9 @@ + +
+
+
+
+

Crear nueva contraseña de acceso

+
+
+ {#if !exito} +
+ {#if error_token} +
😢 {error_token}
+ {:else if !persona} +
Cargando información...
+ {/if} + + {#if persona?.nombres} +

{persona.nombres} {persona.apellido_a} {persona.apellido_a}

+ +
+ + +
+
+ + +
+
+ + + {#if password_confirma !== form.password} +
Las contraseñas no coinciden....
+ {/if} +
+ {/if} + + {#if message_error} +
😢 {message_error}
+ {/if} + + Volver + +
+ +
+
+ {:else} +
+ 😃 Se ha guardado su nueva contraseña, puede volver e ingresar. +
+ + Volver + {/if} +
+
+
+ + \ No newline at end of file diff --git a/src/pages/site/Recovery.svelte b/src/pages/site/Recovery.svelte index 9cb74be..a9ebd91 100644 --- a/src/pages/site/Recovery.svelte +++ b/src/pages/site/Recovery.svelte @@ -1 +1,78 @@ -En desarrollo \ No newline at end of file + + +
+
+
+
+

Recuperar Acceso

+
+
+ {#if !exito} +
+
+ + +
+
+ + +
+ + {#if message_error} +
{message_error}
+ {/if} + + Volver + +
+ +
+
+ {:else} +
+

Se le ha enviado un correo electrónico con instrucciones para crear una nueva contraseña

+
+ {/if} +
+
+
+ + \ No newline at end of file diff --git a/src/services/login.js b/src/services/login.js index 9474d38..65c5c37 100644 --- a/src/services/login.js +++ b/src/services/login.js @@ -1,9 +1,9 @@ import { base, getToken } from "./_config"; -export async function createToken({ username=null, password=null }) { +export async function createToken({ rut=null, password=null }) { const res = await fetch(`${base}/auth/`, { method: 'POST', - body: JSON.stringify({ username, password }), + body: JSON.stringify({ rut, password }), headers: { "Content-Type": "application/json" } }) if (!res.ok) throw await res.text() @@ -16,4 +16,34 @@ export async function getInfoToken() { }) if (!res.ok) throw await res.text() return res.json() +} + +export async function recuperarAcceso(data) { + const res = await fetch(`${base}/auth/recuperar/`, { + method: 'POST', + body: JSON.stringify(data), + headers: { "Content-Type": "application/json" } + }) + if (!res.ok) throw await res.text() + return res.json() +} + +export async function crearPassword(data) { + const res = await fetch(`${base}/auth/nueva-contrasena/`, { + method: 'POST', + body: JSON.stringify(data), + headers: { "Content-Type": "application/json" } + }) + if (!res.ok) throw await res.text() + return res.json() +} + +export async function infoTokenPassword(data) { + const res = await fetch(`${base}/auth/info/`, { + method: 'POST', + body: JSON.stringify(data), + headers: { "Content-Type": "application/json" } + }) + if (!res.ok) throw await res.text() + return res.json() } \ No newline at end of file