Exemplo n.º 1
0
 set_time_limit(300);
 if ($_REQUEST['full']) {
     CIntranetSharepoint::ClearSyncData($arParams['IBLOCK_ID']);
 }
 if (!$_REQUEST['sync_action']) {
     if (!($arResult['RESULT'] = CIntranetSharepoint::RequestItemsNext($arParams['IBLOCK_ID'], array('SYNC_NUM_ROWS' => BX_INTRANET_SP_NUM_ROWS_MANUAL)))) {
         if ($ex = $APPLICATION->GetException()) {
             $arResult['ERROR'] = $ex->GetString();
         } else {
             $arResult['ERROR'] = 'STRANGE ERROR OCCURED!';
         }
     } else {
         if ($arResult['RESULT']['COUNT'] > 0) {
             $arQueue = array();
             foreach ($arResult['RESULT']['DATA'] as $arRow) {
                 if (!CIntranetSharepoint::Sync($arResult['RESULT']['SERVICE'], $arRow, $arQueue)) {
                     if ($ex = $APPLICATION->GetException()) {
                         $arResult['ERROR'] = $ex->GetString();
                     }
                 }
             }
             $arResult['QUEUE'] = false;
             if (count($arQueue) > 0) {
                 foreach ($arQueue as $item) {
                     $item['IBLOCK_ID'] = $arResult['RESULT']['SERVICE']['IBLOCK_ID'];
                     if (CIntranetSharepointQueue::Add($item)) {
                         $arResult['QUEUE'] = true;
                     }
                 }
             }
         }