Justice — новое поколение готового решения для юридической компании. Две темы дизайна в одном решении, полностью переработанный backend, разворачивается за час.
В одном архиве — две независимые темы оформления: Classic в тёплой золотисто-графитовой палитре и Modern с бронзовым акцентом и off-white фоном. Переключение в админ-панели, в одно поле, без правки шаблонов. Backend переписан с нуля под PHP 8.1+ и Bitrix 23.200.0+: D7 ORM, типизированный SiteSettings, композитный кэш и инвалидация по тегам — на повторных хитах TTFB опускается до 30–50 мс. Закрыты XSS-, RCE- и SQL-инъекции, найденные в линейке 2.0.x.
Что входит в решение
Justice — это полный комплект для юридической компании: шаблон сайта, набор кастомных компонентов под витрину, демо-наполнение из 25 типов инфоблоков и автоматический визард установки. Никаких внешних модулей, лицензий и подписок докупать не нужно — всё работает на стандартном ядре Bitrix.
После установки вы получаете готовый рабочий сайт с типовой структурой юридической компании: услугами, кейсами, командой, отзывами, лицензиями, блогом, FAQ, акциями, вакансиями, магазином товаров и контактами. Демо-данные при желании ставятся или пропускаются прямо в визарде.
В дистрибутив входит:
- Шаблон сайта Justice с двумя темами (Classic / Modern), переключаемыми из админ-панели.
- 9 кастомных компонентов в неймспейсе codekeepers:* — меню, новости (list / detail), каталог, поиск (form / page / tags cloud), форма обратной связи.
- 25 типов инфоблоков с готовой XML-структурой: главная, услуги, кейсы, блог, команда, отзывы, лицензии, FAQ, акции, вакансии, контакты, мессенджеры, товары, баннеры, статистика, партнёры и т. д.
- 15 публичных страниц с правильной разметкой, lazy-load изображениями и подключёнными компонентами.
- Типизированный SiteSettings DTO с 66+ свойствами — единая точка управления настройками сайта (контакты, соцсети, логотипы, цвета, капча, тема).
Две темы дизайна в одном решении
В Justice собраны две полноценные темы оформления — это разные дизайн-системы, а не вариации одного шаблона. Переключение реализовано через атрибут data-theme на корне документа и набор CSS-переменных, поэтому смена темы не задевает разметку и не требует переустановки компонентов.


Что меняется при переключении темы:
- Палитра. Classic: золото #C89D66, тёмно-сапфировый #262B3E, светлый фон #F9F9F9. Modern: бронза #B0813A, тёмный primary #1B2A3F, off-white #F4EBDD.
- Геометрия карточек. Classic — традиционные прямые формы. Modern — скруглённые углы, мягкие тени, плавные анимации появления.
- Баннеры. Тумблер «фото в баннерах» включается отдельно для каждого баннера. В рекомендованных сборках Classic идёт с фото, Modern — без, на сплошном цвете.
- Шрифты и иконки. Базовая типографика общая (локальный Montserrat в WOFF2), различается только размерная сетка и плотность.
- Адаптивность. Modern дополнительно оптимизирован под планшет и мобайл — переработаны точки перелома, поведение шапки при скролле и сетка карточек.
Тема выбирается на 3-м шаге визарда. После установки её можно сменить в админке за один клик: «Контент → Информационные блоки → Основные настройки → Тема дизайна».

