
Vlad
17.08.2017
15:57:11
ну серьезно, все начинали с верстки , все начинали с jqery , ну нафига мне еще что то что даже через отладчик не просматривается и ошиками в консоль не валит
Даже интеграция с 1с через попу если за грань стандартной выгрузки товаров
Уже каждае крупная компания в своем блоге написала как они 1с или 1с их нагинала
https://www.intervolga.ru/blog/projects/1c-bitrix-exchange-contragents/?bx_sender_conversion_id=142864&utm_source=intervolgaru&utm_medium=email&utm_campaign=month_digest

Google

Vlad
17.08.2017
16:01:25
Хотя некоторые творчества читать весьма забавно, не помню где сслыка лежит к сожалению(
Я к тому что все публикует это как достижение, но любая компания которая выпутила от 5 сайтов на битриксе сталкивалась уже с багами
И это сейчас не про стандартные из разряда часть изображений теряется по пути
А кстати водяные знаки при выгрузки из 1с так до сих пор не ложатся?
Чет я разволновался, обычно не ругаюсь на битрикс или умеренонно)

Denis
17.08.2017
17:26:39

Vlad
17.08.2017
17:41:51

Denis
17.08.2017
17:42:58
На основе кучи постов выше. И фраз типа там нет oop там не отнаследуешься


Victor
17.08.2017
20:04:19
Поделючь опытом d7 подхода корзины/заказа.
1. Создаем объект заказа, делаем что-то с объектом баскета полученным из объекта заказа, делаем ->save(). И тут очищаются все корзины других пользователей, удаляются все записи b sale basket без ORDER ID. Ткнул поддержку носом еще пол года назад, прямо в код в ядре где из-за нестрогого сравнения баг. Ноль реакции.
2. Утекает память. Создаем объект ордер через load(), unset-им, смотрим, памяти меньше стало :) не критично для обычной корзины, но фатально для демона обмена заказами со сторонней базой. Место где утекает так и не нашел.
3. Очень много запросов. Попробуйте сделать load потом save, и там прям шквал. Для сложного обмена решил прямо в базу писать, скорость больше чем на 3 порядка выросла
Мне кажется если парни из битрикса запостят ядро на github, без обфусцированных частей ессесно, и будут принимать пуллы, разбирать issues, битрикс станет намного лучше. Был случай когда из-за ошибки в регулярке в том месте где ядро парсит вывод компонента на предмет ссылок для ajax режима, эта херня хватала все теги на букву <a. Им понадобилось 4 месяца что бы после обращения в саппорт выкатить апдейт.
https://idea.1c-bitrix.ru/to-post-the-actual-kernel-version-in-the-repository/
Мне бы вот например было бы совсем не впадлу найти где там утекает память, если бы я был точно уверен что мол пулл рассмотрят, примут и выкатят апдейт, в течение нескольких дней.


Pavel
17.08.2017
20:27:53

Google

Victor
17.08.2017
20:28:23

Pavel
17.08.2017
20:28:45

Victor
17.08.2017
20:30:06
Реальный кейс, хайлоад магазин 300-400 заказов в день, в не сезон, нужно все из учетной системы быстро перегонять заказы в crm + обновлять уже сущуствующие.

Pavel
17.08.2017
20:31:10
Хотя не такой, заказов поболее))

Victor
17.08.2017
20:31:48
Прямо в базу пишет?

Pavel
17.08.2017
20:32:43
прямо в базу писать опасно, если юзаешь стандартные модули
никто не гарантирует что следующим обновлением не появится b_sale_order_old

Victor
17.08.2017
20:33:44
Да, согласен.
Ну, если во время итерации обмена память не утекает, если ловить все исключения, даже падение базы, то нормально все работает и на пыхе

Pavel
17.08.2017
20:36:06
и да, мы не пишем демонов на php, так как php для этого не особо пригоден

Victor
17.08.2017
20:37:17
Да, у нас тоже, учетная система дает ченжлог, поэтому обновляется только то что нужно обновлять, просто манагеров много, днем по несколько заказов в секунду уходит.

Pavel
17.08.2017
20:37:48
там все окружение расчитано на то, что при каждом запросе оно восоздается заного с чистого листа, если этим принебречь, можно кучу багов поймать в стандартной пхп библиотеке
по этому в пхп нет многопоточности))

Victor
17.08.2017
20:39:23

Google

Pavel
17.08.2017
20:40:36
а нет, знаю кейс - шаред хостинг, там особо по другому никак
да и битрикс то у нас витрина по факту, если подумать. А так ИМ это часть большой микросервисной системы. У нас даже история заказов юзверя тянется не с базы битрикса, а напрямую с ерп/срм


Victor
17.08.2017
20:45:46
На данный момент я вижу только одно преимущество Java или NodeJs для этих целей - Многопоточность.
А минус в виде написания шин-коннекторов-очередей и прочего больше на мой взгляд. В Вашем проекте используется многопототчность? скорее всего это преимущество нивелируется узкой пропускной способностью исходной базы - из которой Вы тянете данные.

