} } else { $psID = CSalePaySystem::Add($arFields); if ($psID <= 0) { if ($ex = $APPLICATION->GetException()) { $errorMessage .= $ex->GetString() . ".<br>"; } else { $errorMessage .= GetMessage("CRM_PS_ADD_UNKNOWN_ERROR") . ".<br>"; } } } } /*************** Actions edit ***********/ if (strlen($errorMessage) <= 0) { if (isset($_POST["ACTION_FILE"]) && strlen(trim($_POST["ACTION_FILE"])) > 0) { $actionFile = CCrmPaySystem::getActionPath($_POST["ACTION_FILE"]); } else { $errorMessage .= GetMessage("CRM_PS_EMPTY_SCRIP") . ".<br>"; } if (strlen($actionFile) > 0) { $actionFile = str_replace("\\", "/", $actionFile); while (substr($actionFile, strlen($actionFile) - 1, 1) == "/") { $actionFile = substr($actionFile, 0, strlen($actionFile) - 1); } $pathToAction = $_SERVER["DOCUMENT_ROOT"] . $actionFile; if (!file_exists($pathToAction)) { $errorMessage .= GetMessage("CRM_PS_NO_SCRIPT") . ".<br>"; } } if (strlen($errorMessage) <= 0) { $arActParams = array();
public static function getPSCorrespondence($actFile) { if (!$actFile || !CModule::IncludeModule('sale')) { return false; } $arPSCorrespondence = array(); $file = CCrmPaySystem::getActionPath($actFile); $path2SystemPSFiles = "/bitrix/modules/sale/payment/"; $path2UserPSFiles = COption::GetOptionString("sale", "path2user_ps_files", BX_PERSONAL_ROOT . "/php_interface/include/sale_payment/"); if (substr($path2UserPSFiles, strlen($path2UserPSFiles) - 1, 1) != "/") { $path2UserPSFiles .= "/"; } $bSystemPSFile = substr($file, 0, strlen($path2SystemPSFiles)) == $path2SystemPSFiles; if (!$bSystemPSFile) { if (substr($path2UserPSFiles, strlen($path2UserPSFiles) - 1, 1) != "/") { $path2UserPSFiles .= "/"; } $bUserPSFile = substr($file, 0, strlen($path2UserPSFiles)) == $path2UserPSFiles; } if ($bUserPSFile || $bSystemPSFile) { if ($bUserPSFile) { $fileName = substr($file, strlen($path2UserPSFiles)); } else { $fileName = substr($file, strlen($path2SystemPSFiles)); } $fileName = preg_replace("#[^A-Za-z0-9_.-]#i", "", $fileName); $arPSCorrespondence = CCrmPaySystem::LocalGetPSActionParams($_SERVER["DOCUMENT_ROOT"] . ($bUserPSFile ? $path2UserPSFiles : $path2SystemPSFiles) . $fileName . "/.description.php"); } return $arPSCorrespondence; }