'catalog')); } if( !AccessController::getCurrent()->check(ActionDictionary::ACTION_CATALOG_READ) && !AccessController::getCurrent()->check(ActionDictionary::ACTION_CATALOG_VIEW) ) { $error = true; $errorMessage = Loc::getMessage('CSD_ACCESS_DENIED'); } if(!check_bitrix_sessid()) { $error = true; $errorMessage = Loc::getMessage('CSD_INCORRECT_SESSION'); } if($error) { echo Bitrix\Main\Web\Json::encode(array('error' => true, 'message' => $errorMessage)); require($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/epilog_admin_after.php'); die(); } $request = Main\Context::getCurrent()->getRequest(); $totalCount = 0; $activeCount = 0; if ($request->getRequestMethod() == 'POST' && $request['getSubscriptionData'] == 'Y') { try { $totalCount = Catalog\SubscribeTable::getList(array( 'select' => array('CNT'), 'filter' => array('=ITEM_ID' => intval($request['itemId'])), 'runtime' => array(new Bitrix\Main\Entity\ExpressionField('CNT', 'COUNT(*)')) ))->fetch(); $totalCount = $totalCount['CNT']; global $DB; $activeCount = Catalog\SubscribeTable::getList(array( 'select' => array('CNT'), 'filter' => array( '=ITEM_ID' => intval($request['itemId']), array( 'LOGIC' => 'OR', array('=DATE_TO' => false), array('>DATE_TO' => date($DB->dateFormatToPHP(CLang::getDateFormat('FULL')), time())) ) ), 'runtime' => array(new Bitrix\Main\Entity\ExpressionField('CNT', 'COUNT(*)')) ))->fetch(); $activeCount = $activeCount['CNT']; echo Bitrix\Main\Web\Json::encode( array('success' => true, 'data' => array('totalCount' => $totalCount, 'activeCount' => $activeCount))); require($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/epilog_admin_after.php'); die(); } catch(Main\SystemException $exception) { echo Bitrix\Main\Web\Json::encode(array('error' => true, 'message' => $exception->getMessage())); require($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/epilog_admin_after.php'); die(); } } ?>