summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIban Eguia <admin@razican.com>2012-06-09 23:52:27 +0200
committerIban Eguia <admin@razican.com>2012-06-09 23:52:27 +0200
commite15e3dde9dca15e2d65f098010d3fb7004cef5e7 (patch)
tree26f06c9c26bbb2f54ae37727b6a6e549163f1d93
parentf5d1fd2ce8bfa049c8049184ac6d385d0f70fe29 (diff)
Fixed timezone change in index.php
Now it does not ever change the local timezone, and it adds the option to get the 'local' time()
-rw-r--r--index.php2
-rw-r--r--system/helpers/date_helper.php14
-rw-r--r--user_guide_src/source/helpers/date_helper.rst3
-rw-r--r--user_guide_src/source/installation/upgrade_300.rst3
4 files changed, 14 insertions, 8 deletions
diff --git a/index.php b/index.php
index 62fc2ab1b..3b00dd360 100644
--- a/index.php
+++ b/index.php
@@ -162,8 +162,6 @@ if (defined('ENVIRONMENT'))
// END OF USER CONFIGURABLE SETTINGS. DO NOT EDIT BELOW THIS LINE
// --------------------------------------------------------------------
-date_default_timezone_set('UTC');
-
/*
* ---------------------------------------------------------------
* Resolve the system path for increased reliability
diff --git a/system/helpers/date_helper.php b/system/helpers/date_helper.php
index 3b0c3289d..d5acec23f 100644
--- a/system/helpers/date_helper.php
+++ b/system/helpers/date_helper.php
@@ -57,10 +57,16 @@ if ( ! function_exists('now'))
$timezone = $CI->config->item('timezone');
}
- $timezone = new DateTimeZone($timezone);
- $now = new DateTime('now', $timezone);
- $offset = $timezone->getOffset($now);
- $time = time() + $offset;
+ $time = time();
+ if(strtolower($timezone) != 'local')
+ {
+ $local = new DateTime(NULL, new DateTimeZone(date_default_timezone_get()));
+ $now = new DateTime(NULL, new DateTimeZone($timezone));
+ $lcl_offset = $local->getOffset();
+ $tz_offset = $now->getOffset();
+ $offset = $tz_offset - $lcl_offset;
+ $time = $time + $offset;
+ }
return $time;
}
diff --git a/user_guide_src/source/helpers/date_helper.rst b/user_guide_src/source/helpers/date_helper.rst
index b6c6ed4bb..33b39bd5b 100644
--- a/user_guide_src/source/helpers/date_helper.rst
+++ b/user_guide_src/source/helpers/date_helper.rst
@@ -21,7 +21,8 @@ now()
=====
Returns the current time as a Unix timestamp, based on the "timezone" parameter.
-All PHP available timezones are supported.
+All PHP available timezones are supported. You can also use 'local' timezone, and
+it will return time().
.. php:method:: now($timezone = NULL)
diff --git a/user_guide_src/source/installation/upgrade_300.rst b/user_guide_src/source/installation/upgrade_300.rst
index e86ef67da..c2c3899ee 100644
--- a/user_guide_src/source/installation/upgrade_300.rst
+++ b/user_guide_src/source/installation/upgrade_300.rst
@@ -47,7 +47,8 @@ Step 5: Change your use of the Date helper's now() function
Function now() has been modified. You can see the changes in :doc:`Date Helper <../helpers/date_helper>`
You must replace $config['time_reference'] with $config['timezone'] in your config.php file. You can select all
-PHP supported timezones, listed here: `PHP's supported timezones <http://www.php.net/timezones>`_.
+PHP supported timezones, listed here: `Supported timezones <http://www.php.net/timezones>`_. You can also
+use 'local' if you want to get time().
Step 6: Move your errors folder
===============================