function checkPayment($sbr_id, $delay = null) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/pskb.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/onlinedengi.php'; $objResponse = new xajaxResponse(); $sbr_id = __paramValue('int', $sbr_id); if (!$sbr_id) { $objResponse->call('finance_raise_err', 'Запрос не может быть обработан.'); return $objResponse; } $uid = get_uid(0); if (!$uid) { $objResponse->redirect('/'); return $objResponse; } $sbr = sbr_meta::getInstance(); if (!$sbr->initFromId($sbr_id)) { $objResponse->call('finance_raise_err', 'Запрос не может быть обработан.'); return $objResponse; } if ($sbr->status == sbr::STATUS_REFUSED) { $objResponse->call('finance_raise_err', 'Запрос не может быть обработан. Исполнитель отказался от сделки.'); return $objResponse; } if ($sbr->data['scheme_type'] != sbr::SCHEME_LC) { $objResponse->call('finance_raise_err', 'Указанная схема не поддерживается.'); return $objResponse; } $pskb = new pskb($sbr); $state = $pskb->checkNew(); if ($state == 'err') { $objResponse->call('finance_raise_err', $pskb->getError()); return $objResponse; } if ($state == 'form') { $objResponse->script("setTimeout(function() { xajax_checkPayment({$sbr_id});}, 2000);"); return $objResponse; } if ($state == 'new') { $lc = $pskb->getLC(); if ($lc['ps_emp'] == onlinedengi::BANK_YL) { $sbr->getDocs(); if ($sbr->docs) { foreach ($sbr->docs as $doc) { if ($doc['type'] == sbr::DOCS_TYPE_STATEMENT) { $doc_file = new CFile($doc['file_id']); //$doc_file->original_name = $doc['name']; $doc_file->delete($doc['file_id']); $sbr->removeEvent(24); } } } $stage = current($sbr->stages); if ($lc['ps_emp'] == onlinedengi::BANK_YL) { if ($doc_file = $stage->generateStatement($doc_err, $lc)) { // формируем заявление на аккредитив $doc = array('file_id' => $doc_file->id, 'status' => sbr::DOCS_STATUS_SIGN, 'access_role' => sbr::DOCS_ACCESS_EMP, 'owner_role' => 0, 'type' => sbr::DOCS_TYPE_STATEMENT, 'subtype' => 1); $sbr->addDocR($doc); $doc_file->original_name = $sbr->post_doc['name']; } } $objResponse->script('document.location.reload();'); return $objResponse; } if ($lc['ps_emp'] == onlinedengi::CARD) { $objResponse->call('pskb_frame', $lc['lc_id'], pskb::getNonceSign($lc['lc_id'])); } else { $objResponse->call('finance_send_frm'); } return $objResponse; } if ($state == 'cover') { $objResponse->script('document.location.reload();'); return $objResponse; } // $objResponse->call('finance_raise_err', 'Указанная схема не поддерживается.'); return $objResponse; }