Advertisement
Guest User

Untitled

a guest
May 14th, 2014
31
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.94 KB | None | 0 0
  1. ok here is my server.php file
  2.  
  3. <?php
  4. include 'core/init.php';
  5. include 'includes/overall/header.php';
  6. include 'core/functions/recaptchalib.php';
  7.  
  8. $server_id = (INT)$_GET['id'];
  9. $user_id = id_to_user_id($server_id);
  10. $addedBy = username_from_user_id($user_id);
  11.  
  12. if(empty($_GET['id']) == true || $addedBy == false){echo "<h2>Server not found.</h2>";include 'includes/overall/footer.php';die();}
  13.  
  14. $result = mysql_query("SELECT * FROM `servers` WHERE `id` = '$server_id'");
  15. $server_data = mysql_fetch_array($result, MYSQL_ASSOC);
  16.  
  17. $last_update = time() - $server_data['cache_time'];
  18. $last_updateM = intval($last_update/60);
  19. $info = array();
  20.  
  21. //Check if server was already queried in the last X seconds
  22. // if yes -> get the cache data from database
  23. // if no -> recheck
  24.  
  25. if($server_data['cache_time'] > time() - $settings['server_cache']){
  26. $info['status'] = $server_data['status'];
  27. $info['Players'] = $server_data['Players'];
  28. $info['MaxPlayers'] = $server_data['MaxPlayers'];
  29. $info['serverVersion'] = $server_data['serverVersion'];
  30. $info['favicon'] = $info['HostName'] = false;
  31. if($info['status'] == 1){ $status = 1; } else { $status = 0; }
  32. } else {
  33. //Server checks
  34. $Query = new MinecraftQuery($server_data['ip'], $server_data['port']);
  35.  
  36. if($server_data['protocol'] == 1){
  37. $info = $Query->QueryNew();
  38. } else {
  39. $info = $Query->QueryOld();
  40. }
  41.  
  42. //Check status of the server
  43. if($info !== false){ $status = 1;} else { $status = 0; }
  44.  
  45. $info['HostName'] = preg_replace('/\xA7[0-9A-FK-OR]/i', '', $info['HostName']);
  46.  
  47. //Update the cache
  48. if($status == 1) {
  49. mysql_query("UPDATE `servers` SET `status` = '$status', `serverVersion` = '{$server_data['serverVersion']}', `Players` = '{$info['Players']}', `MaxPlayers` = '{$info['MaxPlayers']}', `cache_time` = unix_timestamp() WHERE `id` = '$server_id'");
  50. }else{
  51. mysql_query("UPDATE `servers` SET `status` = '$status', `Players` = '0', `cache_time` = unix_timestamp() WHERE `id` = '$server_id'");
  52. }
  53. }
  54. ?>
  55. <div style="margin: auto;" class="panel panel-default">
  56. <div class="panel-body">
  57. <?php
  58. if($status == 0){
  59. echo '<div class="alert alert-important">';
  60. echo '<p style="font-size: 24px;margin-top: 7px;"><strong>' . $server_data['name'] . '</strong> is offline</p>';
  61. echo '</div>';
  62. include 'includes/overall/footer.php';
  63. die();
  64. } ?>
  65.  
  66.  
  67. <div class="alert alert-info">
  68. <p style="font-size: 22px;margin-top: 5px;">
  69. <?php if($info['favicon'] !== false) echo '<img src="' . $info['favicon'] . '" />'; ?>
  70.  
  71. Connect to: <strong><?php echo $server_data['ip']; ?></strong>
  72. </p>
  73. </div>
  74. <div class="clearfix"></div>
  75.  
  76.  
  77. <ul class="nav nav-pills" id="tabs" >
  78. <li class="active"><a href="#info"><span class="glyphicon glyphicon-signal"></span> Server Information</a></li>
  79. <li><a href="#votestats"><span class="glyphicon glyphicon-thumbs-up"></span> Votes</a></li>
  80. <li><a href="#banners"><span class="glyphicon glyphicon-picture"></span> Banners</a></li>
  81. </ul>
  82. <br />
  83. <div class="tab-content" >
  84. <div class="tab-pane active" id="info">
  85. <table class="table table-bordered" style="background:white;">
  86.  
  87. <tr>
  88. <td><span class="glyphicon glyphicon-camera"></span> <strong>Server Banner</strong></td>
  89. <td> <?php
  90. if($server_data['banner'] !== "")
  91. echo "<img src='" . $server_data['banner'] . "' />";
  92. else
  93. echo "<img src='includes/img/" . rand(1,4) . ".png' />";
  94. ?></td>
  95. </tr>
  96. <tr>
  97. <td><span class="glyphicon glyphicon-time"></span> <strong>Status</strong></td>
  98. <td><span class="label label-success"><span class="glyphicon glyphicon-ok glyphicon glyphicon-white"></span></span></td>
  99. </tr>
  100. <tr>
  101. <td><span class="glyphicon glyphicon-random"></span> <strong>IP Address</strong></td>
  102. <td><?php echo gethostbyname($server_data['ip']); ?></td>
  103. </tr>
  104. <tr>
  105. <td><span class="glyphicon glyphicon-tasks"></span> <strong>Port</strong></td>
  106. <td><?php echo $server_data['port']; ?></td>
  107. </tr>
  108. <tr>
  109. <td><span class="glyphicon glyphicon-tasks"></span> <strong>MOTD</strong></td>
  110. <td><?php echo $info['HostName']; ?></td>
  111. </tr>
  112. <tr>
  113. <td><span class="glyphicon glyphicon-user"></span> <strong>Online Players</strong></td>
  114. <td><?php echo $info['Players'] . "/" . $info['MaxPlayers']; ?></td>
  115. </tr>
  116. <tr>
  117. <td><span class="glyphicon glyphicon-wrench"></span> <strong>Server Version</strong></td>
  118. <td><?php echo $info['serverVersion']; ?></td>
  119. </tr>
  120. <tr>
  121. <td><span class="glyphicon glyphicon-globe"></span> <strong>Country</strong></td>
  122. <td><img src="includes/locations/<?php echo $server_data['country']; ?>.png" title="<?php echo $server_data['country']; ?>" alt="country"/> <?php echo $server_data['country']; ?></td>
  123. </tr>
  124. <tr>
  125. <td><span class="glyphicon glyphicon-user"></span> <strong>Added by</strong></td>
  126. <td><a href="profile.php?username=<?php echo $addedBy; ?>"><?php echo $addedBy; ?></a></td>
  127. </tr>
  128. <tr>
  129. <td><span class="glyphicon glyphicon-cog"></span> <strong>Category</strong></td>
  130. <td><?php get_categories($server_id); ?></td>
  131. </tr>
  132. <tr>
  133. <td><span class="glyphicon glyphicon-eye-open"></span> <strong>Website</strong></td>
  134. <td><a href="<?php echo $server_data['website']; ?>"><?php echo $server_data['website']; ?></a></td>
  135. </tr>
  136. <tr>
  137. <td><span class="glyphicon glyphicon-refresh"></span> <strong>Last update</strong></td>
  138. <td><?php echo $last_updateM; ?> minutes ago</td>
  139. </tr>
  140. <tr>
  141. <td><span class="glyphicon glyphicon-check"></span> <strong>Votes</strong></td>
  142. <td>
  143. <div id="votes" style="display:inline;"><?php echo $server_data['votes']; ?></div>
  144. <a href="vote.php?id=<?php echo $server_data['id']; ?>"><button class="btn btn-success">Vote</button></a>
  145. </td>
  146. </tr>
  147. </table>
  148.  
  149. <?php if(!empty($server_data['description'])){ ?>
  150. <table class="table table-bordered" style="background:white;">
  151. <tr><td><strong>Description</strong></td></tr>
  152. <tr>
  153. <td style="padding: 0px 20px 0px 20px;"><?php echo bbcode($server_data['description']); ?></td>
  154. </tr>
  155. </table>
  156. <?php } ?>
  157.  
  158. <?php if(!empty($server_data['youtube_id'])){ ?>
  159. <table class="table table-bordered" style="background:white;">
  160. <tr><td><strong>Video Presentation</strong></td></tr>
  161. <tr>
  162. <td style="text-align:center;"><iframe width="800" height="400" src="//www.youtube.com/embed/<?php echo $server_data['youtube_id']; ?>" frameborder="0" allowfullscreen></iframe></td>
  163. </tr>
  164. </table>
  165. <?php } ?>
  166.  
  167. </div>
  168. <div class="tab-pane" id="votestats">
  169. <table class="table table-condensed" style="table-layout:fixed;">
  170. <thead>
  171. <tr>
  172. <th>IP</th>
  173. <th>Year / Month / Day</th>
  174. <th>Hour / Minute / Second</th>
  175. </tr>
  176. </thead>
  177. <tbody>
  178. <?php
  179. if(mysql_result(mysql_query("SELECT COUNT(`ip`) FROM `votes` WHERE `server_id` = '$server_id'"), 0) > 0){
  180. $voteResult = mysql_query("SELECT * FROM `votes` WHERE `server_id` = '$server_id' ORDER BY `timestamp` DESC LIMIT 50");
  181. while($votes_data = mysql_fetch_array($voteResult, MYSQL_ASSOC)){
  182. $ip = explode(".", $votes_data['ip']);
  183. $ip[3] = "***";$ip[2] = "***";
  184. $ip = implode(".", $ip);
  185. echo "
  186. <tr>
  187. <td>" . $ip . "</td>
  188. <td>" . date('Y.m.d', $votes_data['timestamp']) . "</td>
  189. <td>" . date('h:i:s', $votes_data['timestamp']) . "</td>
  190. </tr>";
  191. }
  192. } else {
  193. echo "<tr><td>Currently there are no votes!</td><td></td><td></td></tr>";
  194. }
  195. ?>
  196. </tbody>
  197. </table>
  198. </div>
  199.  
  200.  
  201.  
  202. <div class="tab-pane" id="banners">
  203. <?php $link = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']); if($server_data['banner'] !== ""){ ?>
  204. <img src="<?php echo $server_data['banner']; ?>" />
  205. <h4>BB/HTML Code </h4>
  206. <textarea class="form-control" id="bb_small_code" rows="3" style="width: 95%;">[url=<?php echo $link; ?>/server.php?id=<?php echo $id; ?>][img]<?php echo $server_data['banner']; ?>[/img][/url]</textarea>
  207. <br /><textarea class="form-control" id="html_small_code" rows="3" style="width: 95%;"><a href="<?php echo $link; ?>/server.php?id=<?php echo $id; ?>"><img src="<?php echo $server_data['banner']; ?>"></a></textarea>
  208. <?php } ?>
  209. <button id="button" class="btn btn-default" onclick="divPic();hide();">Get dynamic banner</button>
  210. <div id="live"></div>
  211. <br />
  212. <h4>BB/HTML Code </h4>
  213. <textarea class="form-control" id="bb_small_code" rows="3" style="width: 95%;">[url=<?php echo $link; ?>/server.php?id=<?php echo $id; ?>][img]<?php echo $link; ?>/dynamic_image.php?s=<?php echo $id; ?>&type=background[/img][/url]</textarea>
  214. <br /><textarea class="form-control" id="html_small_code" rows="3" style="width: 95%;"><a href="<?php echo $link; ?>/server.php?id=<?php echo $id; ?>"><img src="<?php echo $link; ?>/dynamic_image.php?s=<?php echo $id; ?>&type=background"></a></textarea>
  215. </div>
  216.  
  217. </div>
  218.  
  219. <h3>Comments (<?php echo mysql_result(mysql_query("SELECT COUNT(`id`) FROM `comments` WHERE `server_id` = '$server_id'"), 0);?>) <?php if(logged_in() == true){ ?><span class="label label-success" style="cursor:pointer;" onClick="$('#comments').toggle('slow');">Add Comment</span><?php } ?></h3>
  220. <?php
  221. if(empty($_POST) == false){
  222. //captcha
  223. $resp = recaptcha_check_answer ($settings['recaptcha_private'], $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]);
  224. //-------
  225.  
  226. if($resp->is_valid == false) {
  227. $errors[] = 'Please enter the correct captcha code!';
  228. }
  229.  
  230. if(strlen($_POST['comment']) > 254){
  231. $errors[] = 'Comment too long, maximum 255 characters!';
  232. }
  233.  
  234. if(strlen(trim($_POST['comment'])) < 10){
  235. $errors[] = 'Comment too short, minimum 10 characters!';
  236. }
  237.  
  238. if(empty($errors) == true){
  239. $comment = htmlspecialchars($_POST['comment'], ENT_QUOTES);
  240. mysql_query("INSERT INTO `comments` (`server_id`, `user_id`, `comment`) VALUES ('$server_id', '$session_user_id', '$comment')");
  241. }else{
  242. echo output_errors($errors);
  243. }
  244. }
  245. ?>
  246.  
  247. <?php
  248. $query = mysql_query("SELECT * FROM `comments` WHERE `server_id` = '$server_id'");
  249. while($row = mysql_fetch_array($query, MYSQL_ASSOC)){
  250. $comment_user_id = $row['user_id'];
  251. @$comment_added_by = mysql_result(mysql_query("SELECT `username` FROM `users` WHERE `user_id` = '$comment_user_id'"), 0) ? mysql_result(mysql_query("SELECT `username` FROM `users` WHERE `user_id` = '$comment_user_id'"), 0) : "Unknown User";
  252. ?>
  253. <table class="table table-bordered" style="background:white;">
  254. <tr>
  255. <td>
  256. <strong>Comment by:</strong> <?php echo $comment_added_by; ?>
  257. <?php if(logged_in() == true && is_admin($session_user_id)){ ?>
  258. <div class="pull-right">
  259. <a href="server.php?id=<?php echo $server_id; ?>&delete=<?php echo $row['id']; ?>">
  260. <span class="label label-important"><span class="glyphicon glyphicon-remove glyphicon glyphicon-white"></span> Delete </span>
  261. </a>
  262. </div>
  263. <?php } ?>
  264. </td>
  265. </tr>
  266. <tr>
  267. <td><?php echo $row['comment']; ?></td>
  268. </tr>
  269. </table>
  270. <?php } ?>
  271.  
  272. <br /><br />
  273.  
  274. <?php if(logged_in() == true){ ?>
  275. <form action="" method="post" id="comments" style="display:none;" role="form">
  276. <textarea style="width:100%;height:100px;" name="comment" class="form-control"></textarea><br />
  277.  
  278. <?php $error = null; echo recaptcha_get_html($settings['recaptcha_public'], $error); ?><br />
  279.  
  280. <input type="submit" class="btn btn-primary" value="Add comment" />
  281. </form>
  282. <?php } ?>
  283.  
  284. <?php
  285. if(empty($_GET['delete']) == false && logged_in() && is_admin($session_user_id)){
  286. $comment_id = (INT)$_GET['delete'];
  287. mysql_query("DELETE FROM `comments` WHERE `id` = '$comment_id'");
  288. header('Location: server.php?id=' . $server_id);
  289. }
  290. ?>
  291. </div>
  292. </div>
  293.  
  294.  
  295. <script>
  296. $('#tabs a').click(function (e) {
  297. e.preventDefault();
  298. $(this).tab('show');
  299. })
  300. $(function () {
  301. $("[rel='tooltip']").tooltip();
  302. });
  303. function divPic() {
  304. document.getElementById('live').innerHTML = "<img src=\"dynamic_image.php?s=<?php echo $server_id; ?>&type=background\" />";
  305. $("#button").hide('slow');
  306. }
  307. </script>
  308.  
  309. <?php include 'includes/overall/footer.php'; ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement