https://github.com/studiofact/citfact.uservars
Для простых настроек сайта с возможностью редактирования из административной части
https://github.com/studiofact/citfact.uservars
Last synced: 6 months ago
JSON representation
Для простых настроек сайта с возможностью редактирования из административной части
- Host: GitHub
- URL: https://github.com/studiofact/citfact.uservars
- Owner: studiofact
- License: mit
- Created: 2014-07-06T15:33:26.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2014-07-06T16:04:00.000Z (about 12 years ago)
- Last Synced: 2024-04-21T21:15:53.675Z (about 2 years ago)
- Language: PHP
- Size: 148 KB
- Stars: 1
- Watchers: 4
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Пользовательские переменные
=========
Необходимы в случае, если требуется добавить несколько простых настроек для сайта с возможностью редактирования из
административной части, например для возможности изменения клиентом. Для удобства есть возможность группировки переменных.
Библиотека находятся в пространстве имен ``Citfact\UserVars``
Установка
==================
Создайте или обновите ``composer.json`` файл и запустите ``php composer.phar install``
``` json
{
"require": {
"citfact/uservars": "dev-master"
}
}
```
Пример использования
==================
Для быстрого доступа к переменным и группам, служат классы ``Citfact\UserVars\Vars`` и ``Citfact\UserVars\VarsGroup``
``` php
use Citfact\UserVars;
$varsGroup = new UserVars\VarsGroup();
// Предопределены два метода findBy* и findOneBy*
$varsGroup->findById(1);
$varsGroup->findByCode('TEST');
$vars = new UserVars\Vars();
$vars->findById(1);
$vars->findByCode('TEST');
$vars->findByGroup(1);
// Получаем все переменные по символьному коду
$varsResult = $vars->findByCode('FIND_CODE');
while ($var = $varsResult->fetch()) {
print_r($var);
}
// Получаем одну переменную из группы
$var = $vars->findOneByGroup(1)->fetch();
```
Для более гибкой выборки переменных или групп, работайте на прямую через модели:
- ``Citfact\UserVars\Model\VarsTable``
- ``Citfact\UserVars\Model\VarsGroupTable``
``` php
use Bitrix\Main\Entity;
use Citfact\UserVars\Model;
$queryBuilder = new Entity\Query(Model\VarsGroupTable::getEntity());
$queryBuilder
->setSelect(array('ID', 'NAME', 'CODE'))
->setOrder(array('ID', 'asc'))
->setFilter(array('CODE' => 'TEST_CODE'))
->setLimit(1);
$result = $queryBuilder->exec()->fetch();
```
Удаление и обновление, также выполняется через модель
``` php
use Citfact\UserVars\Model;
// Удаляем переменную с ID = 1
Model\VarsTable::delete(1);
// Обновляем наименование у группы
Model\VarsGroupTable::update(1, array('NAME' => 'New name'));