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; }
$arManagers = array($USER->GetID()); } $arCurrentUserManagers = array(); $user_url = COption::GetOptionString('intranet', 'path_user', '/company/personal/user/#USER_ID#/', $_REQUEST['site_id']); foreach ($arManagers as $managerId) { $dbManager = CUser::GetByID($managerId); if ($manager = $dbManager->Fetch()) { $manager['PHOTO'] = $manager['PERSONAL_PHOTO'] > 0 ? CIntranetUtils::InitImage($manager['PERSONAL_PHOTO'], 32, 0, BX_RESIZE_IMAGE_EXACT) : array(); $arCurrentUserManagers[] = array('ID' => $manager['ID'], 'LOGIN' => $manager['LOGIN'], 'NAME' => CUser::FormatName(CSite::GetNameFormat(false), $manager, true, false), 'URL' => str_replace(array('#ID#', '#USER_ID#'), $manager['ID'], $user_url), 'WORK_POSITION' => $manager['WORK_POSITION'], 'PHOTO' => $manager['PHOTO']['CACHE']['src']); } } $arInfo = CTimeMan::GetRuntimeInfo(true); $arInfo['DATE_TEXT'] = FormatDate('j F Y', $arInfo['INFO']['DATE_START']); $arInfo['INFO']['TIME_OFFSET'] = CTimeManUser::getDayStartOffset($arInfo['INFO'], true); if ($arInfo['PLANNER']) { $arPlannerInfo = CIntranetPlanner::callAction('timeman_close', $_REQUEST['site_id']); // TODO: migrate this to calendar module ASAP if (is_array($arInfo['PLANNER']['DATA']['EVENTS'])) { foreach ($arInfo['PLANNER']['DATA']['EVENTS'] as $key => $arEvent) { if ($arEvent['STATUS'] && $arEvent['STATUS'] != 'Y') { unset($arInfo['PLANNER']['DATA']['EVENTS'][$key]); } } $arInfo['PLANNER']['DATA']['EVENTS'] = array_values($arInfo['PLANNER']['DATA']['EVENTS']); } // \TODO $arInfo['PLANNER']['DATA'] = array_merge($arInfo['PLANNER']['DATA'], $arPlannerInfo); $arInfo = array_merge($arInfo, $arInfo['PLANNER']['DATA']); unset($arInfo['PLANNER']); } $arUserSettings = $TMUSER->GetSettings();
<?php if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) { die; } if (CBXFeatures::IsFeatureEnabled('timeman') && CModule::IncludeModule('timeman') && CTimeMan::CanUse()) { if (abs(CTimeZone::GetOffset()) > BX_TIMEMAN_WRONG_DATE_CHECK) { $arResult['ERROR'] = 'WRONG_DATE'; $this->IncludeComponentTemplate('error'); return true; } $arResult['TASKS_ENABLED'] = CBXFeatures::IsFeatureEnabled('Tasks') && CModule::IncludeModule('tasks'); $arResult['START_INFO'] = CTimeMan::GetRuntimeInfo(false); $obReportUser = new CUserReportFull(); $arResult['WORK_REPORT'] = $obReportUser->GetReportData(); //echo '<pre>'; print_r($arResult['WORK_REPORT']); echo '</pre>'; CIntranetPlanner::initScripts($arResult['START_INFO']['PLANNER']); $arResult['START_INFO']['PLANNER'] = $arResult['START_INFO']['PLANNER']['DATA']; CJSCore::Init(array('timeman')); $this->IncludeComponentTemplate(); return true; } else { return false; }
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";