當前位置: 首頁>>代碼示例>>PHP>>正文


PHP CIBlockElementRights::setRights方法代碼示例

本文整理匯總了PHP中CIBlockElementRights::setRights方法的典型用法代碼示例。如果您正苦於以下問題:PHP CIBlockElementRights::setRights方法的具體用法?PHP CIBlockElementRights::setRights怎麽用?PHP CIBlockElementRights::setRights使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在CIBlockElementRights的用法示例。


在下文中一共展示了CIBlockElementRights::setRights方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: addFilesRights

 /**
  * Add rights for reading files by given users.
  * @deprecated
  */
 private static function addFilesRights($taskId, $arFilesIds)
 {
     $arFilesIds = array_unique(array_filter($arFilesIds));
     // Nothing to do?
     if (empty($arFilesIds)) {
         return;
     }
     if (!CModule::IncludeModule('webdav')) {
         return;
     }
     $arRightsTasks = CWebDavIblock::GetTasks();
     // tasks-operations
     $oTask = new CTaskItem((int) $taskId, 1);
     $arTask = $oTask->getData(false);
     $arTaskMembers = array_unique(array_merge(array($arTask['CREATED_BY'], $arTask['RESPONSIBLE_ID']), $arTask['AUDITORS'], $arTask['ACCOMPLICES']));
     $ibe = new CIBlockElement();
     $dbWDFile = $ibe->GetList(array(), array('ID' => $arFilesIds, 'SHOW_NEW' => 'Y'), false, false, array('ID', 'NAME', 'SECTION_ID', 'IBLOCK_ID', 'WF_NEW'));
     if ($dbWDFile) {
         $i = 0;
         $arRightsForTaskMembers = array();
         foreach ($arTaskMembers as $userId) {
             // For intranet users and their managers
             $arRightsForTaskMembers['n' . $i++] = array('GROUP_CODE' => 'IU' . $userId, 'TASK_ID' => $arRightsTasks['R']);
             // For extranet users
             $arRightsForTaskMembers['n' . $i++] = array('GROUP_CODE' => 'U' . $userId, 'TASK_ID' => $arRightsTasks['R']);
         }
         $iNext = $i;
         while ($arWDFile = $dbWDFile->Fetch()) {
             if (!$arWDFile['IBLOCK_ID']) {
                 continue;
             }
             $fileId = $arWDFile['ID'];
             if (CIBlock::GetArrayByID($arWDFile['IBLOCK_ID'], "RIGHTS_MODE") === "E") {
                 $ibRights = new CIBlockElementRights($arWDFile['IBLOCK_ID'], $fileId);
                 $arCurRightsRaw = $ibRights->getRights();
                 // Preserve existing rights
                 $i = $iNext;
                 $arRights = $arRightsForTaskMembers;
                 foreach ($arCurRightsRaw as $arRightsData) {
                     $arRights['n' . $i++] = array('GROUP_CODE' => $arRightsData['GROUP_CODE'], 'TASK_ID' => $arRightsData['TASK_ID']);
                 }
                 $ibRights->setRights($arRights);
             }
         }
     }
 }
開發者ID:DarneoStudio,項目名稱:bitrix,代碼行數:50,代碼來源:taskcomments.php


注:本文中的CIBlockElementRights::setRights方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。