romy4: да, точно - я потому и спросил, что помню что где-то видел нечто подобное. Тут правда надо заранее знать имена свойств, но это уже гораздо лучше чем ничего!
romy4: не - я расчитывал на то, что объекту можно добавить какой-нибудь волшебный метод типа __readundefprop(name), который срабатывает каждый раз при попытке доступа к несуществующему свойству объекта. Видимо зря...
Ну я написал в конце что понимаю что так и нужно и сам до сих пор так делал, но вот задался вопросом - нет ли какого-нибудь трюка, чтобы геттер сам срабатывал если данных нет.
Отлично. Значит скорее всего дело или в 1С или в долгом аплойде. Для того что бы проверить - запусти импорт вручную и посмотри сколько он будет длится.
/bitrix/admin/1c_exchange.php?type=catalog&mode=import&filename=import.xml
и жми F5 до появления success.
Если вы ставите ватермарк, считайте что это тоже изменение размера. Если отключили сейчас ватермарк и изменение отдельно не включено - отлично.
Попробуйте все же включить использование контрольных сумм, если выключено. Это не решит проблему, но поможет ее обойти.
tuxx: лучше вообще убрать проставление ватермарка при загрузке. Даже уменьшение детальный изображений лучше не использовать. Но это не связано с выгрузкой. Все эти вещи лучше делать в шаблонах. В result_modifier в смысле. Тогда вы легко сможете менять ватермарки и размеры деталек не перезаливая каждый раз каталог.
Если проблема mbstring - там сразу радикально возрастает скорость импорта. В 1500-2000 раз.
Еще - если картинке не часть меняются у товаров или меняются но с ними так же меняются и сами товары - какая-нибудь подпись, свойство и ТП, то есть радикальное средство - Использовать контрольные суммы элементов для оптимизации обновления каталога. Это настройка в Магазин > Настройки > Интеграция с 1С. Товары не будут апдейтится если в них ничего не изменилось.
Сергей Протько: я понимаю. Нельзя ли формулу этих эффектов обобщить до rgb? И выполнять прямой и обратный пересчет прямо внутри этой формулы? Или найти формулу имеющую похожий резульата в rgb.
vasIvas: ты не думал что операцию изменения цвета можно прогнать в rgb прямо и rgb результат получить? Убрав конвертацию. Что там у тебя за преобразование?
Почему hsl именно? Попробуй переписать функцию изменения светлоты (ты же светлоту крутишь?) для rgb.
Да, я почитал обсуждение... Теги какие-то не те ТС выбрал. Хотя смотря что за размер канвы - она быстрая. Ну и сколько раз этот пересчет сделать надо.
А так - если реалтаймовый реалтайм, то это жесть, да. Проще попытаться в пространстве rgb решить задачу без перехода в hsv/hsl.
dk-web: Не совсем. Во-первых БЭМ накладывает правила на имена классов. Во-вторых, вот же: header .header_block h1 - наследование.
В БЭМ это был бы селектор .slogan__title без зависимости от вложенности.
dk-web: 1) Ну не семантично типо. Я бы объединил все в heder и просто часть хедера сделал отдельным от меню блоком со своим фоном.
2) А, ну так-то да. Но если оборачивается весь слоган в рамку, то лучше сделать отдельный стиль header h1 {}. Спан я считаю нужен чтобы выделять ЧАСТЬ текста в другом блоке, а не весь текст.
Fatal error: Class 'CPrice' not found
Это не подключен модуль с классом CPrice
Если честно - я не помню на память какой это модуль - вроде catalog, но может и sale.
Подключите оба и iblock чтобы не заморачиваться:
CModule::IncludeModule("iblock"); CModule::IncludeModule("catalog"); CModule::IncludeModule("sale");
Skywrath: Так вам нужно изменить или добавить цену?
Если именно добавить которой еще нет, то вот: https://dev.1c-bitrix.ru/api_help/catalog/classes/...
Т.е. в данном случае вам еще потребуется ID самомого товара. В смысле элемента инфоблока который надо будет в PRODUCT_ID вставить.