protected function processActionSetDelegateResponsible() { $this->checkRequiredPostParams(array('iblockId')); if (!Loader::includeModule('iblock')) { $this->errorCollection->add(array(new Error(Loc::getMessage('LISTS_SEAC_CONNECTION_MODULE_IBLOCK')))); } $this->iblockId = intval($this->request->getPost('iblockId')); $this->iblockTypeId = COption::GetOptionString("lists", "livefeed_iblock_type_id"); $this->checkPermission(); if ($this->errorCollection->hasErrors()) { $this->sendJsonErrorResponse(); } $selectUsers = $this->request->getPost('selectUsers'); $rightObject = new CIBlockRights($this->iblockId); $rights = $rightObject->getRights(); $rightsList = $rightObject->getRightsList(false); $idRight = array_search('iblock_full', $rightsList); foreach ($rights as $keyRight => $right) { $res = strpos($right['GROUP_CODE'], 'U'); if ($res === 0) { $arraySearch = array_search($right['GROUP_CODE'], $selectUsers); if ($right['TASK_ID'] == $idRight) { if (!empty($selectUsers)) { if ($arraySearch || $arraySearch == 0) { unset($rights[$keyRight]); } } else { unset($rights[$keyRight]); } } else { if (!empty($selectUsers)) { if ($arraySearch || $arraySearch == 0) { unset($rights[$keyRight]); } } } } } if (!empty($selectUsers)) { foreach ($selectUsers as $keySelect => $idUser) { $rights['n' . $keySelect] = array('GROUP_CODE' => $idUser, 'TASK_ID' => $idRight); } } $rightObject->setRights($rights); $this->sendJsonSuccessResponse(array('message' => Loc::getMessage('LISTS_SEAC_MESSAGE_DELEGATE_RESPONSIBLE'))); }
/** * @param int $iblockId This variable is the id iblock. */ private static function createIBlockRights($iblockId) { $rightObject = new \CIBlockRights($iblockId); $rights = $rightObject->getRights(); $rightsList = $rightObject->getRightsList(false); $rightId = array_search('iblock_full', $rightsList); $rights['n0'] = array('GROUP_CODE' => "G1", 'TASK_ID' => $rightId); $rights['n1'] = array('GROUP_CODE' => "U1", 'TASK_ID' => $rightId); $rightId = array_search('iblock_element_add', $rightsList); $rights['n2'] = array('GROUP_CODE' => "G2", 'TASK_ID' => $rightId); $rightObject->setRights($rights); }