DAViCal
interactive-page.php
1 <?php
2 require_once('MenuSet.php');
3 
4 
5 $home_menu = new MenuSet('submenu', 'submenu', 'submenu_active');
6 if ( isset($c->authenticate_hook['server_auth_type']) ) {
7  if ( isset($c->authenticate_hook['logout']) ) {
8  $home_menu->AddOption(translate('Logout'), $c->authenticate_hook['logout'], translate('Log out of DAViCal') );
9  } else {
10  $home_menu->AddOption(translate('Home'), $c->base_url.'/index.php'); // dummy, so the menu gets shown
11  }
12 } else {
13  $home_menu->AddOption(translate('Logout'), $c->base_url.'/index.php?logout', translate('Log out of DAViCal') );
14 }
15 
16 $wiki_help = '';
17 if ( isset($_SERVER['SCRIPT_NAME']) ) {
18  $wiki_help = preg_replace('#^.*/#', '', $_SERVER['SCRIPT_NAME']);
19  $wiki_help = preg_replace('#\.php.*$#', '', $wiki_help);
20  if ( $wiki_help == 'admin' ) {
21  $wiki_help .= '/' . $_GET['t'] . '/' . $_GET['action'];
22  }
23 
24  $wiki_help = htmlspecialchars($wiki_help);
25 
26  $wiki_help = 'w/Help/'.$wiki_help;
27 }
28 
29 
30 $help_menu = new MenuSet('submenu', 'submenu', 'submenu_active');
31 $help_menu->AddOption(translate('DAViCal Homepage'),'https://www.davical.org/',translate('The DAViCal Home Page'), false, 6000, true );
32 $help_menu->AddOption(translate('DAViCal Wiki'),'https://wiki.davical.org/'.$wiki_help,translate('Visit the DAViCal Wiki'), false, 7000, true );
33 $help_menu->AddOption(translate('Request Feature'),'https://davical.uservoice.com/',translate('Go to the DAViCal Feature Requests'), false, 8000, true );
34 $help_menu->AddOption(translate('Report Bug'),'https://gitlab.com/davical-project/davical/issues',translate('Report a bug in the system'), false, 9000, true );
35 
36 $user_menu = new MenuSet('submenu', 'submenu', 'submenu_active');
37 $user_menu->AddOption(translate('View My Details'),$c->base_url.'/admin.php?action=edit&t=principal&id='.$session->principal_id,translate('View my own principal record'));
38 $user_menu->AddOption(translate('List Users'),$c->base_url.'/admin.php?action=browse&t=principal&type=1');
39 $user_menu->AddOption(translate('List Resources'),$c->base_url.'/admin.php?action=browse&t=principal&type=2');
40 $user_menu->AddOption(translate('List Groups'),$c->base_url.'/admin.php?action=browse&t=principal&type=3');
41 
42 $admin_menu = new MenuSet('submenu', 'submenu', 'submenu_active');
43 if ( $session->AllowedTo('Admin' )) {
44  $admin_menu->AddOption(translate('Setup'),$c->base_url.'/setup.php',translate('Setup DAViCal') );
45  $admin_menu->AddOption(translate('Upgrade Database'),$c->base_url.'/upgrade.php',translate('Upgrade DAViCal database schema') );
46  $admin_menu->AddOption(translate('Tools'),$c->base_url.'/tools.php',translate('Import calendars and Synchronise LDAP.') );
47  $admin_menu->AddOption(translate('List External Calendars'),$c->base_url.'/admin.php?action=browse&t=external');
48  $admin_menu->AddOption(translate('iSchedule Configuration'),$c->base_url.'/iSchedule.php');
49 
50  $user_menu->AddOption(translate('Inactive Principals'),$c->base_url.'/admin.php?action=browse&t=principal&active=f');
51  $user_menu->AddOption(translate('Create Principal'),$c->base_url.'/admin.php?action=edit&t=principal',translate('Create a new principal (i.e. a new user, resource or group)'));
52 }
53 
54 $related_menu = new MenuSet('related', 'menu', 'menu_active');
55 
56 $main_menu = new MenuSet('menu', 'menu', 'menu_active');
57 $main_menu->AddSubMenu($home_menu, translate('Home'), $c->base_url.'/index.php', translate('Home Page'), false, 1000);
58 $main_menu->AddSubMenu($user_menu, translate('User Functions'), $c->base_url.'/admin.php?action=browse&t=principal&type=1', translate('Browse all users'), false, 2000);
59 $main_menu->AddSubMenu($admin_menu, translate('Administration'), $c->base_url.'/index.php', translate('Administration'), false, 3000);
60 $main_menu->AddSubMenu($help_menu, translate('Help'), $c->base_url.'/help.php',translate('Help on the current screen'), false, 9000);
61