3 * Administrative functions and views
6 function admin_userlist()
8 $ret = '<h3>List of Users</h3>';
11 $query = "SELECT nickname,realname,email,register_date FROM users WHERE status = 1 ORDER BY $order";
13 $sth = db_query($query);
15 if ($sth === false || pg_num_rows ($sth) == 0)
16 $ret .= '<p>Keine Nutzerdaten vorhanden.</p>';
18 $ret .= '<table class="font" width="100%" alt="">';
19 $ret .= '<tr><th>Login</th><th>Email</th><th>Since</th></tr>';
20 for ($n=0; $n < pg_num_rows ($sth); $n++) {
21 $row = pg_fetch_array ($sth, $n);
22 if (strlen($row['realname']))
23 $email = $row['email'] . '/' . $row['realname'];
25 $email = $row['email'];
27 $name = $row['realname'];
28 $register = explode(' ', $row['register_date']);
29 $register = $register[0];
30 $ret .= sprintf('<tr><td>%s</td><td>%s</td><td>%s</td></tr>',
31 $row['nickname'], $email, $register);
40 function admin_hitlist()
44 $ret = '<h3>Globale Hitlist</h3>';
46 $query = "SELECT zeitung,name,sum(counter) as counter FROM hits " .
47 "INNER JOIN zeitungen ON id = zeitung " .
48 "WHERE deleted IS false " .
49 "GROUP BY zeitung,name ORDER BY counter DESC";
51 $sth = db_query($query);
53 if ($sth === false || pg_num_rows ($sth) == 0)
54 $ret .= '<p>Keint Hitliste vorhanden</p>';
56 $ret .= '<table class="font" width="100%" alt="">';
57 $ret .= '<tr><th>Hits</th><th>Name</th></tr>';
58 for ($n=0; $n < pg_num_rows ($sth); $n++) {
59 $row = pg_fetch_array ($sth, $n);
60 $ret .= sprintf('<tr><td align="right">%d</td><td><a href="%szeitung/%d.html">%s</a></td></tr>',
61 $row['counter'], $cfg['basepath'], $row['zeitung'], $row['name']);
70 function layout_admin()
72 $ret = '<h2>Admin page</h2>';
73 $ret .= admin_userlist();
74 $ret .= admin_hitlist();