summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrzeka <piotr@rzeka.net>2014-02-24 21:08:56 +0100
committerrzeka <piotr@rzeka.net>2014-02-24 21:08:56 +0100
commite374a6fd6499b50d4587d136490ced7444f8bc2b (patch)
tree9e620688d4291c4d2877b7156776f00438092f9e
parentb4784d39e11c2d576076930bb700bf146321bf62 (diff)
Fixed timezone warning by adding timezone config option
-rw-r--r--controllers/base.php4
-rw-r--r--controllers/config.php9
-rw-r--r--locales/fr_FR/translations.php3
-rw-r--r--locales/pl_PL/translations.php1
-rw-r--r--models/base.php2
-rw-r--r--models/schema.php8
-rw-r--r--templates/config_index.php2
7 files changed, 24 insertions, 5 deletions
diff --git a/controllers/base.php b/controllers/base.php
index c248ede1..c4a69bf0 100644
--- a/controllers/base.php
+++ b/controllers/base.php
@@ -67,6 +67,10 @@ abstract class Base
$language = $this->config->get('language', 'en_US');
if ($language !== 'en_US') \Translator\load($language);
+ //set timezone
+ $timezone = $this->config->get('timezone', 'UTC');
+ date_default_timezone_set($timezone);
+
$this->response->csp();
$this->response->nosniff();
$this->response->xss();
diff --git a/controllers/config.php b/controllers/config.php
index e01b2082..51a04079 100644
--- a/controllers/config.php
+++ b/controllers/config.php
@@ -15,7 +15,8 @@ class Config extends Base
'values' => $this->config->getAll(),
'errors' => array(),
'menu' => 'config',
- 'title' => t('Settings')
+ 'title' => t('Settings'),
+ 'timezones' => array_combine(timezone_identifiers_list(), timezone_identifiers_list())
)));
}
@@ -32,8 +33,7 @@ class Config extends Base
if ($this->config->save($values)) {
$this->config->reload();
$this->session->flash(t('Settings saved successfully.'));
- }
- else {
+ } else {
$this->session->flashError(t('Unable to save your settings.'));
}
@@ -48,7 +48,8 @@ class Config extends Base
'values' => $values,
'errors' => $errors,
'menu' => 'config',
- 'title' => t('Settings')
+ 'title' => t('Settings'),
+ 'timezones' => array_combine(timezone_identifiers_list(), timezone_identifiers_list())
)));
}
diff --git a/locales/fr_FR/translations.php b/locales/fr_FR/translations.php
index 1e9f1148..044b5b3e 100644
--- a/locales/fr_FR/translations.php
+++ b/locales/fr_FR/translations.php
@@ -183,4 +183,7 @@ return array(
'There is no column in your project!' => 'Il n\'y a aucune colonne dans votre projet !',
'Change assignee' => 'Changer la personne assignée',
'Change assignee for the task "%s"' => 'Changer la personne assignée pour la tâche « %s »',
+ /* missing
+ 'Timezone' => ''
+ */
);
diff --git a/locales/pl_PL/translations.php b/locales/pl_PL/translations.php
index 4e24f631..ee0c6894 100644
--- a/locales/pl_PL/translations.php
+++ b/locales/pl_PL/translations.php
@@ -183,4 +183,5 @@ return array(
'There is no column in your project!' => 'Brak kolumnt w Twoim projekcie',
'Change assignee' => 'Zmień odpowiedzialną osobę',
'Change assignee for the task "%s"' => 'Zmień odpowiedzialną osobę dla zadania "%s"',
+ 'Timezone' => 'Strefa czasowa'
);
diff --git a/models/base.php b/models/base.php
index 3c071623..e512e9db 100644
--- a/models/base.php
+++ b/models/base.php
@@ -17,7 +17,7 @@ require __DIR__.'/schema.php';
abstract class Base
{
const APP_VERSION = 'master';
- const DB_VERSION = 3;
+ const DB_VERSION = 4;
const DB_FILENAME = 'data/db.sqlite';
private static $dbInstance = null;
diff --git a/models/schema.php b/models/schema.php
index 84926d73..3704aad1 100644
--- a/models/schema.php
+++ b/models/schema.php
@@ -2,6 +2,14 @@
namespace Schema;
+function version_4($pdo)
+{
+ $pdo->exec('ALTER TABLE config ADD column timezone TEXT');
+
+ //set default timezone to UTC
+ $pdo->exec('UPDATE config SET timezone = \'UTC\'');
+}
+
function version_3($pdo)
{
$pdo->exec('ALTER TABLE projects ADD column token TEXT');
diff --git a/templates/config_index.php b/templates/config_index.php
index f18078c1..6e55e4f2 100644
--- a/templates/config_index.php
+++ b/templates/config_index.php
@@ -13,6 +13,8 @@
<?= Helper\form_label(t('Webhooks token'), 'webhooks_token') ?>
<?= Helper\form_text('webhooks_token', $values, $errors, array('readonly')) ?><br/>
+ <?= Helper\form_label(t('Timezone'), 'timezone') ?>
+ <?= Helper\form_select('timezone', $timezones, $values, $errors) ?><br/>
<div class="form-actions">
<input type="submit" value="<?= t('Save') ?>" class="btn btn-blue"/>
</div>