Example #1
0
	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;
	}
Example #2
0
 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;
 }
Example #3
0
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"];
    }
Example #4
0
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"];