Не верно отображает период дней в режиме работы Исправлено

1

указан режим так:

на странице отображается так:

код в шаблоне:

{if $wa->shop && $wa->shop->settings('workhours')}
 <li>
  <i class="fa fa-clock-o"></i>
   {if $wa->shop->settings('workhours')}
    {$wh = $wa->shop->settings('workhours')}
    {$wh.days_from_to}{if $wh.hours_from && $wh.hours_to} {$wh.hours_from}—{$wh.hours_to}{/if}
   {/if}
 </li>
{/if}

локаль на серере:

# locale | grep LC_TIME
LC_TIME="ru_RU.UTF-8"

waLocale::getInfo(wa()->getLocale()) выдает:

  ["iso3"]=>
  string(3) "rus"
  ["name"]=>
  string(14) "Русский"
...
  ["first_day"]=>
  int(1)

если перебирать рабочие дни {foreach $wh.days as $d}{$d}{if !$d@last}, {/if}{/foreach} выдает "Пн, Вт, Ср, Чт, Пт, Сб", а период показывает "Вс"

8 комментариев

  • +1
    Михаил Ушенин Михаил Ушенин Webasyst 12 февраля 2020 09:42 #

    В теме дизайна «Дефолт 3.0» не удалось увидеть такое отображение. Проверьте с этой темой в вашем магазине. Возможно, вам стоит доработать вашу тему дизайна.

  • +1
    Алексей Кочетов Алексей Кочетов 18 февраля 2020 11:49 #

    а причем здесь тема, если данные возвращает функция ядра магазина getDaysFromTo?

  • +1
    Алексей Кочетов Алексей Кочетов 18 февраля 2020 12:25 #

    собственно нашел почему,

    /wa-apps/shop/lib/config/shopConfig.class.php:395


    if (in_array($i, $work_days)) {

    заменить на

    if (in_array($i, array_keys($work_days))) {

    т.к. $work_days - это ассоциативный массив, а не просто массив

    • +1
      Михаил Ушенин Михаил Ушенин Webasyst 18 февраля 2020 19:21 #

      Возможно, ваша тема дизайна не поддерживает формат данных, которые формирует PHP-код приложения. Проверьте отображение этих значений с оригинальной темой дизайна «Дефолт 3.0» последней версии, если ещё не проверяли.

      • +1
        Алексей Кочетов Алексей Кочетов 20 февраля 2020 11:07 #

        проверил, не работает, т.к. от темы это не зависит!

        in_array не может перебирать ассоциативный массив:

        var_dump($work_days);
        array(6) {
          [1]=>
          string(4) "Пн"
          [2]=>
          string(4) "Вт"
          [3]=>
          string(4) "Ср"
          [4]=>
          string(4) "Чт"
          [5]=>
          string(4) "Пт"
          [6]=>
          string(4) "Сб"
        }

        • +1
          Михаил Ушенин Михаил Ушенин Webasyst 20 февраля 2020 14:57 #

          Проверили вот с такими настройками в разделе «Настройки → Режим работы»:

          Результат на витрине:

          Проверьте, что ваша тема дизайна восстановлена до оригинального состояния. Если у вас проблема сохранится, напишите нам в службу поддержки — изучим проблему подробнее.

          • +1
            Алексей Кочетов Алексей Кочетов 20 февраля 2020 17:07 #

            Я говорю про сокращенный вариант вывода графика, код в первом сообщение, данные берутся из переменной days_from_to, которая обрабатывается функцией getDaysFromTo класса shopConfig.

            Призовите сюда программиста php/разаботчика ядра, т.к. это проблема не шаблона!

          • +1
            Михаил Ушенин Михаил Ушенин Webasyst 30 апреля 2020 17:23 #

            Мы выпустили обновление Shop-Script с исправлением этой ошибки. Обновление можно установить в «Инсталлере».

            Проверьте, пожалуйста. Сообщите нам, если проблема сохранилась.

            Добавить комментарий

            Чтобы добавить комментарий, зарегистрируйтесь или войдите