mirror of
https://github.com/Piwigo/Piwigo.git
synced 2026-08-10 18:53:01 +02:00
add MultiView controller on admin page (replaces the "switch theme" button)
git-svn-id: http://piwigo.org/svn/trunk@29168 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
@@ -101,6 +101,31 @@ class MultiView
|
||||
|
||||
return $url;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the current url minus MultiView params
|
||||
*
|
||||
* @param bool $with_amp - adds ? or & at the end of the url
|
||||
* @return string
|
||||
*/
|
||||
public function get_clean_admin_url($with_amp=false)
|
||||
{
|
||||
$url = PHPWG_ROOT_PATH.'admin.php';
|
||||
|
||||
$get = $_GET;
|
||||
unset($get['page'], $get['section'], $get['tag']);
|
||||
if (count($get) == 0 and !empty($_SERVER['QUERY_STRING']))
|
||||
{
|
||||
$url.= '?' . str_replace('&', '&', $_SERVER['QUERY_STRING']);
|
||||
}
|
||||
|
||||
if ($with_amp)
|
||||
{
|
||||
$url.= strpos($url, '?')!==false ? '&' : '?';
|
||||
}
|
||||
|
||||
return $url;
|
||||
}
|
||||
|
||||
/**
|
||||
* Triggered on "user_init", change current view depending of URL params.
|
||||
@@ -277,8 +302,11 @@ class MultiView
|
||||
$query = '
|
||||
SELECT
|
||||
'.$conf['user_fields']['id'].' AS id,
|
||||
'.$conf['user_fields']['username'].' AS username
|
||||
FROM '.USERS_TABLE.'
|
||||
'.$conf['user_fields']['username'].' AS username,
|
||||
status
|
||||
FROM '.USERS_TABLE.' AS u
|
||||
INNER JOIN '.USER_INFOS_TABLE.' AS i
|
||||
ON '.$conf['user_fields']['id'].' = user_id
|
||||
ORDER BY CONVERT('.$conf['user_fields']['username'].', CHAR)
|
||||
;';
|
||||
$out['users'] = array_from_query($query);
|
||||
|
||||
@@ -174,6 +174,50 @@ SELECT * FROM '.IMAGES_TABLE.'
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Add main toolbar to current page
|
||||
* @trigger loc_after_page_header
|
||||
*/
|
||||
function admintools_add_admin_controller()
|
||||
{
|
||||
global $MultiView, $conf, $template, $page, $user;
|
||||
|
||||
$url_root = get_root_url();
|
||||
$tpl_vars = array();
|
||||
|
||||
$tpl_vars['MULTIVIEW'] = $MultiView->get_data();
|
||||
$tpl_vars['DELETE_CACHE'] = isset($conf['multiview_invalidate_cache']);
|
||||
$tpl_vars['U_SELF'] = $MultiView->get_clean_admin_url(true);
|
||||
|
||||
if (($admin_lang = $MultiView->get_user_language()) !== false)
|
||||
{
|
||||
include_once(PHPWG_ROOT_PATH . 'include/functions_mail.inc.php');
|
||||
switch_lang_to($admin_lang);
|
||||
}
|
||||
|
||||
$template->assign(array(
|
||||
'ADMINTOOLS_PATH' => './plugins/' . ADMINTOOLS_ID .'/',
|
||||
'ato' => $tpl_vars,
|
||||
));
|
||||
|
||||
$template->set_filename('ato_admin_controller', realpath(ADMINTOOLS_PATH . 'template/admin_controller.tpl'));
|
||||
$template->parse('ato_admin_controller');
|
||||
|
||||
if ($MultiView->is_admin() && @$admin_lang !== false)
|
||||
{
|
||||
switch_lang_back();
|
||||
}
|
||||
|
||||
$template->set_prefilter('header', 'admintools_admin_prefilter');
|
||||
}
|
||||
|
||||
function admintools_admin_prefilter($content)
|
||||
{
|
||||
$search = '<a class="icon-brush tiptip" href="{$U_CHANGE_THEME}" title="{\'Switch to clear or dark colors for administration\'|translate}">{\'Change Admin Colors\'|translate}</a>';
|
||||
$replace = '<span id="ato_container"><a class="icon-cog-alt" href="#">{\'Tools\'|translate}</a></span>';
|
||||
return str_replace($search, $replace, $content);
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable privacy level switchbox
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user