База данных тут: olvia.studio-205.ru/images2/olvia.rar Настройки в \config\local.example, его нужно переименовать в local.php После деплоя необходимо развернуть зависимости из composer-а
Все, что касается фреймворка находится в модуле Common. Все очень сырое, и пока скорее эксперимент, чем какой то фреймворк Основная цель разработки - быстрое создание админок, упор сделан на возможность кодогенерации.
Пример развернутого приложения тут: http://olvia.studio-205.ru/ Админка: http://olvia.studio-205.ru/private
-
Логика вывода списков с фильтрами, пагинацией и сортировкой.
-
Логика форм (CRUD) и сами формы с возможность расширения "элементной базы".
-
Обертка Zend\DB c многоязычностью, историей изменений и обсуждениями
-
Работа с картинками, ресайз на лету
-
Работа с js и css, библиотека зависимостей (пока захардкоженая), объединение и минификация файлов
-
Мобильная и десктопная версии, основанные на разных шаблонах.
-
Авторизация пользователей основаная на ролях
-
Рефакторинг, создание нормального подключаемого пакета, тестирование
-
Поддержка списков с категориями
-
Группы элементов и фильтры в формах, валидация на стороне клиента
-
Кодогенератор с интерфесом в виде Eclipse-плагина
-
Подключаемые Библиотеки JS и CSS, возможно интеграция с bower
ContextSwitcher - переключение мобильной и десктопной версии (мобильные виды см. папку \module\Application\view_mobile )
ControllerAnnotationListener - подключение аннотаций Roles и Layout контроллеров
CRUDController - реализация CRUD для админок, сделаны списки итомов с фильтрами и пагинацией, календарь итемов, редактирование итема, сохранение истории
CRUDCalendarModel, CRUDEditModel, CRUDListModel.php - интерфейсы поставщиков данных для CRUDController
FormErrors - контейнер для ошибок в контроллере
Identity - Текущий пользователь с его ролями
ImageService - Обработка картинок
VideoService - для видео (не готово)
Mailer - Рассыльщик почты с шаблонизатором и вложениями
NavigationFactory - Фабрика Zend для навигации в админке
SiteController - базовый класс для контроллеров. Реализована: авторизация на основе ролей с редиректами, и управление шаблонами (layouys)
Annotations\Layout - аннотация контроллера для задания шаблона страниц
Annotations\Roles - аннотация контроллера для задания допустимых ролей пользователя
TraitInitializer - инициализатор для разных фич из пакета Traits
Utils - всякое
View - класс для обеспечения автокмплита хелперов в видах
ControllerPlugin\SendFlashMessage - моя реализация флеш-сообщений
пакет Db - обертка для Zend\Dd. Реализованы:
-
многоязычные сущности Multilingual
-
история изменений Historical (настройки для каждой сущности в файле config/entity.fields.global.php)
-
комментарии Discussion
-
добавлены удобные функции fetchPairs, fetchOne, fetchGroups
-
многое другое, все реализовано на ассоциативных массивах без паттерна ActiveRecord
пакет Form моя реализация форм, тесно связан с CRUDController.
расширение основано на трейтах, см. например /module/Admin/src/Forms/MasterPriceElements.php
ViewHelper\Assets - управление подключенными js и css файлами. В продакшн режиме объединяет и минифицирует файлы.
ViewHelper\Image - вывод изображения с ресайзом и кэшированием
ViewHelper\Sidebar - задать шаблон сайдбара в непосредственно основном шаблоне
ViewHelper\Sorter.php - столбцы с сортировкой в списках, связано с CRUDController
ViewHelper\Html - всякое
папка proto-gen - кодогенератор. Велосипед и собраный на коленке.
proto-gen/protos шаблоны для кодонгенератора
proto-gen/Entity - модель сущности
остальные файлы - точки входа для КГ с примерами данных. При запуске происходит перезапись существующего кода с бэкапом в папку build
так же генерируеться DDL для MySQL и код для настроек истории