Хотели чуть позже на этот счет новость с подробностями описать.

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

Всего бывает 2 проверенных временем варианта - WebSocket и LongPolling запросы.
Вебсокеты не совсем подходят, так как на шаред хостингах их не развернешь.
Соответственно остался второй вариант.

Модуль, который захочет передавать информацию, должен будет включить LongPolling нужному админку, внутри события start.

\Main\Model\Comet\LongPolling::getInstance()->enable();

Затем при возникновении события, в PHP можно вызвать:

$data = ['param1' => 'value1']; //Любые данные
$user_id = 123; //ID админа, кому сообщение 
$expire = 20; //Максимальная актуальность сообщения в секундах, если получатель его не получил за это время, то оно удаляется.
$event_name = 'test'; //Произвольное имя события

\Main\Model\Comet\LongPolling::getInstance()->pushEvent($event_name, $data, $user_id, $expire)

При этом как только в PHP будет вызван pushEvent, в JS сразу будет срабатывать событие rs-event-{$event_name} на элементе body

То есть его мгновенно можно перехватывать:

$('body').on('rs-event-test', function(e, data) {
      //data - данные
});

Вы можете привязать ваше любое доменное имя и во время пробного периода.
https://readyscript.ru/faq/cloud/#faq-cloud-domain

228

(13 ответов, оставленных в Вопросы по работе с системой)

У вас в .htaccess выключено отображение ошибок "php_flag display_errors off"

Возможно немного не по теме, но: при обновлении системы затираются некоторые изменения, внесенные в тему, хотя она была скопирована и названа другим именем. Почему так происходит?

Новые(созданные вами), в том числе путем копирования темы, файлы затираться не могут при обновлении никак.

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

Скорее всего, предполагаю, что вы скопировали тему, но какие-то моменты все же правите в файлах, которые находятся прямо в папках модуля.

А ваша тема ссылается на них. Если это так, то внимательно ознакомьтесь с механизмами модификации шаблонов https://readyscript.ru/dev-manual/dev_t … tends.html

Вы в папке с темой оформления должны создавать сперва клоны шаблонов модулей, а затем их модифицировать.

230

(4 ответов, оставленных в Вопросы по созданию тем оформления)

Вот так можно:

{$menu_item.title}

В /flatlines/resource/js/rs.cart.js
есть кусок кода, который на мобильных устройствах открывает новую страницу.

            //Не открываем окна в мобильной версии

            if ($.detectMedia && ($.detectMedia('mobile') || $.detectMedia('portrait'))) {
                var params = {
                    amount:amountValue,
                    offer:offerValue,
                };

                //Добавим многомерные комплектации к запросу
                if (multioffersValues) {
                    $.extend(params, multioffersValues);
                }
                //Добавим сопутствующие товары к запросу
                if (concomitantValues) {
                    $.extend(params, concomitantValues);
                }

                location.href = url + (url.indexOf('?') == -1 ? '?' : '&') + $.param(params);
                return false;
            }

Вырежьте его.

Не забудьте воспользоваться нашей инструкцией по правильной доработке JS файлов:
https://readyscript.ru/dev-manual/dev_t … s_template

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

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

http://marketplace.readyscript.ru/addons/ormeditor/

233

(25 ответов, оставленных в Вопросы по Маркетплейсу)

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

Интересно было бы узнать что является "Большей частью модулей"?

никто это не торопиться исправлять.

Уточните, как давно вы написали сообщение в поддержку насчет вашей проблемы с API почты (вижу, что только сегодня)? Специалисты поддержки все проверят и вам ответят. Вероятно понадобятся доступы к вам на сайт (в админ.панель и FTP), чтобы мы могли протестировать работу модуля с вашими ключами. (желательно сразу отправьте их в поддержку)

Но я не увидел никакого нативного поиска - иначе зачем бы я писал ????? Нативный поиск работает по первой букве ...

Нативный поиск не по первой букве работает, а по всем буквам, если их быстро набирать. Попробуйте.

да, это ошибка. В самом ближайшем обновлении поправим.

236

(8 ответов, оставленных в Вопросы по работе с системой)

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

1. Устанавливаем в настройках модуля Каталог нужное округление
2. Выделяем 2 или более товара, нажимаем Редактировать
3. Выбираем "Изменить цену по формуле": Розничная = Розничная цена + 0 ед.
4. Сохраняем, получаем округленные цены у выбранных товаров

