Класс: MhAjax Краткое содержание: Class MhAjax
Описание: Вспомогательный класс для работы с системой управления DLE (Data Life Engine), загрузкой данных и проверкой ресурсов. Содержит набор методов, облегчающих выполнение AJAX-запросов, валидацию и взаимодействие с внешними и внутренними ресурсами.
Свойства Методы Подробности Путь: engine/inc/maharder/_includes/classes/MhAjax.php Использованные трейты: Свойства
protected $postXfieldKeys : array Тип: Массив
Подробности:
protected $userXfieldKeys : array Тип: Массив
Подробности:
private $api_key : string Краткое содержание
Гостевой ключ с доступом на просмотр информации ресурса на сайте
Тип: Текст
private $asset_file : string Краткое содержание
Файл с информацией и хешами вспомогательных файлов
Тип: Текст
private $assets_arr : array Краткое содержание
Массив со всеми данными для обновления стилей и скриптов
Тип: Массив
private $assets_dir : string Краткое содержание
Путь до всех вспомогательных файлов
Тип: Текст
private $cache_folder : string Краткое содержание
Папка кеша
Тип: Текст
private $prefix : ?string Тип: Текст или null
private $recource_id : ?int Тип: Целое число или null
Подробности:
private $update_url : string Тип: Текст
Методы
__construct Text Only public __construct() : mixed
Краткое содержание Конструктор класса MhAjax.
Описание Инициализирует объект класса, содержащего вспомогательные методы для работы с DLE, загрузкой данных и проверкой ресурсов.
Возвращает:
checkAssets Text Only public checkAssets(bool rewrite = false) : array
Краткое содержание Проверяет целостность файлов между локальным хранилищем и сервером разработчика.
Описание Если файлы отсутствуют или имеют различия в хеш-суммах, информация об этих расхождениях возвращается в виде массива. При необходимости может быть выполнена перезапись локального файла с данными о ресурсах.
Смотри так-же: Свойства: Название Тип По умолчанию $rewrite bool false
Ошибки: Тип Описание \JsonException
Возвращает: Ассоциативный массив с информацией о проверке файлов:
on_server
(int): Количество файлов, находящихся на сервере разработчика. local
(int): Количество локальных файлов. missing_count
(int): Количество недостающих файлов. update_count
(int): Количество файлов, требующих обновления. missing
(array): Массив с данными о недостающих файлах. update
(array): Массив с данными о файлах, требующих обновления.
checkUpdate Text Only public checkUpdate(int|null res = null) : array
Краткое содержание Проверяет наличие и обновления ресурса, используя указанный или текущий идентификатор ресурса.
Смотри так-же: Свойства: Название Тип По умолчанию $res int|null null
Ошибки: Тип Описание \JsonException|\Throwable Исключение, связанное с ошибками в JSON-конверсии (может быть выброшено при выполнении Telegram-лога).
Возвращает: Возвращает массив с данными об обновлении ресурса или список ошибок.
clear_cache Text Only public clear_cache(string type = "all") : void
Краткое содержание Очищает кеш указанного типа.
Описание Метод позволяет очистить кеш для переданного типа или полностью, если тип "all". Использует внутренний метод CacheControl::clearCache для выполнения операции очистки.
Смотри так-же: Свойства: Название Тип По умолчанию $type string "all"
Возвращает:
get_cache Text Only public get_cache(string type, string name) : array|false
Краткое содержание Получает кешированные данные для заданного типа и имени.
Описание Метод использует статический метод CacheControl::getCache()
, чтобы получить данные из файловой системы.
Смотри так-же: Свойства: Название Тип По умолчанию $type string $name string
Ошибки: Тип Описание \JsonException
Возвращает: Возвращает массив декодированных данных, если файл кеша успешно найден и данные корректны, или false
, если произошла ошибка (например, файл не найден или данные некорректны).
get_used_xfields Text Only public get_used_xfields(int id, string type = "post") : array|bool
Краткое содержание Возвращает массив с дополнительными полями, использованными в объекте, либо false
, если данные отсутствуют.
Описание Метод извлекает данные из базы данных для указанного объекта (поста или пользователя) и преобразует строку с дополнительными полями в массив с ключами и их значениями.
Смотри так-же: Свойства: Название Тип По умолчанию $id int $type string "post"
Ошибки: Тип Описание \JsonException Исключение выбрасывается, если произошла ошибка при работе с JSON.
Возвращает: Возвращает массив дополнительных полей объекта в формате ключ => значение, либо false
, если данные отсутствуют.
getApiKey Text Only public getApiKey() : string
Возвращает:
getCacheFolder Text Only public getCacheFolder() : string
Возвращает:
getCats Краткое содержание Возвращает список категорий в виде ассоциативного массива, где ключом является ID категории, а значением — её название.
Описание Метод загружает данные из базы данных, используя метод load_data
, и сортирует их по названию категории в алфавитном порядке. В результате возвращается массив с ID категорий в качестве ключей и названиями категорий в качестве значений.
Смотри так-же: Ошибки: Тип Описание \JsonException
Возвращает: Ассоциативный массив категорий, где ключ — ID категории, а значение — её название.
getDleUrl Text Only public getDleUrl() : string
Краткое содержание Возвращает URL панели администратора DLE.
Описание Использует глобальный массив настроек DLE $config
для формирования полного URL. Формат возвращаемого значения: http(s)://your-site.com/admin_path.
Возвращает: Конечный URL панели администратора DLE.
getPrefix Text Only public getPrefix() : string
Краткое содержание Возвращает префикс для использования в SQL-запросах.
Описание Метод проверяет, установлен ли префикс. Если префикс не задан, он вызывает метод setPrefix()
, чтобы установить его значение. Затем возвращает установившийся префикс.
Смотри так-же: Возвращает: Префикс, используемый для построения SQL-запросов.
getRecourceId Text Only public getRecourceId() : int|null
Возвращает:
getUpdateUrl Text Only public getUpdateUrl() : string
Возвращает:
getUser Text Only public getUser(int|null id = null, string|null uname = null) : array|false
Краткое содержание Получает данные пользователя по ID или имени пользователя.
Описание Если ни идентификатор пользователя, ни имя пользователя не переданы, метод возвращает false
. В противном случае выполняется поиск данных в таблице users
с использованием указанного критерия.
Смотри так-же: Свойства: Название Тип По умолчанию $id int|null null $uname string|null null
Ошибки: Тип Описание \JsonException
Возвращает: Ассоциативный массив с данными о пользователе, если пользователь найден. Возвращает false
, если пользователь не найден или если критерии поиска не заданы.
getUserGroups Text Only public getUserGroups() : array
Краткое содержание Получает список групп пользователей в формате массива с идентификаторами и именами групп.
Описание Метод обращается к функции load_data
для загрузки данных о группах пользователей из таблицы "usergroups" с выборкой полей id
и group_name
, затем преобразует результат в ассоциативный массив с ключами — идентификаторами групп, и значениями — именами групп, отсортированными по названию группы в алфавитном порядке (ASC).
Смотри так-же: Ошибки: Тип Описание \JsonException
Возвращает: Ассоциативный массив, где ключ — идентификатор группы, значение — имя группы.
getUsers Text Only public getUsers() : array
Краткое содержание Возвращает список пользователей из базы данных.
Описание Метод загружает данные о пользователях, используя метод load_data
, и возвращает массив, где ключами являются идентификаторы пользователей, а значениями — их имена, отсортированные в алфавитном порядке.
Смотри так-же: Ошибки: Тип Описание \JsonException
Возвращает: Ассоциативный массив пользователей, где ключи — идентификаторы пользователей (user_id), а значения — их имена.
getXfieldInfo Text Only public getXfieldInfo(string name, string type = "post") : array|null
Краткое содержание Возвращает информацию о дополнительном поле (xfield) на основании его имени и типа.
Смотри так-же: Свойства: Название Тип По умолчанию $name string $type string "post"
Возвращает: Возвращает информацию о поле в виде ассоциативного массива, либо null, если поле не найдено.
load_data Text Only public load_data(string name, mixed ..._vars) : array
Краткое содержание Метод загружает данные из базы данных с использованием механизма кеширования.
Описание Если данные уже закешированы, то они возвращаются из кеша, иначе выполняется запрос к базе данных, формируется кеш и результат сохраняется на диск.
Смотри так-же: Свойства: Название Тип По умолчанию $name string $_vars mixed
Ошибки: Тип Описание \JsonException В случае JSON-ошибок при работе с кешем.
Возвращает: Результат выборки из базы данных, либо из кеша.
loadXfields Text Only public loadXfields(string type = "post") : array|false
Краткое содержание Загружает дополнительные поля для новостей или профилей пользователей.
Описание Метод извлекает данные из кэша, либо, при его отсутствии, читает данные из файла конфигурации. Возвращает ассоциативный массив, где ключами являются названия дополнительных полей, а значениями - их параметры. Данные загружаются в зависимости от значения параметра $type
:
"post"
: данные загружаются из файла xfields.txt
. "user"
: данные загружаются из файла xprofile.txt
. Ключи массива, формируемого из файла конфигурации, соответствуют предопределённым ключам, указанным в свойствах userXfieldKeys
или postXfieldKeys
. Смотри так-же: Свойства: Название Тип По умолчанию $type string "post"
Возвращает: Ассоциативный массив дополнительных полей, где ключ - название поля, значение - его параметры. Возвращает false
в случае невозможности прочитать файл.
parseAssets Text Only public parseAssets(bool parse = false) : void
Краткое содержание Выполняет парсинг вспомогательных файлов для управления ассетами.
Описание Если файл с хешами ассетов существует, то парсинг выполняется только при принудительном запуске. В случае отсутствия указанного файла производится полное сканирование ассетов.
Смотри так-же: Свойства: Название Тип По умолчанию $parse bool false
Ошибки: Тип Описание \JsonException|\Throwable В случае ошибок в процессах обработки JSON-файлов.
Возвращает:
save_asset Text Only public save_asset(array data, string file) : array|false
Краткое содержание Сохраняет файл на сервер и возвращает информацию о нём или false в случае неуспеха.
Смотри так-же: Свойства: Название Тип По умолчанию $data array $file string
Ошибки: Тип Описание \JsonException|\Throwable Генерирует исключение, если возникает ошибка обработки JSON.
Возвращает: Возвращает массив с информацией о сохранённом файле или false, если файл не удалось сохранить. Массив содержит следующие ключи:
"realpath" (string): Полный реальный путь до файла. "dirname" (string): Директория файла. "basename" (string): Имя файла с расширением. "filename" (string): Имя файла без расширения. "extension" (string): Расширение файла. "mime" (string): MIME-тип файла. "encoding" (string): Тип кодирования файла. "size" (int): Размер файла в байтах. "size_string" (string): Размер файла в человекочитаемом формате (например, "1.5MB"). "atime" (int): Время последнего доступа к файлу (в метках времени Unix). "mtime" (int): Время последней модификации файла (в метках времени Unix). "permission" (string): Права доступа на файл (в формате UNIX-подобной строки, например, "0755").
setApiKey Text Only public setApiKey(string api_key) : void
Свойства: Название Тип По умолчанию $api_key string
Возвращает:
setCacheFolder Text Only public setCacheFolder(string cache_folder) : void
Свойства: Название Тип По умолчанию $cache_folder string
Возвращает:
setPrefix Text Only public setPrefix(string|null name = null) : void
Краткое содержание Устанавливает префикс для использования в загрузке данных.
Описание Если переданное имя соответствует значениям "users" или "usergroup", то префикс устанавливается в значение константы USERPREFIX
. В противном случае используется значение по умолчанию из константы PREFIX
.
Свойства: Название Тип По умолчанию $name string|null null
Возвращает:
setRecourceId Text Only public setRecourceId(int recource_id) : void
Свойства: Название Тип По умолчанию $recource_id int
Возвращает:
setUpdateUrl Text Only public setUpdateUrl(string update_url) : void
Свойства: Название Тип По умолчанию $update_url string
Возвращает:
fetchFileContent Text Only private fetchFileContent(array data) : string|null
Краткое содержание Получает содержимое файла по указанным ссылкам.
Описание Метод пытается загрузить содержимое файла с основной (link
) и, при необходимости, с альтернативной (alt
) ссылки, если содержимое по основной ссылке пустое.
Свойства: Название Тип По умолчанию $data array
Возвращает: Возвращает содержимое файла, либо null, если не удалось загрузить файл.
Text Only private generateFileMetadata(string file_path) : array
Краткое содержание Генерирует метаданные для указанного файла.
Свойства: Название Тип По умолчанию $file_path string
Ошибки: Тип Описание \RuntimeException Если файл не существует или недоступен.
Возвращает: Ассоциативный массив, содержащий следующую информацию о файле:
"realpath" (string|null): Абсолютный путь до файла. "dirname" (string): Путь к директории, содержащей файл. "basename" (string): Имя файла с расширением. "filename" (string): Имя файла без расширения. "extension" (string|null): Расширение файла. "mime" (string): MIME-тип файла. "encoding" (string): Кодировка файла. "size" (int): Размер файла в байтах. "size_string" (string): Читаемое представление размера файла (например, "10.5 KB"). "atime" (int): Временная метка последнего доступа к файлу. "mtime" (int): Временная метка последней модификации файла. "permission" (string): Права доступа к файлу (например, "0755").
parse_assets Text Only private parse_assets() : void
Краткое содержание Парсит данные о ресурсах (assets), проверяет наличие отсутствующих или обновленных, и обновляет информацию. Также сохраняет актуальные данные в локальный файл ресурсов.
Описание Процесс включает следующие этапы:
Получение списка локальных файлов и их данных через метод prepare_assets
. Получение данных об удаленных ресурсах через URL. Сравнение данных о хэшах локальных и удаленных ресурсов. Сохранение недостающих или обновленных ресурсов в локальное хранилище. Запись актуализированных данных в локальный JSON-файл. Смотри так-же: Ошибки: Тип Описание \JsonException|\Throwable Исключение выбрасывается в случае ошибки при работе с JSON.
Возвращает:
prepare_assets Text Only private prepare_assets(array arr, string dir = __DIR__) : void
Краткое содержание Подготавливает данные о файлах, расположенных на локальном сервере, и сохраняет их в массив assets_arr
.
Описание Метод рекурсивно обрабатывает массив с файлами и создает запись для каждого файла в конечном массиве assets_arr
, содержащую путь, имя файла и его хэш.
Свойства: Название Тип По умолчанию $arr array $dir string DIR
Возвращает:
saveFile Text Only private saveFile(string file_path, string content, string file) : bool
Краткое содержание Сохраняет содержимое в файл и логирует сообщение при возникновении ошибки.
Описание Метод выполняет запись переданного содержимого в указанный путь файла, проверяет, доступен ли файл для записи, и логирует ошибку в случае неудачи.
Смотри так-же: Свойства: Название Тип По умолчанию $file_path string $content string $file string
Ошибки: Возвращает: Возвращает true, если файл успешно сохранён, или false — в случае ошибки.
set_cache Text Only private set_cache(string type, string name, mixed data) : void
Краткое содержание Сохраняет данные в кеш.
Описание Метод записывает данные в кеш, используя указанный тип и имя. Для сохранения данных вызывается метод CacheControl::setCache
, который обрабатывает директорию и имя файла, записывает данные в формате JSON и устанавливает необходимые права доступа к файлу.
Смотри так-же: Свойства: Название Тип По умолчанию $type string $name string $data mixed
Ошибки: Тип Описание \JsonException
Возвращает: 4 февраля 2025 г. 26 января 2025 г.