У меня такая логика по этому вопросу, может быть она ошибочна но все же изложу
1. Вытаскиваем id раздела для каждого элемента
[CODE]
$res = CIBlockElement::GetElementGroups($arBasketItems["PRODUCT_ID"]);
if($ar_res = $res->GetNext()){
$ar_res1 = $ar_res[IBLOCK_SECTION_ID];
}
print_r($ar_res1);
[/CODE]
я делала так, но надо на раздел выше
2. создаем 5 скидок на заказ
3. И пишем условие, пока не знаю как, думаю над этим
4. Если элементы относятся к разделу 1, то оставляем так как есть
Если элементы относятся к разделу 2, то обновляем скидку с помощью след.функции
Для третьего так же
[CODE]
$arFields = Array(
"LID" => s1,
"ACTIVE" => "Y",
"PRICE_FROM" => 2000,
"PRICE_TO" => 4000,
"DISCOUNT_VALUE" => 40,
"DISCOUNT_TYPE" => "P",
);
$ibp = new CSaleDiscount();
$ibp->Update(1, $arFields);
[/CODE]
5. Надо еще продумать если будут 2 раздела попадать под скидки
И второй вариант, похож на первый
1. Вытаскиваем id раздела для каждого элемента
2. Создать 15 различных скидок на заказ
3. Поставить условие если первый раздел, то применять скидки с id=1,2,3,4,5
Если второй, то 6,7,8,9,10
Если третий, то 11,12,13,14,15
Что вы об этом думаете?!