SO 1-final
[specialops1.git] / whois.php
blobbd3935c3cc1ef4d641caedbb359791283ed76b51
1 <?php
2 require 'config.php';
3 $require_login = true;
4 $page_name = 'User Information';
5 $title_name = 'Whois';
6 require 'top.inc.php';
7 include 'include/levels.php';
9 if ( isset($_POST['submit']) && ADMIN <= $userinfo['level']
10 && mysql_result(mysql_query('SELECT MD5(`name`) FROM `users` WHERE `user` = '.intval($_GET['u'])), 0) == $_POST['hash'] ) {
11 if ( 'Ban User' == $_POST['submit'] ) {
12 mysql_query('UPDATE `users` SET `level` = '.BANNED_USER.' WHERE `user` = '.intval($_GET['u']));
13 echo '<div class="alert">User banned.</div>';
15 elseif ( 'Flood Control' == $_POST['submit'] ) {
16 $topics = mysql_query('SELECT `topic` FROM `topics` WHERE `user` = '.intval($_GET['u']));
18 while ($topic = mysql_fetch_row($topics)) {
19 mysql_query('DELETE FROM `topics` WHERE `topic` = '.$topic[0].' LIMIT 1');
20 $msgs = mysql_query('SELECT `message` FROM `messages` WHERE `topic` = '.$topic[0]);
22 while ($msg = mysql_fetch_row($msgs)) {
23 mysql_query('DELETE FROM `messages` WHERE `message` = '.$msg[0]);
24 mysql_query('DELETE FROM `message-data` WHERE `message` = '.$msg[0]);
28 $msgs = mysql_query('SELECT `message` FROM `messages` WHERE `user` = '.intval($_GET['u']));
30 while ( $msg = mysql_fetch_row($msgs) ) {
31 mysql_query('DELETE FROM `messages` WHERE `message` = '.$msg[0]);
32 mysql_query('DELETE FROM `message-data` WHERE `message` = '.$msg[0]);
35 mysql_query('OPTIMIZE TABLE `message-data`, `messages`, `topics`');
36 echo '<div class="alert">User\'s posts have been deleted.</div>';
38 elseif ( 'Confirm Account' == $_POST['submit'] ) {
39 mysql_query('UPDATE `users` SET `level` = '.NEW_USER.' WHERE `user` = '.intval ($_GET['u']));
40 echo '<div class="alert">User activated.</div>';
44 if ( isset($_POST['suspend']) && MOD <= $userinfo['level'] ) {
45 mysql_query('UPDATE `users` SET `level` = '.BANNED_USER.' WHERE `user` = '.intval ($_GET['u']));
46 echo '<div class="alert">User suspended.</div>';
49 $whois = mysql_fetch_assoc(mysql_query('SELECT * FROM `users` WHERE `user` = '.intval($_GET['u'])));
50 if ( !$whois )
51 stop('Invalid user ID.');
53 $posts = mysql_result(mysql_query('SELECT COUNT(*) FROM `messages` WHERE `user` = '.$whois['user'].' AND `visible` >= 0'), 0);
54 $topics = mysql_result(mysql_query('SELECT COUNT(*) FROM `topics` WHERE `user` = '.$whois['user'].' AND `visible` >= 0'), 0);
56 switch ( $whois['theme'] ) {
57 case 0:
58 $usertheme = 'Custom
59 <form action="theme.php" method="post">
60 <input type="hidden" name="usertheme" value="'.intval($_GET['u']).'"/>
61 <input type="submit" name="import" value="Use"/>
62 <input type="submit" name="preview" value="Preview"/>
63 </form>';
64 break;
65 default:
66 $usertheme = mysql_result(mysql_query('SELECT `title` FROM `styles` WHERE `style` = '.$whois['theme']), 0);
67 break;
70 echo '<table>
71 <tr class='.colour().'><td>User ID</td><td>',$whois['user'],'</td></tr>
72 <tr class=',colour(),'><td>Username</td><td>',$whois['name'],'</td></tr>
73 <tr class=',colour(),'><td>User Level</td><td>',$cfg['leveldesc'][$whois['level']],'</td></tr>
74 <tr class=',colour(),'><td>',$strings['cookies'],'</td><td>',$whois['cookies'],'</td></tr>
75 <tr class=',colour(),'><td>',$strings['points'],'</td><td>',$whois['points'],'</td></tr>
76 <tr class=',colour(),'><td>Posts</td><td>',$posts,'</td></tr>
77 <tr class=',colour(),'><td>Topics</td><td>',$topics,'</td></tr>
78 <tr class=',colour(),'><td>Register Date</td><td>',$whois['register_date'],' (account age: '.floor((time() - strtotime($userinfo['register_date'])) / 86400).' days)</td></tr>
79 <tr class=',colour(),'><td>Last Activity Date</td><td>',$whois['last_active'],'</td></tr>
80 <tr class=',colour(),'><td>Idle time</td><td>',idletime(strtotime($whois['last_active'])),'</td></tr>
81 <tr class=',colour(),'><td>Theme</td><td>',$usertheme,'</td></tr>
82 <tr class=',colour(),'><td>Public Email Address</td><td><a href="mailto:',$whois['public_email'],'">',$whois['public_email'],'</a></td></tr>
83 <tr class=',colour(),'><td>Sig</td><td>',nl2br($whois['sig']),'</td></tr>
84 <tr class=',colour(),'><td>Quote</td><td>',$whois['quote'],'</td></tr>';
86 if ( $userinfo['level'] >= MOD )
87 echo '<tr class=',colour(),'><td>Private Email Address</td><td><a href="mailto:',$whois['private_email'],'">',$whois['private_email'],'</a></td></tr>';
89 if ( $userinfo['level'] >= ADMIN ) {
90 $regip = long2ip($whois['register_ip']);
91 $lastip = long2ip($whois['last_ip']);
92 echo '<tr class=',colour(),'><td>Signup Email Address</td><td><a href="mailto:',$whois['register_email'],'">',$whois['register_email'],'</a></td></tr>
93 <tr class=',colour(),'><td>Registration IP</td><td><a href="ipinfo.php?ip=',$regip,'">',$regip,'</a></td></tr>
94 <tr class=',colour(),'><td>Last IP</td><td><a href="ipinfo.php?ip=',$lastip,'">',$lastip,'</a></td></tr>';
95 echo '
96 <tr class='.colour().'><td>Browser</td><td>'.$whois['useragent'].'</td></tr>
97 </table>';
100 if ( $userinfo['level'] < MOD )
101 stop();
103 echo '
104 <h2>Moderator Tools</h2>
105 <ul>
106 <li><a href="posthistory.php?user=',$whois['user'],URL_APPEND,'">Message History</a></li>
107 </ul>
108 <form method="post" action="?u=',$whois['user'],URL_APPEND,'">
109 <input type="hidden" name="hash" value="',md5($whois['name']),'"/>
110 <input type="submit" name="suspend" value="Suspend User" style="color:#fff; background:#f80; border-color:#f80; font-weight: bold"/>
111 </form>';
113 if ( $userinfo['level'] < ADMIN )
114 footer();
116 echo '
117 <h2>Admin Tools</h2>
118 <ul>
119 <li><a href="edituser.php?user=',$whois['user'],URL_APPEND,'">Edit userinfo</a></li>
120 </ul>
121 <form method="post" action="?u=',$whois['user'],URL_APPEND,'">
122 <input type="hidden" name="hash" value="'.md5($whois['name']).'"/>
123 <input type="submit" name="submit" value="Ban User" style="color:#fff; background:#f00; border-color:#f00; font-weight: bold"/>
124 <input type="submit" name="submit" value="Flood Control" style="color:#000; background:#ff0; border-color:#ff0; font-weight: bold"/>',( $whois['level'] == INACTIVE_USER ? '
125 <input type="submit" name="submit" value="Confirm Account" style="color:#000; background:#0f0; border-color:#0f0; font-weight: bold"/>' : '' ),
126 '</form>';
128 footer();