Library stdlib.php - oldmadjackal/DarkMed GitHub Wiki

Состав базовой библиотеки STDLIB.PHP

Функции общего назначения

  • GetRandomString - Генерация случайной строки
  • ReadConfig - Считывание конфигурационного файла

Отладка и работа с логами

  • FileLog - Запись строки в файл лога
  • FileLog_GP - Выдача в лог содержимого GET и POST
  • ShowLog - Отображение лога на форме

Работа с файлами

  • EncryptFile - Шифрование файла
  • DecryptFile - Расшифровывание файла
  • DeleteFile - Удаление файла
  • LoadFile - Получение файла с веб-клиента
  • PrepareImagePath - Формирование пути для сохранения файла (изображения, документа, ...)
  • PrepareTmpFolder - Формирование пути временного раздела сессии
  • RemoveTmpFolder - Очистка и удаление временного раздела сессии

Работа с Базой Данных

  • DbConnect - Присоединение к Базе данных
  • DbCheckSession - Идентификация сессии
  • OptionsToArray - Разбор строчного описания настроек пользователя

Отправка e-mail

  • Email - Отправка письма пользователю
  • Email_acc_notification - Отправка пользователю уведомления о принятии его приглашения
  • Email_inv_notification - Отправка пользователю уведомления о направленном ему приглашении
  • Email_msg_notification - Отправка пользователю уведомления о сообщении
  • Email_prs_notification - Отправка пользователю уведомления о сделанном назначении
  • Email_rej_notification - Отправка пользователю уведомления об отклонении его приглашения


###ReadConfig ReadConfig() - считывание конфигурационного файла
Возвращает - true - ОК, false - ошибка
Функция считывает конфигурационный файл, располагающийся по пути config/config.cfg, сохраняет значение параметров в глобальных переменных, а также выполняет настройку окружения.


###ShowLog ShowLog($text) - отображение лога на форме

  • text - выводимый текст

Ничего не возвращает
Функция записывает указанный текст в dev-тэг с идентификатором DebugLog, если таковой имеется на форме.


###FileLog FileLog($category, $text) - запись строки в файл лога

  • category - категория записи, может быть пустой или, например, ERROR, DEBUG, START, STOP (до 7 символов)
  • text - выводимый текст

Ничего не возвращает
Функция записывает в файл лога $glb_cfg_log_file (смотри ReadConfig) строку следующей структуры:
<Дата> <Время> <Порт клиента> <Значение $glb_script> <Значение $category> <Значение $text>

Для отключения логирования можно использовать глобальную переменную $glb_log_off, которой присваивается значение true.


###FileLog_GP FileLog_GP() - выдача в лог содержимого GET и POST
Ничего не возвращает
Функция записывает в файл лога $glb_cfg_log_file (смотри ReadConfig) содержимое стеков GET и POST.


###GetRandomString GetRandomString($length) - Генерация случайной строки

  • length - требуемая длина строки

Возвращает сгенерированную строку.
Функция генерирует случайную строку длины length из символов латинского алфавита - A...Za...z


###PrepareImagePath PrepareImagePath($section, $object, $element, $ext) - Формирование пути для сохранения файла (изображения, документа, ...)

  • section - секция данных: client_page, deseases_registry, doctor, prescriptions_registry
  • object - идентификатор объекта - обычно идентификатор страницы
  • element - вид объекта, например, Document, Image, Image_short
  • ext - расширение файла

Возвращает сформированный путь.
Функция формирует абсолютный путь от базовой папки $glb_cfg_images (смотри ReadConfig) с псевдо-уникальным именем.
Так как уникальность имени определяется текущим значением времени, одновременное формирование двух путей с совпадающими значениями параметров - недопустимо.
Функция не только формирует путь, но и создаёт все промежуточные папки, если они отсутствуют.


###PrepareTmpFolder PrepareTmpFolder($session) - Формирование пути временного раздела сессии

  • session - идентификатор сессии

Возвращает сформированный путь.
Функция формирует для данной сессии абсолютный путь от базовой папки $glb_cfg_temporary (смотри ReadConfig).


###RemoveTmpFolder RemoveTmpFolder($session) - Очистка и удаление временного раздела сессии

  • session - идентификатор сессии

Возвращает путь к временному разделу сессии.
Функция очищает и удаляет рабочую папку сессии, создаваемую функцией PrepareTmpFolder.


###DbConnect DbConnect(&$error) - Присоединение к Базе данных

  • error - ошибка соединения

Возвращает дескриптор базы данных или false при неудачном соединении.
Функция выполняет соединение с базой данных и создание дескриптора связи с ней. При неудаче ошибка выдается в параметр error.
Кроме того производится первичная настройка соединения


###DbCheckSession DbCheckSession($db, $session, &$options, &$error) - Идентификация сессии

  • db - дескриптор базы данных (DbConnect)
  • session - идентификатор сессии
  • options - атрибуты владельца сессии
  • error - ошибка соединения

Возвращает логин пользователя - владельца сессии или false - если сессия не найдена.
Функция проверяет наличие заданной сессии в списке активных и, если она там найдена, извлекает атрибуты ее владельца.
Атрибут OPTIONS раскладывается в глобальный ассоциативный массив $glb_options_a, структура которого описана в OptionsToArray.


###OptionsToArray OptionsToArray($options) - Разбор строчного описания настроек пользователя

  • options - строка настроек пользователя

