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

Last change on this file since 2108 was 2073, checked in by vdigital, 17 years ago

Revised to repsect HTML conformity and to remove a minor bug on template.
Only the real administrator template is used for the Controller page.

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