
Egor
21.10.2016
08:03:15
protected function readDataFromCache()
{
if($this->arParams['CACHE_TYPE'] == 'N')
{
return false;
}
return !$this->StartResultCache(false, $this->cacheAddon);
}

Sergey
21.10.2016
08:04:49
так а после includeComponentTemplate return сделать?

Egor
21.10.2016
08:05:09
можно
но условия прописывать хотелось бы в template.php

Google

Egor
21.10.2016
08:05:42
и там вернуть $var
return $this->includeComponentTemplate();
но метод ничего не возвращается из template.php

Sergey
21.10.2016
08:07:38
http://joxi.ru/Y2LjEG9Colv9r6

Egor
21.10.2016
08:09:04
sqr? что это?

Sergey
21.10.2016
08:09:29
какая-то кастомная функция


Egor
21.10.2016
08:13:07
так можно, но в шаблоне вызывать тогда $this->_component->arResult['Y'] = $var ?
Ладно.. Будем думать.. Второй вопрос: В компоненте sale.bitrix.ajax на событие OnSaleComponentOrderOneStepPersonType в массив $arUserResult ранее передавал location_id из сессии пользователя при определении города на хите и при формирование заказа предлагались все варианты доставки, включая автоматические, почта россии, ems и т.д. Обновили недавно битрикс, автоматические варианты доставки пропали
появляются только после изменения на ajax местоположения, формы оплаты, доставки
т.е. при первом открытии формы заказа предлагаются только не автоматические варианты доставки, т.е те в которых не нужно проводить расчет стоимости доставки на момент оформления.
В компоненте sale.bitrix.ajax класса SaleOrderAjax есть метод initDelivery() где объект собирает данные по доставке $this->arDeliveryServiceAll = Delivery\Services\Manager::getRestrictedObjectsList($shipment);
Далее, если закомментировать этот участок http://joxi.ru/D2PKeJidDq31m3.png
то все варианта доставки становятся доступны, однако отключается расчет автоматических доставок

Google

Egor
21.10.2016
08:29:42
:-( извиняюсь за назойливость, два дня убил чтобы найти злосчастный участок кода.
в итоге отключил автоматическое определение города при оформлении заказа

Павел
21.10.2016
09:15:52
/

Maxim
21.10.2016
09:35:31
чота удаление компании в црм у меня мега сложное какое то получилось. или нет?

Виталий
21.10.2016
09:38:31
кто модицировал генерацию карты сайта? (я хочу из неё некоторые страницы) исключить

Egor
21.10.2016
09:39:01
в настройках генерации исключай
sitemap.xml ?
Решил первую проблему
http://joxi.ru/52a5nbsGVbR620.png
а в template.php написать чтото типо $this->__component->arResult['return'] = true;

Sergey
21.10.2016
10:15:22
Зачем в шаблоне менять данные?

Maxim
21.10.2016
10:17:10

Egor
21.10.2016
10:17:15
затем, чтобы не дублировать проверку на наличие входящий параметров из сессии, сначала на иницализацию компоненты, затем на получение данных + можно будет выводить из шаблона $variable любых типов данных.

Sergey
21.10.2016
10:17:51
В сессии есть какой-то arParams?

Egor
21.10.2016
10:17:58
http://joxi.ru/52a5nbsGVby620.png

Oleg
21.10.2016
10:19:18
что за изврат? почему шаблон компонетна возвращает флаг, а вокруг кода вызова шаблона наколбашена логика?

Egor
21.10.2016
10:19:53
нуууу Вам виднее :)

Oleg
21.10.2016
10:20:51
такой подход прямо на корню рушит всю логику платформы; компонент - формирует данные. шаблон - выводит только оформление. его можно кастомить под разные задачи (несколько шаблонов).

Andrew
21.10.2016
10:21:18
Дада, всё правильно, но вы в портальные компоненты загляните

Egor
21.10.2016
10:21:28
в итоге получится партянка

Google

Oleg
21.10.2016
10:21:40
мне не виднее, я не владею всей информацией, меня интересуют аргументы в пользу таких решений.

Andrew
21.10.2016
10:21:43
В шаблоне вызывается другой компонент, который вызывает другой компонент, который в свою очередь вызывает еще 4-5 других

Oleg
21.10.2016
10:22:10
ну и отлично, это и есть модульность, когда комплексный компонент внутри себя вызывает другой компонент.
а то потом контентщик говорит: а как мне поправить фразу "К сожалению, корзина пуста"? И выясняется, что надо привлекать программиста, т.к. фраза нифига не в шаблоне, а зашита в код, и еще и не в код компонетна, а прямо на страничке.

Виталий
21.10.2016
10:24:28

