выведешь параметры и посмотришь какой нужен
02.03.2012 13:20:06
выведешь параметры и посмотришь какой нужен |
|
|
02.03.2012 13:01:17
Если надо поменять визуальное отображение заказа то не проблема(либо в коде шаблона прописать , либо править сообщения) |
|
|
01.03.2012 16:38:32
я подключал все модули(я тоже думал что в этом ошибка) но ошибка не в этом. мой последний код на странице php ,которую я вызываю сам ,работает, а в файле init.php нет (код делал 1 в 1, за исключениемподключения событий) точнее не работает только сохранение цены надо проверить но я уже от этого способа отказался и теперь буду кастомизировать компонент выгрузки. |
|
|
29.02.2012 15:35:27
вот этот код работает однако
специально указад все параметры как в init.php без CurrencyFormat тоже работало только не в init.php |
|||
|
29.02.2012 15:12:14
Цены указаны
я немного поправил
так работает но только на простой странице, по обработчику в файле init.php не работает
|
|||||
|
29.02.2012 14:44:54
не работает даже такой код на обычной странице(не init.php)
здесь то что не так? |
|||
|
29.02.2012 11:02:04
вот сообщения которые выводил
|
|||||
|
29.02.2012 10:59:52
|
|||
|
29.02.2012 10:59:44
инфоблок является торговым каталогом
вот код
|
|||
|
28.02.2012 10:36:59
логи которых не видно
|
|||||
|
28.02.2012 10:34:58
$price_new=$price-$price*$DISCOUNT/100;
$arFields2 = Array( "PRODUCT_ID" => intval($arFields["ID"]), "CATALOG_GROUP_ID" => 11, "PRICE" => intval($price_new), "CURRENCY" => "RUB", "CAN_BUY" => "Y", "CAN_ACCESS" => "Y" ); $res = CPrice::GetList( array(), array( "PRODUCT_ID" => intval($arFields["ID"]), "CATALOG_GROUP_ID" => 11, ) ); if ($arr = $res->Fetch()) { CPrice::Update(intval($arr["ID"]), $arFields2); if($arFields["RESULT"]) AddMessage2Log("1Запись с кодом ".$arFields["ID"]." изменена."." || Скидка=".$DISCOUNT." Цена=".$price." Новая цена=".$price_new); else AddMessage2Log("1Ошибка изменения записи ".$arFields["ID"]." (".$arFields["RESULT_MESSAGE"].")."); } else { $q=CPrice::Add($arFields2); $arPrice = CPrice::GetByID(11); if($arFields["RESULT"]) AddMessage2Log("2Запись с кодом ".$arFields["ID"]." изменена."." || Скидка=".$DISCOUNT." Цена=".$price." Новая цена=".intval($price_new)." q=".$q." тип цены=".$arr["CATALOG_GROUP_NAME"]); else AddMessage2Log("2Ошибка изменения записи ".$arFields["ID"]." (".$arFields["RESULT_MESSAGE"].")."); } } } } } выводил логи и смотрел все нормально старый лог 2012-02-27 19:32:19 - - 2Запись с кодом 406932 изменена. || Скидка=10 Цена=964 Новая цена=867 IBLOCK=49 ID=406932 q=17541806 MyClass2::OnAfterIBlockElementUpdateHandler < call_user_func_array < ExecuteModuleEventEx новый лог 2012-02-28 08:15:52 - - 2Запись с кодом 406932 изменена. || Скидка=10 Цена=964 Новая цена=867 q=17543330 тип цены= MyClass2::OnAfterIBlockElementUpdateHandler < call_user_func_array < ExecuteModuleEventEx В чем может быть причина? |
|
|
28.02.2012 10:34:48
Написал обработчик но цена не приходит
AddEventHandler("iblock", "OnAfterIBlockElementUpdate", Array("MyClass2", "OnAfterIBlockElementUpdateHandler")); class MyClass2 { // создаем обработчик события "OnAfterIBlockElementUpdate" function OnAfterIBlockElementUpdateHandler(&$arFields) { if (intval($arFields["IBLOCK_ID"]) == 49) { if (CModule::IncludeModule("catalog") && CCatalog::GetByID($arFields["IBLOCK_ID"])) { $db_props = CIBlockElement::GetProperty(49, intval($arFields["ID"]), array("sort" => "asc"), Array("CODE"=>"DISCOUNT")); if($ar_props = $db_props->Fetch()) $DISCOUNT = intval($ar_props["VALUE"]); echo "<script type='text/javascript'>alert '".$DISCOUNT."'; </script>"; $db_res = CPrice::GetList( array(), array( "PRODUCT_ID" => intval($arFields["ID"]), "CATALOG_GROUP_ID" => 9, ) ); if ($ar_res2 = $db_res->Fetch()) { $price=intval($ar_res2["PRICE"]); } |
|
|