551

(1 ответов, оставленных в Сайт ReadyScript)

Спасибо! статью поправили.

При комментировании, вы можете отключить отображение комментария на вашей странице,
нажав на иконку ВК возле кнопки "отправить".

Можете сделать пункта меню "Оплата" с типом "Страница", затем в разделе Веб-сайт->Конструктор сайта добавить страницу "Меню -> Оплата" и визуально разместить блок "Форма обратной связи" или назначить шаблон странице, где разместить {moduleinsert name="\Feedback\Controller\Block\Feedback" form_id=Здесь ID формы}, если ваша тема собрана не по сетке.

Здесь дело не в качестве пережатия изображений.
Погуглите на тему Retina Optimization.  Все дело в DPI мобильного.

Для таких экранов нужно изображения готовить в 2х или даже 3х кратном размере,
а затем масштабировать их за счет CSS. Это значительно пойдет в ущерб объему страницы (страницы будут тяжелыми).
Но все это возможно сделать на ReadyScript, просто в вашей теме оформления нужно запрашивать изображения большего размера, а в CSS или у тега img выставлять принудительно меньший размер.

не повториться, поправили ошибку в коде.

Извините за ожидание. Исправлено. Проверьте пожалуйста.

556

(5 ответов, оставленных в Форум ReadyScript)

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

Есть решение у нас в Marketplace - http://marketplace.readyscript.ru/addon … angeprice/

Добрый день!
Разбираемся в ситуации. Ошибка будет исправлена в ближайшие минуты.

Уточните, пожалуйста, у вас Гость имеет права на доступ к пользовательским пунктам меню?
Можно посмотреть в разделе Управление->Пользователи->Группы.

Вы нашли наиболее правильный вариант.

Вы также могли просто переустановить модуль Меню.
В вашем случае, в базу бы также было добавлено поле из стороннего модуля.

Ошибка исправлена в сегодняшнем обновлении. Обновитесь, пожалуйста.

Хорошо, проверим этот момент, видимо ваш почтовый клиент неверно парсит ссылки.
Если вы в браузере вставите строку "//forum.readyscript.ru/post/3218/#p3218", она успешно откроется по протоколу http по умолчанию.

Сергей, напишите, пожалуйста, в поддержку насчет ссылок.

На всех ресурсах ReadyScript недавно была добавлена поддержка https. (пока в необязательном режиме)

т.е. пользователь может переходить как на http://forum.readyscript.ru, так и на https://forum.readyscript.ru,
поэтому все ссылки на форуме теперь без уточнения протокола. ( Это допустимая запись )

Я понял вашу точку зрения.

Полностью кросс-устройственной у нас будет функция Избранное (в будущих версиях), именно эта функция позволит добавив товар на одном устройстве видеть его на всех других устройствах абсолютно всегда. А уже с избранного всегда можно будет перенести товар в локальную корзину.

Признаюсь, у меня на этот счет другое мнение, меня наоборот ставит в ступор, если я собрал корзину, авторизовался и в моей корзине вдруг появляются неожиданно "левые" товары (которые я когда-то добавлял с какого-то устройства где-то). Я же собрал абсолютно новую корзину сейчас!

+ Сложно представить ситуацию, когда нужно, чтобы одна корзина собиралась на разных устройствах или в очень растянутые сроки. (хотя даже это у нас возможно, если начинать работу на новом устройстве с авторизации)

Безусловно, вы можете в своем проекте поправить логику, как это вам нужно.
Выборка элементов корзины по session_id - есть только в классе \Shop\Model\Orm\Cart
Логика действий при авторизации есть только в \Shop\Config\Handlers::authUser

Под одним и тем же логином заходят разные менеджеры и перехватывают друг у друга корзины.

Конечно, у каждого менеджера обязательно должен быть свой логин. У нас же базовое назначение движка - это розница, поэтому поддерживается принцип - пользователь оформляет заказ с одного компьютера в один момент времени и в большинстве случаев за одну сессию.

Так как привязка товаров идет к session_id, то безусловно в вашем случае товары будут привязываться либо к одному пользователю, либо к другому, если они оба сидят за разными компьютерами под одной учетной записью. (так как у менеджеров будет разный session_id и общий user_id)

