blob: d25ef962dc41c849b02219928d0396266ae2e061 [file] [log] [blame]
<?php
/*
* hores
* Copyright (c) 2023 Adrià Vilanova Martínez
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public
* License along with this program.
* If not, see http://www.gnu.org/licenses/.
*/
require_once("core.php");
if (security::isAllowed(security::ADMIN)) {
security::go("home.php");
} elseif ($conf["enableWorkerUI"] && security::isAllowed(security::WORKER)) {
security::go("workerhome.php");
}
?>
<!DOCTYPE html>
<html>
<head>
<title><?php echo $conf["appName"]; ?></title>
<?php visual::includeHead(); ?>
<link rel="stylesheet" href="css/index.css">
<script src="js/index.js"></script>
</head>
<?php visual::printBodyTag(); ?>
<div class="login mdl-shadow--4dp">
<h2><?=security::htmlsafe($conf["appName"])?></h2>
<form action="signin.php" method="POST" autocomplete="off" id="formulario">
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<input class="mdl-textfield__input" type="text" name="username" id="username" autocomplete="off" data-required>
<label class="mdl-textfield__label" for="username">Nombre de usuario</label>
</div>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<input class="mdl-textfield__input" type="password" name="password" id="password" autocomplete="off" data-required>
<label class="mdl-textfield__label" for="password">Contraseña</label>
</div>
<p><button type="submit" class="mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect mdl-button--accent">Iniciar sesión</button><?php if ($conf["enableRecovery"]) { ?> <button id="recoverybtn" class="mdl-button mdl-js-button mdl-js-ripple-effect">Recuperar contraseña</button><?php } ?></p>
</form>
</div>
<?php
if ($conf["enableRecovery"]) {
?>
<dialog class="mdl-dialog" id="recovery">
<form action="dostartrecovery.php" method="POST" enctype="multipart/form-data">
<h4 class="mdl-dialog__title">Recuperar contraseña</h4>
<div class="mdl-dialog__content">
<p>Para recuperarla, introduce los siguientes datos:</p>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<input class="mdl-textfield__input" type="email" name="email" id="email" autocomplete="off" data-required>
<label class="mdl-textfield__label" for="email">Correo electrónico</label>
</div>
<br>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<input class="mdl-textfield__input" type="text" name="dni" id="dni" autocomplete="off" data-required>
<label class="mdl-textfield__label" for="dni">DNI/NIF con letras mayúsculas</label>
</div>
</div>
<div class="mdl-dialog__actions">
<button type="submit" class="mdl-button mdl-js-button mdl-js-ripple-effect mdl-button--accent">Recuperar</button>
<button onclick="event.preventDefault(); document.querySelector('#recovery').close();" class="mdl-button mdl-js-button mdl-js-ripple-effect cancel">Cancelar</button>
</div>
</form>
</dialog>
<?php
}
visual::smartSnackbar([
["wrong", "Usuario y/o contraseña incorrecto."],
["empty", "Por favor, rellena todos los campos."],
["logout", "Has cerrado la sesión correctamente."],
["unsupported", "Todavía no puedes acceder como trabajador a la interfaz de trabajador."],
["unexpected", "Ha ocurrido un error inesperado."],
["recovery", "Si los datos que has proporcionado son correctos, se ha enviado un mensaje al correo electrónico indicado para proceder con la recuperación."],
["recovery2failed", "No se puede proceder con la recuperación, seguramente porque el enlace de recuperación ha expirado."],
["recoverycompleted", "Se ha cambiado la contraseña correctamente. Puedes iniciar sesión ahora con la nueva contraseña."],
["secondfactorwrongcode", "El código de verificación no es correcto."],
["signinthrottled", "No se ha podido verificar si el usuario y contraseña son correctos. Por favor, prueba de iniciar sesión de nuevo en unos instantes."]
]);
?>
</body>
</html>