Pavel
17.08.2017
20:46:34
NodeJS однапоточна, она асинхронна, но если она обратится к залоченному ресурсу, то зависнет))

Victor
17.08.2017
20:46:51
Плюс врядли вы поспорите с тем что поддержка таких проектов усложняется.

Pavel
17.08.2017
20:47:04
Нет, в ИМ у нас нет многопоточности)) это вообще тема очень сложная и приносит большще багов чем пользы
в плане многопоточности мне больше нравится эрланг со своей виртуальной машиной, но это не про битрикс

Victor
17.08.2017
20:47:57
Тогда чем плох демон на php, слушающий измнения от учетной системы?)
Кроме тех случаев когда из-за кривого кода сторонних разрабов он падает )

Pavel
17.08.2017
20:49:03

Victor
17.08.2017
20:49:31

Pavel
17.08.2017
20:50:47

Victor
17.08.2017
20:51:54

Pavel
17.08.2017
20:53:41

Mike
17.08.2017
23:04:07
JS не место на сервер сайд.

Pavel
17.08.2017
23:56:35

Google

Алексей
18.08.2017
05:22:43

Aleserche
18.08.2017
06:31:20
ребята, TxtToHTML может вызываться неявно? У меня есть вывод <div class="detail_text"><?=$arResult["DETAIL_TEXT"]?></div>. В тексте есть https://contoso.com, он оборачивает его в тег a. Кто и на каком этапе это делает?

Petr
18.08.2017
06:39:05
если конечно хитро не записывается он в инфоблок

Aleserche
18.08.2017
06:40:14
Там чистый текст

Petr
18.08.2017
06:41:07

Admin
ERROR: S client not available

Petr
18.08.2017
06:41:20
что показывает исходный код страницы
уже обернуто?

Aleserche
18.08.2017
06:41:29
Уже преобразованный
Да. Я думал, может js конвертит, но нет

Petr
18.08.2017
06:42:32
а detail когда echo делаешь там просто текст?

Бобур
18.08.2017
07:08:20
Добрый день, ребята можно передать компоненту main.file.input $_POST? как в качестве параметра?

Aleserche
18.08.2017
07:09:19

Petr
18.08.2017
07:09:55

Aleserche
18.08.2017
07:10:47
точно. Сейчас посмотрю, что в бд лежит

Petr
18.08.2017
07:10:51
а так костылей можно понапихать
http://php.net/manual/ru/domxpath.query.php
еще есть jquery like библиотека
https://code.google.com/archive/p/phpquery/

Aleserche
18.08.2017
07:15:15
да дом не проблема перелопатить, просто не люблю такие костыли

Google

Petr
18.08.2017
07:15:27
=)
ну ищи тогда код записи

Mike
18.08.2017
07:35:44
Товарищи, подскажите. У меня в паре скриптов задаются абсолютные пути к изображениям относительно корня. Насколько бредовой выглядит идея переименовать some.min.js -> some.min.js.php для возможности подстановки в нем SITE_TEMPLATE_PATH?

Anton
18.08.2017
07:39:08
Не сильно круто. Как вариант просто в header.php объявите переменную js и в нее поместите путь до шаблона и уже в скриптах эту переменную подставите

Mike
18.08.2017
07:44:54
Как вариант. Но тут тоже может быть разное развитие событий. Писать в глобальную область видимости тоже так себе идея.
Но спасибо, буду думать дальше

Anton
18.08.2017
07:46:02
Да норм. Посоны из готовых решений пастаянна пользуют. Только естессно они заполняют целый json настроечную переменную типа var globalProjectConfig

Mike
18.08.2017
07:46:25
О, вот это интереснее, спасибо

Anton
18.08.2017
07:47:55
А сами битриксоиды просто на уровне компонентов создают js объекты. Которые на вход получают всю нужную инфу от php. И уже в template.php в объект отдают типа JSBxSmartFilter.init(<?=$params;?>); принцип такой синтаксис другой
а сам объект js описывается в script.js

Aleserche
18.08.2017
07:50:05
вот чего я не упомянул. Ссылка оборачивается классом txttohtmllink

Михаил
18.08.2017
07:55:57
Добрый день! Подскажите, пожалуйста, почему ResizeImageGet может выдавать такой результат (путь к исходному файлу, а не к уменьшенной копии в папке resize_cache)? http://i.imgur.com/KuyrBFq.png

Mv
18.08.2017
07:58:39

Михаил
18.08.2017
07:59:13
http://i.imgur.com/LXcGQxJ.png

Anton
18.08.2017
08:01:04
например исходное изображение меньше теъ парамтеров до каких ресайзите

Mv
18.08.2017
08:02:20
а что за "resizeType" у вас?
http://i.imgur.com/LXcGQxJ.png
я вот так ресайз делаю
$arFileTmp = CFile::ResizeImageGet(
$arResult['PREVIEW_PICTURE'],
array("width" => 644, 'height' => 1400),
BX_RESIZE_IMAGE_EXACT,
false
);