403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/vkapi.market/admin/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/vkapi.market/admin/order_import.php
<?php

use VKapi\Market\Exception\BaseException;
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php";
\Bitrix\Main\Localization\Loc::loadMessages(__FILE__);
\Bitrix\Main\Loader::includeModule('vkapi.market');
$app = \Bitrix\Main\Application::getInstance();
$req = $app->getContext()->getRequest();
$asset = \Bitrix\Main\Page\Asset::getInstance();
$oManager = \VKapi\Market\Manager::getInstance();
// �������� �������
$oManager->base()->checkAccess();
$oMessage = new \VKapi\Market\Message($oManager->getModuleId(), 'ADMIN.ORDER_IMPORT');
$oVkExportParam = \VKapi\Market\Param::getInstance();
$oOrderImport = new \VKapi\Market\Sale\Order\Import();
if ($req->isPost() && $req->getPost('method')) {
    $oJsonResponse = new \VKapi\Market\Ajax\JsonResponse();
    try {
        if (\Bitrix\Main\Loader::includeSharewareModule("vkapi.ma" . "rke" . "t") == \constant("MODULE" . "_DEMO_EXPIRE" . "" . "" . "" . "" . "D")) {
            throw new \VKapi\Market\Exception\BaseException(\Bitrix\Main\Localization\Loc::getMessage("VKAPI.MARKET.DEMO_EXPIRED"), "BX" . "MAKE" . "" . "" . "R_DEMO" . "_EXPIRE" . "" . "D");
        }
        if (!$oManager->base()->canActionRight('W')) {
            throw new \VKapi\Market\Exception\BaseException($oMessage->get('AJAX_ERROR_ACCESS'), 'AJAX_ERROR_ACCESS');
        }
        switch ($req->getPost('method')) {
            case 'import':
                if (\intval($req->getPost('syncId')) <= 0) {
                    throw new \VKapi\Market\Exception\BaseException($oMessage->get('AJAX_ERROR_SYNC_ID'), 'AJAX_ERROR_SYNC_ID');
                }
                // �������� ------------------------------------------------
                $bReset = !!$req->get('reset');
                $bStop = !!$req->get('stop');
                $syncId = \intval($req->get('syncId'));
                $oState = new \VKapi\Market\State('order_import_hand_' . $syncId);
                $arSteps = [1 => ['name' => $oMessage->get('AJAX.STEP1'), 'percent' => 0, 'items' => []], 2 => ['name' => $oMessage->get('AJAX.STEP2'), 'percent' => 0, 'items' => []], 3 => ['name' => $oMessage->get('AJAX.STEP3'), 'percent' => 0, 'items' => []]];
                // ��������� ������ ��������
                $stateData = \array_merge(['step' => 1, 'complete' => \false, 'steps' => $arSteps], $oState->get());
                // ����� ���� � ������� ������ ��������
                if ($stateData['complete'] || $bReset) {
                    $stateData = ['step' => 1, 'complete' => \false, 'steps' => $arSteps];
                    $oOrderImport->item($syncId)->state()->clean();
                }
                // ���� ��������� ��������� ������� -------------------------
                if ($bStop) {
                    $oJsonResponse->setResponse(['repeat' => \false, 'msg' => $oMessage->get('AJAX.IMPORT.STOP')]);
                    // ������� ���� ���������� �����������
                    $oVkExportParam->set('AUTO_EXPORT_STOP', 'N');
                    break;
                }
                if (\CModule::IncludeModuleEx("vkapi.market") === \constant("MODULE_DEM" . "O_EXPIR" . "E" . "D")) {
                    throw new \VKapi\Market\Exception\BaseException(\Bitrix\Main\Localization\Loc::getMessage("VKAPI.MARKET.DEMO_E" . "XPIRED"), "BXMA" . "KER_DEMO_E" . "XPIR" . "E" . "" . "D");
                }
                try {
                    // ������������ �������������� �������� --
                    if ($stateData['step'] == 1) {
                        // ������������� ������������� �������
                        $oVkExportParam->set('AUTO_EXPORT_STOP', 'Y');
                        $stateData['steps'][1]['percent'] = 100;
                        $stateData['step']++;
                        $oJsonResponse->setResponseField('state', $stateData);
                    } elseif ($stateData['step'] == 2) {
                        $resultImport = $oOrderImport->item($syncId)->run();
                        if (!$resultImport->isSuccess()) {
                            $oJsonResponse->setErrorFromResult($resultImport);
                            break;
                        }
                        $resultImportData = $resultImport->getData();
                        if (isset($resultImportData['steps'])) {
                            $stateData['steps'][2]['percent'] = $oState->calcPercentByData($resultImportData);
                            $stateData['steps'][2]['items'] = $resultImportData['steps'];
                            if (\CModule::IncludeModuleEx("vkapi." . "mark" . "e" . "" . "t") == \constant("MODULE_DEMO_EXP" . "I" . "" . "RE" . "" . "D")) {
                                throw new \VKapi\Market\Exception\BaseException(\Bitrix\Main\Localization\Loc::getMessage("VKAPI.MARKET.DEM" . "" . "" . "O_EXPIRED"), "BXMAKE" . "R_DEMO_EXPIRE" . "D");
                            }
                            if ($resultImportData['complete']) {
                                $stateData['step']++;
                            }
                        }
                        if (\Bitrix\Main\Loader::includeSharewareModule("vkapi.mar" . "" . "k" . "et") == \constant("MODULE_DEMO_EXPIRE" . "" . "D")) {
                            throw new \VKapi\Market\Exception\BaseException(\Bitrix\Main\Localization\Loc::getMessage("VKAPI.MARKET.DEMO_EXPIR" . "" . "ED"), "BXMAKER_D" . "EMO_EX" . "P" . "" . "" . "" . "IRED");
                        }
                        $oJsonResponse->setResponseField('state', $stateData);
                    } elseif ($stateData['step'] == 3) {
                        // ���������� ��������
                        $oVkExportParam->set('AUTO_EXPORT_STOP', 'N');
                        // ������ ��������
                        $stateData['complete'] = \true;
                        $stateData['steps'][5]['percent'] = 100;
                        $stateData['step']++;
                        $oJsonResponse->setResponseField('state', $stateData);
                    }
                } catch (\VKapi\Market\Exception\BaseException $e) {
                    $e->setCustomDataField('state', $stateData);
                    $oJsonResponse->setException($e);
                }
                // ������� ��������
                $oState->set($stateData)->save();
                break;
            default:
                throw new \VKapi\Market\Exception\BaseException($oMessage->get('AJAX_ERROR_UNKNOWN_METHOD'), 'AJAX_ERROR_UNKNOWN_METHOD');
        }
    } catch (\Throwable $ex) {
        $oJsonResponse->setException($ex);
    }
    $oJsonResponse->output();
}
$tab = new \CAdminTabControl('edit', [['DIV' => 'edit', 'TAB' => $oMessage->get('TAB.MAIN'), 'ICON' => '', 'TITLE' => '']]);
$APPLICATION->SetTitle($oMessage->get('PAGE_TITLE'));
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_after.php";
\VKapi\Market\Manager::getInstance()->showAdminPageCssJs();
\VKapi\Market\Manager::getInstance()->showAdminPageMessages();
?>

    <form action="<?php 
echo $APPLICATION->GetCurPage();
?>" method="POST" name="vkapi-market-order-import__form">
        <?php 
echo \bitrix_sessid_post();
?>

        <?php 
$tab->Begin();
?>
        <?php 
$tab->BeginNextTab();
?>

        <tr>
            <td colspan="2">
                <?php 
// ����� ����� �������� �����
$oOrderImport->showImportByHand();
?>
            </td>
        </tr>

        <?php 
$tab->EndTab();
?>
        <?php 
$tab->End();
?>
    </form>


<?php 
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_admin.php";

Youez - 2016 - github.com/yon3zu
LinuXploit