Требование к системе
• Сервер Apache 2.4+ или nginx+PHP-FPM
• Тип сервера баз данных MySql/Postgresql/LiteSQL
• Версия интерпретатора php 8.*.*
• OC: Widows/Linux
• Установленные модули (zip,unzip)
• Библиотеки:
1. Curl
2. XMLWriter
3. SoapClient (не обязательно)
4. PDO
5. Smtp
• Разрешенные функции
1. exec
2. eval
Установка системы
Для установки системы скачайте вашу версию с сайта foton.name и распакуйте архив в директорию вашего сайта.
Перейдите по адресу в строке браузера http{s}://вашсайт/install.php либо через консоль php install предварительно скачав архив, например через wget.
Создайте базу данных и укажите ее параметры на данной странице, а также лицензионный ключ, после этого войдите в открытую форму указав везде demo, перейдите в модуль Обновление модулей, и обновите модули до последней версии, также рекомендуем обновить ядро системы в верхней панели, а также в разделе пользователи изменить ваши данные, более безопасно создать нового администратора, зайти под ним и удалить demo администратора, иначе после изменения логина вас выбросит из системы с ошибкой, и если вы не верно ввели пароль или забыли его вам придется вручную менять ваш пароль в базе данных. Также рекомендуем создать ваш личный ключ нажав на соответствующий значок в верхней панели РСИ, данный ключ требует синхронизации времени вашего устройства с вашим сервером.
Установка для LiteSQL - Для установки системы скачайте вашу версию с сайта foton.name и распакуйте архив в директорию вашего сайта.
Удалите лишние файлы pbase.sql,base.sql,install.php откройте файл core/setting/main.php и укажите:
$FS→host ='localhost';
$FS→sql ='lite';
$FS→dbname ='foton';
Далее перейдите по адресу http{s}://вашсайт/admin/, далее шаги такие же как и для других SQL версий.
Методы работы с ролями и пользователями
$this->core->chmodID($arr,$result=true) - $arr – массив id ролей, если роль текущего пользователя есть в массиве выводит true, если нет false, служит для проверки доступа текущего пользователя, для получения в любом случае ответа false/true в последний параметр пишем true
Методы модуля ядра Foton\Module\User
isAuth() - проверяет авторизован ли пользователь в системе, если да, возвращает true, иначе false
ipUser() - выводит ip адрес пользователя.
ExitAdmin() - выполнит выход из системы
roleAuth() - выведет роль текущего пользователя
Login() - выведет логин текущего пользователя
ListAuth() - выведет все поля таблицы авторизованного пользователя
auth($login = null, $passw = null, $key1 = null, $key2 = null)
$login — логин пользователя
$passw — пароль пользователя
$key1 — первый секретный ключ
$key2 — второй секретный ключ
Выполняет авторизацию пользователя
Основные хелперы
FotonOrm() - обьект ORM Foton
FotonIp() - выдает уникальный ключ по ip пользователя
FotonMobile() - проверяет пользователь зашел с мобильного устройства или десктоп
FotonSessionGet($name=null) - выводит значение поля сессии по ее имени
FotonSessionSet($name,$value,$time=null,$path=null) - создает переменную сессии со значением и сохраняет куки по указанному пути на указанное время
FotonWrite($file,$text,$count) - запись большого текста в файл на генераторах, count - число разбиений
FotonRead($file) - построчное чтение из файла на генераторах
FotonClearLog() - очистка общего файла логов
FotonLog($text = null, $format = null) - запись лога, format имеет следующие значения:
F - запись в файл лога
L - вывод в консоли браузера console.log
J - вывод json текстом
S - вывод сериализованного текста лога
без указания формата выводит текст, если строка и json если массив
FotonIsToken() - проверяет верные ли куки
FotonToken() - выдает уникальный токен по дате и пользователю
FotonIpUser() - выводит ip пользователя
FotonHttps() - выполняет редирект на https
FotonGit($path) - выводит путь к файлу или директории с учетом системы Git Foton