$arResult['MEETING']['USERS_EVENT'] = array(); $arGuests = CMeeting::GetEventGuests($arResult['MEETING']['EVENT_ID'], $USER->GetID()); foreach ($arGuests as $guest) { $arResult['MEETING']['USERS_EVENT'][$guest['id']] = $guest['status']; } } $arResult['CAN_EDIT'] = $arParams['COPY'] || $arResult['MEETING']['CURRENT_RIGHTS'] == CMeeting::ROLE_OWNER || $arResult['MEETING']['CURRENT_RIGHTS'] == CMeeting::ROLE_KEEPER; $arResult['MEETING']['AGENDA'] = array(); if (!$arParams['COPY']) { $dbRes = CMeeting::GetItems($arParams['MEETING_ID']); while ($arRes = $dbRes->GetNext()) { // if ($arParams['COPY'] && $arRes['INSTANCE_TYPE'] == CMeetingInstance::TYPE_AGENDA) // continue; $arRes['RESPONSIBLE'] = CMeetingInstance::GetResponsible($arRes['ID']); $arRes['REPORTS'] = array(); $dbReports = CMeetingReports::GetList(array('ID' => 'ASC'), array('INSTANCE_ID' => $arRes['ID'])); while ($arReport = $dbReports->Fetch()) { $arFiles = array(); $dbFiles = CMeetingReports::GetFiles($arReport['ID']); while ($arFile = $dbFiles->Fetch()) { $arFiles[$arFile['FILE_ID']] = $arFile; } $arRes['REPORTS'][] = array('ID' => $arReport['ID'], 'REPORT' => $arReport['REPORT'], 'USER_ID' => $arReport['USER_ID'], 'FILES' => CMeeting::GetFilesData($arFiles, array("REPORT" => $arReport['ID']))); } $arRes['FILES'] = array(); if ($arRes['ITEM_ID'] > 0) { $dbFiles = CMeetingItem::GetFiles($arRes['ITEM_ID']); while ($arFile = $dbFiles->Fetch()) { $arRes['FILES'][$arFile['FILE_ID']] = $arFile['FILE_SRC']; } if (count($arRes['FILES']) > 0) {
if ($arMeeting['ACCESS']) { $bHasAccess = true; if ($arMeeting['ACCESS'] == CMeeting::ROLE_OWNER || $arMeeting['ACCESS'] == CMeeting::ROLE_KEEPER) { $arResult['CAN_EDIT'] = true; } } $arUserIDs[] = $arMeeting['OWNER_ID']; $arInstance['MEETING'] = $arMeeting; } $arInstance['RESPONSIBLE'] = CMeetingInstance::GetResponsible($arInstance['ID']); $arUserIDs = array_merge($arUserIDs, $arInstance['RESPONSIBLE']); $arInstance['B_RESPONSIBLE'] = in_array($USER->GetID(), $arInstance['RESPONSIBLE']); $arInstance['B_EDIT'] = $arInstance['B_RESPONSIBLE'] && $arMeeting['CURRENT_STATE'] != CMeeting::STATE_CLOSED; $arInstance['REPORTS'] = array(); $arReportsMap = array(); $dbReports = CMeetingReports::GetList(array(), array('INSTANCE_ID' => $arInstance['ID'])); while ($arRep = $dbReports->Fetch()) { $arReportsMap[$arRep['ID']] = true; $arRep['FILES'] = array(); $dbFiles = CMeetingReports::GetFiles($arRep['ID']); while ($arFile = $dbFiles->Fetch()) { $arRep['FILES'][$arFile['FILE_ID']] = array('FILE_ID' => $arFile['FILE_ID'], 'FILE_SRC' => $arFile['FILE_SRC']); } if (!$arInstance['B_EDIT']) { $arRep['FILES'] = CMeeting::GetFilesData($arRep['FILES'], array('REPORT' => $arRep['ID'])); } $arInstance['REPORTS'][] = $arRep; } if ($_SERVER['REQUEST_METHOD'] == 'POST' && $_REQUEST['save'] && $_REQUEST['INSTANCE_ID'] == $arInstance['ID'] && in_array($USER->GetID(), $arInstance['RESPONSIBLE']) && check_bitrix_sessid()) { $APPLICATION->RestartBuffer(); $REPORT_ID = intval($_REQUEST['REPORT_ID']);
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php"; if (!$USER->IsAuthorized()) { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } if (!CModule::IncludeModule('meeting')) { return; } if (isset($_REQUEST['fileId'])) { $fileId = intval($_REQUEST['fileId']); $meetingId = intval($_REQUEST['meetingId']); $itemId = intval($_REQUEST['itemId']); $reportId = intval($_REQUEST['reportId']); $checkedFileId = 0; if ($fileId > 0) { if ($reportId > 0) { $dbRes = CMeetingReports::GetList(array('ID' => 'DESC'), array('ID' => $reportId), false, false, array('MEETING_ID')); if ($arReport = $dbRes->Fetch()) { if (CMeeting::GetUserRole($arReport['MEETING_ID'])) { $dbRes = CMeetingReports::GetFiles($reportId, $fileId); $arRes = $dbRes->Fetch(); if ($arRes) { $checkedFileId = $arRes['FILE_ID']; } } } } elseif ($itemId > 0) { $bHasAccess = false; $dbRes = CMeetingInstance::GetList(array('ID' => 'DESC'), array('ITEM_ID' => $itemId), false, false, array('MEETING_ID')); while ($arInstance = $dbRes->Fetch()) { if (CMeeting::GetUserRole($arInstance['MEETING_ID'])) { $bHasAccess = true;
public static function GetReports($ID) { return CMeetingReports::GetList(array(), array('INSTANCE_ID' => $ID)); }