26 мая 2021, 15:51 Хотя с точки зрения качества кода — это ненужный элемент.Почему ненужный? Нативный fetch — это низкоуровневый инструмент, у него есть ряд недостатков и он не везде удобен. Например, fetch не поддерживает процентную загрузку, fetch не понимает коды ответа и любой статус воспринимает как «успешно», даже если сервер вернул 500, либо вообще умер. Fetch требует постоянно писать .json(), что еще одно подтверждение того, что это низкоуровневый инструмент. Axios — это удобная обертка над XMLHttpRequest, с интерсепторами, исключениями на основе кода ответа и удобным api. Ты можешь написать свою обертку над XMLHttpRequest, но, опять же, здесь за тебя уже все сделали. jQuery, в свою очередь — это устаревшая библиотека, которая даром не нужна в современном js, и сравнивать ее с axios немного странно. Почему? Зачем?А ты попробуй просто взять и поработать с нативным fetch'ем, подергать какие-нибудь эндпоинты, а потом потихоньку придешь к пониманию, что все как-то не слишком удобно. Для разработчиков / Как я написал YandexMarket2 на Vue.js 50 0
25 мая 2021, 21:56 Ведь что такое по своей сути vuejs как не фреймворк языка javascript. Но этого мало, над ним придумывают фреймворк vuetify что уже звучит дикоТы путаешь теплое с мягким. Vue — фреймворк для создания интерфейсов, Vuetify — библиотека с готовыми элементами интерфейса в стиле MD, написанная для Vue. Если тебе нужно приложение в стиле MD, то ты можешь его нарисовать с нуля, самостоятельно написав каждый низкоуровневый компонент типа инпутов или радиобаттонов, либо можешь просто взять Vuetify, где все это уже за тебя сделали и оттестировали, и написать условную админку в едином стиле без лишней головной боли. Для разработчиков / Как я написал YandexMarket2 на Vue.js 50 0
25 мая 2021, 20:42 Но автор умудрился намешать ExtJs, Vue.js и даже jQuery и всё это подрубается в админку через iframe! Он еще там все это лодашем погоняет, не стесняется юзать var во вью и до кучи инлайновые стили добавляет в шаблон, чтоб скучно не было. В общем, идеальный пример того, как делать не нужно. Для разработчиков / Как я написал YandexMarket2 на Vue.js 50 +1
25 мая 2021, 20:35 но помню одно правило хорошего плохого инженераисправил опечатку Для разработчиков / Как я написал YandexMarket2 на Vue.js 50 0
01 мая 2021, 17:08 Присылайте PR — Артем соберет новую версию. Его уже смерджили уже как год почти: github.com/nizart91/localizator/pull/15 Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
16 апреля 2021, 20:24 Евгений что то явно употребляетПохоже на тяжелое употребление документации, не позавидуешь. Вопросы / MODX-фильтры в TV-select 20 0
11 апреля 2021, 17:06 Как заготовка — прикольно, но для админки, на мой взгляд, NextJS лишний, тем более со своим файловым роутингом, который на больших проектах заставляет страдать. Ты взял NextJS потому что привык и удобно, либо из-за какой-то его конкретной фичи? Для разработчиков / Альфа релиз альтернативной админки для MODX 27 +1
28 марта 2021, 22:06 Хотя очень хотелось бы еще получить доступ, например, к counter.measure_unit.{$product['counter.measure_unit']}То же самое и для value: {$product['counter.value']} Вопросы / Как вывести определенную опцию в корзине 4 0
22 марта 2021, 20:18 НО не исключает к сожалению по IDЭтот код и не должен что-то исключать. Результирующий массив лежит в переменной $result, в ней и нужно смотреть. $array_test уже не нужен. {foreach $result as $id => $value} id: {$id} - count: {$value} {/foreach} Вопросы / Перебор массива при помощи Fenom 4 +1
18 марта 2021, 22:23 {set $result = []} {foreach $array_test as $row} {if $row.id in keys $result} {$result[$row.id] += $row.count} {else} {$result[$row.id] = $row.count} {/if} {/foreach} Вопросы / Перебор массива при помощи Fenom 4 +1
18 марта 2021, 14:03 Тут речь про то, чтоб повысить в системных требованиях минишопа минимальную версию php Тут речь про то, чтобы исправить шорткат на старый list, потому что никто в здравом уме не будет без мажорного релиза повышать требуемую версию php с 5.3 на 7.1. P.S. Стрелочки с мобильной версии настолько удобные, что я даже случайно плюсанул тебе, ну да ладно. Новые дополнения и их версии / Релиз miniShop2 ver. 2.8.2 82 +1
17 марта 2021, 17:10 Это деструктуризация массива — шотркат для конструкции list, который доступен с PHP >= 7.1. Поэтому, когда ты добавляешь туда еще один знак «равно», то ломаешь код. Либо повышай версию php до 7.1, либо заменяй на list($operator, $key) = $components; Новые дополнения и их версии / Релиз miniShop2 ver. 2.8.2 82 0
07 марта 2021, 00:56 По рукам бы надавать автору этой строчки: Просто удали ее и проблема будет решена. Вопросы / [РЕШЕНО] minishop2 фото товаров листается по два раза 9 +1 1
03 марта 2021, 20:09 Как человек, написавший на MODX большой сервис (65+ кастомных таблиц), настоятельно не рекомендую брать CMS для сервисов. В один момент она просто начнет мешать и замедлять разработку и вместо того, чтобы писать логику сервиса, ты будешь пытаться приспособить эту CMS к твоим задачам и писать костыли. Достаточно понимать, что xPDO не умеет в банальные UNION, более того, она даже мешает выполнять запросы, в которых есть UNION. Вопросы / Веб-сервис на MODx. Поиск расширений, плагинов и пр. или готовых решений для доработки. 6 +2
24 февраля 2021, 15:59 Мне кажется что в современной разработке технологии стали вредить, вместо того чтобы нести пользу.Если приложить утюг к языку, то тоже мало пользы будет, но полезность утюга это не отменяет. С технологиями то же самое. Вопросы / Немного старческого ворчания или не судите строго 13 +6
24 февраля 2021, 01:12 Верстальщик != Разработчик. Очень часто бывает такое, что верстальщики довольно далеки от разработки и умеют только в html + css, а знания фронтенда и js у них близки к нулю. Собственно, это просто один из таких представителей. Вопросы / Немного старческого ворчания или не судите строго 13 0
23 февраля 2021, 16:29 miniShop2.Order.submit(); Вопросы / Manually submit order form from javascript 2 0
15 февраля 2021, 18:41 in лучше действительно не юзать, как уже подсказали. Тут описал подробно, почему именно. Вопросы / Как вызвать сниппет в конкретном шаблоне? 6 +1
29 января 2021, 18:21 Зачем высчитывать все эти расхождения, если можно просто заново проиндексировать массив на основе нового значения? Я предполагаю, что в этом массиве у тебя собраны сразу все необходимые id: <?php $array = [246 => 1, 267 => 2, 296 => 3, 308 => 4, 309 => 5]; $affectedResource = 308; $newIndex = 2; $array[$affectedResource] = $newIndex - 0.5; asort($array); $index = 1; // индексирование будет начато с единицы foreach ($array as $id => &$oldIndex) { $oldIndex = $index; $index++; } return $array; Если тебе не принципиально, чтобы первый индекс был единицой, то можно еще проще: <?php ... asort($array); return array_flip(array_keys($array)); Вопросы / [РЕШЕНО] Вопрос для академиков 12 0
26 января 2021, 22:19 Обычно в лк делается функционал для таких целей, где клиент видит все свои заказы, их статусы и может повторно запросить ссылку на оплату/поменять способ оплаты. В общем-то, вывод заказов и их статусов — действительно тривиальная задача, в modstore даже есть готовый компонент для этой цели. Вопросы / minishop2 - Оплатить повторно или сменить вид оплаты после неуспешной попытки 5 0
YaSmartCaptcha - защитите ваши формы от спама умной капчей от Яндекс Вообще не понял о чем речь) В системной настройке service_js сейчас указана ссылка smartcaptcha.cloud.yandex.ru/captcha.js Я предложил очистить эту настройку, тогда компонент н...
mxBackup — обезличенные копии MODX в пару кликов Ещё нет, я там разом почти полтора десятка пакетов выложил модератор, вероятно, а шоке.
Gallery3x 3.4.0 - вставка галерей прямо из визуального редактора (CKEditor и TinyMCE RTE) Здравствуйте. Есть консольный скрипт Вот почитайте: docs.ivan345.com/books/gallery3x/page/import-ms2galleryphp
[mSync] Новая версия синхронизации с 1С Всем привет. В какой то момент начали сыпаться ошибки: Error 23000 executing statement: INSERT INTO `modx_msync_products` (`product_id`, `uuid_1c`) VALUES ...
Checkbox для модального окна Они не отключены, они платные, чтобы писали только те, кому действительно очень надо. Когда бесплатно люди начинают думать, что я им должен.
[SendIt 2.6.0] Анализ поведения пользователя для защиты от спама (невидимая капча)... Здравствуйте. Делаю личный кабинет на Sendit и со сбросом пароля возникли проблемы. Можете подсказать, в чем ошибка? Список вопросов в одноименном разделе на modx.pro пока пуст, и,...
Minishop + честный знак (продажа маркированной продукции) В нашем случае мы решили убрать всю логику по маркировке сайта.
Axios — это удобная обертка над XMLHttpRequest, с интерсепторами, исключениями на основе кода ответа и удобным api. Ты можешь написать свою обертку над XMLHttpRequest, но, опять же, здесь за тебя уже все сделали.
jQuery, в свою очередь — это устаревшая библиотека, которая даром не нужна в современном js, и сравнивать ее с axios немного странно.
А ты попробуй просто взять и поработать с нативным fetch'ем, подергать какие-нибудь эндпоинты, а потом потихоньку придешь к пониманию, что все как-то не слишком удобно.
Если тебе нужно приложение в стиле MD, то ты можешь его нарисовать с нуля, самостоятельно написав каждый низкоуровневый компонент типа инпутов или радиобаттонов, либо можешь просто взять Vuetify, где все это уже за тебя сделали и оттестировали, и написать условную админку в едином стиле без лишней головной боли.
Ты взял NextJS потому что привык и удобно, либо из-за какой-то его конкретной фичи?
P.S. Стрелочки с мобильной версии настолько удобные, что я даже случайно плюсанул тебе, ну да ладно.
Поэтому, когда ты добавляешь туда еще один знак «равно», то ломаешь код.
Либо повышай версию php до 7.1, либо заменяй на
Просто удали ее и проблема будет решена.
Достаточно понимать, что xPDO не умеет в банальные UNION, более того, она даже мешает выполнять запросы, в которых есть UNION.
Собственно, это просто один из таких представителей.
Тут описал подробно, почему именно.
Я предполагаю, что в этом массиве у тебя собраны сразу все необходимые id:
Если тебе не принципиально, чтобы первый индекс был единицой, то можно еще проще:
В общем-то, вывод заказов и их статусов — действительно тривиальная задача, в modstore даже есть готовый компонент для этой цели.