<?PHP
/* ====================
Seditio - Website engine
Copyright Neocrome & Seditio Team
http://www.neocrome.net
http://www.seditio.org
[BEGIN_SED]
File=admin.inc.php
Version=177
Updated=2015-feb-06
Type=Core
Author=Neocrome
Description=Administration panel
[END_SED]
==================== */
if (!defined('SED_CODE') || !defined('SED_ADMIN')) { die('Wrong URL.'); }
$c = sed_import('c','G','TXT');
$id = sed_import('id','G','TXT');
$m = sed_import('m','G','ALP', 24);
$mn = sed_import('mn','G','ALP', 24);
$po = sed_import('po','G','TXT');
$p = sed_import('p','G','TXT');
$l = sed_import('l','G','TXT');
$o = sed_import('o','P','TXT');
$w = sed_import('w','P','TXT');
$u = sed_import('u','P','TXT');
$s = sed_import('s','G','ALP', 24);
$msg = sed_import('msg', 'G', 'ALP');
list($usr['auth_read'], $usr['auth_write'], $usr['isadmin']) = sed_auth('admin', 'any');
sed_block($usr['auth_read']);
$enabled[0] = $L['Disabled'];
$enabled[1] = $L['Enabled'];
/* === Hook for the plugins === */
$extp = sed_getextplugins('admin.main');
if (is_array($extp))
{ foreach($extp as $k => $pl) { include('plugins/'.$pl['pl_code'].'/'.$pl['pl_file'].'.php'); } }
$sys['inc'] = (empty($m)) ? 'admin.home' : "admin.$m";
$sys['inc'] = (empty($s)) ? $sys['inc'] : $sys['inc'].".$s";
$sys['inc'] = 'system/core/admin/'.$sys['inc'].'.inc.php';
if (!file_exists($sys['inc']))
{ sed_die(); }
$allow_img['0']['0'] = "<img src=\"system/img/admin/deny.gif\" alt=\"\" />";
$allow_img['1']['0'] = "<img src=\"system/img/admin/allow.gif\" alt=\"\" />";
$allow_img['0']['1'] = "<img src=\"system/img/admin/deny_locked.gif\" alt=\"\" />";
$allow_img['1']['1'] = "<img src=\"system/img/admin/allow_locked.gif\" alt=\"\" />";
$t = new XTemplate(sed_skinfile('admin.menu', true));
// Options menu
list($usr['auth_read'], $usr['auth_write'], $usr['isadmin']) = sed_auth('admin', 'a');
if (sed_auth('admin', 'a', 'A'))
{
$sql = sed_sql_query("SELECT DISTINCT(config_cat) FROM $db_config WHERE config_owner='core'");
$config_menu .= "<ul>";
while ($row = sed_sql_fetchassoc($sql))
{
$config_menu .= "<li>";
$code = "core_".$row['config_cat'];
$config_menu_class = ($row['config_cat'] == $p) ? "current" : '';
$config_menu .= "<a href=\"".sed_url("admin", "m=config&n=edit&o=core&p=".$row['config_cat'])."\" class=\"".$config_menu_class."\">".$L[$code]."</a>";
$config_menu .= "</li>";
}
$config_menu .= "</ul>";
$t -> assign(array(
"ADMINMENU_CONFIG_URL" => sed_url('admin', "m=config"),
"ADMINMENU_CONFIG_URL_CLASS" => ($m == "config") ? "current" : "",
"ADMINMENU_CONFIG" => $config_menu
));
$t -> parse("ADMINMENU.CONFIG_MENU");
}
// Pages menu
$page_menu .= "<ul>";
$page_menu .= ($mn == 'queue') ? "<li>".sed_linkif(sed_url("admin", "m=page&mn=queue"), $L['adm_valqueue'], sed_auth('admin', 'any', 'A'), 'current')."</li>" : "<li>".sed_linkif(sed_url("admin", "m=page&mn=queue"), $L['adm_valqueue'], sed_auth('admin', 'any', 'A'))."</li>";
$page_menu .= ($m == 'page' && $s == 'add') ? "<li>".sed_linkif(sed_url("admin", "m=page&s=add"), $L['addnewentry'], sed_auth('page', 'any', 'A'), 'current')."</li>" : "<li>".sed_linkif(sed_url("admin", "m=page&s=add"), $L['addnewentry'], sed_auth('page', 'any', 'A'))."</li>";
$page_menu .= ($m == 'page' && $s == 'manager') ? "<li>".sed_linkif(sed_url("admin", "m=page&s=manager"), $L['adm_pagemanager'], sed_auth('page', 'any', 'A'), 'current')."</li>" : "<li>".sed_linkif(sed_url("admin", "m=page&s=manager"), $L['adm_pagemanager'], sed_auth('page', 'any', 'A'))."</li>";
if (sed_auth('admin', 'a', 'A'))
{
$page_menu .= ($mn == 'catorder') ? "<li>".sed_linkif(sed_url("admin", "m=page&mn=catorder"), $L['adm_sortingorder'], sed_auth('admin', 'a', 'A'), 'current')."</li>" : "<li>".sed_linkif(sed_url("admin", "m=page&mn=catorder"), $L['adm_sortingorder'], sed_auth('admin', 'a', 'A'))."</li>";
$page_menu .= ($mn == 'structure') ? "<li>".sed_linkif(sed_url("admin", "m=page&mn=structure"), $L['adm_structure'], sed_auth('admin', 'a', 'A'), 'current')."</li>" : "<li>".sed_linkif(sed_url("admin", "m=page&mn=structure"), $L['adm_structure'], sed_auth('admin', 'a', 'A'))."</li>";
}
$page_menu .= "</ul>";
$t -> assign(array(
"ADMINMENU_PAGE_URL" => sed_url('admin', "m=page"),
"ADMINMENU_PAGE_URL_CLASS" => ($m == "page" || $m == "pageadd") ? "current" : "",
"ADMINMENU_PAGE" => $page_menu
));
$t -> parse("ADMINMENU.PAGE_MENU");
// Forums menu & other
if (sed_auth('admin', 'a', 'A'))
{
$forums_menu .= "<ul class=\"arrow_list\">";
$forums_menu .= ($m == "forums" && empty($s)) ? "<li>".sed_linkif(sed_url("admin", "m=forums"), $L['adm_forum_structure_cat'], sed_auth('admin', 'a', 'A'), 'current')."</li>" : "<li>".sed_linkif(sed_url("admin", "m=forums"), $L['adm_forum_structure_cat'], sed_auth('admin', 'a', 'A'))."</li>";
$forums_menu .= ($s == "structure") ? "<li>".sed_linkif(sed_url("admin", "m=forums&s=structure"), $L['adm_forum_structure'], sed_auth('admin', 'a', 'A'), 'current')."</li>" : "<li>".sed_linkif(sed_url("admin", "m=forums&s=structure"), $L['adm_forum_structure'], sed_auth('admin', 'a', 'A'))."</li>";
$forums_menu .= "</ul>";
$t -> assign(array(
"ADMINMENU_FORUMS_URL" => sed_url('admin', "m=forums"),
"ADMINMENU_FORUMS_URL_CLASS" => ($m == "forums") ? "current" : "",
"ADMINMENU_FORUMS" => $forums_menu
));
$t -> parse("ADMINMENU.FORUMS_MENU");
$t -> assign(array(
"ADMINMENU_USERS_URL" => sed_url('admin', "m=users"),
"ADMINMENU_USERS_URL_CLASS" => ($m == 'users') ? 'current' : ''
));
$t -> parse("ADMINMENU.USERS_MENU");
$t -> assign(array(
"ADMINMENU_PLUGINS_URL" => sed_url('admin', "m=plug"),
"ADMINMENU_PLUGINS_URL_CLASS" => ($m == 'plug') ? 'current' : ''
));
$t -> parse("ADMINMENU.PLUGINS_MENU");
$t -> assign(array(
"ADMINMENU_LOG_URL" => sed_url('admin', "m=log"),
"ADMINMENU_LOG_URL_CLASS" => ($m == 'log') ? 'current' : ''
));
$t -> parse("ADMINMENU.LOG_MENU");
$t -> assign(array(
"ADMINMENU_TRASHCAN_URL" => sed_url('admin', "m=trashcan"),
"ADMINMENU_TRASHCAN_URL_CLASS" => ($m == 'trashcan') ? 'current' : ''
));
$t -> parse("ADMINMENU.TRASHCAN_MENU");
$t -> assign(array(
"ADMINMENU_TOOLS_URL" => sed_url('admin', "m=tools"),
"ADMINMENU_TOOLS_URL_CLASS" => ($m == 'tools') ? 'current' : ''
));
$t -> parse("ADMINMENU.TOOLS_MENU");
}
$t -> assign(array(
"ADMINMENU_URL" => sed_url('admin'),
"ADMINMENU_URL_CLASS" => (empty($m)) ? 'current' : ''
));
$t -> parse("ADMINMENU");
$adminmenu = $t -> text("ADMINMENU");
require($sys['inc']);
$adminmain .= (empty($adminhelp)) ? '' : "<div class=\"content-box\"><div class=\"content-box-header\"><h3>".$L['Help']."</h3></div>";
$adminmain .= (empty($adminhelp)) ? '' : "<div class=\"content-box-content\">".$adminhelp."</div></div>";
$out['subtitle'] = $L['Administration'];
/**/
$title_tags[] = array('{MAINTITLE}', '{SUBTITLE}', '{TITLE}');
$title_tags[] = array('%1$s', '%2$s', '%3$s');
$title_data = array($cfg['maintitle'], $cfg['subtitle'], $out['subtitle']);
$out['subtitle'] = sed_title('admintitle', $title_tags, $title_data);
/**/
require("system/header.php");
$t = new XTemplate(sed_skinfile("admin", true));
$t->assign(array(
"ADMIN_TITLE" => sed_build_adminsection($adminpath),
"ADMIN_BREADCRUMBS" => sed_build_adminsection($adminpath, 'breadcrumbs', '<i class="fa fa-lg fa-home"></i> '),
"ADMIN_SUBTITLE" => $adminsubtitle,
"ADMIN_MENU" => $adminmenu,
"ADMIN_URL" => sed_url('admin'),
"ADMIN_MAIN" => $adminmain,
));
$t->assign(array (
"ADMIN_USER_NAME" => $usr['name'],
"ADMIN_USER_LOGINOUT" => $out['loginout']
));
$t->parse("MAIN.ADMIN_USER");
if (!empty($msg) || !empty($adminwarnings))
{
require("system/lang/$lang/message.lang.php");
$msg_type = (array_key_exists($msg, $cfg['msgtype'])) ? $cfg['msgtype_name'][$cfg['msgtype'][$msg]] : $cfg['msgtype_name']['i'];
$t->assign(array(
"ADMIN_MSG_CLASS" => (!empty($adminwarnings)) ? $cfg['msgtype_name']['a'] : $msg_type,
"ADMIN_MSG_TITLE" => (!empty($adminwarnings)) ? $L['adm_warnings'] : $L["msg".$msg."_0"],
"ADMIN_MSG_TEXT" => (!empty($adminwarnings)) ? $adminwarnings : $L["msg".$msg."_1"]
));
$t->parse("MAIN.ADMIN_MESSAGE");
}
/* === Hook for the plugins === */
$extp = sed_getextplugins('admin.tags');
if (is_array($extp))
{ foreach($extp as $k => $pl) { include('plugins/'.$pl['pl_code'].'/'.$pl['pl_file'].'.php'); } }
/* ===== */
$t->parse("MAIN");
$t->out("MAIN");
require("system/footer.php");
?>