Список / Параметры целевых часовых поясов - PullRequest
0 голосов
/ 21 октября 2018

Существующий код, с которым я работаю, предоставляет конечному пользователю раскрывающийся список для выбора часового пояса.

Моя цель - ограничить выбор до 1. Америка и a.Опция Восточное значение Америка / Нью-Йорк б.Вариант Центральное значение Америка / Чикаго c.Вариант Mountain DST стоимость Америка / Денвер д.Вариант Mountain нет значения DST Америка / Феникс e.Параметр Pacific value America / Los_Angeles

Сжать его до Америки было достаточно просто, просто закомментировав код.Сужение до 5 часовых поясов оказывается за пределами моей зарплаты.

Любой совет?

$regions = [
#   'Africa'     => DateTimeZone::AFRICA,
    'America'    => DateTimeZone::AMERICA,
#   'Antarctica' => DateTimeZone::ANTARCTICA,
#   'Aisa'       => DateTimeZone::ASIA,
#   'Atlantic'   => DateTimeZone::ATLANTIC,
#   'Europe'     => DateTimeZone::EUROPE,
#   'Indian'     => DateTimeZone::INDIAN,
#   'Pacific'    => DateTimeZone::PACIFIC
];

$timezones = [];
foreach ($regions as $name => $mask) {
    $zones = DateTimeZone::listIdentifiers($mask);
    foreach ($zones as $timezone) {
        $timezones[$name][$timezone] = $timezone;
    }
}

$actualTimezone = JFactory::getSession()->get('user-timezone', $displayData['dateHelper']->getDate()->getTimezone()->getName(), 'Calendar');
?>
<form action="<?php echo JUri::base(); ?>" method="get" class="dp-timezone dp-form">
    <span class="dp-timezone__label">
        <?php echo $displayData['translator']->translate('COM_CALENDAR_CHOOSE_TIMEZONE'); ?>:
    </span>
    <select name="tz" class="dp-select dp-timezone__select">
        <option value="UTC"<?php $actualTimezone == 'UTC' ? ' selected' : ''; ?>>
            <?php echo $displayData['translator']->translate('JLIB_FORM_VALUE_TIMEZONE_UTC'); ?>
        </option>
        <?php foreach ($timezones as $region => $list) { ?>
            <?php foreach ($list as $timezone => $name) { ?>
                <option value="<?php echo $timezone; ?>"<?php echo $actualTimezone == $timezone ? ' selected' : ''; ?>>
                    <?php echo $displayData['translator']->translate($name); ?>
                </option>
            <?php } ?>
        <?php } ?>
    </select>
    <input type="hidden" name="task" value="profile.tz" class="dp-input dp-input-hidden">
    <input type="hidden" name="option" value="com_calendar" class="dp-input dp-input-hidden">
    <input type="hidden" name="view" value="profile" class="dp-input dp-input-hidden">
    <input type="hidden" name="return" value="<?php echo base64_encode(JUri::getInstance()->toString()); ?>" class="dp-input dp-input-hidden">
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...