action_diasfestivos_insert.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. $ruta = "../";
  3. require_once "../class/c_login.php";
  4. // check if the session is started
  5. if (!isset($_SESSION['user']))
  6. die(json_encode(['error' => 'No se ha iniciado sesión']));
  7. $user = unserialize($_SESSION['user']);
  8. $ruta = "../";
  9. require_once "../include/bd_pdo.php";
  10. global $pdo;
  11. //print_r($_POST);
  12. if (!isset($_POST['periodo']) || count($_POST["periodo"])==0) {
  13. //header("Location: ../días_festivos.php?error=1");
  14. echo "Error no hay periodo";
  15. exit();
  16. }
  17. $periodo = $_POST['periodo'];
  18. if (isset($_POST['rango'])) {
  19. $diaInicio = new DateTime(date("Y-m-d", strtotime(str_replace("/", "-", $_POST['diaFestivo']))));
  20. $diaFin = new DateTime(date("Y-m-d", strtotime(str_replace("/", "-", $_POST['diaFestivoFin']))));
  21. $cantidad = $diaFin->diff($diaInicio);
  22. $date = date("Y-m-d", strtotime(str_replace("/", "-", $_POST['diaFestivo'])));
  23. for ($dias = 0; $dias <= $cantidad->days; $dias++) {
  24. $sql = "SELECT fi_diasfestivos(:periodo, :dia)";
  25. $params = [':periodo' => $periodo, ':dia' => $date];
  26. query($sql, $params, false);
  27. $date = date("Y-m-d", strtotime($date . "+ 1 days"));
  28. }
  29. header("Location: ../días_festivos.php");
  30. exit();
  31. } else {
  32. $sql = "SELECT * FROM fs_diasfestivos(null, :dia)";
  33. $params = [':dia' => $_POST['diaFestivo']];
  34. $dia_general = query($sql, $params, false);
  35. $sql = "SELECT * FROM fs_diasfestivos(null, null, :periodo, :dia)";
  36. $params = [':periodo' => $periodo, ":dia" => $_POST['diaFestivo']];
  37. $dia = query($sql, $params, false);
  38. if (!$dia && !$dia_general) { //no hay repetidos
  39. $sql = "SELECT fi_diasfestivos(:periodo, :dia)";
  40. $id = query($sql, $params, false);
  41. header("Location: ../días_festivos.php");
  42. exit();
  43. } else {
  44. header("Location: ../días_festivos.php?error=1");
  45. exit();
  46. }
  47. }