Backend переписан с нуля под PHP 8.1 и Bitrix 23
Линейка 2.0.x закрыла свой жизненный цикл на PHP 7.x и Bitrix main 22. Justice — это не патч поверх старого кода, а полностью переписанная архитектура на современном Bitrix-стеке.
Что внутри:
- PHP 8.1+, Bitrix main 23.200.0+. Совместимо с любой редакцией: Старт, Стандарт, Малый бизнес, Бизнес.
- D7 ORM, ServiceLocator, Application — никаких CIBlockElement::GetList() в горячем пути, никаких create_function и eval.
- PSR-4 автозагрузка через Bitrix\Main\Loader::registerAutoLoadClasses. Классы решения живут в module/lib/, namespace Codekeepers\Justice\*.
- Типизированный SiteSettings DTO (66+ readonly свойств) + Repository с tagged cache. Чтение настроек сайта — одно обращение к кэшу, а не запрос в инфоблок на каждом хите.
- Инвалидация по событиям OnAfterIBlockElementAdd / Update / Delete — кэш iblock_id_<id> и /site_settings/ Repository чистится мгновенно после правок в админке, без ручного «Очистить файлы кэша».
- PHPStan level 6 на module/lib/, 0 ошибок. Шаблоны компонентов переписаны: FrameHelper, экранирование вывода, починены N+1 запросы.
Безопасность: что закрыто относительно 2.0.x
Аудит линейки 2.0.x выявил несколько уязвимостей разной критичности. Все они в Justice закрыты на уровне кода, а не отключения функциональности.
- Удалён window.eval AJAX-ответа в кастомной форме обратной связи. Ответ сервера теперь парсится как JSON и валидируется по схеме — XSS через подмену ответа невозможен.
- Удалён create_function из шаблонов компонентов (запрещён в PHP 8.0+ и являлся вектором RCE при подстановке пользовательских данных). Заменён на анонимные функции с типизацией.
- Все параметры компонентов экранируются через htmlspecialcharsbx перед выводом. SQL-параметры в кастомных запросах проходят через Bitrix\Main\DB\SqlHelper::forSql.
- Реальная server-side проверка reCAPTCHA через Bitrix\Main\Web\HttpClient. Раньше токен только принимался, но не проверялся на стороне сервера — формы можно было отправлять ботами с любым g-recaptcha-response. Альтернативно поддерживается Yandex SmartCaptcha и встроенная капча Bitrix — выбор провайдера в админке.
- SVG-санитайзер на DOMDocument — XXE-safe: удаляются <script>, on*-handlers, javascript:-URI и внешние DTD. SVG-логотипы, загруженные через админку, гарантированно не содержат активного контента.
Дополнительно: серверная валидация всех форм обратной связи, локальные WOFF2-шрифты вместо CDN Google Fonts — нет утечки IP посетителей третьим сторонам, GDPR-friendly.
Производительность и SEO из коробки
Композитный кэш Bitrix включается визардом по умолчанию (composite_frame_mode_default=Y). На повторных хитах в ответе появляется заголовок X-Bitrix-Composite: Cache (file), TTFB падает с ~300 мс до 30–50 мс на типовом VPS. Кэш инвалидируется автоматически по событиям редактирования инфоблоков — без ручной чистки.

Базовые показатели:
- Lighthouse mobile: Performance 59–75, Accessibility 78–86, Best Practices 100, SEO 92 (зависит от наполнения и хостинга).
- Lazy-load изображений включён в 29 шаблонах компонентов.
- Локальный Montserrat в WOFF2 (~170 КБ суммарно) — без preconnect к Google Fonts, без сторонних запросов.
- robots.txt включён в дистрибутив с закрытыми /bitrix/, /upload/, /personal/ и AJAX-параметрами.
- Автогенерация sitemap.xml Bitrix-агентом каждые 6 часов (настраивается).
- OG-meta и meta description в header.php, заполняются из свойств страниц.
Установка за час: визард в 5 шагов
Установка полностью автоматизирована. На чистом Bitrix готовый сайт со всеми разделами поднимается за 40–60 минут вместе со сборкой композитного кэша и переиндексацией поиска.

