Current Path : /data/web/virtuals/51568/virtual/www/menu/ |
Current File : /data/web/virtuals/51568/virtual/www/menu/menu-changepass-email.php |
<?php $token = isset($_REQUEST["token"]) ? trim($_REQUEST["token"]) : ""; require_once("class/pdoDB.class.php"); $pokracovat = true; $pdo = new pdoDB(); $dotaz = "SELECT `accounts_id`, `token`, `gener_time` FROM `accounts_verify` WHERE `token` = :token"; if ($rec = $pdo->queryOne($dotaz, array(':token' => $token))){ $nyni = new Datetime(); $nyni = strtotime($nyni->format('Y-m-d H:i:s')); $timetoken = strtotime($rec->gener_time); if (($nyni - $timetoken) > 60 * 60 * 6 ){ $pokracovat = false; ?> <div class="alert alert-warning mt-5 h5"> Byla překročena doba platnosti odkazu na změnu hesla (okamžik vygenerování hesla: <?= date("d.m.Y H:i:s", strtotime($rec->gener_time))?>).<br> Pokud cheš heslo obnovit / nově zadat, musíš odkaz vygenerovat znovu. </div> <?php ;} } else { $pokracovat = false; ?> <div class="alert alert-warning mt-5 h6"> Požadovaný odkaz na změnu hesla neexistuje: <ul> <li>byl nahrazen jiným, později vyvolaným</li> <li>byl již použit</li> <li>jedná se o pokus o podvrh :(</li> </ul> </div> <?php } if ($pokracovat){ ?> <div id="pass-change-email" class="mt-5"> <div class="modal-dialog border shadow rounded-0"> <div class="modal-content rounded-0"> <div class="card-header bg-success text-white rounded-0"> <div class="card-title h5 mb-0">Změna hesla</div> </div> <div class="modal-body"> <div class="form-group"> <div class="input-group m-1 mb-3"> <div class="input-group-prepend rounded-0"> <span class="input-group-text rounded-0"><i class="fa fa-lock"></i></span> </div> <input type="password" class="form-control rounded-0" placeholder="nové heslo" id="newPasswordEmail" required name="newPasswordEmail" minlength="5" /> <div class="input-group-append"> <div id="newPassVisibleEmail" class="input-group-text rounded-0" newpassem-visible="0" style="cursor: pointer"> <i class="far fa-eye"></i> </div> </div> </div> <div id="groupConfirmPasswordEmail" class="input-group m-1 mb-3"> <div class="input-group-prepend rounded-0"> <span class="input-group-text rounded-0"><i class="fa fa-lock"></i></span> </div> <input type="password" class="form-control rounded-0" placeholder="povrzení hesla" id="confirmPasswordEmail" required name="confirmPasswordEmail" minlength="5" /> <div class="input-group-append"> </div> </div> <div class="pl-2 mb-2"> <small class="text-muted form-text"> Podmínky na heslo: <div class="row"> <div class="col-6"> <ul> <li>alespoň jedno malé písmeno</li> <li>alespoň jedna číslice</li> </ul> </div> <div class="col-6"> <ul> <li>délka 8 - 16 znaků</li> <li>alespoň jedno velké písmeno</li> </ul> </div> </div> <ul> <li>nedoporučuje se znaky s nabodeníčky</li> </ul> </small> </div> </div> <div id="errChangePassEmail" class="h6 alert alert-danger d-none rounded-0 shadow-sm"></div> </div> <!--div class="modal-footer justify-content-between"--> <div class="modal-footer justify-content-right"> <!--button class="btn btn-warning rounded-0" name="logCancel" class="close" data-dismiss="modal">Storno</button--> <button id="passChangeEmail" class="btn btn-success rounded-0 w-50" onclick="passEmailChange(<?= $rec->accounts_id;?>)" name="passChangeEmail">Změnit <i class="fas fa-key"></i></button> </div> </div> </div> </div> <?php } ?> <script> $("#newPassVisibleEmail").on("click", function () { $("#errChangePassEmail").addClass("d-none"); let stav = $("#newPassVisibleEmail").attr("newpassem-visible"); if (stav == "0") { $("#newPassVisibleEmail").attr("newpassem-visible", "1").html(`<i class="far fa-eye-slash"></i>`); $("#newPasswordEmail").attr("type", "text"); $("#groupConfirmPasswordEmail").toggleClass("d-none"); } else { $("#newPassVisibleEmail").attr("newpassem-visible", "0").html(`<i class="far fa-eye"></i>`); $("#newPasswordEmail").attr("type", "password"); $("#groupConfirmPasswordEmail").toggleClass("d-none"); } }); function passEmailChange(id){ let newPassword = $("#newPasswordEmail").val(), confirmPassword = $("#confirmPasswordEmail").val(), newPassVisible = $("#newPassVisibleEmail").attr("newpassem-visible"), err = false; if (newPassword.length > 0) { newPassword = newPassword.trim(); } if (confirmPassword.length > 0) { confirmPassword = confirmPassword.trim(); } if (newPassword.length == 0) { err = true; $("#errChangePassEmail").html("Nové heslo nemůže být prázdné."); $("#errChangePassEmail").removeClass("d-none"); } else if ((newPassVisible == "0") && (newPassword !== confirmPassword)) { err = true; $("#errChangePassEmail").html("Nové heslo a jeho potvrzení se musí shodovat."); $("#errChangePassEmail").removeClass("d-none"); } if (!err) { $.ajax({ url: "menu/changePassEmail.php", type: 'POST', dataType: 'HTML', data: { 'id': id, 'newPassword': newPassword }, success: function (result) { window.location = "index.php"; } }); } } </script>