OSDN Git Service

BugTrack2/62:
[pukiwiki/pukiwiki.git] / skin / pukiwiki.skin.php
1 <?php
2 // PukiWiki - Yet another WikiWikiWeb clone.
3 // $Id: pukiwiki.skin.php,v 1.52 2007/02/11 05:53:31 henoheno Exp $
4 // Copyright (C)
5 //   2002-2006 PukiWiki Developers Team
6 //   2001-2002 Originally written by yu-ji
7 // License: GPL v2 or (at your option) any later version
8 //
9 // PukiWiki default skin
10
11 // ------------------------------------------------------------
12 // Settings (define before here, if you want)
13
14 // Set site identities
15 $_IMAGE['skin']['logo']     = 'pukiwiki.png';
16 $_IMAGE['skin']['favicon']  = ''; // Sample: 'image/favicon.ico';
17
18 // SKIN_DEFAULT_DISABLE_TOPICPATH
19 //   1 = Show reload URL
20 //   0 = Show topicpath
21 if (! defined('SKIN_DEFAULT_DISABLE_TOPICPATH'))
22         define('SKIN_DEFAULT_DISABLE_TOPICPATH', 1); // 1, 0
23
24 // Show / Hide navigation bar UI at your choice
25 // NOTE: This is not stop their functionalities!
26 if (! defined('PKWK_SKIN_SHOW_NAVBAR'))
27         define('PKWK_SKIN_SHOW_NAVBAR', 1); // 1, 0
28
29 // Show / Hide toolbar UI at your choice
30 // NOTE: This is not stop their functionalities!
31 if (! defined('PKWK_SKIN_SHOW_TOOLBAR'))
32         define('PKWK_SKIN_SHOW_TOOLBAR', 1); // 1, 0
33
34 // ------------------------------------------------------------
35 // Code start
36
37 // Prohibit direct access
38 if (! defined('UI_LANG')) die('UI_LANG is not set');
39 if (! isset($_LANG)) die('$_LANG is not set');
40 if (! defined('PKWK_READONLY')) die('PKWK_READONLY is not set');
41
42 $lang  = & $_LANG['skin'];
43 $link  = & $_LINK;
44 $image = & $_IMAGE['skin'];
45 $rw    = ! PKWK_READONLY;
46
47 // Decide charset for CSS
48 $css_charset = 'iso-8859-1';
49 switch(UI_LANG){
50         case 'ja': $css_charset = 'Shift_JIS'; break;
51 }
52
53 // ------------------------------------------------------------
54 // Output
55
56 // HTTP headers
57 pkwk_common_headers();
58 header('Cache-control: no-cache');
59 header('Pragma: no-cache');
60 header('Content-Type: text/html; charset=' . CONTENT_CHARSET);
61
62 // HTML DTD, <html>, and receive content-type
63 if (isset($pkwk_dtd)) {
64         $meta_content_type = pkwk_output_dtd($pkwk_dtd);
65 } else {
66         $meta_content_type = pkwk_output_dtd();
67 }
68
69 ?>
70 <head>
71  <?php echo $meta_content_type ?>
72  <meta http-equiv="content-style-type" content="text/css" />
73 <?php if ($nofollow || ! $is_read)  { ?> <meta name="robots" content="NOINDEX,NOFOLLOW" /><?php } ?>
74 <?php if (PKWK_ALLOW_JAVASCRIPT && isset($javascript)) { ?> <meta http-equiv="Content-Script-Type" content="text/javascript" /><?php } ?>
75
76  <title><?php echo $title ?> - <?php echo $page_title ?></title>
77
78  <link rel="SHORTCUT ICON" href="<?php echo $image['favicon'] ?>" />
79  <link rel="stylesheet" type="text/css" media="screen" href="<?php echo SKIN_DIR ?>pukiwiki.css.php?charset=<?php echo $css_charset ?>" charset="<?php echo $css_charset ?>" />
80  <link rel="stylesheet" type="text/css" media="print"  href="<?php echo SKIN_DIR ?>pukiwiki.css.php?charset=<?php echo $css_charset ?>&amp;media=print" charset="<?php echo $css_charset ?>" />
81  <link rel="alternate" type="application/rss+xml" title="RSS" href="<?php echo $link['rss'] ?>" /><?php // RSS auto-discovery ?>
82
83 <?php echo $head_tag ?>
84 </head>
85 <body>
86
87 <div id="header">
88  <a href="<?php echo $link['top'] ?>"><img id="logo" src="<?php echo IMAGE_DIR . $image['logo'] ?>" width="80" height="80" alt="[PukiWiki]" title="[PukiWiki]" /></a>
89
90  <h1 class="title"><?php echo $page ?></h1>
91
92 <?php if ($is_page) { ?>
93  <?php if(SKIN_DEFAULT_DISABLE_TOPICPATH) { ?>
94    <a href="<?php echo $link['reload'] ?>"><span class="small"><?php echo $link['reload'] ?></span></a>
95  <?php } else { ?>
96    <span class="small">
97    <?php require_once(PLUGIN_DIR . 'topicpath.inc.php'); echo plugin_topicpath_inline(); ?>
98    </span>
99  <?php } ?>
100 <?php } ?>
101
102 </div>
103
104 <div id="navigator">
105 <?php if(PKWK_SKIN_SHOW_NAVBAR) { ?>
106 <?php
107 function _navigator($key, $value = '', $javascript = ''){
108         $lang = & $GLOBALS['_LANG']['skin'];
109         $link = & $GLOBALS['_LINK'];
110         if (! isset($lang[$key])) { echo 'LANG NOT FOUND'; return FALSE; }
111         if (! isset($link[$key])) { echo 'LINK NOT FOUND'; return FALSE; }
112         if (! PKWK_ALLOW_JAVASCRIPT) $javascript = '';
113
114         echo '<a href="' . $link[$key] . '" ' . $javascript . '>' .
115                 (($value === '') ? $lang[$key] : $value) .
116                 '</a>';
117
118         return TRUE;
119 }
120 ?>
121  [ <?php _navigator('top') ?> ] &nbsp;
122
123 <?php if ($is_page) { ?>
124  [
125  <?php if ($rw) { ?>
126         <?php _navigator('edit') ?> |
127         <?php if ($is_read && $function_freeze) { ?>
128                 <?php (! $is_freeze) ? _navigator('freeze') : _navigator('unfreeze') ?> |
129         <?php } ?>
130  <?php } ?>
131  <?php _navigator('diff') ?>
132  <?php if ($do_backup) { ?>
133         | <?php _navigator('backup') ?>
134  <?php } ?>
135  <?php if ($rw && (bool)ini_get('file_uploads')) { ?>
136         | <?php _navigator('upload') ?>
137  <?php } ?>
138  | <?php _navigator('reload') ?>
139  ] &nbsp;
140 <?php } ?>
141
142  [
143  <?php if ($rw) { ?>
144         <?php _navigator('new') ?> |
145  <?php } ?>
146    <?php _navigator('list') ?>
147  <?php if (arg_check('list')) { ?>
148         | <?php _navigator('filelist') ?>
149  <?php } ?>
150  | <?php _navigator('search') ?>
151  | <?php _navigator('recent') ?>
152  | <?php _navigator('help')   ?>
153  ]
154 <?php } // PKWK_SKIN_SHOW_NAVBAR ?>
155 </div>
156
157 <?php echo $hr ?>
158
159 <?php if (arg_check('read') && exist_plugin_convert('menu')) { ?>
160 <table border="0" style="width:100%">
161  <tr>
162   <td class="menubar">
163    <div id="menubar"><?php echo do_plugin_convert('menu') ?></div>
164   </td>
165   <td valign="top">
166    <div id="body"><?php echo $body ?></div>
167   </td>
168  </tr>
169 </table>
170 <?php } else { ?>
171 <div id="body"><?php echo $body ?></div>
172 <?php } ?>
173
174 <?php if ($notes != '') { ?>
175 <div id="note"><?php echo $notes ?></div>
176 <?php } ?>
177
178 <?php if ($attaches != '') { ?>
179 <div id="attach">
180 <?php echo $hr ?>
181 <?php echo $attaches ?>
182 </div>
183 <?php } ?>
184
185 <?php echo $hr ?>
186
187 <?php if (PKWK_SKIN_SHOW_TOOLBAR) { ?>
188 <!-- Toolbar -->
189 <div id="toolbar">
190 <?php
191
192 // Set toolbar-specific images
193 $_IMAGE['skin']['reload']   = 'reload.png';
194 $_IMAGE['skin']['new']      = 'new.png';
195 $_IMAGE['skin']['edit']     = 'edit.png';
196 $_IMAGE['skin']['freeze']   = 'freeze.png';
197 $_IMAGE['skin']['unfreeze'] = 'unfreeze.png';
198 $_IMAGE['skin']['diff']     = 'diff.png';
199 $_IMAGE['skin']['upload']   = 'file.png';
200 $_IMAGE['skin']['copy']     = 'copy.png';
201 $_IMAGE['skin']['rename']   = 'rename.png';
202 $_IMAGE['skin']['top']      = 'top.png';
203 $_IMAGE['skin']['list']     = 'list.png';
204 $_IMAGE['skin']['search']   = 'search.png';
205 $_IMAGE['skin']['recent']   = 'recentchanges.png';
206 $_IMAGE['skin']['backup']   = 'backup.png';
207 $_IMAGE['skin']['help']     = 'help.png';
208 $_IMAGE['skin']['rss']      = 'rss.png';
209 $_IMAGE['skin']['rss10']    = & $_IMAGE['skin']['rss'];
210 $_IMAGE['skin']['rss20']    = 'rss20.png';
211 $_IMAGE['skin']['rdf']      = 'rdf.png';
212
213 function _toolbar($key, $x = 20, $y = 20){
214         $lang  = & $GLOBALS['_LANG']['skin'];
215         $link  = & $GLOBALS['_LINK'];
216         $image = & $GLOBALS['_IMAGE']['skin'];
217         if (! isset($lang[$key]) ) { echo 'LANG NOT FOUND';  return FALSE; }
218         if (! isset($link[$key]) ) { echo 'LINK NOT FOUND';  return FALSE; }
219         if (! isset($image[$key])) { echo 'IMAGE NOT FOUND'; return FALSE; }
220
221         echo '<a href="' . $link[$key] . '">' .
222                 '<img src="' . IMAGE_DIR . $image[$key] . '" width="' . $x . '" height="' . $y . '" ' .
223                         'alt="' . $lang[$key] . '" title="' . $lang[$key] . '" />' .
224                 '</a>';
225         return TRUE;
226 }
227 ?>
228  <?php _toolbar('top') ?>
229
230 <?php if ($is_page) { ?>
231  &nbsp;
232  <?php if ($rw) { ?>
233         <?php _toolbar('edit') ?>
234         <?php if ($is_read && $function_freeze) { ?>
235                 <?php if (! $is_freeze) { _toolbar('freeze'); } else { _toolbar('unfreeze'); } ?>
236         <?php } ?>
237  <?php } ?>
238  <?php _toolbar('diff') ?>
239 <?php if ($do_backup) { ?>
240         <?php _toolbar('backup') ?>
241 <?php } ?>
242 <?php if ($rw) { ?>
243         <?php if ((bool)ini_get('file_uploads')) { ?>
244                 <?php _toolbar('upload') ?>
245         <?php } ?>
246         <?php _toolbar('copy') ?>
247         <?php _toolbar('rename') ?>
248 <?php } ?>
249  <?php _toolbar('reload') ?>
250 <?php } ?>
251  &nbsp;
252 <?php if ($rw) { ?>
253         <?php _toolbar('new') ?>
254 <?php } ?>
255  <?php _toolbar('list')   ?>
256  <?php _toolbar('search') ?>
257  <?php _toolbar('recent') ?>
258  &nbsp; <?php _toolbar('help') ?>
259  &nbsp; <?php _toolbar('rss10', 36, 14) ?>
260 </div>
261 <?php } // PKWK_SKIN_SHOW_TOOLBAR ?>
262
263 <?php if ($lastmodified != '') { ?>
264 <div id="lastmodified">Last-modified: <?php echo $lastmodified ?></div>
265 <?php } ?>
266
267 <?php if ($related != '') { ?>
268 <div id="related">Link: <?php echo $related ?></div>
269 <?php } ?>
270
271 <div id="footer">
272  Site admin: <a href="<?php echo $modifierlink ?>"><?php echo $modifier ?></a><p />
273  <?php echo S_COPYRIGHT ?>.
274  Powered by PHP <?php echo PHP_VERSION ?>. HTML convert time: <?php echo $taketime ?> sec.
275 </div>
276
277 </body>
278 </html>