source: trunk/plugins/admin_multi_view/controller.php @ 2016

Last change on this file since 2016 was 2016, checked in by rvelices, 17 years ago

admin multi view improvement: allow admins to change confshow_queries and confdebug_l10n for their session ...

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Author Date Id Revision
File size: 3.8 KB
Line 
1<?php
2define('MULTIVIEW_CONTROLLER', 1);
3define('PHPWG_ROOT_PATH','../../');
4include_once( PHPWG_ROOT_PATH.'include/common.inc.php' );
5
6if (!is_admin() or !function_exists('multiview_user_init') )
7{
8  pwg_unset_session_var( 'multiview_as' );
9  pwg_unset_session_var( 'multiview_theme' );
10  pwg_unset_session_var( 'multiview_lang' );
11  pwg_unset_session_var( 'multiview_show_queries' );
12  pwg_unset_session_var( 'multiview_debug_l10n' );
13?>
14<script type="text/javascript">
15  window.close();
16</script>
17<?php
18  exit();
19}
20
21$refresh_main = false;
22
23if ( isset($_GET['view_guest']) )
24{
25  pwg_set_session_var( 'multiview_as', $conf['guest_id'] );
26  $refresh_main = true;
27}
28elseif ( isset($_GET['view_admin']) )
29{
30  pwg_unset_session_var('multiview_as');
31  $refresh_main = true;
32}
33$view_as = pwg_get_session_var( 'multiview_as', 0 );
34
35
36if ( isset($_GET['theme']) )
37{
38  pwg_set_session_var( 'multiview_theme', $_GET['theme'] );
39  $refresh_main = true;
40}
41
42if ( isset($_GET['lang']) )
43{
44  pwg_set_session_var( 'multiview_lang', $_GET['lang'] );
45  $refresh_main = true;
46}
47
48if ( isset($_GET['show_queries']) )
49{
50  if ( $_GET['show_queries']> 0 )
51    pwg_set_session_var( 'multiview_show_queries', 1 );
52  else
53    pwg_unset_session_var( 'multiview_show_queries' );
54  $refresh_main = true;
55}
56
57if ( isset($_GET['debug_l10n']) )
58{
59  if ( $_GET['debug_l10n']>0 )
60    pwg_set_session_var( 'multiview_debug_l10n', 1 );
61  else
62    pwg_unset_session_var( 'multiview_debug_l10n' );
63  $refresh_main = true;
64}
65
66$my_url = get_root_url().'plugins/'.basename(dirname(__FILE__)).'/'.basename(__FILE__);
67$my_theme = get_root_url().'template/'.$user['template'].'/theme/'.$user['theme'].'/theme.css';
68
69$themes_html='Theme: <select onchange="document.location = this.options[this.selectedIndex].value;">';
70foreach (get_pwg_themes() as $pwg_template)
71{
72  $selected = $pwg_template == pwg_get_session_var( 'multiview_theme', $user['template'].'/'.$user['theme'] ) ? 'selected="selected"' : '';
73  $themes_html .=
74    '<option value="'
75    .$my_url.'?theme='.$pwg_template
76    .'" '.$selected.'>'
77    .$pwg_template
78    .'</option>';
79}
80$themes_html .= '</select>';
81
82$lang_html='Language: <select onchange="document.location = this.options[this.selectedIndex].value;">';
83foreach (get_languages() as $language_code => $language_name)
84{
85  $selected = $language_code == pwg_get_session_var( 'multiview_lang', $user['language'] ) ? 'selected="selected"' : '';
86  $lang_html .=
87    '<option value="'
88    .$my_url.'?lang='.$language_code
89    .'" '.$selected.'>'
90    .$language_name
91    .'</option>';
92}
93$lang_html .= '</select>';
94
95$show_queries_html='';
96if (!$conf['show_queries'])
97{
98  $show_queries_html = '<br/>';
99  if ( !pwg_get_session_var( 'multiview_show_queries', 0 ) )
100    $show_queries_html.='<a href="'.$my_url.'?show_queries=1">Show SQL queries</a>';
101  else
102    $show_queries_html.='<a href="'.$my_url.'?show_queries=0">Hide SQL queries</a>';
103}
104
105$debug_l10n_html='';
106if (!$conf['show_queries'])
107{
108  $debug_l10n_html = '<br/>';
109  if ( !pwg_get_session_var( 'multiview_debug_l10n', 0 ) )
110    $debug_l10n_html.='<a href="'.$my_url.'?debug_l10n=1">Debug language</a>';
111  else
112    $debug_l10n_html.='<a href="'.$my_url.'?debug_l10n=0">Revert debug language</a>';
113}
114?>
115
116<html>
117<head>
118<title>Controller</title>
119</head>
120<link rel="stylesheet" type="text/css" href="<?php
121echo $my_theme;
122?>">
123<body>
124
125<script type="text/javascript">
126if (window.opener==null) {
127  window.close();
128  document.write("<h2>How did you get here ???</h2>");
129}
130</script>
131
132View as:
133<?php
134  if ($view_as)
135    echo '<a href="'.$my_url.'?view_admin">admin</a>';
136  else
137    echo '<a href="'.$my_url.'?view_guest">guest</a>';
138?>
139
140<br />
141<?php echo $themes_html; ?>
142
143<br />
144<?php echo $lang_html; ?>
145
146<?php echo $show_queries_html; ?>
147<?php echo $debug_l10n_html; ?>
148
149<script type="text/javascript">
150<?php
151  if ($refresh_main) echo '
152window.opener.location = window.opener.location;';
153?>
154</script>
155
156</body>
157
158</html>
Note: See TracBrowser for help on using the repository browser.