5 * @author Anthony Parsons (xmpp:ant@specialops.ath.cx)
6 * @license file://COPYING
10 $prefetch = array('`points`', '`last_active_date`', '`register_date`', '`sig`', '`quote`',
11 '`reg_contact`', '`public_contact`', '`private_contact`', '`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`');
17 $page->title
= 'User Details';
19 if ( ! ($user instanceof User_Authenticated
) ) {
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';
34 $user2 = new User_Registered($uid, $prefetch);
35 $page->title
= 'User Details for '.$user2->__toString();
39 $sig = new Message_Plaintext($user2->sig
);
40 $quote = new Message_Plaintext($user2->quote
);
44 <caption>User Details for <strong>',$user2,'</strong></caption>
45 <tr><th scope="row">Account ID</th><td>',$user2->userid
,'</td></tr>
46 <tr><th scope="row">Points</th><td>',$user2->points
,'</td></tr>
47 <tr><th scope="row">Posts</th><td>',$user2->posts
,'</td></tr>
48 <tr><th scope="row">Last Active</th><td>',$user->fdate($user2->last_active_date
),'</td></tr>
49 <tr><th scope="row">Registration Date</th><td>',$user->fdate($user2->register_date
),'</td></tr>
50 <tr><th scope="row">Timezone</th><td>UTC',sprintf('%+d', $user2->timezone
),'</td></tr>
51 <tr><th scope="row">Signature</th><td>',( $sig->getOutput() ?
$sig->getOutput() : '<var>Empty</var>'),'</td></tr>
52 <tr><th scope="row">Quote</th><td>',( $quote->getOutput() ?
$quote->getOutput() : '<var>Empty</var>'),'</td></tr>
53 <tr><th scope="row">Public Contact Address</th><td>',( $user2->public_contact ?
$user2->public_contact
: '<var>Empty</var>'),'</td></tr>
54 <tr><th scope="row">Browser</th><td>',htmlspecialchars($user2->useragent
),'</td></tr>
59 if ( $user->has_priv('admin') ) {
62 <caption>Admin-only Information</caption>
63 <tr><th scope="row">Private Contact Address</th><td>',( $user2->private_contact ?
$user2->private_contact
: '<var>Empty</var>'),'</td></tr>
64 <tr><th scope="row">Signup Contact Address</th><td>',( $user2->reg_contact ?
$user2->reg_contact
: '<var>Empty</var>'),"</td></tr>\n";
67 'Last Login From' => $user2->last_login_ip
,
68 'Last Active From' => $user2->last_ip
,
69 'Signed Up From' => $user2->reg_ip
72 foreach ( $fields as $title => $addr ) {
73 echo '<tr><th scope="row">',$title,'</th><td>',( is_null($addr) ?
'Unknown Address' : $addr ),"</td></tr>\n";
79 if ( $user->userid
== $uid ) {
83 <?php
if ( 0 >= $user->points
) { ?
>
86 <li
>User Directory
</li
>
88 <li
><a href
="theme">Theme
</a
></li
>
89 <li
><a href
="options">Options
</a
></li
>
90 <li
><a href
="userlist">User Directory
</a
></li
>
92 <li
><a href
="passwd">Change Password
</a
></li
>
93 <li
><a href
="points">Points FAQ
</a
></li
>