====== Доработка боковой панели sidebar “Adora Belle” RC1 ======
В версии DokuWiki от 2012-09-10 “Adora Belle” RC1 по умолчанию добавлена боковая панель. Содержимое панели хранится в файлах sidebar.txt по всему namespace, что позволяет панели быть контекстной. Недостаток дефолтовой панели - невозможность кастомизации по текущему пользователю и группам. Проблема решается доработкой файла ''inc/template.php'':\\
\\
До замены:
function tpl_sidebar($print = true) {
global $conf;
$sidebar = page_findnearest($conf['sidebar']);
if($sidebar) return tpl_include_page($sidebar, $print);
return '';
}
После замены:
function tpl_sidebar($print = true) {
global $conf;
global $INFO;
$sidebar = page_findnearest($conf['sidebar']);
$sidebaruser = page_findnearest("user:".$_SERVER['REMOTE_USER'].':'.$conf['sidebar']);
$sidebarnew ="";
if ($sidebar) $sidebarnew = $sidebarnew.tpl_include_page($sidebar, $print);
if ($INFO['userinfo']['name'] != "") {
foreach($INFO['userinfo']['grps'] as $grp) {
$group_sb = "group".':'.$grp.':'.$conf['sidebar'];
$sidebargroup = page_findnearest($group_sb);
if ($sidebargroup) $sidebargroup = $sidebarnew.tpl_include_page($sidebargroup, $print);
}
if ($sidebaruser) $sidebarnew = $sidebarnew.tpl_include_page($sidebaruser, $print);
}
return $sidebarnew;
}
Определение панелей для пользователей:\\
''data/pages/user//sidebar.txt''\\
\\
Определение панелей для групп:\\
''data/pages/group//sidebar.txt''\\
Например, чтобы отредактировать панель пользователя jamis7005 набираем в браузере url:
''http://www.prom-auto.ru/wiki/doku.php?id=user:jamis7005:sidebar''