Add css and backtrace support in banana example
[banana.git] / examples / index.php
1 <?php
2 /********************************************************************************
3 * index.php : main page (newsgroups list)
4 * -----------
5 *
6 * This file is part of the banana distribution
7 * Copyright: See COPYING files that comes with this distribution
8 ********************************************************************************/
9
10 require_once("banana/banana.inc.php");
11
12 session_start();
13
14 class MyBanana extends Banana
15 {
16 protected function action_saveSubs($groups)
17 {
18 parent::action_saveSubs($groups);
19 setcookie('banana_subs', serialize(Banana::$profile['subscribe']));
20 return true;
21 }
22 }
23
24 if (isset($_COOKIE['banana_subs'])) {
25 Banana::$profile['subscribe'] = unserialize($_COOKIE['banana_subs']);
26 }
27 if (!isset($_SESSION['banana_lastnews']) && isset($_COOKIE['banana_lastnews'])) {
28 $_SESSION['banana_lastnews'] = $_COOKIE['banana_lastnews'];
29 }
30 if (isset($_SESSION['banana_lastnews'])) {
31 Banana::$profile['lastnews'] = $_SESSION['banana_lastnews'];
32 }
33 setcookie('banana_lastnews', time());
34
35 $banana = new MyBanana();
36 $res = $banana->run();
37 $css = $banana->css();
38 $bt = $banana->backtrace();
39
40 session_write_close();
41
42 ?>
43 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
44 <html xmlns="http://www.w3.org/1999/xhtml">
45 <head>
46 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
47 <meta name="description" content="WebForum2/Banana">
48 <link href="css/style.css" type="text/css" rel="stylesheet" media="screen">
49 <link href="css/banana.css" type="text/css" rel="stylesheet" media="screen">
50 <?php if ($css) { ?>
51 <style type="text/css">
52 <?php echo $css; ?>
53 </style>
54 <?php } ?>
55 <title>
56 Banana, a NNTP<->Web Gateway
57 </title>
58 </head>
59 <body>
60 <div class="bloc">
61 <h1>Les Forums de Banana</h1>
62 <?php echo $res; ?>
63 <div class="foot">
64 <em>Banana</em>, a Web interface for a NNTP Server<br />
65 Developed under GPL License for <a href="http://www.polytechnique.org">Polytechnique.org</a>
66 Use <em>silk</em> icons from <a href="http://www.famfamfam.com/lab/icons/silk/">www.famfamfam.com</a>
67 </div>
68 <?php
69 if ($bt) {
70 echo "<div class=\"backtrace\">";
71 foreach ($bt as &$entry) {
72 echo "<div><pre>" . $entry['action'] . "</pre>";
73 echo "<p style=\"padding-left: 4em;\">"
74 . "Exécution en " . sprintf("%.3fs", $entry['time']) . "<br />"
75 . "Retour : " . $entry['code'] . "<br />"
76 . "Lignes : " . $entry['response'] . "</p></div>";
77 }
78 echo "</div>";
79 }
80 ?>
81 </div>
82 </body>
83 </html>
84 <?php
85
86 // vim:set et sw=4 sts=4 ts=4
87 ?>