3 namespace Friendica\Module;
\r
5 use Friendica\BaseModule;
\r
6 use Friendica\Core\L10n;
\r
7 use Friendica\Core\Renderer;
\r
8 use Friendica\Database\DBA;
\r
10 abstract class BaseAdminModule extends BaseModule
\r
12 public static function post()
\r
14 if (!is_site_admin()) {
\r
18 // do not allow a page manager to access the admin panel at all.
\r
19 if (!empty($_SESSION['submanage'])) {
\r
24 public static function content()
\r
26 if (!is_site_admin()) {
\r
27 return Login::form();
\r
30 if (!empty($_SESSION['submanage'])) {
\r
34 $a = self::getApp();
\r
36 // APC deactivated, since there are problems with PHP 5.5
\r
37 //if (function_exists("apc_delete")) {
\r
38 // $toDelete = new APCIterator('user', APC_ITER_VALUE);
\r
39 // apc_delete($toDelete);
\r
42 $a->page['htmlhead'] .= Renderer::replaceMacros(Renderer::getMarkupTemplate('admin/settings_head.tpl'), []);
\r
48 // array(url, name, extra css classes)
\r
49 // not part of $aside to make the template more adjustable
\r
51 'information' => [L10n::t('Information'), [
\r
52 'overview' => ['admin' , L10n::t('Overview') , 'overview'],
\r
53 'federation' => ['admin/federation' , L10n::t('Federation Statistics') , 'federation']
\r
55 'configuration' => [L10n::t('Configuration'), [
\r
56 'users' => ['admin/users' , L10n::t('Users') , 'users'],
\r
57 'addons' => ['admin/addons' , L10n::t('Addons') , 'addons'],
\r
58 'themes' => ['admin/themes' , L10n::t('Themes') , 'themes'],
\r
59 'features' => ['admin/features' , L10n::t('Additional features') , 'features'],
\r
60 'tos' => ['admin/tos' , L10n::t('Terms of Service') , 'tos'],
\r
62 'database' => [L10n::t('Database'), [
\r
63 'deferred' => ['admin/queue/deferred', L10n::t('Inspect Deferred Workers'), 'deferred'],
\r
64 'workerqueue' => ['admin/queue' , L10n::t('Inspect worker Queue') , 'workerqueue'],
\r
66 'tools' => [L10n::t('Tools'), [
\r
67 'contactblock' => ['admin/blocklist/contact', L10n::t('Contact Blocklist') , 'contactblock'],
\r
68 'blocklist' => ['admin/blocklist/server' , L10n::t('Server Blocklist') , 'blocklist'],
\r
73 $addonsAdminStmt = DBA::select('addon', ['name'], ['plugin_admin' => 1], ['order' => ['name']]);
\r
74 foreach (DBA::toArray($addonsAdminStmt) as $addon) {
\r
75 $addons_admin[] = ['admin/addons/' . $addon['name'], $addon['name'], 'addon'];
\r
78 $t = Renderer::getMarkupTemplate('admin/aside.tpl');
\r
79 $a->page['aside'] .= Renderer::replaceMacros($t, [
\r
80 '$admin' => ['addons_admin' => $addons_admin],
\r
81 '$subpages' => $aside_sub,
\r
82 '$admtxt' => L10n::t('Admin'),
\r
83 '$plugadmtxt' => L10n::t('Addon Features'),
\r
84 '$h_pending' => L10n::t('User registrations waiting for confirmation'),
\r
85 '$admurl' => 'admin/'
\r