Made scaly theme less crap, set it as default
[specialops2.git] / user.php
blobb5be064d274b9755309f953a6edf0c3550223c71
1 <?php
2 /**
3 * Userinfo Page
5 * @author Anthony Parsons (xmpp:ant@specialops.ath.cx)
6 * @license file://COPYING
7 * @version $Id$
8 */
10 $prefetch = array('`points`', '`last_active_date`', '`register_date`', '`sig`', '`quote`',
11 '`reg_email`', '`public_email`', '`private_email`', '`useragent`',
12 'INET_NTOA(`last_login_ip`) AS `last_login_ip`',
13 'INET_NTOA(`last_ip`) AS `last_ip`',
14 'INET_NTOA(`reg_ip`) AS `reg_ip`');
16 require 'conf.php';
17 $page->title = 'User Details';
19 if ( ! ($user instanceof authuser) ) {
20 $page->errorfooter('login');
23 $uid = is_numeric($_SERVER['QUERY_STRING']) ? intval($_SERVER['QUERY_STRING']) : $user->userid;
25 if ( $user->userid != $uid && $DB->query('SELECT `userid` FROM `users` WHERE `userid` = '.$uid)->num_rows == 0 ) {
26 $page->errorfooter('userid');
29 if ( $user->userid == $uid ) {
30 $page->title = 'Your Details';
31 $user->userheader();
32 $user2 = $user;
33 } else {
34 $user2 = new reguser($uid, $prefetch);
35 $page->title = 'User Details for '.$user2->alias;
36 $user->userheader();
39 try {
40 $sig = new message($user2->sig);
41 $quote = new message($user2->quote);
42 } catch ( InvalidMessageException $e ) {
43 $sig = new message($user2->sig, message::M_HTML_NONE);
44 $quote = new message($user2->quote, message::M_HTML_NONE);
47 echo
48 '<dl class="user-info">
49 <dt>User Name</dt>
50 <dd><strong>',$user2->alias,'</strong></dd>
51 <dt>Account ID</dt>
52 <dd>',$user2->userid,'</dd>
53 <dt>Points</dt>
54 <dd>',$user2->points,'</dd>
55 <dt>Posts</dt>
56 <dd>',$user2->posts,'</dd>
57 <dt>Last Active</dt>
58 <dd>',$user->fdate($user2->last_active_date),'</dd>
59 <dt>Registration Date</dt>
60 <dd>',$user->fdate($user2->register_date),'</dd>
61 <dt>Signature</dt>
62 <dd>',( $sig->output ? $sig->output : '<var>Empty</var>'),'</dd>
63 <dt>Quote</dt>
64 <dd>',( $quote->output ? $quote->output : '<var>Empty</var>'),'</dd>
65 <dt>Public Contact Address</dt>
66 <dd>',( $user2->public_email ? $user2->public_email : '<var>Empty</var>'),'</dd>
67 <dt>Browser</dt>
68 <dd>',htmlspecialchars($user2->useragent),"</dd>
69 </dl>\n";
71 // Admin stuff
72 if ( $user->has_priv('admin') ) {
73 echo
74 '<h2 id="admin-info">Admin-only Information</h2>
75 <dl class="user-info">
76 <dt>Private Contact Address</dt>
77 <dd>',( $user2->private_email ? $user2->private_email : '<var>Empty</var>'),'</dd>
78 <dt>Signup Contact Address</dt>
79 <dd>',( $user2->reg_email ? $user2->reg_email : '<var>Empty</var>'),"</dd>\n";
81 $fields = array(
82 'Last Login From' => $user2->last_login_ip,
83 'Last Active From' => $user2->last_ip,
84 'Signed Up From' => $user2->reg_ip
87 foreach ( $fields as $title => $addr ) {
88 echo '<dt>',$title,"</dt>\n",
89 " <dd>",( is_null($addr) ? 'Unknown Address' : $addr ),"</dd>\n";
92 echo "</dl>\n";
95 if ( $user->userid == $uid ) {
96 echo
97 '<dl class="user-options">
98 <dt>User Options</dt>
99 <dd><a href="theme">Theme</a></dd>
100 <dd><a href="options">Options</a></dd>
101 <dd><a href="passwd">Change Password</a></dd>
102 <dd><a href="userlist">User Directory</a></dd>
103 <dd><a href="invites">Invites/Stuff</a></dd>
104 </dl>',"\n";
107 $page->pagefooter();