Возвращает ассоциативный массив настроек.
Функция разбирает строку настроек и преобразует их в ассоциативный массив со следующими элементами:

  • ["null"] - обязательный элемент
  • ["user"] - категория пользователя: Client, Doctor, Executor
  • ["tester"] - тестовый пользователь
  • ["support"] - пользователь с правами выполнения операций поддержки

###EncryptFile EncryptFile($path, $password) - Шифрование файла

  • path - путь к зашифрованному файлу
  • password - ключ шифрования

Возвращает путь к зашифрованному экземпляру файла или false - в случае ошибки.
Функция создает зашифрованный экземпляр файла с использованием шаблона командной строки $glb_cfg_encrypt_file (смотри ReadConfig).


###DecryptFile DecryptFile($path, $password) - Расшифровывание файла

  • path - путь к файлу
  • password - ключ шифрования

Возвращает путь к расшифрованному экземпляру файла или false - в случае ошибки.
Функция создает расшифрованный экземпляр файла с использованием шаблона командной строки $glb_cfg_decrypt_file (смотри ReadConfig).


###DeleteFile DeleteFile($path) - Удаление файла

  • path - путь к файлу

Возвращает true или false - в случае ошибки.
Если задан шаблона командной строки $glb_cfg_decrypt_file (смотри ReadConfig) - формирует и исполняет соответствующую командную строку. Предполагается в случае использования специальных утилит зачистки файлов.
В противном случае удаляет файл стандартной процедурой.


###LoadFile LoadFile($image, $file_name, $data_segment, $data_elem, $data_type, $options, &$spath, &$error) - Получение файла с веб-клиента

  • image - имя слота документа в стеке FILES
  • file_name - имя файла документа
  • data_segment - секция данных: client_page, deseases_registry, doctor, prescriptions_registry
  • data_elem - идентификатор объекта-владельца - обычно идентификатор страницы
  • data_type - вид объекта, например, Document, Image
  • options - опции управления (пишутся через запятую):
    • create_short_image - создать сокращенную копию картинки
    • relative_path - выдавать относительные пути (по-умолчанию - абсолютные)
  • spath - путь к файлу сокращенной копии
  • error - ошибка соединения

Возвращает путь к загруженному файлу (полному экземпляру картинки) или false - в случае ошибки.
Производит загрузку переданного с веб-клиента файла в файловое хранилище. Место хранения определяется значением параметров data_segment, data_elem, data_type. При необходимости (смотри options) Создается уменьшенная копия картинки высотой 200 пикселей.


###Email Email($db, $user, $subject, $text, &$error) - Отправка письма пользователю

  • db - дескриптор базы данных (DbConnect)
  • user - логин получателя письма
  • subject - заголовок письма
  • text - текст письма
  • error - ошибка соединения

Возвращает true или false - в случае ошибки.
Формирует и отправляет письмо по адресу, указанному пользователем user при регистрации.


###Email_msg_notification Email_msg_notification($db, $user, &$error) - Отправка пользователю уведомления о сообщении

  • db - дескриптор базы данных (DbConnect)
  • user - логин получателя письма
  • error - ошибка соединения

Возвращает true или false - в случае ошибки.
По шаблону MessageNotification.html формирует и отправляет письмо по адресу, указанному пользователем user при регистрации.
Шаблон письма должен находится в папке $glb_cfg_email_forms (смотри ReadConfig).


###Email_prs_notification Email_prs_notification($db, $user, &$error) - Отправка пользователю уведомления о сделанном назначении

  • db - дескриптор базы данных (DbConnect)
  • user - логин получателя письма
  • error - ошибка соединения

Возвращает true или false - в случае ошибки.
По шаблону PrescriptionNotification.html формирует и отправляет письмо по адресу, указанному пользователем user при регистрации.
Шаблон письма должен находится в папке $glb_cfg_email_forms (смотри ReadConfig).


###Email_inv_notification Email_inv_notification($db, $user, &$error) - Отправка пользователю уведомления о направленном ему приглашении

  • db - дескриптор базы данных (DbConnect)
  • user - логин получателя письма
  • error - ошибка соединения

Возвращает true или false - в случае ошибки.
По шаблону InviteNotification.html формирует и отправляет письмо по адресу, указанному пользователем user при регистрации.
Шаблон письма должен находится в папке $glb_cfg_email_forms (смотри ReadConfig).


###Email_acc_notification Email_acc_notification($db, $user, &$error) - Отправка пользователю уведомления о принятии его приглашения

  • db - дескриптор базы данных (DbConnect)
  • user - логин получателя письма
  • error - ошибка соединения

Возвращает true или false - в случае ошибки.
По шаблону AcceptInviteNotification.html формирует и отправляет письмо по адресу, указанному пользователем user при регистрации.
Шаблон письма должен находится в папке $glb_cfg_email_forms (смотри ReadConfig).


###Email_rej_notification Email_rej_notification($db, $user, &$error) - Отправка пользователю уведомления об отклонении его приглашения

  • db - дескриптор базы данных (DbConnect)
  • user - логин получателя письма
  • error - ошибка соединения

Возвращает true или false - в случае ошибки.
По шаблону RejectInviteNotification.html формирует и отправляет письмо по адресу, указанному пользователем user при регистрации.
Шаблон письма должен находится в папке $glb_cfg_email_forms (смотри ReadConfig).

⚠️ **GitHub.com Fallback** ⚠️