GetGroupRight("sale") < "W") $APPLICATION->AuthForm(Loc::getMessage("SALE_ACCESS_DENIED")); if ($_SERVER["REQUEST_METHOD"] == "POST" && !check_bitrix_sessid()) $APPLICATION->AuthForm(Loc::getMessage("SALE_ACCESS_DENIED")); if (!\Bitrix\Main\Loader::includeModule('sale')) $arResult["ERROR"] = Loc::getMessage("SALE_MODULE_NOT_INSTALLED"); $ebay = \Bitrix\Sale\TradingPlatform\Ebay\Ebay::getInstance(); if(!$ebay->isActive()) LocalRedirect("/bitrix/admin/sale_ebay_general.php?lang=" . LANGUAGE_ID . "&back_url=".urlencode($APPLICATION->GetCurPageParam())); $errorMsg = ""; $bSaved = false; $siteList = array(); $defaultSite = ""; $rsSites = CSite::GetList("sort", "asc", Array("ACTIVE"=> "Y")); while($arRes = $rsSites->Fetch()) { $siteList[$arRes['ID']] = $arRes['NAME']; if($arRes["DEF"] == "Y") $defaultSite = $arRes['ID']; } if(isset($_POST["SITE_ID"]) && array_key_exists($_POST["SITE_ID"], $siteList)) $SITE_ID = $_POST["SITE_ID"]; else $SITE_ID = $defaultSite; $settings = $ebay->getSettings(); if(isset($_POST["EBAY_SETTINGS"]) && is_array($_POST["EBAY_SETTINGS"])) { $site = !empty($_POST["SITE_ID_INITIAL"]) && $SITE_ID == $_POST["SITE_ID_INITIAL"] ? $SITE_ID : $_POST["SITE_ID_INITIAL"]; $_POST["EBAY_SETTINGS"]["FEEDS"] = \Bitrix\Sale\TradingPlatform\Ebay\Agent::update($site, $_POST["EBAY_SETTINGS"]["FEEDS"]); if(is_array($settings[$site])) { $settings[$site] = array_merge($settings[$site], $_POST["EBAY_SETTINGS"]); $bSaved = $ebay->saveSettings($settings); } else { $errorMsg .= Loc::getMessage( 'SALE_EBAY_SETTINGS_SAVING_SITE_ERROR', array( '#A1#' => '', '#A2#' => '', '#S#' => $siteList[$site] ) ); } } $siteSettings = $settings[$SITE_ID]; unset ($settings); $ebayCategoriesCount = 0; $ebayCategoriesUpdateDate = ""; $res = \Bitrix\Sale\TradingPlatform\Ebay\CategoryTable::getList(array( "select" => array("CNT", "LAST_UPDATE"), "runtime" => array( new \Bitrix\Main\Entity\ExpressionField('CNT', 'COUNT(1)'), new \Bitrix\Main\Entity\ExpressionField('LAST_UPDATE', 'MAX(LAST_UPDATE)') ) )); if($cat = $res->fetch()) { if(!empty($cat["CNT"])) $ebayCategoriesCount = $cat["CNT"]; if(!empty($cat["LAST_UPDATE"])) $ebayCategoriesUpdateDate = $cat["LAST_UPDATE"]->toString(); } $ebayCategoriesVars = 0; $res = \Bitrix\Sale\TradingPlatform\Ebay\CategoryVariationTable::getList(array( "select" => array("CNT"), "runtime" => array( new \Bitrix\Main\Entity\ExpressionField('CNT', 'COUNT(1)'), ) )); if($var = $res->fetch()) $ebayCategoriesVars = $var["CNT"]; $defaultFeedIntervals = \Bitrix\Sale\TradingPlatform\Helper::getDefaultFeedIntervals(); $res = \Bitrix\Sale\TradingPlatform\Ebay\Feed\ResultsTable::getList(array( "select" => array("FEED_TYPE", "MAX_UPLOAD_TIME"), "group" => array("FEED_TYPE"), "runtime" => array( new \Bitrix\Main\Entity\ExpressionField('MAX_UPLOAD_TIME', 'MAX(UPLOAD_TIME)'), ) )); $results = array(); while($lastUpdates = $res->fetch()) $results[$lastUpdates["FEED_TYPE"]] = $lastUpdates["MAX_UPLOAD_TIME"]; $filter = array("LOGIC" => "OR"); foreach($results as $feedType => $uploadTime) { $filter[] = array( "FEED_TYPE" => $feedType, "UPLOAD_TIME" => $uploadTime ); } $res = \Bitrix\Sale\TradingPlatform\Ebay\Feed\ResultsTable::getList(array( 'filter' => $filter )); $results = array(); while($lastUpdates = $res->fetch()) $results[$lastUpdates["FEED_TYPE"]] = $lastUpdates; $arTabs = array( array( "DIV" => "ebay_exchange", "TAB" => Loc::getMessage("SALE_EBAY_TAB_EXCHANGE"), "TITLE" => Loc::getMessage("SALE_EBAY_TAB_EXCHANGE_DESCR") ), array( "DIV" => "ebay_meta", "TAB" => Loc::getMessage("SALE_EBAY_TAB_META"), "TITLE" => Loc::getMessage("SALE_EBAY_TAB_META_DESCR") ) ); $tabControl = new CAdminTabControl("tabControl", $arTabs); $policy = null; $APPLICATION->SetTitle(Loc::getMessage("SALE_EBAY_TITLE")); \Bitrix\Main\Page\Asset::getInstance()->addJs("/bitrix/js/sale/ebay_admin.js", true); require_once ($_SERVER['DOCUMENT_ROOT'].BX_ROOT."/modules/main/include/prolog_admin_after.php"); if($errorMsg <> '') CAdminMessage::ShowMessage(array("MESSAGE"=>$errorMsg, "TYPE"=>"ERROR", "HTML" => true)); if($bSaved) CAdminMessage::ShowMessage(array("MESSAGE"=>GetMessage("SALE_EBAY_SETTINGS_SAVED"), "TYPE"=>"OK")); ?>