Your IP : 3.135.241.187


Current Path : /data/web/virtuals/51568/virtual/www/menu/
Upload File :
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>