Advertisement
Guest User

Untitled

a guest
Aug 9th, 2014
442
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.19 KB | None | 0 0
  1. <?php
  2. if(!defined('INITIALIZED'))
  3. exit;
  4.  
  5. $cache_sec = 1;
  6. $info = array(
  7. 0 => array($config['server']['location'], date("d/m/Y")),
  8. 1 => array('EUA', date("d/m/Y"))
  9. );
  10.  
  11. $id=0;
  12. if(isset($_POST['world'])) {
  13. $f = null;
  14. foreach($config['site']['worlds'] as $k => $v)
  15. if($v == $_POST['world']) {
  16. $f = true;
  17. $id = $k;
  18. break;
  19. }
  20. if(!$f)
  21. $_POST['world'] = $config['site']['worlds'][0];
  22. } else $_POST['world'] = $config['site']['worlds'][0];
  23.  
  24. $order = 'name_asc';
  25. if(isset($_REQUEST['order']) && in_array($_REQUEST['order'], array('name_desc', 'level_asc','level_desc','vocation_asc','vocation_desc')))
  26. $order = $_REQUEST['order'];
  27.  
  28. if(count($config['site']['worlds']) > 1) {
  29. $main_content ='
  30. <form action="?subtopic=whoisonline" method="post">
  31. <div class="TableContainer">
  32. <table class="Table1" cellpadding="0" cellspacing="0">
  33. <div class="CaptionContainer">
  34. <div class="CaptionInnerContainer">
  35. <span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  36. <span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  37. <span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  38. <span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  39. <div class="Text">World Selection</div>
  40. <span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  41. <span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  42. <span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  43. <span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  44. </div>
  45. </div>
  46. <tr>
  47. <td>
  48. <div class="InnerTableContainer">
  49. <table width="100%">
  50. <tr>
  51. <td style="vertical-align:middle" class="LabelV150">World Name:</td>
  52. <td style="width:170px">
  53. <select size="1" name="world" style="width:165px">';
  54. foreach($config['site']['worlds'] as $v)
  55. $main_content .= '<option value="'.$v.'"'.($v == $_POST['world'] ? ' selected="selected"' : '').'>'.$v.'</option>';
  56. $main_content .= '
  57. </select>
  58. </td>
  59. <td style="text-align:left">
  60. <div class="BigButton" style="background-image:url('.$layout_name.'/images/buttons/sbutton.gif)">
  61. <div onmouseover="MouseOverBigButton(this)" onmouseout="MouseOutBigButton(this)"><div class="BigButtonOver" style="background-image:url('.$layout_name.'/images/buttons/sbutton_over.gif)"></div>
  62. <input class="ButtonText" type="image" name="Submit" alt="Submit" src="'.$layout_name.'/images/buttons/_sbutton_submit.gif"/>
  63. </div>
  64. </div>
  65. </td>
  66. </tr>
  67. </table>
  68. </div>
  69. </td>
  70. </tr>
  71. </table>
  72. </div>
  73. </form><br/>
  74. ';
  75. }
  76. $main_content .=
  77. '<div class="TableContainer">
  78. <table class="Table1" cellpadding="0" cellspacing="0">
  79. <div class="CaptionContainer">
  80. <div class="CaptionInnerContainer">
  81. <span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  82. <span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  83. <span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  84. <span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  85. <div class="Text">World Information</div>
  86. <span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  87. <span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  88. <span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  89. <span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  90. </div>
  91. </div>
  92. <tr>
  93. <td>
  94. <div class="InnerTableContainer">
  95. <table width="100%">
  96. <tr>
  97. <td class="LabelV150"><b>Status:</b></td>
  98. <td>O'.($config['status']['serverStatus_online'] == 1 ? 'n' : 'ff').'line</td>
  99. </tr>
  100. <tr>
  101. <td class="LabelV150"><b>Players Online:</b></td>
  102. <td>';
  103. $f = 'cache/whoisonline-'.$_POST['world'].'-'.$order.'.tmp';
  104. $ff = 'cache/whoisonline-'.$_POST['world'].'-record.tmp';
  105. if(file_exists($f) && filemtime($f) > (time() - $cache_sec)) {
  106. $cp = file_get_contents($f);
  107. $cached = null;
  108. if(file_exists($f) && filemtime($f) > (time() - $cache_sec)) {
  109. $e = explode('|', file_get_contents($ff));
  110. $n = $e[0];
  111. $c = $e[1];
  112. $cached = true;
  113. }
  114. }
  115. else {
  116. $cp = '';
  117. $n = 0;
  118. $q = 'SELECT * FROM players, players_online WHERE players.id = players_online.player_id';
  119. if(in_array($order, array('name_asc','name_desc','level_asc','level_desc')))
  120. $q .= ' ORDER BY '.str_replace('_', ' ', $order);
  121.  
  122. if(in_array($order, array('vocation_asc','vocation_desc'))) {
  123. $a = array();
  124. foreach($SQL->query($q)->fetchAll() as $p)
  125. $a[] = array($p['name'], $p['level'], $vocation_name[$p['promotion']][$p['vocation']]);
  126. function cmp($a, $b) {
  127. $r = strcmp($a[2], $b[2]);
  128. $r = $GLOBALS['order'] == 'vocation_desc' ? ($r == 1 ? -1 : ($r == -1 ? 1 : 0)) : $r;
  129. return ($r == 0 && $a[1] < $b[1]) ? 1 : $r;
  130. }
  131. usort($a, 'cmp');
  132. foreach($a as $p) {
  133. $n++;
  134. $cp .= '<tr class="'.(is_int($n/2)?'Odd':'Even').'" style="text-align:right"><td style="width:70%;text-align:left"><a href="?subtopic=characters&name='.urlencode($p[0]).'">'.$p[0].'</a></td><td style="width:10%">'.$p[1].'</td><td style="width:20%">'.str_replace(' ','&#160;',$p[2]).'</td></tr>';
  135. }
  136.  
  137. }
  138. else {
  139. $l = array();
  140.  
  141. foreach($SQL->query($q)->fetchAll() as $p) {
  142. $n++;
  143. $cp .= '<tr class="'.(is_int($n/2)?'Odd':'Even').'" style="text-align:right">';
  144. $cp .= '<td style="width:70%;text-align:left">';
  145. if($order == 'name_asc') {
  146. $tmp = strtoupper($p['name'][0]);
  147. if(!in_array($tmp, $l)) {
  148. $l[] = $tmp;
  149. $cp .= '<a name="'.$tmp.'"></a>';
  150. }
  151. }
  152. $cp .= '<a href="?subtopic=characters&name='.urlencode($p['name']).'">'.$p['name'].'</a></td><td style="width: 10%">'.$p['level'].'</td><td style="width:20%">'.str_replace(' ','&#160;',$vocation_name[$p['promotion']][$p['vocation']]).'</td></tr>';
  153. }
  154.  
  155. }
  156. file_put_contents($f, $cp);
  157. }
  158.  
  159. $main_content .= $n.' Players Online</td>
  160. </tr>
  161.  
  162. <tr>
  163. <td class="LabelV150"><b>Creation Date:</b></td>
  164. <td>'.$info[$id][1].'</td>
  165. </tr>
  166. <tr>
  167. <td class="LabelV150"><b>Location:</b></td>
  168. <td>'.$info[$id][0].'</td>
  169. </tr>
  170. <tr>
  171. <td class="LabelV150"><b>PvP Type:</b></td>
  172. <td>';
  173. $w=strtolower($config['server']['worldType']);
  174. if(in_array($w, array('pvp','2','normal','open','openpvp')))
  175. $main_content .= 'Open PvP';
  176. elseif(in_array($w, array('no-pvp','nopvp','non-pvp','nonpvp','1','safe','optional','optionalpvp')))
  177. $main_content .= 'Optional PvP';
  178. elseif(in_array($w, array('pvp-enforced','pvpenforced','pvp-enfo','pvpenfo','pvpe','enforced','enfo','3','war','hardcore','hardcorepvp')))
  179. $main_content .= 'Hardcore PvP';
  180. $main_content .= '</td>
  181. </tr>
  182. </table>
  183. </div>
  184. </td>
  185. </tr>
  186. </table>
  187. </div><br/>
  188. <div class="TableContainer">
  189. <table class="Table2" cellpadding="0" cellspacing="0">
  190. <div class="CaptionContainer">
  191. <div class="CaptionInnerContainer">
  192. <span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  193. <span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  194. <span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  195. <span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  196. <div class="Text">Players Online';
  197. if($order == 'name_asc')
  198. $main_content .= '<span class="TableHeadlineNavigation"> [
  199. <a href="#A">A</a>
  200. <a href="#B">B</a>
  201. <a href="#C">C</a>
  202. <a href="#D">D</a>
  203. <a href="#E">E</a>
  204. <a href="#F">F</a>
  205. <a href="#G">G</a>
  206. <a href="#H">H</a>
  207. <a href="#I">I</a>
  208. <a href="#J">J</a>
  209. <a href="#K">K</a>
  210. <a href="#L">L</a>
  211. <a href="#M">M</a>
  212. <a href="#N">N</a>
  213. <a href="#O">O</a>
  214. <a href="#P">P</a>
  215. <a href="#Q">Q</a>
  216. <a href="#R">R</a>
  217. <a href="#S">S</a>
  218. <a href="#T">T</a>
  219. <a href="#U">U</a>
  220. <a href="#V">V</a>
  221. <a href="#W">W</a>
  222. <a href="#X">X</a>
  223. <a href="#Y">Y</a>
  224. <a href="#Z">Z</a> ]&#160;&#160;</span>';
  225. $main_content .= '</div>
  226. <span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  227. <span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  228. <span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  229. <span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  230. </div>
  231. </div>
  232. <tr>
  233. <td>
  234. <div class="InnerTableContainer">
  235. <table width="100%">
  236. <tr class="LabelH">
  237. <td style="text-align:left;width:50%">Name&#160;&#160;<small style="font-weight:normal">[<a href="?subtopic=whoisonline&world='.$_POST['world'].'&order=name_'.($order == 'name_asc' ? 'desc' : 'asc').'">sort</a>]</small>
  238. <img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'name_asc' ? 'content/order_desc' : ($order == 'name_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td>
  239. <td style="text-align:left;width:30%">Level&#160;&#160;
  240. <small style="font-weight:normal">[<a href="?subtopic=whoisonline&world='.$_POST['world'].'&order=level_'.($order == 'level_asc' ? 'desc' : 'asc').'">sort</a>]</small>
  241. <img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'level_asc' ? 'content/order_desc' : ($order == 'level_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td>
  242. <td style="text-align:left;width:50%">Vocation&#160;&#160;<small style="font-weight:normal">[<a href="?subtopic=whoisonline&world='.$_POST['world'].'&order=vocation_'.($order == 'vocation_asc' ? 'desc' : 'asc').'">sort</a>]</small>
  243. <img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'vocation_asc' ? 'content/order_desc' : ($order == 'vocation_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td>
  244. </tr>';
  245.  
  246. $main_content .= $cp;
  247. if (!$cp){$main_content .='<tr><td colspan="3" align="center"><i>This server no has players online.</i></td></tr>';}
  248. $main_content .='
  249. </table>
  250. </div>
  251. </table>
  252. </div>
  253. </td>
  254. </tr>
  255. <br/>
  256. <form action="?subtopic=characters" method="post"><div class="TableContainer"> <table class="Table1" cellpadding="0" cellspacing="0"> <div class="CaptionContainer"> <div class="CaptionInnerContainer"> <span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span> <span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span> <span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span> <span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span> <div class="Text">Search Character</div> <span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span> <span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span> <span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span> <span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span> </div> </div> <tr> <td> <div class="InnerTableContainer"> <table width="100%"><tr><td style="vertical-align:middle" class="LabelV150"><b>Character Name:</b></td><td style="width:170px"><input style="width:165px" name="name" value="" size="29" maxlength="29"/></td><td><div class="BigButton" style="background-image:url('.$layout_name.'/images/buttons/sbutton.gif)"><div onmouseover="MouseOverBigButton(this)" onmouseout="MouseOutBigButton(this)"><div class="BigButtonOver" style="background-image:url('.$layout_name.'/images/buttons/sbutton_over.gif)"></div><input class="ButtonText" type="image" name="Submit" alt="Submit" src="'.$layout_name.'/images/buttons/_sbutton_submit.gif"></div></div></td></tr> </table> </div> </table></div></td></tr></form></center>';
  257. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement