{% import "_macros.twig" as forms %}
{% extends 'baseLogin.twig' %}
{% block content %}
<div class="inner-wrap" id="div_login">
<div id="div_entrar" class="">
<div class="form-card">
<div class="">
<figure class="image container is-128x128">
<img class="" style="max-width: 100px;" src="/images/logo.png">
</figure>
</div>
<div class="auth-head">
<h2 data-bind="text:labels.titulo">Bienvenido</h2>
{% if error %}
<div class="message is-danger">
{{ errorCredenciales }}
</div>
{% endif %}
</div>
<form action="{{ path('app_login') }}" method="post">
<div id="signin-form" class="login-form">
{{ forms.input('_username', 'labels.nomUsuario', 'nomUsuario') }}
{{ forms.contra('_password', 'labels.contra', 'contra') }}
<input type="hidden" name="_csrf_token" value="{{ csrf_token('authenticate') }}" >
<!-- <input type="hidden" name="claCliente" value="claCliente" > -->
<div class="control login">
<button class="button h-button is-primary is-bold is-fullwidth is-raised" data-bind="text:labels.entrar,css: { 'is-loading': enProgreso()}, click:enviar">Sign In</button>
</div>
</div>
</form>
</div>
<div class="forgot-link has-text-centered">
<a data-bind="text:labels.olvido, click:olvido" href="#" >Forgot Password?</a>
</div>
</div>
<div id="div_olvido" class="is-hidden">
<div class="form-card">
<div class="">
<figure class="image container is-128x128">
<img class="" style="max-width: 100px;" src="/images/logo.png">
</figure>
</div>
<div class="auth-head">
<h2 data-bind="text:labels.olvidoTitulo">Bienvenido</h2>
</div>
<form>
<div id="signin-form" class="login-form">
{{ forms.input('txtCorreo', 'labels.correo', 'correo') }}
<div class="control login">
<button class="button h-button is-primary is-bold is-fullwidth is-raised" data-bind="text:labels.recuperar,css:{'is-loading': enProgreso()}, click:olvidoEnviar"></button>
</div>
</div>
</form>
</div>
<div class="forgot-link has-text-centered">
<a data-bind="text:labels.cancelar, click:cancelar" href="#" ></a>
</div>
</div>
</div>
{% endblock %}
{% block js %}
{#///#}
<script type="text/javascript">
var rotulos = JSON.parse("{{rotulos|e('js')}}");
var valores = JSON.parse("{{valores|e('js')}}");
///
var ViewModel = function () {
var self = this;
self.labels = {};
for (rotulo in rotulos) {
self.labels[rotulo] = ko.observable(rotulos[rotulo]);
}
///
self.valores = {};
for (var i = 0; i < valores.length; i++) {
self.valores[valores[i].alias] = ko.observable(valores[i].valor);
}
self.nomUsuario = ko.observable(valores.nomUsuario).extend(
{required: {message: self.labels.nomUsuarioAviso()}}
);
self.contra = ko.observable().extend(
{required: {message: self.labels.contraAviso()}}
);
self.correo = ko.observable('').extend(
{required: {message: self.labels.correoAviso()},
email: {message: self.labels.correoAviso()}}
);
self.enProgreso = ko.observable(false);
///
self.enviar = function () {
self.enProgreso(true);
if (loginVM.errorsLogin().length > 0) {
loginVM.errorsLogin.showAllMessages();
setTimeout(function () {
self.enProgreso(false);
}, 2000);
return;
}
self.enProgreso(false);
return true;
};
///
self.olvidoEnviar = function () {
self.enProgreso(true);
if (loginVM.errorsOlvido().length > 0) {
loginVM.errorsOlvido.showAllMessages();
setTimeout(function () {
self.enProgreso(false);
}, 2000);
return;
}
$.ajax('/usuarios/contraRecuperarEnviar',{
type: 'post',
data: {
correo: self.correo(),
},
success: function(respuesta) {
if(typeof(respuesta.resultado) == "undefined"){
//si la sesion expiro
$("#div_html_base").html(respuesta);
return;
}
if (respuesta.resultado === 1){
}else{
}
self.enProgreso(false);
alertify.alert('Invent', respuesta.mensaje).set('closable', false).set('label', '{{ cerrar }}');
}
});
};
///
self.olvido = function () {
$("#div_olvido").removeClass("is-hidden");
$("#div_entrar").addClass("is-hidden");
};
///
self.cancelar = function () {
$("#div_entrar").removeClass("is-hidden");
$("#div_olvido").addClass("is-hidden");
};
};// viewModel
window.loginVM = new ViewModel();
loginVM.errorsLogin = ko.validation.group([loginVM.nomUsuario, loginVM.contra]);
loginVM.errorsOlvido = ko.validation.group([loginVM.correo]);
ko.applyBindings(loginVM, $("#div_login").get(0));
$('#_username').ready(function(){
$('#_username').focus();
var divs = document.getElementsByTagName('div');
var numIdInvent = 0;
for (var i = 0; i < divs.length; i++) {
if (divs[i].id.indexOf('invent-app') != -1){
numIdInvent++;
}
}
if(numIdInvent > 1){
window.location = "/login" ;
}
});
</script>
{% endblock %}