Sergey_K
Итак, все данные уже лежат в сессии, осталось только вызвать метод submit() и он сделает всю нужную работу: В этот метод можно прислать массив данных для заказа, они, конечно, должны будут пройти проверку и заменят, то что уже там есть. Это сделано для возможности использовать классические формы. Перед проверкой данных вызывается событие msOnSubmitOrder.
Sergey_K
В итоге массив можно прислать, только он нигде не используется :)
Sergey_K
Никакие данные нигде не добавляются.
🙈 PG
пару миут, проверю одну теорию
Sergey_K
Ога
🙈 PG
$order->set(["properties" => ["test"]])
а в какой момент ты это выполнял?
Sergey_K
Просто в плагине. Получал геолокацию и дальше вот так ее вставлял
Sergey_K
В дампе результат этого был - 1
🙈 PG
судя по исходникам у тебя 2 пути
Sergey_K
Т.е. set() возвращал
Sergey_K
1
🙈 PG
1) плагин 2) расширение msorderhandler
Sergey_K
Но вот в логах была херь
Sergey_K
1) плагин 2) расширение msorderhandler
Я уже решил, что надо писать нормальный msorderhandler
Sergey_K
Перепишу этот метод
Sergey_K
Но очень странно, что в документации написано так, а в исходниках про это забыли
🙈 PG
🙈 PG
🙈 PG
по сути плагин на msOnCreateOrder $msOrder->set('properties',['test'=>123]); $msOrder->save();
Sergey_K
Но это костыли все же я считаю
🙈 PG
ну раз ты в плагине получаешь данные геолокации, можно же сразу их и записать
Sergey_K
Ну я их получаю все же ДО заказа
Sergey_K
тут ведь и собака зарыта
Я сразу про это и сказал
Sergey_K
Там должен быть array_merge()
🙈 PG
можешь через set забивать properties, но при создании заказа они не будут учтены
Sergey_K
Я это уже понял
🙈 PG
Там должен быть array_merge()
по логике та, ведь можно таблицу расширить
Sergey_K
При этом лезет error log
🙈 PG
и новые данные тоже не будут попадать
Sergey_K
по логике та, ведь можно таблицу расширить
если расширить таблицу, вообще не ясно, как расш данные бить
Sergey_K
Я думал, что, может, чота не учел.... там есть еще непонятная сущность $config
Sergey_K
В конструкторе. Думал, может из него как-то лезет. Но нет.
Sergey_K
По сути это косяк минищопа
🙈 PG
видимо задумано так чтобы дополнительные данные передавать уже в плагине
Sergey_K
Неа
Sergey_K
Это косяк
Sergey_K
Потому что событие orderSubmit по сути бесполезно
Sergey_K
Оно же нужно для добивки заказа нужными допданными
Sergey_K
С допданными будет только одна сложность - отсечь ключи (имена полей), которых нет в заказе = таблице.
Sergey_K
Ну возможно, я просто сам не знаю наверняка. Потестирую. А так - надо, конечно, этот косяк править.
🙈 PG
но в свете последних событий, это не точно 😂
Sergey_K
Это ты про перенос на МОД3?
🙈 PG
ну учитывая что такие косяки вылазят в решениях которые работают годами
🙈 PG
Это ты про перенос на МОД3?
3 я еще не устанавливал после релиза
🙈 PG
стремно
Sergey_K
Хотя странно
🙈 PG
Ну, видимо, никто не пользовал просто
думаю большинство использует плагины
🙈 PG
по тому как нужно в другом случае следить за обновлениями итд
Sergey_K
Ну плагин это в данном конкретном случае не по феншую совсем
Sergey_K
Если наплевать, то плагином я и сам выйду из ситуации
Sergey_K
Мне претит делать допом десяток запросов, когда можео вставить все нужное сразу
Sergey_K
Ну т.е. вставлять все, а потом апдейтить вставленное при том, что полные данные есть сразу это костыль адский. Я считаю
Иван
https://www.udemy.com/course/modern-javascript-from-beginning/
Иван
Кому хороший свежий курс
🙈 PG
?
я понимаю что там есть проблемы еще, и если запускать на нем новый проект точно начну решать их, а это увеличит срок сдачи проекта и не понятно будет где именно считать время потраченное на проект а где время на исправления косяков. а если начну отправлять ПР, тогда с меня совсем не слезут
🙈 PG
по тому стрёмно
Иван
Иван
если начну отправлять ПР, тогда с меня совсем не слезут
🙈 PG
я по тому в какой-то из чатов скидывал исправления чтобы в гит не лезть
Sergey_K
я по тому в какой-то из чатов скидывал исправления чтобы в гит не лезть
Кстати, тоже про минишоп. А ты никогда не расширял аяксовые команды action минишопа?
Sergey_K
Я про order/getcost и прочие
🙈 PG
я разное делал
Sergey_K
Я же так понимаю, что это контроллер их принимает и раздает тупо по классам. Вот вопрос, можно ли перегрузить еще и контроллер. Чтобы добавить свои команды.
Sergey_K
Потому что кривая схема, если мне надо добавить получение списка городов, или нормализацию адреса - то надо делать отдельно свой другой контроллер.
Sergey_K
Я так понял, что минишоп такого не может. Или может?
🙈 PG
самым оптимальным и переносимым решением оказалось в моем случае писать свой коннектор и там уже писать кастомную логику
🙈 PG
но с расширением классов тоже обычно все работает
Sergey_K
Ну в доке нет расширения именно коннектора.
🙈 PG
в твоем случае я не знаю что именно не получилось
Sergey_K
Я туда еще не лазал
🙈 PG
https://github.com/bezumkin/miniShop2/blob/master/core/components/minishop2/model/minishop2/minishop2.class.php#L141
🙈 PG
вот это нужно дополнить?