diff --git a/include/i18n/en_US/config.yaml b/include/i18n/en_US/config.yaml index 113cda50d9618564e15d44b60a3602bd4d7d9cd5..35e5a830b4273a84e875c74a3fa92912ed40178e 100644 --- a/include/i18n/en_US/config.yaml +++ b/include/i18n/en_US/config.yaml @@ -8,7 +8,6 @@ core: date_format: 'm/d/Y' datetime_format: 'm/d/Y g:i a' daydatetime_format: 'D, M j Y g:ia' - default_timezone_id: 8 default_priority_id: 2 enable_daylight_saving: 0 diff --git a/include/upgrader/streams/core/b26f29a6-1ee831c8.cleanup.sql b/include/upgrader/streams/core/b26f29a6-1ee831c8.cleanup.sql index f56a5cb2c0d24deac939bc08b185cbdcc53119d1..7877fbc61300a008906eb2bd8e560f4ead39f74a 100644 --- a/include/upgrader/streams/core/b26f29a6-1ee831c8.cleanup.sql +++ b/include/upgrader/streams/core/b26f29a6-1ee831c8.cleanup.sql @@ -17,3 +17,7 @@ ALTER TABLE `%TABLE_PREFIX%staff` ALTER TABLE `%TABLE_PREFIX%user_account` DROP `timezone_id`, DROP `dst`; + +DELETE FROM `%TABLE_PREFIX%config` + WHERE `key` = IN ('enable_daylight_saving', 'default_timezone_id') + AND `namespace` = 'core'; diff --git a/include/upgrader/streams/core/b26f29a6-1ee831c8.patch.sql b/include/upgrader/streams/core/b26f29a6-1ee831c8.patch.sql index 62621faf484b725007590480c62549ed8a60015b..465fbd8c999d0ac08269e29a873dceb204cc232b 100644 --- a/include/upgrader/streams/core/b26f29a6-1ee831c8.patch.sql +++ b/include/upgrader/streams/core/b26f29a6-1ee831c8.patch.sql @@ -146,6 +146,32 @@ UPDATE `%TABLE_PREFIX%user_account` A1 AND A3.`south` = 0) SET A1.`timezone` = A3.`olson_name`; +-- Update system default timezone +SET @default_timezone_id = ( + SELECT `value` FROM `%TABLE_PREFIX%config` A1 + WHERE A1.`key` = 'default_timezone_id' + AND A1.`namespace` = 'core' +); +SET @enable_daylight_saving = ( + SELECT `value` FROM `%TABLE_PREFIX%config` A1 + WHERE A1.`key` = 'enable_daylight_saving' + AND A1.`namespace` = 'core' +); + +UPDATE `%TABLE_PREFIX%config` A1 + JOIN `%TABLE_PREFIX%timezone` A2 ON (@default_timezone_id = A2.`id`) + JOIN `%TABLE_PREFIX%_timezones` A3 ON (A2.`offset` * 60 = A3.`offset` + AND @enable_daylight_saving = A3.`dst` + AND A3.`south` = 0) + SET A1.`value` = A3.`olson_name` + WHERE A1.`key` = 'default_timezone_id' + AND A1.`namespace` = 'core'; + +UPDATE `%TABLE_PREFIX%config` A1 + SET A1.`key` = 'default_timezone' + WHERE A1.`key` = 'default_timezone_id' + AND A1.`namespace` = 'core'; + DROP TABLE %TABLE_PREFIX%_timezones; ALTER TABLE `%TABLE_PREFIX%ticket` diff --git a/setup/inc/class.installer.php b/setup/inc/class.installer.php index 321d64ae478e79a0726bcf9fd6ba4eda7a3e73eb..c10b1ed9eedb718e63a05c58946b4c08bf45d285 100644 --- a/setup/inc/class.installer.php +++ b/setup/inc/class.installer.php @@ -209,7 +209,7 @@ class Installer extends SetupWizard { 'alert_email_id'=>$alert_email_id, 'default_dept_id'=>$dept_id_1, 'default_sla_id'=>$sla_id_1, 'default_template_id'=>$template_id_1, - 'default_timezone' => date_default_timezone_get(), + 'default_timezone' => $vars['timezone'] ?: date_default_timezone_get(), 'admin_email'=>$vars['admin_email'], 'schema_signature'=>$streams['core'], 'helpdesk_url'=>URL, diff --git a/setup/inc/footer.inc.php b/setup/inc/footer.inc.php index 852062efeba285b4cc856fde61a2ffb8481c1abb..5bc03569e76a870ef0ded62abae2fe750393e765 100644 --- a/setup/inc/footer.inc.php +++ b/setup/inc/footer.inc.php @@ -3,5 +3,10 @@ </div> <!-- content --> </div> <!-- wizard --> <div id="footer" class="centered">Copyright © 2013 <a target="_blank" href="http://osticket.com">osTicket.com</a></div> + + <script type="text/javascript" src="../js/jquery-1.11.2.min.js"></script> + <script type="text/javascript" src="../js/jstz.min.js"></script> + <script type="text/javascript" src="js/setup.js"></script> + <script type="text/javascript" src="js/tips.js"></script> </body> </html> diff --git a/setup/inc/header.inc.php b/setup/inc/header.inc.php index b7530d1ce8df63df7e5abe99b392629a075b1d27..79078a002f177c78445dfd9f03d0ef88b8df26dd 100644 --- a/setup/inc/header.inc.php +++ b/setup/inc/header.inc.php @@ -11,9 +11,6 @@ if (($lang = Internationalization::getCurrentLanguage()) <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="css/wizard.css"> <link type="text/css" rel="stylesheet" href="<?php echo ROOT_PATH; ?>css/flags.css"> - <script type="text/javascript" src="../js/jquery-1.8.3.min.js"></script> - <script type="text/javascript" src="js/tips.js"></script> - <script type="text/javascript" src="js/setup.js"></script> </head> <body> <div id="wizard"> diff --git a/setup/inc/install.inc.php b/setup/inc/install.inc.php index 807be16fda249a64a3550be5bfc39d891a25b1fd..15efe60615e4bf0b2b8ad5bd23d13a1f9ad77e07 100644 --- a/setup/inc/install.inc.php +++ b/setup/inc/install.inc.php @@ -115,6 +115,8 @@ $info=($_POST && $errors)?Format::htmlchars($_POST):array('prefix'=>'ost_','dbho <div id="bar"> <input class="btn" type="submit" value="<?php echo __('Install Now');?>" tabindex="14"> </div> + + <input type="hidden" name="timezone" id="timezone"/> </form> </div> <div> diff --git a/setup/js/setup.js b/setup/js/setup.js index 7dd4c81aa5887c7388538e9dadd9f06927d1ac4b..981d21b4e50cff539b9860f28c10da3e41757193 100644 --- a/setup/js/setup.js +++ b/setup/js/setup.js @@ -1,5 +1,5 @@ jQuery(function($) { - + $("#overlay").css({ opacity : 0.3, top : 0, @@ -12,10 +12,18 @@ jQuery(function($) { top : ($(window).height() / 3), left : ($(window).width() / 2 - 160) }); - + $('form#install').submit(function(e) { $('input[type=submit]', this).attr('disabled', 'disabled'); $('#overlay, #loading').show(); return true; }); + + var recheck = setInterval(function() { + if (window.jstz !== undefined) { + clearInterval(recheck); + var zone = jstz.determine(); + $('#timezone').val(zone.name()); + } + }, 200); });