Меню

Удалить всех пользователей кроме администраторов в Битрикс

Что бы удалить всех пользователей, кроме администраторов, в 1С-Битрикс
Можно воспользоваться методами
Код
CUser::GetList - получить всех пользователей
CUser::GetUserGroup - получить все группы, к которым принадлежит пользователь
CUser::Delete() - удалить пользователя
Полный пример:
Код
global $USER;
$rsUsers = CUser::GetList(
    ($by = "ID"), 
    ($order = "desc"), 
    false
    );
while ($arUser = $rsUsers->Fetch()) {
 $arGroups = CUser::GetUserGroup($arUser['ID']);
 if (!in_array(1 , $arGroups)) {
     CUser::Delete($arUser['ID']);
 }
}
Пояснения:
- Получили всех пользователей
- Внутри цикла получили группы, к которым принадлежит текущий пользователь
- Проверили, не находится ли он в группе 1 (админы). Просто, проверкой на наличие элемента в массиве групп.
- Удалил пользователя, если его нет в группе 1 (если элемент "1" отсуствует в массиве "arGroups")

Более развернуто и на D7 будет в блоге (прямая ссылка появится позже)
https://camouf.ru/blog-note/
Гы, после удаленных 7000 записей сервак упал
Цитата
Илья написал:
Гы, после удаленных 7000 записей сервак упал

Если много и сервачек так себе или настройки не позволяют, временно увеличить лимиты .
Можно консольный скрипт написать с этим же способом.
Видеоуроки по
1С-Битрикс
на моем Boosty канале Видео
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
 

Блог-note: заметки разработчика

Изменить размер картинок по ID файла, в 1C-Битрикс

Задача: изменить размер картинок загруженных в элементы инфоблока, для оптимизации их размера и подгонки под содержимое...

FTP доступ на Виртуальной машине Битрикс

Бывает что нужно открыть FTP доступ к заранее известнойдиректории на сайте под управлением 1С Битрикс, который работает ...

Как подобрать редакцию Битрикс под задачи

Последнее время, все чаще, при общении с заказчиками, сталкиваюсь с вопросом "— Какая редакция 1С-Битрикс нужна дл...

Адаптивное гамбургер меню для битрикс

Заметка коротенькая, но решил оставить ее - так как самому часто нужно нечто подобное. В архиве готовый шаблон для Битри...

Настройка выгрузки товаров в Яндекс Маркет с сайта Битрикс

Настройка выгрузки в Яндекс маркет в формате yml, выполняется достаточно просто, кроме одной заморочки: в типовой постав...

Использование $APPLICATION->RestartBuffer() в связке с AJAX-запросами

Часто возникает необходимость управлять выводом данных на страницу, особенно когда речь идет о взаимодействии с AJAX-за...

Заполнить свойство заказа выбранным пунктом самовывоза и передать в 1С

Задача: При оформлении заказа пользователь может выбрать пункт самовывоза (склады магазина). Нужно заполнить сво...

Спойлер в списке новостей 1С-Битрикс

Иногда нужно сделать спойлеры в копонентах 1C-Битрикс, в основном конечно, имеет смысл при очень больших обьемах контент...

GIT-репозиторий на собственном сервере с веб-интерфейсом: Gitea - аналог GitHub

Задача: Развернуть git-репозиторий на собственном сервере с помощью Gitea — для ведения проектов, с веб-интерфейсом и по...