-----------------------------------------
Опция сейчас называется: "Округлять цены при внутренних пересчётах до", то есть мы специально подчеркнули, что при пересчетах. Но если непонятно, подумаем как еще можно уточнить этот момент.

237

(8 ответов, оставленных в Вопросы по работе с системой)

да. Основная идея - готовая цена основной комплектации должна всегда лежать в БД, округление только при операциях записи и только при автоматическом формировании/изменении цены.

Только так корректно работает сортировка по ценам и фильтрация в списках.

------

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

------

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

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

238

(8 ответов, оставленных в Вопросы по работе с системой)

Чтобы найти все места, где используется данная опция, можно по коду поискать метод CostApi::roundCost.

Округление используется при выполнении следующих операций:

- Мультиобновление цен у комплектаций, если валюта рядом с ценой не соответствует валюте по умолчанию.
- Мультиобновление цен у товаров по формуле
- При пересчете курсов валют

Также есть один случай, где округление идет динамически:
При получении цены комплектации: $product->getOfferCost

Приложите ссылку на полный файл import.xml и offers.xml. Из картинки не ясно.

По многочисленным просьбам добавили раздел со сводной информацией из всех changelog.txt файлов.
https://readyscript.ru/release-notes/

Мы начали вести общие release_notes.txt по всему проекту только с конца 2018-го, поэтому база пока небольшая, но все следующие обновления уже будут в этой базе автоматически.

Я тоже минусы не ставил ) В элементах SELECT, по крайней мере в Windows реализован нативный поиск, нужно просто набирать название характеристики и курсор сам будет перемещаться.

242

(25 ответов, оставленных в Вопросы по Маркетплейсу)

Мы тоже обращаем на это внимание. На практике в разных случаях по разному.

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

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

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

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

В итоге это позволит прогнозировать свой доход разработчикам.
Так разработчику будет интереснее поддерживать модули.

243

(6 ответов, оставленных в Вопросы по работе с системой)

Проблемы которые решались в RS 4.1:

1. Скорость открытия страницы со списком товаров и редактирования товара, при большом количестве категорий
2. Возможность в PHP API работать с большими древовидными списками, путем отключения предварительной загрузки всего дерева. Например, из cron.

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

1. Форма никуда не делась, а куда она должна деваться, как же без нее? Что такое lastpass и почему оно сходит с ума (причем тут мы)?

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

В плане отметок категорий ничего не менялось. У нас есть удобный инструмент (Shift + клик), который позволяет легко отметить большой список категорий, т.е. можно развернуть список и кликнуть вначале, затем с Shift - в конце, у вас выделится диапазон.

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

1. В нашу поддержку отправьте пожалуйста, скриншот и уточните у вас установлены последняя версия модуля?
2. Чтобы убрать вариант получать автоматически нужно поправить шаблон onepageorder'а. /modules/onepageorder/view/templates/{тема}/checkout/adressblock.tpl

вы можете подсмотреть рабочий код из /modules/catalog/view/list_products.tpl
там как раз в списке товаров выводятся все фото.

{$imagelist=$product->getImages(false)}

<ul class="list">
{foreach $imagelist as $n => $image}
   <li data-change-preview="{$image->getUrl(141,185,'xy')}" {if $image@first}class="act"{/if}><a href="{$product->getUrl()}" class="imgWrap"><img src="{$image->getUrl(64, 64, 'xy')}" alt="{$image.title|default:"{$product.title} t('фото') {$n}"}"/></a></li>
{/foreach}
</ul>

246

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

Можем развернуть у нас на поддомене.
Какой движок предпочитаете (DocuWiki)?

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

Если у Вас не хватает навыков, то закажите доработку у наших партнеров. Или у нас, мы внесем необходимые правки в шаблоны.

249

(7 ответов, оставленных в Вопросы по работе с системой)

Здесь хорошо описан тип поиска like+: https://readyscript.ru/text-blog/v-novo … -i-drugoe/

Про Fulltext - можно здесь почитать: https://habr.com/ru/post/40218/
Like - это обычный поиск частичного вхождения строки.

Типа характеристики - диапазон, в RS нет.

Вы можете сделать либо числовую характеристику - там только одно число,
либо делать списковую хар-ку (с чек-боксами), в ней указать диапазоны, клиент должен будет выбрать диапазоны.

Либо вам нужно сделать 2 независимые числовые характеристики (Вес, от),  (Вес, до).