Пример #1
0
 public static function onSocNetUserToGroupDelete($id, $fields)
 {
     if (isset($fields['ROLE']) && ($fields['ROLE'] == SONET_ROLES_USER || $fields['ROLE'] == SONET_ROLES_MODERATOR || $fields['ROLE'] == SONET_ROLES_OWNER)) {
         $userId = $fields['USER_ID'];
         $groupId = $fields['GROUP_ID'];
         if (empty($userId) || empty($groupId)) {
             return;
         }
         $storage = Driver::getInstance()->getStorageByGroupId($groupId);
         if (!$storage) {
             return;
         }
         /** @var Sharing $sharing */
         $sharing = Sharing::load(array('=TO_ENTITY' => Sharing::CODE_USER . $userId, 'REAL_OBJECT_ID' => $storage->getRootObjectId(), 'REAL_STORAGE_ID' => $storage->getId()));
         if (!$sharing) {
             return;
         }
         $sharing->delete(self::getActivityUserId());
     }
 }
Пример #2
0
 /**
  * Deletes folder and all descendants objects.
  * @param int $deletedBy Id of user (or SystemUser::SYSTEM_USER_ID).
  * @throws \Bitrix\Main\ArgumentException
  * @throws \Bitrix\Main\ArgumentNullException
  * @return bool
  */
 public function deleteTree($deletedBy)
 {
     /** @var Sharing $sharing */
     $sharing = Sharing::load(array('LINK_OBJECT_ID' => $this->getId()));
     if ($sharing) {
         $sharing->decline($deletedBy, false);
     }
     return parent::deleteNonRecursive($deletedBy);
 }