} $taskDeadline = ''; // Skip invalid deadline if (isset($arFields['DEADLINE']) && MakeTimeStamp($arFields['DEADLINE']) > 0) { $taskDeadline = $arFields['DEADLINE']; } $responsibleId = $arFields['RESPONSIBLE'][0]; $arTaskFields = array('RESPONSIBLE_ID' => $responsibleId > 0 ? $responsibleId : $USER->GetID(), 'TITLE' => strlen($arFields['TITLE']) > 0 ? $arFields['TITLE'] : $arResult['MEETING']['AGENDA'][$key]['TITLE'], 'DEADLINE' => $taskDeadline, 'TAGS' => array(), 'STATUS' => array_key_exists($arFields['RESPONSIBLE'][0], $arEmplIDs) ? 2 : 1, 'SITE_ID' => SITE_ID); if ($arResult['MEETING']['OWNER_ID'] && $arResult['MEETING']['OWNER_ID'] != $USER->GetID()) { $arTaskFields['CREATED_BY'] = $arResult['MEETING']['OWNER_ID']; $arTaskFields['AUDITORS'] = array($USER->GetID()); } if ($_REQUEST['GROUP_ID'] > 0) { $arTaskFields['GROUP_ID'] = (int) $_REQUEST['GROUP_ID']; } elseif ($arParams['MEETING_ID'] > 0) { $rsTasks_rsMeetingData = CMeeting::GetList(array(), array('ID' => $arParams['MEETING_ID'])); if ($arTasks_arMeetingData = $rsTasks_rsMeetingData->Fetch()) { if ($arTasks_arMeetingData['GROUP_ID'] > 0) { $arTaskFields['GROUP_ID'] = (int) $arTasks_arMeetingData['GROUP_ID']; } } } $TASK_ID = $obt->Add($arTaskFields); } if ($TASK_ID > 0) { $arNewAgendaTasks[$key] = $TASK_ID; $arFields['TASK_ID'] = $TASK_ID; } } if ($bNew) { if (!$arFields['ITEM_ID']) {
if (isset($arFilterValues['OWNER_ID']) && intval($arFilterValues['OWNER_ID']) > 0) { $arResult['FILTER']['OWNER_ID'] = $arFilter['OWNER_ID'] = intval($arFilterValues['OWNER_ID']); } if (isset($arFilterValues['MEMBER_ID']) && intval($arFilterValues['MEMBER_ID']) > 0) { $arResult['FILTER']['MEMBER_ID'] = $arFilter['MEMBER_ID'] = intval($arFilterValues['MEMBER_ID']); } } $arResult['MEETING_ROOMS_LIST'] = array(); if ($arParams['RESERVE_MEETING_IBLOCK_ID'] || $arParams['RESERVE_VMEETING_IBLOCK_ID']) { $dbMeetingsList = CIBlockSection::GetList(array('IBLOCK_ID' => 'ASC', 'NAME' => 'ASC', 'ID' => 'DESC'), array('IBLOCK_ID' => array(intval($arParams['RESERVE_MEETING_IBLOCK_ID']), intval($arParams['RESERVE_VMEETING_IBLOCK_ID']))), false, array('ID', 'IBLOCK_ID', 'NAME', 'DESCRIPTION')); while ($arRoom = $dbMeetingsList->GetNext()) { $arResult['MEETING_ROOMS_LIST'][CMeeting::MakePlace($arRoom["IBLOCK_ID"], $arRoom["ID"])] = $arRoom; } } //echo '<pre>'; print_r($arFilter); echo '</pre>'; $dbRes = CMeeting::GetList(array("ID" => 'DESC'), $arFilter, false, $arNavParams, array('ID', 'TITLE', 'CURRENT_STATE', 'DATE_START', 'OWNER_ID', 'PLACE')); $arResult["NAV_STRING"] = $dbRes->GetPageNavStringEx($navComponentObject = null, $arParams["PAGER_TITLE"]); while ($arRes = $dbRes->GetNext()) { $arRes['URL'] = str_replace('#MEETING_ID#', $arRes['ID'], $arParams['MEETING_URL']); $arRes['URL_EDIT'] = str_replace('#MEETING_ID#', $arRes['ID'], $arParams['MEETING_EDIT_URL']); $arRes['URL_COPY'] = str_replace('#MEETING_ID#', $arRes['ID'], $arParams['MEETING_COPY_URL']); $arRes['USERS'] = CMeeting::GetUsers($arRes['ID']); foreach ($arRes['USERS'] as $u => $r) { if ($r == CMeeting::ROLE_OWNER) { $arRes['OWNER_ID'] = $u; } } $arUserIDs = array_merge($arUserIDs, array_keys($arRes['USERS'])); if (strlen($arRes['PLACE']) > 0 && array_key_exists($arRes['PLACE'], $arResult['MEETING_ROOMS_LIST'])) { $arRes['PLACE'] = $arResult['MEETING_ROOMS_LIST'][$arRes['PLACE']]['NAME']; }
} if (!CModule::IncludeModule("meeting")) { return ShowError(GetMessage("ME_MODULE_NOT_INSTALLED")); } $dbRes = CMeetingItem::GetList(array(), array('ID' => $arParams['ITEM_ID'])); if (!($arResult['ITEM'] = $dbRes->Fetch())) { return ShowError(GetMessage("ME_MEETING_ITEM_NOT_FOUND")); } $arResult['FROM_MEETING'] = intval($_REQUEST['from']); $bHasAccess = false; $arResult['ITEM']['INSTANCES'] = array(); $arResult['CAN_EDIT'] = false; $arUserIDs = array(); $dbRes = CMeetingInstance::GetList(array('ID' => 'DESC'), array('ITEM_ID' => $arParams['ITEM_ID'])); while ($arInstance = $dbRes->Fetch()) { $dbMeeting = CMeeting::GetList(array(), array('ID' => $arInstance['MEETING_ID']), false, false, array('*')); if ($arMeeting = $dbMeeting->Fetch()) { $arMeeting['ACCESS'] = CMeeting::GetUserRole($arInstance['MEETING_ID']); 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;
public static function GetByID($ID) { return CMeeting::GetList(array(), array('ID' => intval($ID))); }
function InstallService($serviceID, $serviceStage) { $wizard =& $this->GetWizard(); if (CModule::IncludeModule("iblock")) { $type = substr($serviceID, 0, -1); if ($type == "iblockElement") { $dbItem = CIBlockElement::GetList(array(), array("=IBLOCK_CODE" => $serviceStage), false, false, array("ID")); while ($arItem = $dbItem->Fetch()) { CIBlockElement::Delete($arItem["ID"]); } } elseif ($type == "iblockSectionElement") { $dbItem = CIBlockElement::GetList(array(), array("=IBLOCK_CODE" => $serviceStage), false, false, array("ID")); while ($arItem = $dbItem->Fetch()) { CIBlockElement::Delete($arItem["ID"]); } $dbItem = CIBlockSection::GetList(array(), array("=IBLOCK_CODE" => $serviceStage), false, array("ID")); while ($arItem = $dbItem->Fetch()) { CIBlockSection::Delete($arItem["ID"]); } } elseif ($serviceID == "iblockDepartmentsElement") { $dbItem = CIBlockSection::GetList(array(), array("=IBLOCK_CODE" => "departments")); while ($arItem = $dbItem->Fetch()) { if ($arItem["DEPTH_LEVEL"] > 2) { CIBlockSection::Delete($arItem["ID"]); } } } elseif ($serviceID == "tasks") { if (CModule::IncludeModule("tasks")) { $dbItem = CTasks::GetList(array(), array("SITE_ID" => $wizard->GetVar("siteID"))); while ($arItem = $dbItem->Fetch()) { CTasks::Delete($arItem["ID"]); } } } elseif ($serviceID == "calendar") { if (CModule::IncludeModule("calendar")) { $dbItem = CCalendarEvent::GetList(); foreach ($dbItem as $arItem) { CCalendarEvent::Delete(array("id" => $arItem["ID"])); } } } elseif ($serviceID == "meeting") { if (CModule::IncludeModule("meeting")) { $dbItem = CMeeting::GetList(array(), array()); while ($arItem = $dbItem->Fetch()) { if ($arItem["ID"]) { CMeeting::Delete($arItem["ID"]); } } } } elseif ($serviceID == "user") { if ($serviceStage == "user") { $dbUser = CUser::GetList($by = "ID", $order = "DESC", array(">ID" => 1)); while ($arUser = $dbUser->Fetch()) { CUser::Delete($arUser["ID"]); } } } elseif ($serviceID == "crm") { if ($serviceStage == "crm") { if (CModule::IncludeModule('crm')) { $CCrmLead = new CCrmLead(); $resLead = CCrmLead::GetList(array(), array(), array(), false); while ($rowLead = $resLead->Fetch()) { $CCrmLead->Delete($rowLead["ID"]); } $CCrmContact = new CCrmContact(); $resContact = CCrmContact::GetList(array(), array(), array(), false); while ($rowContact = $resContact->Fetch()) { $CCrmContact->Delete($rowContact["ID"]); } $CCrmCompany = new CCrmCompany(); $resCompany = CCrmCompany::GetList(array(), array(), array(), false); while ($rowCompany = $resCompany->Fetch()) { $CCrmCompany->Delete($rowCompany["ID"]); } $CCrmDeal = new CCrmDeal(); $resDeal = CCrmDeal::GetList(array(), array(), array(), false); while ($rowDeal = $resDeal->Fetch()) { $CCrmDeal->Delete($rowDeal["ID"]); } } } } elseif ($serviceID == "cache") { require_once $_SERVER["DOCUMENT_ROOT"] . BX_ROOT . "/modules/main/classes/general/cache_html.php"; if ($serviceStage == "cache1") { BXClearCache(true); } elseif ($serviceStage == "cache2") { $GLOBALS["CACHE_MANAGER"]->CleanAll(); } elseif ($serviceStage == "cache3") { $GLOBALS["stackCacheManager"]->CleanAll(); } elseif ($serviceStage == "cache4") { CHTMLPagesCache::CleanAll(); } COption::SetOptionString("main", "wizard_clear_exec", "Y", false, $wizard->GetVar("siteID")); } } }
$arFilter['!ID'] = intval($skip); } if ($_REQUEST['mode'] == 'selector_search') { CUtil::JSPostUnEscape(); } if ($_REQUEST['FILTER']) { $arFilterValues = $_REQUEST['FILTER']; if (isset($arFilterValues['TITLE']) && strlen(trim($arFilterValues['TITLE'])) > 0) { $arFilter['~TITLE'] = '%' . trim($arFilterValues['TITLE']) . '%'; } if (isset($arFilterValues['CURRENT_STATE']) && strlen($arFilterValues['CURRENT_STATE']) == 1 && in_array($arFilterValues['CURRENT_STATE'], array(CMeeting::STATE_PREPARE, CMeeting::STATE_ACTION, CMeeting::STATE_CLOSED))) { $arFilter['CURRENT_STATE'] = $arFilterValues['CURRENT_STATE']; } if (isset($arFilterValues['OWNER_ID']) && intval($arFilterValues['OWNER_ID']) > 0) { $arFilter['OWNER_ID'] = intval($arFilterValues['OWNER_ID']); } } $dbRes = CMeeting::GetList($arOrder, $arFilter, false, array('nTopCount' => 10)); $arResult['MEETINGS'] = array(); while ($arMeeting = $dbRes->GetNext()) { $arMeeting['URL'] = str_replace(array('#MEETING_ID#', '#ID#'), $arMeeting['ID'], $arParams["MEETING_URL_TPL"]); $arResult['MEETINGS'][] = $arMeeting; } if ($_REQUEST['mode'] == 'selector_search') { $APPLICATION->RestartBuffer(); echo CUtil::PhpToJsObject($arResult['MEETINGS'], false, true); die; } else { CJSCore::Init(array('meeting')); $this->IncludeComponentTemplate(); }