*

andre

  • *
  • 35

Потенциальная ошибка

Обнаружил, как мне кажется, потенциальную ошибку в коде модуля /oscommerce-3.0a5/oscommerce/includes/modules/content/new_products.php.

Если выставить настройку "Без кеширования данных", то ломается дизайн основного контента. Это происходит потому, что при MODULE_CONTENT_NEW_PRODUCTS_CACHE == 0 (стр. 35) не происходит считывания по ключу их кеша и, как следствие, присходит перезапись кеша по не правильному ключу (стр. 61).

Предлагаю стр. 61 изменить с:

        $osC_Cache->write($data);

на

if (MODULE_CONTENT_NEW_PRODUCTS_CACHE > 0)  $osC_Cache->write($data);
А еще лучше было бы так:

стр. 35 изменить:


      $key = 'new_products-' . $osC_Language->getCode() . '-' . $osC_Currencies->getCode() . '-' . $current_category_id;
      if ((MODULE_CONTENT_NEW_PRODUCTS_CACHE > 0) && $osC_Cache->read($key, MODULE_CONTENT_NEW_PRODUCTS_CACHE) ) {

стр. 61

        if (MODULE_CONTENT_NEW_PRODUCTS_CACHE > 0) $osC_Cache->write($data, $key);

Если честно, то я отключил сейчас кэш и не заметил чтоб сломался дизайн. Вы могли бы более детально расписать что ломается (желательно со скрином). Если подтвердится, то обязательно включим Ваше решение в новый сервиспак.

P.S. Сейчас проверил на стандартном шаблоне и там действительно ошибки появляются. А вот на Richer Designs шаблоне все ок.

Примерно понял что за глюк - применим Ваше решение) Спасибо!