По-простому обработчик можно так:
Но кроме обработчика желательно какое-то управление для списка тех, кого надо отключить (собственно ваш $arFilter), через пользователя (поле еще одно), через отдельную форму.
Код |
---|
AddEventHandler('ldap', 'OnLdapUserFields', 'myUserDesactivate'); function myUserDesactivate($arParams) { $arFilter = Array(); //ваши параметры для фильтрации юзеров. у меня и ИДшники были, и логины $arSelect = Array("FIELDS"=>Array("ID", "LOGIN", "LAST_NAME", "NAME")); $rsUsers = CUser::GetList(($by="id"), ($order="desc"), $arFilter, $arSelect); while($arUsers=$rsUsers->GetNext()){ $userDeactiveId[]=$arUsers["ID"]; } foreach($userDeactiveId as $userID){ $user = new CUser; $fields = Array("ACTIVE"=> "N"); $user->Update($userID, $fields); $strError .= $user->LAST_ERROR; unset($user); } } |