Интерфейс «Эрмитаж» с точки зрения разработчика

Preview:

DESCRIPTION

Интерфейс «Эрмитаж» с точки зрения разработчика. Конференция 1C- Битрикс — 2 0 января 2011 Антон Герасимюк. Эрмитаж – новая концепция качества. Проблемы: безопасность проектов низкая производительность нет простоты управления недостаточно высокое качество внедрения продукта - PowerPoint PPT Presentation

Citation preview

Интерфейс «Эрмитаж» с точки зрения разработчика

Конференция 1C-Битрикс — 20 января 2011

Антон Герасимюк

01

Эрмитаж – новая концепция качества

Проблемы: • безопасность проектов• низкая производительность• нет простоты управления• недостаточно высокое качество внедрения продукта• все «шишки» на Битрикс

Цель: • повысить качество внедрения продуктов на Битриксе• разработать инструмент контроля качества внедрения

по методике Эрмитаж для клиентов и партнеров

02

Эрмитаж – новая концепция качества

Для разработчиков:• Методика разработки сайта с идеологией Эрмитажа• Checklist этапов разработки и внедрения проекта

Для клиентов:• Автоматический модуль проверки сайта по

checklist’у

Для партнеров:• Публикация проектов на сайте с отметкой

Эрмитаж, сортировка• Баллы за проекты

03

Checklist• Включено кеширование на всех страницах?• Изменялись файлы ядра?• Система обновлений настроена?• Используется управляемое кеширование?• Все страницы закешированы, но сколько запросов

без без кеширования?• Включена проактивная защита?• Редактор сайта может изменить контент через

публичную часть сайта?

04

Эрмитаж• Новая верхняя панель• Toolbar компонента• Toolbar для элементов списка• Вызов административных страниц в публичной

части сайта

05

Верхняя административная панель• Убрана вкладка «Разработка»• Вкладка «Редактирование» стала переключателем• В режиме просмотра больше кнопок редактирования• Перегруппировка кнопок по контексту• Два вида кнопок: маленькие по три в группе,

большие – по одной• API совместимо со старой панелью

06

Добавление кнопок в панель

07

Добавление контекстного меню• Добавление пунктов контекстного меню к любой

кнопке панели

• $APPLICATION->AddPanelButtonMenu($btnId, $arMenuItem)$btnId – идентификатор кнопки$arMenuItem – массив пунктов

• "RESORT_MENU" => true – пересортировка пунктов согласно индексу сортировки

08

Контекстное меню и toolbar компонента• Концепция Эрмитажа: основные действия выносятся

в toolbar, остальные остаются в контекстном меню

09

Контекстное меню и toolbar компонента

010

Toolbar для элементов списка

011

Toolbar для элементов списка1. Установить HTML-атрибут id для блочного тега

2. В compote_epilog.php определить кнопки toolbar’а с помощью метода:

$APPLICATION->SetEditArea($areaId, $arIcons); $areaId – идентификатор области с toolbar’ом $arIcons – массив иконок toolbar’a

012

Toolbar для элементов списка• Метод добавляет кнопку, которая открывает

указанный URL в popup-окне

• Метод добавляет кнопку удаления элемента

013

Административные страницы в публичке• Метод генерирует Javascript, открывающий URL в

popup-окне

• Кнопки управления элементами и разделами инфоблока

014

Бонус: новые методы буферизации

015

Бонус: новые методы буферизации• template.php

• header.php

016

Бонус: новые методы буферизации Методы, доступные в шаблоне (через $this)• CBitrixComponentTemplate::SetViewTarget($view, $pos)• CBitrixComponentTemplate::EndViewTarget()

Методы глобального объекта $APPLICATION• Cmain::AddViewContent($view, $content, $pos)• Cmain::ShowViewContent($view)

• $view – идентификатор буферизируемой области• $content – буферизируемый контент• $pos – сортировка вывода контента

017

Бонус: новые методы буферизации• Одному идентификатору $view может

соответствовать несколько буферов. Последовательность вывода контента определяется сортировкой $pos.

• Поддержка стандартного кеширования в компонентах.

• EndViewTarget() вызывать необязательно, конец шаблона вызывает завершение буферизации автоматически.

018

Разработка процедуры сдачи проекта

• Эрмитаж должен стать обязательной частью проекта

• Обязательное тестирование проекта с помощью нового модуля перед сдачей

• Мы готовы обсуждать и дорабатывать список проверок сайта

019

Спасибо за внимание

• E-mail: co@bitrix.ru

• Сайт: net.1c-bitrix.ru

• Twitter: twitter.com/compote

020