php Оплатазаказатолькопослеподтвержденияменеджером。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php Оплатазаказатолькопослеподтвержденияменеджером。相关的知识,希望对你有一定的参考价值。
//Первым делом изменим параметры статуса с кодом «N». Дадим ему название «Принят. Ожидает подтверждения». Далее добавим статус с кодом, например, «A» и названием «Подтвержден. Ожидает оплаты.» Оставшиеся статусы «Выполнен» и «Оплачен» не трогаем.
//Создаем свой шаблон компонента sale.order.ajax, после этого он будет доступен в директории /bitrix/templates/you_template/components/bitrix/sale.order.ajax/.default/ Нас интересует confirm.php. Приводим его к следующему виду:
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
use Bitrix\Main\Localization\Loc;
/**
* @var array $arParams
* @var array $arResult
* @var $APPLICATION CMain
*/
if ($arParams["SET_TITLE"] == "Y")
{
$APPLICATION->SetTitle(Loc::getMessage("SOA_ORDER_COMPLETE"));
}
?>
<? if (!empty($arResult["ORDER"])) { ?>
<!-- заказ существует идем дальше -->
<? if ($arResult["ORDER"]["STATUS_ID"]=="N") { ?>
<!--сообщаем пользователю о том что его заказ сформирован -->
<table class="sale_order_full_table">
<tr>
<td>
<?=Loc::getMessage("SOA_ORDER_SUC", array(
"#ORDER_DATE#" => $arResult["ORDER"]["DATE_INSERT"],
"#ORDER_ID#" => $arResult["ORDER"]["ACCOUNT_NUMBER"]
))?>
<? if (!empty($arResult['ORDER']["PAYMENT_ID"])): ?>
<?=Loc::getMessage("SOA_PAYMENT_SUC", array(
"#PAYMENT_ID#" => $arResult['PAYMENT'][$arResult['ORDER']["PAYMENT_ID"]]['ACCOUNT_NUMBER']
))?>
<? endif ?>
<br /><br />
<?=Loc::getMessage("SOA_ORDER_SUC1", array("#LINK#" => $arParams["PATH_TO_PERSONAL"]))?>
</td>
</tr>
</table>
<div class="content pay">
<div class="pay_name"><?=Loc::getMessage("SOA_PAY") ?></div>
<?=CFile::ShowImage($arResult["PAY_SYSTEM"]["LOGOTIP"], 100, 100, "border=0", "", false);?>
<div class="paysystem_name"><?= $arResult["PAY_SYSTEM"]["NAME"] ?></div>
<div class="info-order">
<b><?=Loc::getMessage("PAY_SYSTEM_PAYABLE_ERROR_DEFAULT") ?></b>
</div>
</div>
<? } elseif (!empty($arResult["PAY_SYSTEM"]) && $arResult["ORDER"]["STATUS_ID"]=="A") { ?>
<!-- предлагаем оплатить заказ (Я взял эту часть из стандартного шаблона) -->
<table class="sale_order_full_table">
<tr>
<td>
<?=Loc::getMessage("SOA_ORDER_SUC", array(
"#ORDER_DATE#" => $arResult["ORDER"]["DATE_INSERT"],
"#ORDER_ID#" => $arResult["ORDER"]["ACCOUNT_NUMBER"]
))?>
<? if (!empty($arResult['ORDER']["PAYMENT_ID"])): ?>
<?=Loc::getMessage("SOA_PAYMENT_SUC", array(
"#PAYMENT_ID#" => $arResult['PAYMENT'][$arResult['ORDER']["PAYMENT_ID"]]['ACCOUNT_NUMBER']
))?>
<? endif ?>
<br /><br />
<?=Loc::getMessage("SOA_ORDER_SUC1", array("#LINK#" => $arParams["PATH_TO_PERSONAL"]))?>
</td>
</tr>
</table>
<div class="content pay">
<div class="pay_name"><?=Loc::getMessage("SOA_PAY") ?></div>
<?=CFile::ShowImage($arResult["PAY_SYSTEM"]["LOGOTIP"], 100, 100, "border=0", "", false);?>
<div class="paysystem_name"><?= $arResult["PAY_SYSTEM"]["NAME"] ?></div>
<div class="info">
<? if (strlen($arResult["PAY_SYSTEM"]["ACTION_FILE"]) > 0) { ?>
<? if ($arResult["PAY_SYSTEM"]["NEW_WINDOW"] == "Y") { ?>
<script language="JavaScript">
window.open('<?=$arParams["PATH_TO_PAYMENT"]?>?ORDER_ID=<?=urlencode(urlencode($arResult["ORDER"]["ACCOUNT_NUMBER"]))?>');
</script>
<?= GetMessage("SOA_TEMPL_PAY_LINK", Array("#LINK#" => $arParams["PATH_TO_PAYMENT"]."?ORDER_ID=".urlencode(urlencode($arResult["ORDER"]["ACCOUNT_NUMBER"]))))?>
<? if (CSalePdf::isPdfAvailable()) { ?>
<br />
<?= GetMessage("SOA_TEMPL_PAY_PDF", Array("#LINK#" => $arParams["PATH_TO_PAYMENT"]."?ORDER_ID=".urlencode(urlencode($arResult["ORDER"]["ACCOUNT_NUMBER"]))."&pdf=1&DOWNLOAD=Y")) ?>
<? } ?>
<? } else { ?>
<? if (strlen($arResult["PAY_SYSTEM"]["PATH_TO_ACTION"])>0) {
include($arResult["PAY_SYSTEM"]["PATH_TO_ACTION"]);
} ?>
<? } ?>
<? } ?>
</div>
</div>
<? } else { ?>
<!-- на тот случай если по той или иной причине не выбрана платежная система (ну мало ли:)) -->
<span style="color:red;"><?=Loc::getMessage("SOA_ORDER_PS_ERROR")?></span>
<? } ?>
<? } else { ?>
<!-- Сообщаем что такого заказа не существует -->
<b><?=Loc::getMessage("SOA_ERROR_ORDER")?></b>
<br /><br />
<table class="sale_order_full_table">
<tr>
<td>
<?=Loc::getMessage("SOA_ERROR_ORDER_LOST", array("#ORDER_ID#" => $arResult["ACCOUNT_NUMBER"]))?>
<?=Loc::getMessage("SOA_ERROR_ORDER_LOST1")?>
</td>
</tr>
</table>
<? } ?>
以上是关于php Оплатазаказатолькопослеподтвержденияменеджером。的主要内容,如果未能解决你的问题,请参考以下文章
sh Длякаждойсделаннойправкибезкоммитапоказатьизмененныйучастоккодаиспросить,должнолиэтоизменениепопа
比特币不能购买特斯拉了!今日比特币狂跌背后的原因……
python КакполучитьIPаарресспользователявDjango
ini Позволяетлюбомупользователюлокальнойсистемыподключитьсяклюбойбазеданных,используялюбоеимябазыдан
swift Запроснаконсультацию。 ПоследовательноеполучениекартинокизPFFileдлямассиваобъектовPFObject
php Сделатьдоступкчемулибовзависимостиотгруппыпользователя