На нашем сайте добавлен раздел с видеоуроками по платформе ReadyScript для администраторов и разработчиков! http://readyscript.ru/video/

Уточните, подробнее, как организованы у вас совместные закупки.

Я не совсем понял:
- Это несколько разных пользователей должны оформить как-то один большой заказ
или есть какой-то организатор, который постоянно расширяет какой-то свой общий большой заказ?

- Товары, которые были привязаны  user_id до этого удаляются (т.к. пользователь собрал новую корзину)

Здесь описывается следующая ситуация:

- Допустим пользователь будучи авторизованным на одном компьютере (А) добавил в корзину несколько товаров и закрыл браузер. (товары привязались к его session_id и user_id)

- Затем он перешел на другой компьютер (Б) и будучи неавторизованным собрал новую корзину.

Встает вопрос: "Что делать, если пользователь авторизуется на компьютере Б с собранной новой корзиной?"

Единственно верный в данном случае вариант, удалить из базы товары, собранные на компьютере А и привязать новые товары к user_id, собранные на компьютере Б.

Логика работы корзины следующая:

Когда пользователь неавторизован:
- Товары попадают в БД и связаны по session_id
(логика видна в методе \Shop\Model\Cart::__construct)

Когда пользователь авторизовывается и у него есть товары в корзине:
- Товары, которые были привязаны  user_id до этого удаляются (т.к. пользователь собрал новую корзину)
- Новые товары дополнительно привязываются к user_id

Когда пользователь авторизовывается и у него нет товаров в корзине
- Товары, которые были привязаны к user_id привязываются к session_id
(т.е. пользователь видит товары, которые он собирал будучи авторизованным, например, на другом компьютере)

(логика трансформаций при авторизации видна в \Shop\Config\Handlers::userAuth)

Когда пользователь авторизован:
- Товары попадают в БД и у них проставляются session_id, user_id

------------------------------------

Выборка товаров в корзину из БД ведется всегда по session_id. (user_id - это дополнительный идентификатор, который позволяет производить манипуляции по перепривязке товаров при авторизации)

Теоретически, корзина может пропадать у пользователей, только если наступает завершение сессии, т.е. происходит смена session_id, т.е. пауза между действиями пользователя на сайте превышает настройку session.gc_maxlifetime в php.ini

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

Думаю, в вашем случае самым простым решением будет восстановить старое состояние справочников из бекапов, чтобы возобновить связи "большинства" старых адресов пользователей и регионов:

Таблицы БД, которые за это отвечают:
_order_regions (справочник регионов)
_order_x_region (связь зон и регионов)

Удалив Россию, вы удалили и все вложенные регионы соответственно.
Поэтому и привязка к магистральным поясам у вас сбросилась. Вам их нужно заново сопоставить. http://kladr.insales.ru/russianpost/magistral_zones

Новый CSV файл следует загружать поверх, удалять предварительно ничего не нужно. В этом случае города просто будут добавлены к существующим регионам, ничего нигде не сбросится.

Странно, Вы случайно не удаляли имеющиеся регионы перед импортом?

Добрый день!
Последнее время в поддержку поступает много вопросов: "Почему не отображаются города в новом модулей Блок расчета доставки?". 

Ответ следующий: города могут не отображаться, если они  не заведены у вас в справочнике Магазин->Доставка->Регионы доставки. Такое может быть, так как раньше в комплекте с системой шел только справочник Регионов, а теперь появилась поддержка и городов.

Решить данную проблему можно загрузив новый справочник регионов и городов России с помощью CSV в разделе
Магазин->Доставка->Регионы доставки.

CSV файл имеет кодировку UTF-8, соответственно перед импортом необходимо установить её в разделе Веб-сайт->Настройка модулей->Системный модуль->Вкладка "CSV Импорт/Экспорт"->Поле "кодировка".

Ссылка на CSV файл: https://www.dropbox.com/s/uecscgh2jx4ux … s.csv?dl=1

Учитывая, что у комплектаций не передается из 1С никакого идентификатора порядкового номера, опереться можно только на последовательность, в которой эти комплектации присутствуют в offers.xml от 1С. Другого критерия - просто нет.

Уточните, у вас в выгрузке из 1С в файле offers.xml комплектации данного товара выходят в таком же порядке как отображаются на сайте? Или проблема заключается в том, что они именно на сайте перемешиваются?