Browse Source

Force the core of Movim to work in UTC and apply the TIMEZONE only to the dates

Update the dependencies
pull/309/head
Jaussoin Timothée 9 years ago
parent
commit
ba682529a8
  1. 53
      app/helpers/DateHelper.php
  2. 10
      composer.lock
  3. 2
      src/Movim/Bootstrap.php

53
app/helpers/DateHelper.php

@ -47,45 +47,36 @@ function getTimezoneCorrection() {
* @param timestamp $string
* @return string
*/
function prepareDate($time, $hours = true, $compact = false) {
// If the time is empty, return nothing
if(empty($time)) return '';
// We had the server timezone
$time = $time + TIMEZONE_OFFSET;
$t = $time ? $time : time();
function prepareDate($time = false, $hours = true, $compact = false) {
$time = $time ? $time : time();
$t = $time + TIMEZONE_OFFSET;
$date = '';
$reldays = ((time() - $t - TIMEZONE_OFFSET)-(time()%86400))/86400;
// if $time is within a week
if($reldays < 7 && $reldays >= -2){
//if $time is today or yesterday
if($reldays < -1) {
$reldays = -(time() - $t - (time() % 86400)) / 86400;
// if $reldays is within a week
if (-7 < $reldays && $reldays <= 2) {
if($reldays > 1) {
$date = __('date.tomorrow');
} else if ($reldays <= 0) {
//$date = __('date.today');
} else if ($reldays <= 1) {
} else if (-1 < $reldays && $reldays <= 0) {
$date = __('date.yesterday');
} else if (0 < $reldays && $reldays <= 1) {
// Today
} else {
$$date = __('date.ago', ceil(-$reldays));
}
//else print date "ago"
else {
$date = __('date.ago', ceil($reldays));
}
}
//else print full date
else {
$date = '';
if(!$compact)
} else {
if(!$compact) {
$date .= __('day.'.strtolower(date('l', $t))) . ', ';
}
$date .= date('j', $t).' '.__('month.'.strtolower(date('F', $t)));
//if over 6months print year
if (abs($reldays) > 182)
$date .= date(', Y', $t);
// Over 6 months
if (abs($reldays) > 182) {
$date .= gmdate(', Y', $t);
}
if($compact) return $date;
}
@ -94,8 +85,10 @@ function prepareDate($time, $hours = true, $compact = false) {
if($date != '') {
$date .= ' - ';
}
$date .= date('H:i', $time);
$date .= gmdate('H:i', $t);
}
return $date;
}

10
composer.lock

@ -998,16 +998,16 @@
},
{
"name": "paragonie/random_compat",
"version": "v2.0.3",
"version": "v2.0.4",
"source": {
"type": "git",
"url": "https://github.com/paragonie/random_compat.git",
"reference": "c0125896dbb151380ab47e96c621741e79623beb"
"reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/paragonie/random_compat/zipball/c0125896dbb151380ab47e96c621741e79623beb",
"reference": "c0125896dbb151380ab47e96c621741e79623beb",
"url": "https://api.github.com/repos/paragonie/random_compat/zipball/a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
"reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
"shasum": ""
},
"require": {
@ -1042,7 +1042,7 @@
"pseudorandom",
"random"
],
"time": "2016-10-17 15:23:22"
"time": "2016-11-07 23:38:38"
},
{
"name": "pear/net_dns2",

2
src/Movim/Bootstrap.php

@ -250,7 +250,7 @@ class Bootstrap
// And we set a global offset
define('TIMEZONE_OFFSET', getTimezoneOffset($config->timezone));
date_default_timezone_set($config->timezone);
date_default_timezone_set("UTC");
}
private function setLogLevel()

Loading…
Cancel
Save