Guest User

Untitled

a guest
Nov 28th, 2016
40
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.64 KB | None | 0 0
  1. <?php
  2. date_default_timezone_set('America/Araguaina');
  3. $cache_sec = 10;
  4. $info = array(
  5. 0 => array('Mexico', '04/03/2014')
  6. );
  7.  
  8. $id=0;
  9. $text1 = '
  10. <p>On our server you can share your screen with other players using our Cast Feature, it is based off TibiaCast.</p>
  11. <p>You can enter a live stream by login into the game without entering any account number and password. Just don\'t write anything in those 2 fields and just press enter. A list of all available casts will appear shortly and you choose the one you would like to watch. After login into the cast, you can talk with other audiences and a person that is broadcasting.</p>
  12. <p>To make your own broadcast, you must login to your account and use a command <strong>/cast on</strong>. </p>
  13. <p>Full command list can be found below.</p>
  14. ';
  15. $text2 = '
  16. <p><strong>Currently available commands for spectators:</strong><br />
  17. /show - display the amount of currently active spectators<br />
  18. /name - change your name on chat with player and other spectators<br />
  19. /auth - authenticate to an exisiting cast (required with chat proctetion)</p>
  20.  
  21. <p><strong>Available commands for streaming players:</strong><br />
  22. /cast on - enables the stream<br />
  23. /cast off - disables the stream<br />
  24. /cast password {password} - sets a password on the stream<br />
  25. /cast password off - disables the password protection<br />
  26. /cast auth on - enables requirement of authentication on chat<br />
  27. /cast auth off - disables requirement of authentication on chat<br />
  28. /cast kick {name} - kick a spectator from your stream<br />
  29. /cast ban {name} - locks spectator IP from joining your stream<br />
  30. /cast unban {name} - removes banishment lock<br />
  31. /cast bans - shows banished spectators list<br /><br />
  32. /cast mute {name} - mutes selected spectator from chat<br />
  33. /cast unmute {name} - removes mute<br />
  34. /cast mutes - shows muted spectators list<br />
  35. /cast show - displays the amount and nicknames of current spectators<br />
  36. /cast status - displays stream status</p>
  37. ';
  38. if(isset($_POST['world'])) {
  39. $f = null;
  40. foreach($config['site']['worlds'] as $k => $v)
  41. if($v == $_POST['world']) {
  42. $f = true;
  43. $id = $k;
  44. break;
  45. }
  46. if(!$f)
  47. $_POST['world'] = $config['site']['worlds'][0];
  48. } else $_POST['world'] = $config['site']['worlds'][0];
  49.  
  50. $order = 'name_asc';
  51. if(isset($_REQUEST['order']) && in_array($_REQUEST['order'], array('name_desc', 'level_asc','level_desc','vocation_asc','vocation_desc')))
  52. $order = $_REQUEST['order'];
  53.  
  54. if(count($config['site']['worlds']) > 1) {
  55. $main_content =
  56. '<form action="?subtopic=castsystem" method="post">
  57. <div class="TableContainer">
  58. <table class="Table1" cellpadding="0" cellspacing="0">
  59. <div class="CaptionContainer">
  60. <div class="CaptionInnerContainer">
  61. <span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  62. <span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  63. <span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  64. <span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  65. <div class="Text">World Selection</div>
  66. <span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  67. <span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  68. <span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  69. <span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  70. </div>
  71. </div>
  72. <tr>
  73. <td>
  74. <div class="InnerTableContainer">
  75. <table width="100%">
  76. <tr>
  77. <td style="vertical-align:middle" class="LabelV150">World Name:</td>
  78. <td style="width:170px">
  79. <select size="1" name="world" style="width:165px">';
  80. foreach($config['site']['worlds'] as $v)
  81. $main_content .= '<option value="'.$v.'"'.($v == $_POST['world'] ? ' selected="selected"' : '').'>'.$v.'</option>';
  82. $main_content .= '
  83. </select>
  84. </td>
  85. <td style="text-align:left">
  86. <div class="BigButton" style="background-image:url('.$layout_name.'/images/buttons/sbutton.gif)">
  87. <div onmouseover="MouseOverBigButton(this)" onmouseout="MouseOutBigButton(this)"><div class="BigButtonOver" style="background-image:url('.$layout_name.'/images/buttons/sbutton_over.gif)"></div>
  88. <input class="ButtonText" type="image" name="Submit" alt="Submit" src="'.$layout_name.'/images/buttons/_sbutton_submit.gif"/>
  89. </div>
  90. </div>
  91. </td>
  92. </tr>
  93. </table>
  94. </div>
  95. </td>
  96. </tr>
  97. </table>
  98. </div>
  99. </form><br/>
  100. ';
  101. }
  102. $main_content .=
  103. '<div class="TableContainer">
  104. <table class="Table1" cellpadding="0" cellspacing="0">
  105. <div class="CaptionContainer">
  106. <div class="CaptionInnerContainer">
  107. <span class="CaptionEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  108. <span class="CaptionEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  109. <span class="CaptionBorderTop" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  110. <span class="CaptionVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  111. <div class="Text">World Information</div>
  112. <span class="CaptionVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif)"></span>
  113. <span class="CaptionBorderBottom" style="background-image:url('.$layout_name.'/images/content/table-headline-border.gif)"></span>
  114. <span class="CaptionEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  115. <span class="CaptionEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif)"></span>
  116. </div>
  117. </div>
  118. <tr>
  119. <td>
  120. <div class="InnerTableContainer">
  121. <table width="100%">
  122. <tr>
  123. <td class="LabelV150">Status:</td>
  124. <td>O'.($config['status']['serverStatus_online'] == 1 ? 'n' : 'ff').'line</td>
  125. </tr>
  126. <tr>
  127. <td class="LabelV150">Players Casting:</td>
  128. <td>';
  129. $f = 'cache/castsystem-'.$_POST['world'].'-'.$order.'.tmp';
  130. if(file_exists($f) && filemtime($f) > (time() - $cache_sec)) {
  131. $cp = file_get_contents($f);
  132. }
  133. else {
  134. $cp = '';
  135. $n = 0;
  136. $q = 'SELECT name,level,vocation,promotion,castViewers, looktype, lookbody, looklegs, lookhead, lookfeet, lookaddons FROM players WHERE world_id='.$id.' AND cast=1';
  137. if(in_array($order, array('name_asc','name_desc','level_asc','level_desc')))
  138. $q .= ' ORDER BY '.str_replace('_', ' ', $order);
  139.  
  140. if(in_array($order, array('vocation_asc','vocation_desc'))) {
  141. $a = array();
  142. $q .= ' ORDER BY level desc';
  143. foreach($SQL->query($q)->fetchAll() as $p)
  144. $a[] = array($p['name'], $p['level'], $vocation_name[$p['promotion']][$p['vocation']], $p['looktype'], $p['lookhead'], $p['lookbody'], $p['looklegs'], $p['lookfeet'], $p['lookaddons'], $p['castViewers']);
  145. function cmp($a, $b) {
  146. return $a[2][0] == $b[2][0] ? 0 :
  147. $GLOBALS['order'] == 'vocation_asc'
  148. ? ($a[2][0] < $b[2][0] ? -1 : 1)
  149. : ($a[2][0] > $b[2][0] ? -1 : 1);
  150. }
  151. usort($a, 'cmp');
  152. foreach($a as $p) {
  153. $n++;
  154. $cp .= '<tr class="'.(is_int($n/2)?'Even':'Odd').'" style="text-align:right"><td><img src="'.$base_link.'/outfit.php?id='.$p[3].'&addons='.$p[8].'&head='.$p[4].'&body='.$p[5].'&legs='.$p[6].'&feet='.$p[7].'" width="64" height="64"/></td><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%">'.$p[2].'</td><td>'.$p[9].'/50</td></tr>';
  155. }
  156. }
  157. else {
  158. $l = array();
  159. foreach($SQL->query($q)->fetchAll() as $p) {
  160. $n++;
  161. $cp .= '<tr class="'.(is_int($n/2)?'Even':'Odd').'" style="text-align:right"><td><img src="'.$base_link.'/outfit.php?id='.$p['looktype'].'&addons='.$p['lookaddons'].'&head='.$p['lookhead'].'&body='.$p['lookbody'].'&legs='.$p['looklegs'].'&feet='.$p['lookfeet'].'" width="64" height="64"/></td><td style="width:70%;text-align:left">';
  162. if($order == 'name_asc') {
  163. $tmp = strtoupper($p['name'][0]);
  164. if(!in_array($tmp, $l)) {
  165. $l[] = $tmp;
  166. $cp .= '<a name="'.$tmp.'"></a>';
  167. }
  168. }
  169. $cp .= '<a href="?subtopic=characters&name='.urlencode($p['name']).'">'.$p['name'].'</a></td><td style="width:10%">'.$p['level'].'</td><td style="width:20%">'.$vocation_name[$p['promotion']][$p['vocation']].'</td><td>'.$p['castViewers'].'/50</td></tr>';
  170. }
  171. }
  172. file_put_contents($f, $cp);
  173. }
  174. $main_content .= $n.'</td>
  175. </tr>
  176. </table>
  177. </div>
  178. </td>
  179. </tr>
  180. </table>
  181. </div><br/>
  182. '.$text1.'
  183. <div class="TableContainer">
  184. <table class="Table2" 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">Players Casting';
  185. if($order == 'name_asc')
  186. $main_content .= '<span class="TableHeadlineNavigation"> [ <a href="#A">A</a> <a href="#B">B</a> <a href="#C">C</a> <a href="#D">D</a> <a href="#E">E</a> <a href="#F">F</a> <a href="#G">G</a> <a href="#H">H</a> <a href="#I">I</a> <a href="#J">J</a> <a href="#K">K</a> <a href="#L">L</a> <a href="#M">M</a> <a href="#N">N</a> <a href="#O">O</a> <a href="#P">P</a> <a href="#Q">Q</a> <a href="#R">R</a> <a href="#S">S</a> <a href="#T">T</a> <a href="#U">U</a> <a href="#V">V</a> <a href="#W">W</a> <a href="#X">X</a> <a href="#Y">Y</a> <a href="#Z">Z</a> ]</span>';
  187. $main_content .= '</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 class="LabelH"><td>Outfit</td><td style="text-align:left;width:90%">Name<small style="font-weight:normal">[<a href="?subtopic=castsystem&world='.$_POST['world'].'&order=name_'.($order == 'name_asc' ? 'desc' : 'asc').'">sort</a>]</small> <img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'name_asc' ? 'content/order_desc' : ($order == 'name_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td><td>Level<small style="font-weight:normal">[<a href="?subtopic=castsystem&world='.$_POST['world'].'&order=level_'.($order == 'level_asc' ? 'desc' : 'asc').'">sort</a>]</small> <img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'level_asc' ? 'content/order_desc' : ($order == 'level_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td><td>Vocation<small style="font-weight:normal">[<a href="?subtopic=castsystem&world='.$_POST['world'].'&order=vocation_'.($order == 'vocation_asc' ? 'desc' : 'asc').'">sort</a>]</small> <img class="sortarrow" src="'.$layout_name.'/images/'.($order == 'vocation_asc' ? 'content/order_desc' : ($order == 'vocation_desc' ? 'content/order_asc' : 'news/blank')).'.gif"/></td><td>Spectators</td></tr>'.(strlen($cp) ? $cp : '<tr><td colspan="4" class="Even">There are no players streaming right now.</td></tr>').' </table> </div> </table></div></td></tr>'.$text2.'<br/><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">Character Name:</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>';
  188. ?>
Add Comment
Please, Sign In to add comment