Класс: DleDataService
Документация по плагину класс: dledataservice для DLE.
Краткое содержание:
Агрегирует справочные данные DLE: пользователи, группы, категории, xfields.
Свойства
Нет публичных свойств.
Методы
- public __construct()
- public users()
- public user()
- public groups()
- public groupsFull()
- public categories()
- public categoriesFull()
- public postXfields()
- public userXfields()
- public parseObjectXfields()
- private loadXfieldsFromJson()
- private readJsonFields()
- private parseXfieldsString()
- private readJsonCache()
- private writeJsonCache()
Подробности
- Путь:
devcraft/src/classes/Support/DleDataService.php
Детали
Методы
__construct()
Инициализирует зависимости: $loader, $cacheTimer.
С версии: 200.4.0
Параметры:
$loader— Сервис загрузки таблиц DLE.$cacheTimer— TTL кеша xfields в секундах.
users()
Возвращает список пользователей DLE с основными полями.
С версии: 173.3.0
Возвращает: array<int, array<string, mixed>> — Строки users.
user()
Возвращает одного пользователя по id или имени.
С версии: 173.3.0
Параметры:
$id— ID пользователя или null.$uname— Имя пользователя или null.
Возвращает: array<string, mixed>|array{} — Первая строка или пустой массив.
groups()
Возвращает карту id => group_name для групп пользователей.
С версии: 173.3.0
Возвращает: array<int|string, — string> Ассоциативный список групп.
groupsFull()
Возвращает полные строки таблицы usergroups.
С версии: 173.3.0
Возвращает: array<int, array<string, mixed>> — Все колонки групп.
categories()
Возвращает карту id => name для категорий DLE.
С версии: 173.3.0
Возвращает: array<int|string, — string> Ассоциативный список категорий.
categoriesFull()
Возвращает полные строки таблицы category.
С версии: 173.3.0
Возвращает: array<int, array<string, mixed>> — Все колонки категорий.
postXfields()
Загружает описание доп. полей публикаций из xfields.json.
С версии: 173.3.0
Возвращает: array<string, array<string, mixed>> — Поля по имени.
userXfields()
Загружает описание доп. полей пользователей из userxfields.json.
С версии: 173.3.0
Возвращает: array<string, array<string, mixed>> — Поля по имени.
parseObjectXfields()
Разбирает строку xfields записи post или user в ассоциативный массив.
С версии: 173.3.0
Параметры:
$id— ID записи или пользователя.$type— Тип объекта: post или user.
Возвращает: array<string, — string|null> Имя поля => значение.
loadXfieldsFromJson()
Загружает xfields из JSON с кешированием.
С версии: 173.3.0
Параметры:
$cacheName— Ключ кеша.$fileName— Имя файла в ENGINE_DIR/data/.
Возвращает: array<string, array<string, mixed>> — Поля xfields.
readJsonFields()
Читает и декодирует JSON-файл xfields из каталога data DLE.
С версии: 173.3.0
Параметры:
$fileName— Имя файла (xfields.json или userxfields.json).
Возвращает: array<string, array<string, mixed>> — Секция fields или пустой массив.
parseXfieldsString()
Парсит сериализованную строку xfields DLE формата «name|value||…».
С версии: 173.3.0
Параметры:
$raw— Сырыая строка xfields.
Возвращает: array<string, — string|null> Имя => значение.
readJsonCache()
Читает закешированные xfields, если TTL не истёк.
С версии: 173.3.0
Параметры:
$cacheName— Ключ кеша.
Возвращает: array<string, array<string, mixed>> — |null Поля или null.
writeJsonCache()
Записывает xfields в кеш DevCraft.
С версии: 173.3.0
Параметры:
$cacheName— Ключ кеша.