示例#1
0
 public static function OnSocNetUserToGroupUpdate($ID, $arFields)
 {
     if (intval($ID) <= 0) {
         return false;
     }
     if (!CModule::IncludeModule('socialnetwork')) {
         return false;
     }
     if (!CModule::IncludeModule('webdav')) {
         return false;
     }
     if (isset($arFields['ROLE']) && ($arFields['ROLE'] == SONET_ROLES_USER || $arFields['ROLE'] == SONET_ROLES_MODERATOR || $arFields['ROLE'] == SONET_ROLES_OWNER)) {
         if (!isset($arFields['USER_ID'])) {
             $query = CSocNetUserToGroup::GetList(array(), array('ID' => $ID), false, false, array('USER_ID', 'GROUP_ID'));
             if ($query) {
                 $row = $query->fetch();
                 if ($row) {
                     $userId = $row['USER_ID'];
                     $groupId = $row['GROUP_ID'];
                 }
             }
         }
         if (!empty($userId) && !empty($groupId) && CSocNetFeatures::IsActiveFeature(SONET_ENTITY_GROUP, $groupId, 'files')) {
             $dispatcher = new \Bitrix\Webdav\InviteDispatcher();
             $attachObjectType = CWebDavSymlinkHelper::ENTITY_TYPE_GROUP;
             $attachObjectId = (int) $groupId;
             $inviteComponentParams = array('attachObject' => array('id' => $attachObjectId, 'type' => $attachObjectType), 'attachToUserId' => $userId, 'inviteFromUserId' => $userId, 'canEdit' => true);
             $response = CWebDavTools::allowAutoconnectShareGroupFolder() ? $dispatcher->processActionConnect($inviteComponentParams) : $dispatcher->processActionInvite($inviteComponentParams);
             if ($response['status'] == $dispatcher::STATUS_SUCCESS) {
             }
         }
     }
     CIBlockWebdavSocnet::ClearTagCache('wd_socnet');
 }