datetimefilter.php 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. if (!defined("CONFIG")) die("Not defined");
  3. $datetime_start = DateTime::createFromFormat("Y-m-d 00:00:00",date("Y-m-d").' 00:00:00');
  4. if (empty($default_date_shift)) { $default_date_shift='h'; }
  5. if (!empty($_GET['date_start']) or !empty($_POST['date_start'])) {
  6. if (!empty($_GET['date_start'])) { $datetime_start = GetDateTimeFromString($_GET['date_start']); }
  7. if (!empty($_POST['date_start'])) { $datetime_start = GetDateTimeFromString($_POST['date_start']); }
  8. $date1 = $datetime_start->format('Y-m-d H:i:s');
  9. $time_start = $datetime_start->getTimestamp();
  10. } else {
  11. if (!empty($_SESSION[$page_url]['date_start'])) {
  12. $date1 = $_SESSION[$page_url]['date_start'];
  13. $datetime_start = GetDateTimeFromString($date1);
  14. $time_start = $datetime_start->getTimestamp();
  15. } else {
  16. $date1 = $datetime_start->format('Y-m-d H:i:s');
  17. $time_start = $datetime_start->getTimestamp();
  18. }
  19. }
  20. if (!empty($_POST['date_stop']) or !empty($_GET['date_stop'])) {
  21. if (!empty($_GET['date_stop'])) { $datetime_stop = GetDateTimeFromString($_GET['date_stop']); }
  22. if (!empty($_POST['date_stop'])) { $datetime_stop = GetDateTimeFromString($_POST['date_stop']); }
  23. $date2 = $datetime_stop->format('Y-m-d H:i:s');
  24. $time_stop = $datetime_stop->getTimestamp();
  25. } else {
  26. if (!empty($_SESSION[$page_url]['date_stop'])) {
  27. $date2 = $_SESSION[$page_url]['date_stop'];
  28. $datetime_stop = GetDateTimeFromString($date2);
  29. $time_stop = $datetime_stop->getTimestamp();
  30. }
  31. }
  32. if (!isset($datetime_stop) or empty($datetime_stop)) {
  33. if ($default_date_shift==='h') {
  34. $datetime_start->modify('+1 hour');
  35. $time_stop = $datetime_start->getTimestamp();
  36. $date2 = $datetime_start->format('Y-m-d H:i:s');
  37. }
  38. if ($default_date_shift==='d') {
  39. $datetime_start->modify('+1 day');
  40. $time_stop = $datetime_start->getTimestamp();
  41. $date2 = $datetime_start->format('Y-m-d H:i:s');
  42. }
  43. if ($default_date_shift==='m') {
  44. $datetime_stop = new DateTime($date1);
  45. $datetime_stop->modify('+1 month');
  46. $time_stop = $datetime_stop->getTimestamp();
  47. $date2 = $datetime_start->format('Y-m-d H:i:s');
  48. $date1 = $datetime_start->format('Y-m-1 H:i:s');
  49. $datetime_start = new DateTime($date1);
  50. $time_start = $datetime_start->getTimestamp();
  51. }
  52. if (empty($datetime_stop)) {
  53. $datetime_stop = new DateTime();
  54. $datetime_stop->modify('+1 day');
  55. $time_stop = $datetime_stop->getTimestamp();
  56. $date2 = $datetime_start->format('Y-m-d H:i:s');
  57. }
  58. } else {
  59. $date2 = $datetime_stop->format('Y-m-d H:i:s');
  60. $time_stop = $datetime_stop->getTimestamp();
  61. }
  62. $days_shift = ceil(($time_stop - $time_start)/86400);
  63. $_SESSION[$page_url]['date_start']=$date1;
  64. $_SESSION[$page_url]['date_stop']=$date2;
  65. ?>