public function Authorize($service_id) { if($service_id === 'Bitrix24OAuth') { return CSocServBitrixOAuth::gadgetAuthorize(); } if(isset(self::$arAuthServices[$service_id])) { $service = self::$arAuthServices[$service_id]; if($service["__active"] === true && $service["DISABLED"] !== true) { $cl = new $service["CLASS"]; if(is_callable(array($cl, "Authorize"))) return call_user_func_array(array($cl, "Authorize"), array()); } } return false; }
public function Authorize($service_id, $arParams = array()) { if ($service_id === 'Bitrix24OAuth') { CSocServBitrixOAuth::gadgetAuthorize(); } if (isset(self::$arAuthServices[$service_id])) { $service = self::$arAuthServices[$service_id]; if ($service["__active"] === true && $service["DISABLED"] !== true || $service_id == CSocServBitrix24Net::ID && defined('ADMIN_SECTION') && ADMIN_SECTION == true) { $cl = new $service["CLASS"](); if (is_callable(array($cl, "Authorize"))) { return call_user_func_array(array($cl, "Authorize"), array($arParams)); } } } return false; }
if ($clientId == '' || $clientSecret == '' || $portalURI == '') { exit; } $needAuthorize = false; $accessToken = ''; $redirectURI = CSocServUtil::ServerName() . '/bitrix/tools/oauth/bitrix24.php'; $savedPortalURI = CUserOptions::GetOption('socialservices', 'bitrix24_task_planer_gadget_portal', '', $userId); $requestCode = CUserOptions::GetOption('socialservices', 'bitrix24_task_planer_gadget_code', '', $userId); if ($savedPortalURI !== $portalURI || $savedPortalURI == '') { $needAuthorize = true; CUserOptions::SetOption('socialservices', 'bitrix24_task_planer_gadget_portal', $portalURI, false, $userId); } if (!preg_match('|^http[s]?|', $portalURI)) { $portalURI = 'https://' . $portalURI; } $objBitrixOAuth = new CSocServBitrixOAuth($clientId, $clientSecret, $portalURI, $redirectURI, $userId); $objBitrixOAuth->addScope(array('task', 'calendar')); $arTasks = $arEvents = array(); if ($requestCode != '') { $accessToken = $objBitrixOAuth->getAccessToken($requestCode); CUserOptions::SetOption('socialservices', 'bitrix24_task_planer_gadget_code', '', false, $userId); } else { $accessToken = $objBitrixOAuth->getStorageToken(); } if ($accessToken != '' && $domain != '' && !$needAuthorize) { $obApp = new CBitrixPHPAppTransport($accessToken, $portalURI); $arPlannerTasks = array(array('task.planner.getlist', array()), array('task.items.getlist', array('ORDER' => array("ID" => 'desc'), 'FILTER' => array('ID' => '$result[0]')))); $arTasksBatch = $obApp->batch($arPlannerTasks); if (is_array($arTasksBatch) && isset($arTasksBatch["result"])) { $arTasks = $arTasksBatch["result"]; }
if ($clientId == '' || $clientSecret == '' || $portalURI == '') { exit; } $needAuthorize = false; $accessToken = ''; $redirectURI = CSocServUtil::ServerName() . '/bitrix/tools/oauth/bitrix24.php'; $savedPortalURI = CUserOptions::GetOption('socialservices', 'bitrix24_task_planer_gadget_portal', ''); $requestCode = CUserOptions::GetOption('socialservices', 'bitrix24_task_planer_gadget_code', ''); if ($savedPortalURI !== $portalURI || $savedPortalURI == '') { $needAuthorize = true; CUserOptions::SetOption('socialservices', 'bitrix24_task_planer_gadget_portal', $portalURI, false); } if (!preg_match('|^http[s]?|', $portalURI)) { $portalURI = 'https://' . $portalURI; } $objBitrixOAuth = new CSocServBitrixOAuth($clientId, $clientSecret, $portalURI, $redirectURI, $USER->GetID()); $objBitrixOAuth->addScope(array('task', 'calendar')); $arTasks = $arEvents = array(); if ($requestCode != '') { $accessToken = $objBitrixOAuth->getAccessToken($requestCode); $objBitrixOAuth->getEntityOAuth()->saveDataDB(); CUserOptions::SetOption('socialservices', 'bitrix24_task_planer_gadget_code', '', false); } else { $accessToken = $objBitrixOAuth->getStorageToken(); } if ($accessToken != '' && $domain != '' && !$needAuthorize) { $obApp = new CBitrixPHPAppTransport($accessToken, $portalURI); $arPlannerTasks = array(array('task.planner.getlist', array()), array('task.items.getlist', array('ORDER' => array("ID" => 'desc'), 'FILTER' => array('ID' => '$result[0]')))); $arTasksBatch = $obApp->batch($arPlannerTasks); if (is_array($arTasksBatch) && isset($arTasksBatch["result"])) { $arTasks = $arTasksBatch["result"];