Your IP : 18.191.26.86


Current Path : /var/www/admin_ftp_12/data/www/httpdocs/bitrix/modules/seo/lib/update/
Upload File :
Current File : /var/www/admin_ftp_12/data/www/httpdocs/bitrix/modules/seo/lib/update/yandexdirectcampaign.php

<?php

namespace Bitrix\Seo\Update;

use Bitrix\Main\Loader;
use Bitrix\Seo\Engine\YandexDirect;
use Bitrix\Seo\Engine\YandexDirectException;
use Bitrix\Seo\Service;

class YandexDirectCampaign
{
	/**
	 * Agent for updating settings field in Yandex direct campaign table. Just once
	 *
	 * @return void
	 * @throws \Bitrix\Main\LoaderException
	 */
	public static function updateSettingsAgent()
	{
		if (Loader::includeModule('seo') && Loader::includeModule('socialservices'))
		{
			$engine = new YandexDirect();
			if (!Service::isRegistered())
			{
				return;
			}
			
			$authInfo = Service::getAuth($engine->getCode());
			if (!is_array($authInfo) || empty($authInfo) || $authInfo['expires_in'] <= time())
			{
				return;
			}
			
			try
			{
				self::clearData();
				$engine->updateCampaignManual();
			}
			catch (YandexDirectException $e)
			{
			}
		}
	}
	
	protected static function clearData()
	{
		global $DB;
		$DB->Query("TRUNCATE TABLE b_seo_adv_campaign");
		$DB->Query("TRUNCATE TABLE b_seo_adv_banner");
		$DB->Query("TRUNCATE TABLE b_seo_adv_group");
	}
}