Здравствуйте, нарисовалась проблема, надо бы внести изменение в Web-интерфейс, что-бы он ображал все страницы где это возможно в фуллскрин режиме по умолчанию, может кто уже пробовал делать что-то подобное, поделитесь опытом)
Ad Widget
Collapse
Кастомизация Web-интерфейса
Collapse
X
-
Мысли вслух:
Т.н. фуллскрин используется только для подстраниц раздела Мониторинг и прячет линки перехода на другие страницы..
По-видимому, люди на подстраницы Мониторинга приходят из вне.. Это раз.
Например, в Опере RMB-click на кнопке фулскрина - Проинспектировать элемент, и видим:
Ага, оно всего лишь добавляет параметр fullscreen=1 в URL.. Это два.Code:<span class="fullscreen menu_icon shadow" title="Во весь экран" onclick="javascript: document.location = 'http://10.0.0.3:80/zabbix/dashboard.php?sid=0XXXXXXXXXX820f3&fullscreen=1';">
Так может быть, проще решить задачу, добавив в этих самых внешних ссылках по параметру, чем лопатить PHP? Например, вот как-то так для последней карты: http://zabbix.local/maps.php?fullscreen=1 -
С фуллскрина Дашборда, доступны ссылки на избранные скрины, и на скринцы всех хостов которые висят в в списке последних событий, этих переходов вполне достаточно, и после них тоже должен отображаться фуллскрин запрашиваемых страниц, чтоб с них можно было только назад вернутся, и все.Comment
-
В includes/page_header.php
Достаточно это:
Заменить на:PHP Code:if ($_REQUEST['fullscreen'] = get_request('fullscreen', 0)) {
define('ZBX_PAGE_NO_MENU', 1);
define('ZBX_PAGE_FULLSCREEN', 1);
}
Это будет равносильно выбранному режиму "fullscreen"PHP Code:define('ZBX_PAGE_NO_MENU', 1);
define('ZBX_PAGE_FULLSCREEN', 1);
Comment
-
Если только для фаворитов в дашборде, то в include/blocks.inc.php
На примере графиков, чтобы для них всегда был включен фуллскрин
Замените наPHP Code:$link = new CLink(get_node_name_by_elid($sourceid, null, ': ').$ghost['name'].':'.$graph['name'], 'charts.php?graphid='.$sourceid);
Либо, если Вы желаете переходить на фуллскрин графики только в том случае если включен фуллскрин на дашборде то вот решениеPHP Code:$link = new CLink(get_node_name_by_elid($sourceid, null, ': ').$ghost['name'].':'.$graph['name'], 'charts.php?graphid='.$sourceid.'&fullscreen=1');
PHP Code:$link = new CLink(get_node_name_by_elid($sourceid, null, ': ').$ghost['name'].':'.$graph['name'], 'charts.php?graphid='.$sourceid.'&fullscreen='.get_request('fullscreen', 0));
Comment
-
Альтернативное решение
include/blocks.inc.php
Пример для карт:
PHP Code:$link = new CLink(get_node_name_by_elid($sysmapid, null, ': ').$sysmap['name'], 'maps.php?sysmapid='.$sysmapid);
PHP Code:$link = new CLink(get_node_name_by_elid($sysmapid, null, ': ').$sysmap['name'], 'maps.php?fullscreen=1&sysmapid='.$sysmapid);
Comment
-
Спасибо большое, довольно удобный способ, вот ток морда ругается , тип неизвестные переменные, когда нажимаешь фулл скрин вся ругань пропадает, не подскажите как заставить страницы исполнять этот скрипт по умолчанию чтоб пропали эти алерты?)В includes/page_header.php
Достаточно это:
Заменить на:PHP Code:if ($_request['fullscreen'] = get_request('fullscreen', 0)) {
define('zbx_page_no_menu', 1);
define('zbx_page_fullscreen', 1);
}
Это будет равносильно выбранному режиму "fullscreen"PHP Code:define('zbx_page_no_menu', 1);
define('zbx_page_fullscreen', 1);
Comment
-
Выше добавить строку
$_REQUEST['fullscreen'] будет всегда объявленымPHP Code:$_REQUEST['fullscreen'] = get_request('fullscreen', 0);
Comment
Comment