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

20
Интерфейс «Эрмитаж» с точки зрения разработчика Конференция 1C-Битрикс — 20 января 2011 Антон Герасимюк 01

Upload: latoya

Post on 23-Feb-2016

119 views

Category:

Documents


0 download

DESCRIPTION

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

TRANSCRIPT

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

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

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

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

01

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

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

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

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

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

02

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

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

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

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

checklist’у

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

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

03

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

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

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

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

04

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

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

части сайта

05

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

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

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

06

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

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

07

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

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

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

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

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

08

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

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

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

09

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

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

010

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

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

011

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

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

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

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

012

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

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

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

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

013

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

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

popup-окне

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

014

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

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

015

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

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

• header.php

016

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

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

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

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

017

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

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

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

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

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

018

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

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

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

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

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

019

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

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

• E-mail: [email protected]

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

• Twitter: twitter.com/compote

020