public function executeComponent() { if (CModule::IncludeModule('intranet')) { $arData = CIntranetPlanner::getData(); CIntranetPlanner::initScripts($arData); $this->arResult['DATA'] = $arData['DATA']; $this->includeComponentTemplate(); } }
public static function GetRuntimeInfo($bFull = false) { global $USER; $TMUSER = CTimeManUser::instance(); $STATE = $TMUSER->State(); $info = array('ID' => '', 'STATE' => $STATE, 'CAN_EDIT' => 'N'); if ($STATE == 'CLOSED') { $info['CAN_OPEN'] = $TMUSER->OpenAction(); } elseif ($STATE == 'EXPIRED') { $info['EXPIRED_DATE'] = $TMUSER->GetExpiredRecommendedDate(); } $arSettings = $TMUSER->GetSettings(); $info['REPORT_REQ'] = $arSettings['UF_TM_REPORT_REQ']; $info['TM_FREE'] = $arSettings['UF_TM_FREE']; if ($arInfo = $TMUSER->GetCurrentInfo()) { $info['ID'] = $arInfo['ID']; $info['CAN_EDIT'] = COption::GetOptionString('timeman', 'workday_can_edit_current', 'Y') === 'Y' ? 'Y' : 'N'; $info['INFO'] = array('DATE_START' => MakeTimeStamp($arInfo['DATE_START']) - CTimeZone::GetOffset(), 'DATE_FINISH' => $arInfo['DATE_FINISH'] ? MakeTimeStamp($arInfo['DATE_FINISH']) - CTimeZone::GetOffset() : '', 'TIME_START' => $arInfo['TIME_START'], 'TIME_FINISH' => $arInfo['TIME_FINISH'], 'DURATION' => $arInfo['DURATION'], 'TIME_LEAKS' => $arInfo['TIME_LEAKS'], 'ACTIVE' => $arInfo['ACTIVE'] == 'Y', 'PAUSED' => $arInfo['PAUSED'] == 'Y'); if ($arInfo['LAST_PAUSE']) { $info['LAST_PAUSE'] = $arInfo['LAST_PAUSE']; } elseif ($arInfo['PAUSED'] == 'Y') { $info['LAST_PAUSE'] = array('DATE_START' => $info['INFO']['DATE_FINISH']); } $info['SOCSERV_ENABLED'] = IsModuleInstalled('socialservices') && COption::GetOptionString("socialservices", "allow_send_user_activity", "Y") == 'Y'; if ($bFull && $info['SOCSERV_ENABLED']) { $info['SOCSERV_ENABLED_USER'] = $TMUSER->isSocservEnabledByUser(); } } $info['PLANNER'] = CIntranetPlanner::getData(SITE_ID, $bFull); $info['OPEN_NOW'] = $STATE == 'EXPIRED' || $STATE == 'CLOSED' && (!$_SESSION['TM_FORCED_OPEN'] || CTimeMan::RemoveHoursTS($_SESSION['TM_FORCED_OPEN']) != CTimeMan::RemoveHoursTS(time())); if ($info['OPEN_NOW']) { $_SESSION['TM_FORCED_OPEN'] = time(); } $info["FULL"] = $bFull; return $info; }
function OnAfterTMReportDailyAdd() { if(COption::GetOptionString("socialservices", "allow_send_user_activity", "Y") != 'Y') return; global $USER; $arIntranetData = $arResult = $arData = array(); $eventCounter = $taskCounter = 0; if(CModule::IncludeModule('intranet')) { $arIntranetData = CIntranetPlanner::getData(SITE_ID, true); } if(isset($arIntranetData['DATA'])) { $arData = $arIntranetData['DATA']; } if(isset($arData['EVENTS']) && is_array($arData['EVENTS'])) { $eventCounter = count($arData['EVENTS']); } if(isset($arData['TASKS']) && is_array($arData['TASKS'])) { $taskCounter = count($arData['TASKS']); } $arResult['USER_ID'] = intval($USER->GetID()); if($arResult['USER_ID'] > 0) { $enabledSendMessage = CUserOptions::GetOption("socialservices", "user_socserv_enable", "N", $arResult['USER_ID']); if($enabledSendMessage == 'Y') { $enabledEndDaySend = CUserOptions::GetOption("socialservices", "user_socserv_end_day", "N", $arResult['USER_ID']); if($enabledEndDaySend == 'Y') { $arResult['MESSAGE'] = str_replace('#event#', $eventCounter, str_replace('#task#', $taskCounter, CUserOptions::GetOption("socialservices", "user_socserv_end_text", GetMessage("JS_CORE_SS_WORKDAY_START"), $arResult['USER_ID']))); $arSocServUser['SOCSERVARRAY'] = unserialize(CUserOptions::GetOption("socialservices", "user_socserv_array", "a:0:{}", $arResult['USER_ID'])); if(is_array($arSocServUser['SOCSERVARRAY']) && count($arSocServUser['SOCSERVARRAY']) > 0) { foreach($arSocServUser['SOCSERVARRAY'] as $id => $providerName) { $arResult['SOCSERV_USER_ID'] = $id; $arResult['PROVIDER'] = $providerName; CSocServMessage::Add($arResult); } } } } } }
<?php define("NOT_CHECK_FILE_PERMISSIONS", true); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php"; if (check_bitrix_sessid() && $USER->IsAuthorized()) { CModule::IncludeModule('intranet'); CUtil::JSPostUnescape(); $action = isset($_REQUEST['action']) ? $_REQUEST['action'] : 'update'; $site_id = $_REQUEST['site_id']; $res = array(); if ($action !== 'update') { $res = CIntranetPlanner::callAction($action, $site_id); } $arData = CIntranetPlanner::getData($site_id, true); if (is_array($res) && is_array($arData['DATA'])) { $arData['DATA'] = array_merge($res, $arData['DATA']); } $arData['DATA']['FULL'] = true; Header('Content-Type: application/json; charset=' . LANG_CHARSET); echo CUtil::PhpToJsObject($arData['DATA']); } else { echo GetMessage('main_include_decode_pass_sess'); } require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_after.php";