Update list of crawlers
[infodrom.org/www.zeitungsliste.de] / lib / admin.inc
1 <?php
2 /*
3  * Administrative functions and views
4  */
5
6 function admin_userlist()
7 {
8   $ret = '<h3>List of Users</h3>';
9
10   $order = 'nickname';
11   $query = "SELECT nickname,realname,email,register_date FROM users WHERE status = 1 ORDER BY $order";
12
13   $sth = db_query($query);
14
15   if ($sth === false || pg_num_rows ($sth) == 0)
16     $ret .= '<p>Keine Nutzerdaten vorhanden.</p>';
17   else {
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'];
24       else
25         $email = $row['email'];
26
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);
32     }
33     
34     $ret .= '</table>';
35   }
36
37   return $ret;
38 }
39
40 function admin_hitlist()
41 {
42   global $cfg;
43
44   $ret = '<h3>Globale Hitlist</h3>';
45
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";
50
51   $sth = db_query($query);
52
53   if ($sth === false || pg_num_rows ($sth) == 0)
54     $ret .= '<p>Keint Hitliste vorhanden</p>';
55   else {
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']);
62     }
63     
64     $ret .= '</table>';
65   }
66
67   return $ret;
68 }
69
70 function layout_admin()
71 {
72   $ret = '<h2>Admin page</h2>';
73   $ret .= admin_userlist();
74   $ret .= admin_hitlist();
75   return $ret;
76 }