Egor
21.10.2016
10:24:39
комплексные компоненты подключают внутренние шаблоны, от шаблона компоненты -> шаблона сайта и т.д В моем случае мне нужен был флаг об отсутствии элементов в $arResult переписывать под комплексных подход - долго, логика работы компоненты не нарушена

Oleg
21.10.2016
10:25:43

Egor
21.10.2016
10:26:08
где же вы раньше были? я этот вопрос задавал жеж

Oleg
21.10.2016
10:26:25
работал, сейчас перечитаю выше

Egor
21.10.2016
10:26:51
либо можно я так понимаю в getMessage ?

Oleg
21.10.2016
10:27:40
можно в языковые файлы сунуть, но тогда контентщику от этого не проще жить, через Эрмитаж он быстро эту фразу не настроит, надо лезть в дебри админки и все равно он позовет программиста.
к нам просто часто такие вот матрешки приходят на поддержку, часть в шаблоне, а часть снаружи; и начинаешь это все переписывать, чтобы банально - композит нормально работал, с кешем проблем не было и т.д.
причем, я перечитал выше, вопрос сразу начался с retrun из шаблона, а для чего это, не пояснялось.

Egor
21.10.2016
10:31:59
задача была через шаблон получить $variable
спасибо большое за подсказку!

Oleg
21.10.2016
10:34:16
Да незачто; Почитайте еще на досуге: http://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=2975

Egor
21.10.2016
10:36:40
этот файл, в большинстве случаях, используем только для не кешируемых данных. хлебные крошки, свойств страницы, заголовок и т.д

Oleg
21.10.2016
10:37:53
ну а бывает, что в нем нужны кешируемые данные; для этого в template.php можно использовать массив $templateData

Egor
21.10.2016
10:39:20
По второму вопросу с автоматическим поставлением города в sale.order.ajax есть идеи?

Oleg
21.10.2016
10:41:08
Нет, там вообще треш и содомия с последними версиями; Пока не разбирались еще, как с ним теперь жить.
Я тут недавно техподдержку спрашивал про карту для служб доставки в sale.order.ajax, они мне сказали что это не коробочный компонент, доработанный говорят)) сами в общем не очень в курсе всех изменений в своем продукте.

Google

Kirill
21.10.2016
10:45:30
Народ, поделитесь плиз примером как список хайлоадблоков дернуть, найти не могу

Egor
21.10.2016
10:45:56
понятно, как всегда в принципе, ждем новых обновлений

Oleg
21.10.2016
10:46:51

Admin
ERROR: S client not available

Kirill
21.10.2016
10:50:54

Oleg
21.10.2016
10:53:06

Sergey
21.10.2016
11:34:33
Подскажите, пожалуйста, можно ли добавить значение в пользовательское свойство типа привязка к элементам инфоблока у пользователя?
То есть не делать Update полностью, а только добавить
чтобы не делать дополнительные запросы

Oleg
21.10.2016
11:43:33
Насколько я знаю, существует только CUser::Update, и пользовательские свойства передаются туда же.

Sergey
21.10.2016
11:50:43
То есть один хрен надо передавать полностью все значения.

Oleg
21.10.2016
11:54:38
Зачем? Не упомянутые значения же не сбрасываются.

Sergey
21.10.2016
11:55:12
в том-то и проблема, что существующие значения сбрасываются

Oleg
21.10.2016
11:55:26
Значения свойства имеете ввиду?

Sergey
21.10.2016
11:55:32
да
получил все, добавил, Update

Oleg
21.10.2016
11:55:43
Ну это логично, имхо

Sergey
21.10.2016
11:55:48
ну хз
мне нужно отметить только одно свойство. как мне кажется, много телодвижений
*только одно значение

Google

Vite4eg
21.10.2016
11:58:57
Можно пользовательское свойство через свою хрень обновить
Есть там какой-то специальный объект для этого
$USER_FIELD_MANAGER

Oleg
21.10.2016
12:01:22
ну значение то все равно придется получить, прежде чем его обновить

Vite4eg
21.10.2016
12:01:48
Зачем?

Oleg
21.10.2016
12:02:49
насколько я понял, там UF_* свойство "привязка к элементам ИБ", множественное. чтобы добавить значение в этот список, нужно его сначала получить запросом. что логично.

Vite4eg
21.10.2016
12:03:38

Sergey
21.10.2016
12:06:26

Garry
21.10.2016
12:07:06
Иначе потеряешь старые значения

Sergey
21.10.2016
12:07:56
да. Это я понял уже.
это реализованная логика
непонятно, почему не сделать просто добавление еще одного
без получения старого списка
но это, видимо, все самому

Garry
21.10.2016
12:09:09
Ну абстракция bitrix не такая глубокая