- Выбор сайта. Можно ставить параллельно с существующим: визард создаёт отдельный каталог (например, /next/), первый сайт не затрагивается.
- Выбор шаблона. В поставке один шаблон Justice — шаг проходит автоматически.
- Настройки сайта. Логотип, слоган, копирайт, мета-теги, ключевые слова. Здесь же — чекбокс «Установить демо-данные».
- Установка. Регистрация модуля (если ещё не установлен), создание инфоблоков из XML, копирование публичных страниц, наполнение демо-данными.
- Завершение. Идемпотентный «sweep»: фиксируются макросы #SITE_ID# в CODE инфоблоков, создаётся почтовый шаблон формы обратной связи, включается композитный кэш, генерируется первый sitemap.xml.
Все post-install скрипты идемпотентны — визард можно безопасно прогонять повторно, в том числе при установке второго сайта.
15 публичных страниц и 25 типов контента
Решение не требует ручного создания структуры. Сразу после визарда в публичной части доступны все типовые разделы юридической компании, а в админке — соответствующие типы инфоблоков с заранее настроенными свойствами, формами редактирования и подписями полей на русском.
Готовые публичные страницы:
|
|
|
|
Демо-сайты (открываются в новой вкладке):
- Justice Classic — https://justice-classic.justdevcore.ru
- Justice Modern — https://justice-modern.justdevcore.ru
Поддержка и связь:
- Сайт партнёра — https://justdevcore.ru
- Email — glebmatveev@gmail.com
Партнёр Codekeepers, авторизованный разработчик 1С-Битрикс.
- Авторизоваться в панели управления Вашего сайта под правами администратора.
- Зайти в раздел Marketplace > Обновление решений - вкладка «Активация купона» и ввести купон в специальном поле.
- После ввода купона в списке решений для установки появится купленное решение. Нажмите «Установить» и следуйте дальнейшим инструкциям.
Спасибо, что выбрали "Justice"!
Будем рады помочь!
Команда разработки готовых решений CodeKeepers.
Для оперативного решения Ваших технических проблем, а также бесплатной консультации по установке решения необходимо написать нам письмо с подробным описанием Вашего вопроса в Telegram https://t.me/glebmatveev или по адресу glebmatveev@gmail.com (telegram в приоритете, т.к. почта не всегда доступна).
Спасибо, что выбрали "Justice"!
Будем рады помочь!
Команда разработки готовых решений CodeKeepers.
Для покупки товара в нашем интернет-магазине выберите понравившийся товар и добавьте его в корзину. Далее перейдите в Корзину и нажмите на «Оформить заказ» или «Быстрый заказ».
Если оформляете быстрый заказ: напишите ФИО, телефон и e-mail. Вам перезвонит менеджер и уточнит условия заказа. По результатам разговора вам придет подтверждение оформления товара на почту или через СМС. Теперь останется только ждать доставки и радоваться новой покупке.
Оформление заказа в стандартном режиме выглядит следующим образом. Заполняете полностью форму по последовательным этапам: адрес, способ доставки, оплаты, данные о себе. Советуем в комментарии к заказу написать информацию, которая поможет курьеру вас найти. Нажмите кнопку «Оформить заказ».
Оплачивайте покупки удобным способом. В интернет-магазине доступно 3 варианта оплаты:
- Наличные при самовывозе или доставке курьером. Специалист свяжется с вами в день доставки, чтобы уточнить время и заранее подготовить сдачу с любой купюры. Вы подписываете товаросопроводительные документы, вносите денежные средства, получаете товар и чек.
- Безналичный расчет при самовывозе или оформлении в интернет-магазине: карты МИР. Чтобы оплатить покупку на сайте, система перенаправит вас на сервер платежной системы. Здесь нужно ввести номер карты, срок действия и имя держателя.
- Электронные системы при онлайн-заказе: ЮMoney. Для совершения покупки система перенаправит вас на страницу платежного сервиса. Здесь необходимо заполнить форму по инструкции.
- Безналичная оплата на наш расчетный счет по выставленному счету.
Экономьте время на получении заказа. В интернет-магазине доступно 4 варианта доставки:
- Электронная поставка - все необходимые сведения о лицензии, праве пользования, кодах, ключах и др. высылаются покупателю на его e-mail.
- Курьерская доставка. Когда товар будет отправлен с нашего склада, Вам придет уведомление. В день доставки с Вами заблаговременно свяжется курьер для уточнения времени и деталей доставки. Доставка производится "до двери". Осмотрите упаковку на целостность и соответствие указанной комплектации.
- Постамат. Когда заказ поступит на точку, на Ваш телефон или e-mail придет уникальный код. Заказ нужно оплатить в терминале постамата. Срок хранения — 3 дня.
- Доставка Почтой России. Когда заказ придет в отделение, на Ваш адрес придет извещение о посылке. Перед оплатой Вы можете оценить состояние коробки: вес, целостность. Вскрывать коробку самостоятельно Вы можете только после оплаты заказа. Один заказ может содержать не больше 10 позиций и его стоимость не должна превышать 100 000 р.
Дополнительная информация.
Изучите полный алгоритм продления лицензий на модули 1С-Битрикс: Маркетплейс, включая активацию льготных купонов. Мы детально разбираем все условия: обязательный 30-дневный срок для сохранения максимальной выгоды, пропорциональное ценообразование (12,5%, 25%, 50% от цены модуля) и ограничение по минимальной сумме в 500 рублей. Этот гайд поможет вам эффективно планировать бюджет и гарантировать актуальность вашего проекта.

