Орла
Области
Компаний
Пользователи
Галерея
Фиксированные новости
Орла
Отзывы о фирмах
Тарифы
Пользователи
Области
Банкоматы
Торговые точки
Доска объявлений
Курсы валют
Скидки
организации Орла
организации области
товары
сайты
сайты Орел
Данные
Разделы
Поиск
Поиск запросы
Статистика
Показы каталога организаций
Статистика клиенты
Пользователи
Сайты
Управление сайтом
Анкета
Аптеки
Афиша
Афиша новая
Баннеры
Бизнес >
Викторина
Голосование
Гость на сайте
Истории
Календарь событий
Каталоги >
Конкурс красоты
Конкурс аудио
Консультации
Меню
Новое на сайте
Новости >
Организации >
Программа ТВ
Публикации
Разделы сайта
Рассылка
Рестораны
Секрет фирмы >
Сервисы >
Ссылки
Тесты
Файловый менеджер
Форум
Фотогалерея
Обратная связь
Недвижимость
Новый год
Тексты
Пользователи
Юридический рейтинг
Отзывы на товары
Бан пользователей
Жалобы
Новые тесты
Коронавирус
Файловый менеджер
Имя файла
BlocksRepository.php
Содержимое
<?php namespace Visitka\Blocks\Repositories; use App; use Visitka\Blocks\Dto\BaseBlock; use Visitka\Blocks\Factory\BlockFactory; use Visitka\Blocks\Utils\BlockClassMapping; class BlocksRepository { private $templateRepository; private $blockClassMapping; public function __construct() { $this->templateRepository = new TemplatesRepository(); $this->blockClassMapping = new BlockClassMapping(); } public function findAllByOrganization(array $organization) { $factory = new BlockFactory($organization); return $factory->getInstances( $this->findRawBlocks($organization['id']) ); } /** * Рта функция возвращает массив названий добавленных блоков * @param $organizationId * @return array */ public function findAllNamesByOrganizationId($organizationId) { $result = []; $rawBlocks = $this->findRawBlocks($organizationId); foreach ($rawBlocks as $rawBlock) { try { /** @var BaseBlock $className */ $className = $this->blockClassMapping->getClassNameOrFail((int) $rawBlock['block_id']); $result[] = [ 'id' => $className::getId(), 'visitka_block_id' => (int) $rawBlock['id'], // идентификатор блока 'name' => $className::getName(), // название блока (шапка, меню Рё так далее) 'header' => $rawBlock['header'] // заголовок блока (главное меню, наши преимущества...) ]; } catch (\DomainException $e) { continue; } } return $result; } private function findRawBlocks($organizationId) { return App::$command ->createCommand(' SELECT * FROM `firma_visitka_blocks` WHERE firma_id = :id ORDER BY `position` ASC ') ->bindValue(':id', $organizationId) ->queryAll(); } }
/visitka/src/Blocks/Repositories/
Имя
Дата
Размер
..
2020-03-10
BlockNamesRepository.php
2020-02-07
1 кб.
BlocksRepository.php
2020-03-10
2 кб.
NewsRepository.php
2020-02-04
1013 байт
ReviewsRepository.php
2020-03-10
906 байт
TemplatesRepository.php
2020-02-26
2 кб.
TextRepository.php
2020-02-04
429 байт
/visitka/src/Blocks/Repositories
Загрузить файлы
Файл 1
Файл 2
Файл 3