In-Portal Developers Guide

This is a wiki-based Developers Guide for In-Portal Open Source CMS. The purpose of this guide is to provide advanced users, web developers and programmers with documentation on how to expand, customize and improve the functionality and the code the In-Portal software. Please consider contributing to our documentation writing effort.

K4:Adding New Button to Toolbar

From In-Portal Developers Guide

Jump to: navigation, search
Работа с шаблонами и блоками Работа с шаблонами и блоками
Статьи в этой категории

The toolbar is one of the key elements to control events in the templates. In order to add a new button to already existing Toolbar you would need to use the following Javascript code:

a_toolbar.AddButton(
	new ToolBarButton(
		'custom:sample_button',
		'<inp2:m_phrase label="la_ToolTip_SampleButton" escape="1"/>::<inp2:m_phrase label="la_ShortToolTip_SampleButton" escape="1"/>',
		function() {
			// alert('button worked');
		}
	)
);

Class constructor ToolBarButton accepts 5 parameters where only first 3 are requires:

Name Description
title (string) Button identifier (ID). The identifier must unique within a Toolbar. Additionally, in there is a way to specify a Module name in identifier which will be used in building the source path of the button image (see Структура директорий). Below are examples of filename for the button images which also determine type of the button:
  • tool_sample_button.gif - default state/view of the button (can be clicked);
  • tool_sample_button_f1.gif - вид кнопки, если на неё подвести курсор мышки (можно нажать);
  • tool_sample_button_f2.gif - вид кнопки, когда она не активна (можно не создавать если не используется).

В приведённом выше примере вместо "sample_button" нужно подставить фактическое название кнопки. Название модуля отделяется от названия кнопки при помощи символа двоеточия (":"). Если используемый модуль "core", то его указывать не требуется. В последствии можно использовать название кнопки (не идентификатор) для работы с кнопкой (включение, выключение и т.п.) из объекта панели инструментов.

alt (string) Фраза, показываемая при наведении курсора мыши на кнопку (mouseover). Также эта фраза используется для показывания вспомогательного текста под кнопкой (только если опция конфигурации UseToolbarLabels включена). Если указать 2 фразы разделённые с использованием двух двоеточий ("::"), то фраза указанная до разделителя будет использована в качестве краткой подсказки (при наведении мышки), а фраза указанная после разделителя будет использована в качестве текста, показываемого под кнопкой.
onclick (string) Действие, которое должно происходить при нажатии на кнопку. Обычно, для наглядности, динамически определяется функция и в ней пишется фактический JavaScript код, который должен быть выполнен.
$hidden (int) Кнопка должна быть сразу спрятана после своего добавления в панель инструментов.
prefix (string) Префикс, который влияет на ID, которое будет проставлено созданной кнопке.