示例#1
0
<?php

if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) {
    die;
}
if (!CModule::IncludeModule("sale")) {
    return;
}
$arPaySys = array("0" => GetMessage("SOPR_CHOOSE_PC"));
$dbPaySystem = \Bitrix\Sale\PaySystem\Manager::getList(array('filter' => array('ACTIVE' => 'Y', 'HAVE_RESULT_RECEIVE' => 'Y'), 'order' => array('SORT' => 'ASC', 'PSA_NAME' => 'ASC')));
while ($paySystem = $dbPaySystem->fetch()) {
    $arPaySys[$paySystem["ID"]] = $paySystem["NAME"];
}
if (!isset($arCurrentValues["PAY_SYSTEM_ID_NEW"])) {
    $newId = \CSalePaySystem::getNewIdsFromOld($arCurrentValues["PAY_SYSTEM_ID"], $arCurrentValues['PERSON_TYPE_ID']);
    $currentValue = current($newId);
} else {
    $currentValue = $arCurrentValues["PAY_SYSTEM_ID_NEW"];
}
$arComponentParameters = array("PARAMETERS" => array("PAY_SYSTEM_ID_NEW" => array("NAME" => GetMessage("SOPR_PC"), "TYPE" => "LIST", "MULTIPLE" => "N", "VALUES" => $arPaySys, "COLS" => 25, "ADDITIONAL_VALUES" => "N", "PARENT" => "BASE", "DEFAULT" => $currentValue)));
            } else {
                $errorMessage .= Loc::getMessage('SALE_PSE_ERROR_SET_BIZVAL_MAP');
            }
        }
    }
    if ($errorMessage === '') {
        if (strlen($request->get('apply')) > 0) {
            LocalRedirect("sale_pay_system_edit.php?ID=" . $id . "&lang=" . $context->getLanguage() . "&" . $tabControl->ActiveTabParam());
        } else {
            LocalRedirect("sale_pay_system.php?lang=" . $context->getLanguage());
        }
    }
}
$paySystem = array();
if ($id > 0) {
    $dbRes = \Bitrix\Sale\PaySystem\Manager::getList(array('filter' => array('ID' => $id), 'order' => array("SORT" => "ASC")));
    $paySystem = $dbRes->fetch();
}
require_once $documentRoot . "/bitrix/modules/sale/prolog.php";
$APPLICATION->SetTitle($id > 0 ? Loc::getMessage("SALE_EDIT_RECORD", array("#ID#" => $id)) : Loc::getMessage("SALE_NEW_RECORD"));
$restrictionsHtml = '';
if ($id > 0 && $request->getRequestMethod() !== 'POST') {
    ob_start();
    require_once $documentRoot . "/bitrix/modules/sale/admin/pay_system_restrictions_list.php";
    $restrictionsHtml = ob_get_contents();
    ob_end_clean();
}
require $documentRoot . "/bitrix/modules/main/include/prolog_admin_after.php";
?>

<?php 
示例#3
0
:</td>
		<td>
			<?php 
$ptRes = Sale\Internals\PersonTypeTable::getList(array('order' => array("SORT" => "ASC", "NAME" => "ASC")));
$personTypes = array();
while ($personType = $ptRes->fetch()) {
    $personTypes[$personType['ID']] = $personType;
}
?>
			<select name="filter_pay_system[]" multiple size="3">
				<option value=""><?php 
echo GetMessage("SALE_F_ALL");
?>
</option>
				<?php 
$res = \Bitrix\Sale\PaySystem\Manager::getList(array('select' => array('ID', 'NAME'), 'filter' => array('ACTIVE' => 'Y'), 'order' => array("SORT" => "ASC", "NAME" => "ASC")));
$paySystemList = array();
while ($paySystem = $res->fetch()) {
    $paySystemList[$paySystem['ID']]['NAME'] = $paySystem['NAME'];
}
if ($paySystemList) {
    $dbRestRes = Sale\Services\PaySystem\Restrictions\Manager::getList(array('select' => array('SERVICE_ID', 'PARAMS'), 'filter' => array('=CLASS_NAME' => '\\Bitrix\\Sale\\Services\\PaySystem\\Restrictions\\PersonType', 'SERVICE_ID' => array_keys($paySystemList))));
    while ($ptParams = $dbRestRes->fetch()) {
        $paySystemList[$ptParams['SERVICE_ID']]['PERSON_TYPE_ID'] = $ptParams['PARAMS']['PERSON_TYPE_ID'];
    }
    foreach ($paySystemList as $psId => $paySystem) {
        $personTypeString = '';
        if ($paySystem['PERSON_TYPE_ID']) {
            $psPt = array();
            foreach ($paySystem['PERSON_TYPE_ID'] as $ptId) {
                $psPt[] = (strlen($personTypes[$ptId]['NAME']) > 15 ? substr($personTypes[$ptId]['NAME'], 0, 6) . "..." . substr($personTypes[$ptId]['NAME'], -7) : $personTypes[$ptId]['NAME']) . "/" . $personTypes[$ptId]["LID"] . "";