CanDoOperation('seo_tools')) { $APPLICATION->AuthForm(Loc::getMessage("ACCESS_DENIED")); } if(!Main\Loader::includeModule('seo')) { require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); ShowError(Loc::getMessage("SEO_ERROR_NO_MODULE")); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_admin.php"); } if(!Main\Loader::includeModule('socialservices')) { require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); ShowError(Loc::getMessage("SEO_ERROR_NO_MODULE_SOCSERV")); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_admin.php"); } $strError = ""; $engine = new Engine\Yandex(); if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_REQUEST['CODE']) && check_bitrix_sessid()) { try { $engine->getAuth($_REQUEST['CODE']); LocalRedirect($APPLICATION->GetCurPageParam('oauth=yes', array('CODE', 'oauth'))); } catch (Exception $e) { $strError = Loc::getMessage('SEO_ERROR_GET_ACCESS', array("#ERROR_TEXT#" => $e->getMessage())); } } $sTableID = "tbl_seo_domains"; $oSort = new CAdminSorting($sTableID, "SORT", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->AddHeaders(array( array("id"=>"DOMAIN", "content"=>Loc::getMessage('SEO_DOMAIN'), "sort"=>"DOMAIN", "default"=>true), array("id"=>"SITE", "content"=>Loc::getMessage("SEO_SITE"), "default"=>true), array("id"=>"SITE_ACTIVE","content"=>Loc::getMessage('SEO_SITE_ACTIVE'), "sort"=>"active", "default"=>true), array("id"=>"BINDED", "content"=>Loc::getMessage("SEO_BINDED"), "default"=>true), array("id"=>"VERIFIED", "content"=>Loc::getMessage("SEO_VERIFIED"), "default"=>true), )); $bNeedAuth = !$engine->getAuthSettings(); try { $currentUser = $engine->getCurrentUser(); } catch(Exception $e) { $currentUser = null; $bNeedAuth = true; } $dbSites = new Bitrix\Main\DB\ArrayResult(\CSeoUtils::getDomainsList()); $rsData = new CAdminResult($dbSites, $sTableID); while($arSite = $dbSites->fetch(Converter::getHtmlConverter())) { $arSite['DOMAIN'] = ToLower($arSite['DOMAIN']); $row =& $lAdmin->AddRow($arSite['DOMAIN'], $arSite); $siteDomainEnc = Converter::getHtmlConverter()->encode($arSite['DOMAIN']); $e = []; $siteDomainEncView = Converter::getHtmlConverter()->encode(\CBXPunycode::ToUnicode($arSite['DOMAIN'], $e)); $siteDirEnc = Converter::getHtmlConverter()->encode($arSite['SITE_DIR']); $row->AddViewField("DOMAIN", ''.$siteDomainEncView.$siteDirEnc.''); $row->AddViewField("SITE", '['.$arSite['LID'].'] '.$arSite['SITE_NAME']); $row->AddCheckField("SITE_ACTIVE", false); $row->AddViewField("BINDED", ''.($bNeedAuth ? Loc::getMessage('SEO_NEED_AUTH') : Loc::getMessage('SEO_LOADING')).''); $row->AddViewField("VERIFIED", ''.($bNeedAuth ? Loc::getMessage('SEO_NEED_AUTH') : Loc::getMessage('SEO_LOADING')).''); if(!$bNeedAuth) { $arActions = Array(); $arActions[] = array("ICON"=>"edit", "TEXT"=>Loc::getMessage('SEO_DETAIL'), "ACTION" => "getSiteInfo('".urlencode($arSite['DOMAIN'])."')", "DEFAULT"=>true); $row->AddActions($arActions); } } $lAdmin->CheckListMode(); $APPLICATION->SetTitle(Loc::getMessage("SEO_YANDEX_TITLE")); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); if($strError != '') { CAdminMessage::ShowMessage($strError); } ?>