Прошу помощи. Подсмотрел чужой код. Вывел ег она сайте. Список платежных систем формируется, но ничего не работает.
Вылетает ошибка
POST /local/templates/autoprofi/components/bitrix/sale.personal.order.list/.default/edit_order.php 500 (Internal Server Error)
Помогите разобраться, у автора кода, по его словам, все работало.
Компонент sale.personal.order.list
правим result_modifier.php
правим template.php.php
правим edit_order.php
Вылетает ошибка
POST /local/templates/autoprofi/components/bitrix/sale.personal.order.list/.default/edit_order.php 500 (Internal Server Error)
Помогите разобраться, у автора кода, по его словам, все работало.
Компонент sale.personal.order.list
правим result_modifier.php
Код |
---|
<? if(CModule::IncludeModule("sale")){ foreach($arResult['ORDERS'] as $k=>$order){ $id_order[]=$order['ORDER']['ID']; $dbPaySysAction = CSalePaySystemAction::GetList( array(), array( "PAY_SYSTEM_ID" => $order["ORDER"]["PAY_SYSTEM_ID"], "PERSON_TYPE_ID" => $order["ORDER"]["PERSON_TYPE_ID"] ), false, false, array("NAME", "ACTION_FILE", "NEW_WINDOW", "PARAMS", "ENCODING") ); if ($arPaySysAction = $dbPaySysAction->Fetch()) { if (strlen($arPaySysAction["ACTION_FILE"]) > 0) { $arResult['ORDERS'][$k]['ORDER']['PAY_SYSTEM']['INCLUDE']=false; $arResult['ORDERS'][$k]['ORDER']['PAY_SYSTEM']["PATH_TO_ACTION"] = htmlspecialcharsbx('/personal/order/payment/').'?ORDER_ID='.urlencode(urlencode($order['ORDER']["ACCOUNT_NUMBER"])); } } }}?> |
правим template.php.php
Код |
---|
<sc ript type="text/javascript"> $(document).ready(function(){ $('.pay_system_button').click(function(){ $.post("/local/templates/autoprofi/components/bitrix/sale.personal.order.list/.default/edit_order.php",$("#edit_pay_system"+$(this).attr('rel')).serialize(),function(){ }); $(this).parent().parent().find('.pay_system_name').text($(this).parent().find('option:selected').text()) $("#edit_pay_system"+$(this).attr('rel')).hide(); $(this).parent().parent().find('.edit_pay_system').show(); return false; }) }) </sc ript> <?if($order["ORDER"]['STATUS_ID']=="N"){?> <fo rm id="edit_pay_system<?=$order["ORDER"]["ID"]?>" style=""> <input type="hidden" value="<?=$order["ORDER"]["ID"]?>" name="order_id"/> <select name="pay_system" class="pay_system"> <?foreach($arResult['INFO']['PAY_SYSTEM'] as $pay_system){ if($pay_system['ACTIVE']=='Y'){?> <option <?=($pay_system["ID"]==$arResult["INFO"]["PAY_SYSTEM"][$order["ORDER"]["PAY_SYSTEM_ID"]]["ID"]?'selected':'')?> value="<?=$pay_system['ID']?>"><?=$pay_system['NAME']?></option> <?}}?> </select> <input type="button" class="pay_system_button bt2" rel="<?=$order["ORDER"]["ID"]?>" value="Сохранить" /> </form> <?}?> |
правим edit_order.php
Код |
---|
<? CModule::IncludeModule("sale"); if($_REQUEST['pay_system']) $arFields = array( "PAY_SYSTEM_ID" => $_REQUEST['pay_system'] ); CSaleOrder::Update($_REQUEST['order_id'], $arFields); ?> |