PageRenderTime 712ms CodeModel.GetById 25ms RepoModel.GetById 1ms app.codeStats 0ms

/functions/admin_tournament.php

https://bitbucket.org/verax/to-ladder
PHP | 1319 lines | 1149 code | 133 blank | 37 comment | 88 complexity | 9709d816e16f51bbc4dc005b1adad281 MD5 | raw file
  1. <?
  2. if(!IsSet($indexloaded)){
  3. header("Location: ./index.php");
  4. }
  5. //CHECK ADMIN ACCESS LEVEL
  6. if($admn[access] < 63){
  7. include("$dir[func]/error.php");
  8. display_error("You are not allowed to perform this function.<br>");
  9. }
  10. $admin=mysql_query("SELECT tid FROM tourneys WHERE tid='$tid'");
  11. $admin=mysql_fetch_array($admin);
  12. if($admin[tid]){
  13. $tinfo=mysql_query("SELECT * FROM tourneys WHERE tid='$admin[tid]'");
  14. $tinfo=mysql_fetch_array($tinfo);
  15. }else{
  16. $defaultz=mysql_query("SELECT * FROM defaults2 WHERE line='1'");
  17. $tinfo=mysql_fetch_array($defaultz);
  18. $tinfo[name]="Tournament Admin";
  19. }
  20. function characters($text){
  21. $text=str_replace(";", "", $text);
  22. $text=htmlspecialchars("$text");
  23. $text=str_replace("#", "", $text);
  24. $text=str_replace("|", "", $text);
  25. $text=str_replace("'", "&acute;", $text);
  26. $text=eregi_replace("( ){2,}", " ", $text);
  27. $text=trim($text);
  28. return($text);
  29. }
  30. function madmin_manage($edit){
  31. global $config, $tinfo, $dir, $url, $out, $site, $misc;
  32. $tourneylist=mysql_query("SELECT tid,name FROM tourneys ORDER by name");
  33. while(list($tid,$name)=mysql_fetch_row($tourneylist)){
  34. $tourneylistid.="<option value='$tid'>$name</option>\n";
  35. }
  36. if($edit[tid]){
  37. $tourneyinfo=mysql_query("SELECT * FROM tourneys WHERE tid='$edit[tid]'");
  38. $adedt=mysql_fetch_array($tourneyinfo);
  39. }
  40. if($adedt[tid]){
  41. $actiontype="
  42. <input type='hidden' name='action' value='madmin_manage_update'>
  43. <input type='hidden' name='adedt[tid]' value='$adedt[tid]'>";
  44. $addeditword="Edit";
  45. $size="$adedt[size]";
  46. $selected_size[$size]="SELECTED";
  47. $active="$adedt[active]";
  48. $selected_active[$active]="SELECTED";
  49. $open="$adedt[open]";
  50. $selected_open[$open]="SELECTED";
  51. $adedt[password]=$adedt[password];
  52. }else{
  53. $defaultz=mysql_query("SELECT logo,bgcolor,tdcolor,fontcolor FROM defaults2 WHERE line='1'");
  54. $adedt=mysql_fetch_array($defaultz);
  55. $actiontype="
  56. <input type='hidden' name='action' value='madmin_manage_add'>";
  57. $addeditword="Create";
  58. }
  59. $tablehead=table_head("show","80%","","center");
  60. $tablefoot=table_foot("show");
  61. $bannerhead=table_head("show","488","80","center");
  62. $bannerfoot=table_foot("show");
  63. $out[body]=$out[body]."
  64. <center>
  65. $bannerhead
  66. $out[banner]
  67. $bannerfoot
  68. </center>
  69. <br><center>
  70. $tablehead
  71. ";
  72. if(!$adedt[tid]){
  73. $out[body]=$out[body]."
  74. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  75. <tr class='altcolor'>
  76. <form method='post'>
  77. <td width='100%' valign='top' align='center'>
  78. <strong>Edit a Tournament</strong><br>
  79. </td></tr>
  80. <tr>
  81. <form method='post'>
  82. <td align='center' width='600'><br>
  83. <select name='edit[tid]'>
  84. $tourneylistid</select><br><br>
  85. </td></tr>
  86. <tr class='altcolor'><td width='100%' valign='top' align='center'><input type='hidden' name='action' value='madmin_manage'>
  87. <input type='submit' value='Edit Tournament'>
  88. </td></form>
  89. </tr>
  90. </table><br>
  91. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  92. <tr class='altcolor'>
  93. <form method='post'>
  94. <td width='100%' valign='top' align='center'>
  95. <strong>Delete a Tournament</strong><br>
  96. </td></tr>
  97. <tr><form method='post'>
  98. <td align='center' width='600'><br>
  99. <select name='delete[tid]'>
  100. $tourneylistid</select><br><br></td></tr>
  101. <tr class='altcolor'><td width='100%' valign='top' align='center'>
  102. <script language='javascript'>var confirmdelete='Are you 100% sure you want to DELETE this Tournament';</script>
  103. <input type='hidden' name='action' value='madmin_manage_delete'>
  104. <input type='submit' value='Delete Tournament' onClick='return confirm(confirmdelete);'>
  105. </td></form>
  106. </tr>
  107. </table><br>
  108. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  109. <tr class='altcolor'>
  110. <td width='100%' valign='top' align='center'>
  111. <b>Reset a Tournament</b><br>
  112. </td></tr>
  113. <form method='post'>
  114. <tr bgcolor='$tinfo[tdcolor]'>
  115. <td align='center' width='600'><br>
  116. <select name='reset[tid]'>
  117. $tourneylistid</select><br><br>
  118. Brackets: <input type='radio' name='reset[players]' value='0' CHECKED>
  119. Brackets and Players: <input type='radio' name='reset[players]' value='1'><br></td></tr>
  120. <tr class='altcolor'><td width='100%' valign='top' align='center'>
  121. <script language='javascript'>var confirmreset='Are you 100% sure you want to RESET this Tournament? All tournament data WILL be lost!';</script>
  122. <input type='hidden' name='action' value='madmin_manage_reset'>
  123. <input type='submit' value='Reset Tournament' onClick='return confirm(confirmreset);'>
  124. </td></form>
  125. </tr>
  126. </table>
  127. <br>
  128. ";
  129. }
  130. $ladderslist=mysql_query("SELECT id,laddername FROM ladders ORDER by laddername");
  131. while(list($id,$name)=mysql_fetch_row($ladderslist)){
  132. $selectedladder="";
  133. if($ladderid=="$id"){
  134. $selectedladder="SELECTED";
  135. }
  136. $theladders.="<option value='$id' $selectedladder>$name</option>";
  137. }
  138. $out[body]=$out[body]."
  139. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  140. <tr class='altcolor'>
  141. <td width='100%' valign='top' align='center' colspan='2'>
  142. <b>$addeditword a Tournament</b><br>
  143. Required fields are marked with *
  144. </td></tr>
  145. <form method='post'>
  146. <tr class='altcolora'>
  147. <td align='left' width='300'>Tournament Name *</td>
  148. <td align='right'><input type='text' name='adedt[name]' value='$adedt[name]' maxlength='50'></td>
  149. </tr>";
  150. if($adedt[tid]){
  151. $ladname=mysql_fetch_array(mysql_query("SELECT laddername FROM ladders WHERE id='$adedt[ladderid]'"));
  152. $out[body]=$out[body]."<tr class='altcolorb'>
  153. <td align='left' width='300'>Ladder On</td>
  154. <td align='right'>$ladname[laddername]</td>
  155. </tr><input type='hidden' name='adedt[ladderid]' value='$adedt[ladderid]'>";
  156. }else{
  157. $out[body]=$out[body]."
  158. <tr class='altcolorb'>
  159. <td align='left' width='300'>Ladder On *</td>
  160. <td align='right'><select name='adedt[ladderid]'><option value='$adedt[ladderid]'>Select a Ladder</option>$theladders</select></td>
  161. </tr>";
  162. }
  163. $out[body]=$out[body]."
  164. <tr class='altcolora'>
  165. <td align='left' width='250'>Tourney Size *</td>
  166. <td align='right'><select name='adedt[size]'>
  167. <option value='4' $selected_size[4]>4 Player/Team</option>
  168. <option value='8' $selected_size[8]>8 Player/Team</option>
  169. <option value='16' $selected_size[16]>16 Player/Team</option>
  170. <option value='32' $selected_size[32]>32 Player/Team</option>
  171. <option value='64' $selected_size[64]>64 Player/Team</option>
  172. <option value='128' $selected_size[128]>128Player/Team</option>
  173. <option value='256' $selected_size[256]>256Player/Team</option>
  174. <option value='512' $selected_size[512]>512Player/Team</option>
  175. </select></td>
  176. </tr>
  177. <tr class='altcolorb'>
  178. <td align='left' width='250'>Tourney Active *</td>
  179. <td align='right'><select name='adedt[active]'>
  180. <option value='1' $selected_active[1]>New Signups On</option>
  181. <option value='0' $selected_active[0]>New Signups Off</option>
  182. </select></td>
  183. </tr>";
  184. if($adedt[tid]){
  185. $out[body]=$out[body]."
  186. <tr class='altcolora'>
  187. <td align='left' width='250'>Tourney Open *</td>
  188. <td align='right'><select name='adedt[open]'>
  189. <option value='1' $selected_open[1]>Tourney Open</option>
  190. <option value='0' $selected_open[0]>Tourney Closed</option>
  191. </select></td>
  192. </tr>";
  193. }else{
  194. $out[body]=$out[body]."
  195. <input type='hidden' name='adedt[open]' value='1'>";
  196. }
  197. $out[body]=$out[body]."
  198. <tr class='altcolora'>
  199. <td align='left' width='300'>Custom Signup Form Field 1</td>
  200. <td align='right'><input type='text' name='adedt[field1]' value='$adedt[field1]' maxlength='50'></td>
  201. </tr>
  202. <tr class='altcolorb'>
  203. <td align='left' width='300'>Custom Signup Form Field 2</td>
  204. <td align='right'><input type='text' name='adedt[field2]' value='$adedt[field2]' maxlength='50'></td>
  205. </tr>
  206. <tr class='altcolora'>
  207. <td align='left' width='300'>Custom Signup Form Field 3</td>
  208. <td align='right'><input type='text' name='adedt[field3]' value='$adedt[field3]' maxlength='50'></td>
  209. </tr>
  210. <tr class='altcolorb'>
  211. <td align='left' width='300'>Tournament Admins (Directors)</td>
  212. <td align='right'><input type='text' name='adedt[directors]' value='$adedt[directors]' maxlength='250'></td>
  213. </tr>
  214. <input type='hidden' name='adedt[password]' value='notneeded'>
  215. <input type='hidden' name='adedt[logo]' value='$adedt[logo]' maxlength='100'>
  216. <input type='hidden' name='adedt[bgcolor]' value='#000000'>
  217. <input type='hidden' name='adedt[tdcolor]' value='#808080'>
  218. <input type='hidden' name='adedt[fontcolor]' value='#ffffff'>
  219. <tr class='altcolora'>
  220. <td align='center' width='100%' colspan='2'>Tournament Description, Rules, etc.</td>
  221. </tr>
  222. <tr class='altcolorb'>
  223. <td align='center' width='100%' colspan='2'><textarea name='adedt[details]' rows='25' cols='90'>$adedt[details]</textarea></td>
  224. </tr>
  225. <tr class='altcolor'>
  226. <td align='center' width='600' colspan='2'>
  227. $actiontype
  228. <input type='submit' value='$addeditword Tournament'>
  229. </td></form>
  230. </tr>
  231. </table>
  232. </ul>
  233. $tablefoot";
  234. include("$dir[curtheme]");
  235. }
  236. function madmin_manage_add($adedt){
  237. global $config, $out, $site, $misc, $dir, $url, $file;
  238. while(list($varib,$value)=each($adedt)){
  239. $adedt[$varib]=characters($value);
  240. }
  241. if(!$adedt[name]){
  242. include("$dir[func]/error.php");
  243. display_error("Your tourney must have a name!");
  244. }
  245. if(!$adedt[size]){
  246. include("$dir[func]/error.php");
  247. display_error("Your tourney size is unknown");
  248. }
  249. if($adedt[ladderid] == ''){
  250. include("$dir[func]/error.php");
  251. display_error("You did not select a ladder.");
  252. }
  253. if((!$adedt[bgcolor])||(!$adedt[tdcolor])||(!$adedt[fontcolor])){
  254. include("$dir[func]/error.php");
  255. display_error("Your tourney must have a color scheme");
  256. }
  257. //TEMP
  258. $adedt[type]=1;
  259. mysql_query("INSERT INTO tourneys VALUES (
  260. 'NULL',
  261. '$adedt[size]',
  262. '$adedt[type]',
  263. '$adedt[active]',
  264. '$adedt[name]',
  265. '$adedt[details]',
  266. '$adedt[field1]',
  267. '$adedt[field2]',
  268. '$adedt[field3]',
  269. '$adedt[directors]',
  270. '$adedt[password]',
  271. '$adedt[logo]',
  272. '$adedt[bgcolor]',
  273. '$adedt[tdcolor]',
  274. '$adedt[fontcolor]',
  275. '$adedt[ladderid]',
  276. '$adedt[open]');");
  277. include("$dir[func]/admin_finishmessage.php");
  278. display_message("The tournament has been created.<br>");
  279. }
  280. function madmin_manage_update($adedt){
  281. global $config, $out, $site, $misc, $dir, $url, $file;
  282. while(list($varib,$value)=each($adedt)){
  283. $adedt[$varib]=characters($value);
  284. }
  285. $adedt[password]=$adedt[password];
  286. if((!$adedt[name])||(!$adedt[password])){
  287. include("$dir[func]/error.php");
  288. display_error("<center>Your tourney must have a name and admin password");
  289. }
  290. if(!$adedt[size]){
  291. include("$dir[func]/error.php");
  292. display_error("<center>Your tourney size is unknown");
  293. }
  294. if($adedt[ladderid] == ''){
  295. include("$dir[func]/error.php");
  296. display_error("You did not select a ladder option");
  297. }
  298. if((!$adedt[bgcolor])||(!$adedt[tdcolor])||(!$adedt[fontcolor])){
  299. include("$dir[func]/error.php");
  300. display_error("<center>Your tourney must have a color scheme");
  301. }
  302. //TEMP
  303. $adedt[type]=1;
  304. mysql_query("UPDATE tourneys SET
  305. size='$adedt[size]',
  306. type='$adedt[type]',
  307. active='$adedt[active]',
  308. name='$adedt[name]',
  309. details='$adedt[details]',
  310. field1='$adedt[field1]',
  311. field2='$adedt[field2]',
  312. field3='$adedt[field3]',
  313. directors='$adedt[directors]',
  314. password='$adedt[password]',
  315. open='$adedt[open]',
  316. logo='$adedt[logo]',
  317. bgcolor='$adedt[bgcolor]',
  318. tdcolor='$adedt[tdcolor]',
  319. fontcolor='$adedt[fontcolor]'
  320. WHERE tid='$adedt[tid]'");
  321. include("$dir[func]/admin_finishmessage.php");
  322. display_message("The tournament has been updated.<br>");
  323. }
  324. function madmin_manage_delete($delete){
  325. global $config, $out, $site, $misc, $dir, $url, $file;
  326. mysql_query("DELETE FROM tourneys WHERE tid='$delete[tid]'");
  327. mysql_query("DELETE FROM players2 WHERE tid='$delete[tid]'");
  328. mysql_query("DELETE FROM brackets2 WHERE tid='$delete[tid]'");
  329. include("$dir[func]/admin_finishmessage.php");
  330. display_message("The tournament has been deleted.<br>");
  331. }
  332. function madmin_manage_reset($reset){
  333. global $config, $out, $site, $misc, $dir, $url, $file;
  334. if($reset[players]){
  335. mysql_query("DELETE FROM players2 WHERE tid='$reset[tid]'");
  336. }
  337. mysql_query("DELETE FROM brackets2 WHERE tid='$reset[tid]'");
  338. include("$dir[func]/admin_finishmessage.php");
  339. display_message("The tournament has been reset.<br>");
  340. }
  341. //START TOURNEY ADMIN FUNTIONS
  342. //////////////////////////////////////////////////////////////////////
  343. //////////////////////////////////////////////////////////////////////
  344. function select_tournament(){
  345. global $config, $out, $site, $misc, $dir, $url;
  346. $tourneylist=mysql_query("SELECT tid,name FROM tourneys ORDER by name");
  347. while(list($tid,$name)=mysql_fetch_row($tourneylist)){
  348. $tourneylistid.="<option value='$tid'>$name</option>\n";
  349. }
  350. $tablehead=table_head("show","70%","","left");
  351. $tablefoot=table_foot("show");
  352. $bannerhead=table_head("show","488","80","center");
  353. $bannerfoot=table_foot("show");
  354. $out[body]=$out[body]."
  355. <center>
  356. $bannerhead
  357. $out[banner]
  358. $bannerfoot <br>
  359. $tablehead &nbsp; &nbsp;<strong>
  360. <center>
  361. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  362. <tr class='altcolor'>
  363. <td width='100%' valign='top' align='center'>
  364. <b>Select a Tournament</b><br>
  365. </td></tr>
  366. <tr><td align='center'>
  367. <form method='post'><br>
  368. <select name='tid'>$tourneylistid</select>
  369. <input type='hidden' name='action' value='edit_tournament'><br><br>
  370. <input type='submit' value='Submit'><br>
  371. </form></td></tr>
  372. <tr class='altcolor'><td><br></td></tr></table>
  373. $tablefoot";
  374. include("$dir[curtheme]");
  375. }
  376. function TourneyAdminHome($tid){
  377. global $config,$tinfo,$out,$url,$dir,$site;
  378. $check = mysql_fetch_array(mysql_query("SELECT open FROM tourneys WHERE tid='$tid'"));
  379. if($check[open] == '0'){
  380. include("$dir[func]/error.php");
  381. display_error("Tournament is closed.<br><br>It can only be re-opened via the admin control panel.");
  382. }
  383. $tablehead=table_head("show","70%","","left");
  384. $tablefoot=table_foot("show");
  385. $bannerhead=table_head("show","488","80","center");
  386. $bannerfoot=table_foot("show");
  387. $out[body]=$out[body]."
  388. <script language='javascript'>var confirmdelete='This will delete all brackets details! Are you sure you wish to continue?';</script>
  389. <center>
  390. $bannerhead
  391. $out[banner]
  392. $bannerfoot <br>
  393. $tablehead &nbsp; &nbsp;<strong>
  394. <center>
  395. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  396. <tr class ='altcolor'>
  397. <td width='100%' valign='top' align='center' colspan='2'>
  398. <b>$tinfo[name]</b><br>
  399. </td></tr>
  400. <tr class='altcolorb'>
  401. <td align='left' width='300'><b>Manage Player Signups</b></td>
  402. <td align='center'><form method='post'>
  403. <input type='hidden' name='tid' value='$tid'>
  404. <input type='hidden' name='action' value='admin_players'>
  405. <input type='submit' value='Update'>
  406. </td></form>
  407. </tr>
  408. <tr class='altcolora'>
  409. <td align='left' width='300'><b>Manage Brackets with Drop Menus</b></td>
  410. <td align='center'><form method='post'>
  411. <input type='hidden' name='tid' value='$tid'>
  412. <input type='hidden' name='action' value='admin_brackets'>
  413. <input type='submit' value='Update'>
  414. </td></form>
  415. </tr>
  416. <tr class='altcolorb'>
  417. <td align='left' width='300'><b>Add Players to Brackets by Signup Order</b></td>
  418. <td align='center'><form method='post'>
  419. <input type='hidden' name='action' value='admin_autobracket'>
  420. <input type='hidden' name='tid' value='$tid'>
  421. <input type='submit' value='Update' onClick='return confirmdelete;'>
  422. </td></form>
  423. </tr>
  424. <tr class='altcolor'><td colspan='2'><br></td></tr>
  425. </table><br><br><br>
  426. </ul>
  427. $tablefoot";
  428. include("$dir[curtheme]");
  429. }
  430. function admin_players($edit,$tid){
  431. global $config,$tinfo,$admin,$out,$url,$dir;
  432. if($edit[pid]){
  433. $tourneyinfo=mysql_query("SELECT * FROM players2 WHERE pid='$edit[pid]' AND tid='$admin[tid]'");
  434. $adedt=mysql_fetch_array($tourneyinfo);
  435. }
  436. if($adedt[tid]){
  437. $actiontype="
  438. <input type='hidden' name='action' value='admin_players_update'>
  439. <input type='hidden' name='adedt[pid]' value='$adedt[pid]'>";
  440. $addeditword="Edit";
  441. }else{
  442. $actiontype="
  443. <input type='hidden' name='action' value='admin_players_add'>";
  444. $addeditword="Add";
  445. }
  446. $tablehead=table_head("show","70%","","left");
  447. $tablefoot=table_foot("show");
  448. $bannerhead=table_head("show","488","80","center");
  449. $bannerfoot=table_foot("show");
  450. $out[body]=$out[body]."
  451. <center>
  452. $bannerhead
  453. $out[banner]
  454. $bannerfoot <br>
  455. $tablehead<strong>
  456. <br>
  457. ";
  458. if(!$adedt[pid]){
  459. $playerlist=mysql_query("SELECT pid,name FROM players2 WHERE tid='$admin[tid]' ORDER BY name");
  460. while(list($pid,$name)=mysql_fetch_row($playerlist)){
  461. $playerlistid.="<option value='$pid'>$name</option>\n";
  462. }
  463. $out[body]=$out[body]."
  464. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  465. <tr class ='altcolor'>
  466. <td width='100%' valign='top' align='center' colspan='2'>
  467. <b>Delete a Team/Player</b>
  468. </td></tr>
  469. <tr class='altcolora'><td align='left' width='300'>
  470. <form method='post'>
  471. <b>Name</b></td>
  472. <td align='center' width='300'><select name='delete[pid]'>
  473. $playerlistid</select></td>
  474. </tr>
  475. <tr class='altcolor'>
  476. <td align='center' colspan='2' width='100%'>
  477. <script language='javascript'>var confirmdelete='Are you 100% sure you want to DELETE this Player';</script>
  478. <input type='hidden' name='action' value='admin_players_delete'>
  479. <input type='hidden' name='tid' value='$tid'>
  480. <input type='submit' value='Delete Team/Player' onClick='return confirm(confirmdelete);'>
  481. </td></form>
  482. </tr>
  483. </table>
  484. <br>
  485. ";
  486. }
  487. $out[body]=$out[body]."
  488. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  489. <tr class ='altcolor'>
  490. <td width='100%' valign='top' align='center' colspan='2'>
  491. <b>$addeditword a Team/Player</b>
  492. </td></tr>
  493. <tr class='altcolora'>
  494. <form method='post'>
  495. ";
  496. $ladderteams = mysql_query("SELECT id FROM ladder_$tinfo[ladderid]");
  497. while($ladderteam = mysql_fetch_array($ladderteams)){
  498. $teams = mysql_query("SELECT id,teamname FROM teams WHERE id ='$ladderteam[id]' ORDER by teamname");
  499. if($row=mysql_fetch_array($teams)){
  500. $theteams.="<option value='$row[teamname]' $selectedteam>$row[teamname]</option>";
  501. }
  502. }
  503. $out[body]=$out[body]."
  504. <form method='post'>
  505. <td align='left' width='300'><b>Name</b></td>
  506. <td align='center' width='300'><select name='adedt[name]'>$theteams</select></td>
  507. </tr>
  508. ";
  509. if($tinfo[field1]){
  510. $out[body]=$out[body]."
  511. <tr class='altcolorb'>
  512. <td align='left' width='300'>$tinfo[field1]</td>
  513. <td align='right'><input type='text' name='adedt[field1]' value='$adedt[field1]' maxlength='100'></td>
  514. </tr>
  515. ";
  516. }
  517. if($tinfo[field2]){
  518. $out[body]=$out[body]."
  519. <tr class='altcolora'>
  520. <td align='left' width='300'>$tinfo[field2]</td>
  521. <td align='right'><input type='text' name='adedt[field2]' value='$adedt[field2]' maxlength='100'></td>
  522. </tr>
  523. ";
  524. }
  525. if($tinfo[field1]){
  526. $out[body]=$out[body]."
  527. <tr class='altcolorb'>
  528. <td align='left' width='300'>$tinfo[field3]</td>
  529. <td align='right'><input type='text' name='adedt[field3]' value='$adedt[field3]' maxlength='100'></td>
  530. </tr>
  531. ";
  532. }
  533. $out[body]=$out[body]."
  534. <tr class='altcolor'>
  535. <td align='center' width='100%' colspan='2'>
  536. $actiontype
  537. <input type='hidden' name='tid' value='$tid'>
  538. <input type='submit' value='Add Team/Player'>
  539. </td></form>
  540. </tr>
  541. </table>
  542. </ul>
  543. $tablefoot";
  544. include("$dir[curtheme]");
  545. }
  546. function admin_players_add($adedt){
  547. global $config,$admin,$out,$dir,$url,$site,$file;
  548. while(list($varib,$value)=each($adedt)){
  549. $adedt[$varib]=characters($value);
  550. if(!$adedt[$varib]){
  551. include("$dir[func]/error.php");
  552. display_error("All fields are required");
  553. }
  554. }
  555. if(mysql_num_rows(mysql_query("SELECT pid FROM players2 WHERE tid='$admin[tid]' AND name='$adedt[name]'"))){
  556. include("$dir[func]/error.php");
  557. display_error("That Team Name is already in use on this tournament");
  558. }
  559. $teamid=mysql_query("SELECT id,teamemail FROM teams WHERE teamname='$adedt[name]'");
  560. $team=mysql_fetch_array($teamid);
  561. if(mysql_num_rows(mysql_query("SELECT pid FROM players2 WHERE tid='$admin[tid]' AND pid='$team[id]'"))){
  562. include("$dir[func]/error.php");
  563. display_error("That Team is already in use on this tournament");
  564. }
  565. mysql_query("INSERT INTO players2 VALUES (
  566. '$team[id]',
  567. '$admin[tid]',
  568. 'Admin Add',
  569. '$config[stamp]',
  570. '$adedt[name]',
  571. '$team[teamemail]',
  572. '$adedt[field1]',
  573. '$adedt[field2]',
  574. '$adedt[field3]');");
  575. include("$dir[func]/admin_finishmessage.php");
  576. display_message("The player has been added.<br>");
  577. }
  578. function admin_players_update($adedt){
  579. global $config,$admin,$out,$url,$dir,$site,$file;
  580. while(list($varib,$value)=each($adedt)){
  581. $adedt[$varib]=characters($value);
  582. if(!$adedt[$varib]){
  583. include("$dir[func]/error.php");
  584. display_error("All fields are required");
  585. }
  586. }
  587. mysql_query("UPDATE players2 SET
  588. name='$adedt[name]',
  589. email='$adedt[email]',
  590. field1='$adedt[field1]',
  591. field2='$adedt[field2]',
  592. field3='$adedt[field3]'
  593. WHERE pid='$adedt[pid]' AND tid='$admin[tid]'");
  594. mysql_query("UPDATE brackets2 SET
  595. name='$adedt[name]'
  596. WHERE pid='$adedt[pid]' AND tid='$admin[tid]'");
  597. include("$dir[func]/admin_finishmessage.php");
  598. display_message("The player has been updated.<br>");
  599. include("$dir[curtheme]");
  600. }
  601. function admin_players_delete($delete){
  602. global $config,$admin,$out,$url,$dir,$site,$file;
  603. mysql_query("DELETE FROM players2 WHERE pid='$delete[pid]' AND tid='$admin[tid]'");
  604. mysql_query("DELETE FROM brackets2 WHERE pid='$delete[pid]' AND tid='$admin[tid]'");
  605. include("$dir[func]/admin_finishmessage.php");
  606. display_message("The player has been deleted.<br>");
  607. include("$dir[curtheme]");
  608. }
  609. function admin_brackets($btype,$tid){
  610. global $config,$tinfo,$admin,$out,$dir,$url;
  611. if($btype[text]){
  612. $brackets=mysql_query("SELECT bid,pid,name FROM brackets2 WHERE tid='$admin[tid]' ORDER BY bid");
  613. while(list($bid,$pid,$name)=mysql_fetch_row($brackets)){
  614. $bracket[$bid]="$name";
  615. }
  616. }else{
  617. $textedited=mysql_query("SELECT name FROM brackets2 WHERE pid='0' AND tid='$admin[tid]'ORDER BY name");
  618. while(list($name)=mysql_fetch_row($textedited)){
  619. $textplayers.="<option value='0|$name'>$name</option>";
  620. }
  621. if($textplayers){
  622. $textplayers="<option value=''>-TEXT FIELD ADDS-</option> $textplayers";
  623. }
  624. $players=mysql_query("SELECT pid,name FROM players2 WHERE tid='$admin[tid]' ORDER BY name");
  625. while(list($pid,$name)=mysql_fetch_row($players)){
  626. $playerlist.="<option value='$pid|$name'>$name</option>";
  627. }
  628. if($playerlist){
  629. $playerlist="<option value=''>-PLAYER SIGNUPS-</option> $playerlist";
  630. }
  631. $brackets=mysql_query("SELECT bid,pid,name FROM brackets2 WHERE tid='$admin[tid]' ORDER BY bid");
  632. while(list($bid,$pid,$name)=mysql_fetch_row($brackets)){
  633. $bracket[$bid]="<option value='$pid|$name' SELECTED>$name</option>";
  634. }
  635. }
  636. ////////////////////////////////
  637. $brackets="$tinfo[size]";
  638. //TEMP
  639. //$brackets="64";
  640. $spots=($brackets * 2 - 1);
  641. $temp_rows="$brackets";
  642. while($temp_rows > 1){
  643. $rowcount++;
  644. if($rowcount > 1){
  645. $temp_rows=($temp_rows / 2);
  646. }
  647. $listrows.="-> $temp_rows";
  648. $rows="$rowcount";
  649. }
  650. $rowwidths=round(100 / $rows - 0.5);
  651. $actualrows=($rows * 2);
  652. /*
  653. //UNCOMMENT SECTION FOR DEBUGGING
  654. echo"
  655. [Bracket Stats]<br>
  656. Brackets: $brackets<br>
  657. Spots: $spots<br>
  658. Game Rows: $rows<br>
  659. Actual Rows: $actualrows<br>
  660. Row Widths: $rowwidths<br>
  661. Pattern: $listrows<br>
  662. <hr>";
  663. */
  664. ////////////////////////////////
  665. $tablehead=table_head("show","70%","","left");
  666. $tablefoot=table_foot("show");
  667. $bannerhead=table_head("show","488","80","center");
  668. $bannerfoot=table_foot("show");
  669. $out[body]=$out[body]."
  670. <center>
  671. $bannerhead
  672. $out[banner]
  673. $bannerfoot <br>
  674. $tablehead &nbsp; &nbsp;<strong>
  675. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  676. <tr class ='altcolor'>
  677. <td width='100%' valign='top' align='center'>
  678. <b>$tinfo[name] Brackets</b><br>
  679. </td></tr></table>
  680. <br>
  681. <br>
  682. <table border='0' width='100%' cellspacing='0' cellpadding='0'>
  683. <tr>
  684. <form method='post'>
  685. ";
  686. $counter="$brackets";
  687. while($counter > 1){
  688. if($round){
  689. $counter=($counter / 2);
  690. }
  691. $lastcb="$countbrackets";
  692. $countbrackets="";
  693. $game="";
  694. $round++;
  695. $finals=($rows - 1);
  696. $winner=($rows);
  697. $roundgamesay="Round $round Games";
  698. if($round=="$winner"){
  699. $roundgamesay="Winner!";
  700. }
  701. if($round=="$finals"){
  702. $roundgamesay="Finals";
  703. }
  704. $out[body]=$out[body]."
  705. <td align='center' valign='center' width='$rowwidths%' colspan='2'><b>$roundgamesay</b><br>
  706. <table border='0' width='100%' bordercolor='#FF0000' cellspacing='0' cellpadding='0'>
  707. ";
  708. $spacesetcount="";
  709. while($countbrackets < $counter){
  710. $countbrackets++;
  711. $spot++;
  712. $spacesetcount++;
  713. if($spacesetcount=="4"){
  714. $spacesetcount="";
  715. }
  716. $bracketid="$round"."_"."$countbrackets";
  717. if($btype[text]){
  718. $inputtype="<input type='text' name='brackets[$bracketid]' value='$bracket[$bracketid]' maxlength='20'>";
  719. }else{
  720. $inputtype="<select name='brackets[$bracketid]'>$bracket[$bracketid] $textplayers $playerlist</select>";
  721. }
  722. $out[body]=$out[body]."
  723. <tr class='altcolor'>
  724. <td align='left' valign='center' width='100%'>$inputtype</td>
  725. <td align='left' valign='center' width='100%'>&nbsp;</td>
  726. </tr>
  727. ";
  728. if($countbrackets < $counter){
  729. $spacecounter++;
  730. $spacecounter=($spacecounter + 1);
  731. if($spacecounter==2){
  732. $roundx2p1=($lastroundx2p1 * 2 + 1);
  733. if($round==1){
  734. $roundx2p1="1";
  735. }
  736. while($countspaces < $roundx2p1){
  737. $countspaces++;
  738. $spacesetbgcolor="#$altcolor";
  739. if((!$spacesetcount)||($spacesetcount=="2")){
  740. $spacesetbgcolor="";
  741. }
  742. $spacecentercount++;
  743. $spacecenterword="";
  744. $alignspacer1="left";
  745. $spacecentercountcheck=($lastroundx2p1 + 1);
  746. if($spacecentercount=="$spacecentercountcheck"){
  747. $spacecenterwordcount++;
  748. if(($spacecenterwordcount==1)||($spacecenterwordcount==3)){
  749. $actualgamecount++;
  750. $spacecenterword="<b>Game $actualgamecount</b>";
  751. $alignspacer1="center";
  752. if($spacecenterwordcount==3){
  753. $spacecenterwordcount="";
  754. $spacecenterwordcount++;
  755. }
  756. }
  757. }
  758. $out[body]=$out[body]."
  759. <tr>
  760. <td align='$alignspacer1' valign='center'>&nbsp; $spacecenterword</td>
  761. <td align='left' valign='center' bgcolor='$spacesetbgcolor'>&nbsp;</td>
  762. </tr>
  763. ";
  764. }
  765. $spacecounter="";
  766. $countspaces="";
  767. $spacecentercount="";
  768. }
  769. }
  770. }
  771. $spacecenterwordcount="";
  772. $actualgamecount="";
  773. $lastroundx2p1="$roundx2p1";
  774. $out[body]=$out[body]."
  775. </table>
  776. </td>
  777. ";
  778. }
  779. $out[body]=$out[body]."
  780. </tr>
  781. </table>
  782. <br>
  783. <br><br><br>
  784. <table width='600' border='1' bordercolor='#000000' cellspacing='0' cellpadding='2'>
  785. <input type='hidden' name='brackets[text]' value='$btype[text]'>
  786. <input type='hidden' name='action' value='admin_brackets_update'>
  787. <input type='hidden' name='tid' value='$tid'>
  788. <tr class ='altcolor'>
  789. <td width='100%' valign='top' align='center'>
  790. <input type='submit' value='Update Brackets'>
  791. </td></tr></table></form>
  792. <br><br>
  793. $tablefoot";
  794. include("$dir[curtheme]");
  795. }
  796. function admin_brackets_update($brackets,$tid){
  797. global $config,$tinfo,$admin,$out,$url,$dir;
  798. mysql_query("DELETE FROM brackets2 WHERE tid='$admin[tid]'");
  799. while(list($bracketid,$playerinfo)=each($brackets)){
  800. if($brackets[text]){
  801. $nameid[1]="$playerinfo";
  802. }else{
  803. $nameid=split("\|",$playerinfo);
  804. }
  805. if(($nameid[1])&&($bracketid!="text")){
  806. mysql_query("INSERT INTO brackets2 VALUES (
  807. '$bracketid',
  808. '$admin[tid]',
  809. '$nameid[0]',
  810. '$nameid[1]');");
  811. }
  812. }
  813. $tablehead=table_head("show","70%","","left");
  814. $tablefoot=table_foot("show");
  815. $bannerhead=table_head("show","488","80","center");
  816. $bannerfoot=table_foot("show");
  817. $out[body]=$out[body]."
  818. <center>
  819. $bannerhead
  820. $out[banner]
  821. $bannerfoot <br>
  822. $tablehead<strong>
  823. <center><br>
  824. <font class='catfont'><b>The Brackets have been updated!</b><br></font>
  825. </ul><table><tr><td>
  826. <form>
  827. <input type='hidden' name='action' value='admin_brackets'>
  828. <input type='hidden' name='tid' value='$tid'>
  829. <input type='submit' value='Return to Brackets'>
  830. </form></td><td>
  831. <form>
  832. <input type='hidden' name='action' value='admin_brackets_finish'>
  833. <input type='hidden' name='tid' value='$tid'>
  834. <input type='submit' value='Close Tournament'>
  835. </center>
  836. </form></td></tr></table>
  837. $tablefoot";
  838. include("$dir[curtheme]");
  839. }
  840. function admin_brackets_finish($tid){
  841. global $config,$tinfo,$admin,$out,$url,$dir;
  842. $i=0;
  843. $j=0;
  844. $p=0;
  845. $k=0;
  846. $winner = array();
  847. $team1 = array();
  848. $team2 = array();
  849. $report = array(id);
  850. $brackets=mysql_query("SELECT bid,pid,name FROM brackets2 WHERE tid='$admin[tid]' ORDER BY (SUBSTRING_INDEX(bid,'_',1)+0), (SUBSTRING_INDEX(bid,'_',-1)+0)");
  851. while($row= mysql_fetch_array($brackets) ){
  852. $bid = $row[bid];
  853. if(($bid[2]%2==0)&&($bid[2] == $game)&&($bid[0] ==$round)){
  854. $bracketid="$round"."_"."$countbrackets";
  855. $winner[$i] = ($round+1)."_".($bid[2]/2);
  856. $team1[$i] = $teama;
  857. $team2[$i] = $row[pid];
  858. $i++;
  859. }
  860. $teama = $row[pid];
  861. $round = $bid[0];
  862. $game = $bid[2] + 1;
  863. }
  864. $tablehead=table_head("show","70%","","left");
  865. $tablefoot=table_foot("show");
  866. $bannerhead=table_head("show","488","80","center");
  867. $bannerfoot=table_foot("show");
  868. $out[body]=$out[body]."
  869. <center>
  870. $bannerhead
  871. $out[banner]
  872. $bannerfoot <br>
  873. $tablehead<strong>
  874. <center>
  875. <b>Would you like to report the following matches played in the tournament?</b><br></font>
  876. </ul>
  877. <table width='400' cellspacing='1' cellpadding='1'>
  878. <tr class='altcolor'><td>#</td><td>Winner</td><td>Loser</td></tr>
  879. <form method=post>
  880. ";
  881. while($j<$i){
  882. $winningteam=mysql_fetch_array(mysql_query("SELECT pid,name FROM brackets2 WHERE bid='$winner[$j]' AND tid='$admin[tid]'"));
  883. if($winningteam[pid] == $team1[$j]){
  884. $losingteam = $team2[$j];
  885. $losingteamname=mysql_fetch_array(mysql_query("SELECT teamname FROM teams WHERE id='$losingteam'"));
  886. $k = $j + 1;
  887. $out[body]=$out[body]." <tr class=altcolora'><td><b>$k</b></td><td><b>$winningteam[name]</b></td><td><b>$losingteamname[0]</b></td></tr>";
  888. }else if($winningteam[pid] == $team2[$j]){
  889. $losingteam = $team1[$j];
  890. $losingteamname=mysql_fetch_array(mysql_query("SELECT teamname FROM teams WHERE id='$losingteam'"));
  891. $k = $j + 1;
  892. $out[body]=$out[body]." <tr class=altcolora'><td><b>$k</b></td><td><b>$winningteam[name]</b></td><td><b>$losingteamname[0]</b></td></tr>";
  893. }
  894. $report[$p] = $winningteam[pid];
  895. $out[body]=$out[body]." <input type='hidden' name='report[$p]' value = '$report[$p]'>";
  896. $p++;
  897. $report[$p] = $losingteam;
  898. $out[body]=$out[body]." <input type='hidden' name='report[$p]' value = '$report[$p]'>";
  899. $p++;
  900. $j++;
  901. }
  902. $out[body]=$out[body]."
  903. </table>
  904. <br><br>
  905. <input type='hidden' name='action' value='admin_brackets_report'>
  906. <input type='hidden' name='tid' value='$tid'>
  907. <input type='submit' value='Close Tournament and Report Matches'>
  908. </form>
  909. <form>
  910. <input type='hidden' name='action' value='admin_brackets_close'>
  911. <input type='hidden' name='tid' value='$tid'>
  912. <input type='submit' value='Close Tournament Without Reporting Matches'>
  913. </form>
  914. </center>
  915. $tablefoot";
  916. include("$dir[curtheme]");
  917. }
  918. function admin_brackets_report($report){
  919. global $config,$tinfo,$admin,$out,$url,$dir,$site,$file;
  920. $size=count($report);
  921. $i=0;
  922. $ladderid = $tinfo[ladderid];
  923. if(!$ladderid){
  924. include("$dir[func]/error.php");
  925. display_error("Invalid Ladder ID<br>");
  926. }
  927. // ERROR CHECK
  928. while($i<$size){
  929. $wteamid = $report[$i];
  930. $i++;
  931. $lteamid = $report[$i];
  932. $i++;
  933. if((!$wteamid) || (!$lteamid)){
  934. include("$dir[func]/error.php");
  935. display_error("<b>No Winning/Losing Team For One Of The Matches. <br> All Reports Aborted. Edit Brackets And Try Again.</b><br>");
  936. }
  937. if($wteamid==$lteamid){
  938. include("$dir[func]/error.php");
  939. display_error("<b>Winning Team And Losing Team The Same For One Of The Matches.<br> All Reports Aborted. Edit Brackets And Try Again.</b><br>");
  940. }
  941. }
  942. $i=0;
  943. include("$dir[func]/rankadjust.php");
  944. //REPORT
  945. while($i<$size){
  946. $wteamid = $report[$i];
  947. $i++;
  948. $lteamid = $report[$i];
  949. $i++;
  950. $ladderinfo=mysql_query("SELECT laddername FROM ladders WHERE id='$ladderid'");
  951. $ladder=mysql_fetch_array($ladderinfo);
  952. //GET WINNER STATS
  953. $winnerteam=mysql_query("SELECT teamname FROM teams WHERE id='$wteamid'");
  954. $winner=mysql_fetch_array($winnerteam);
  955. $winteaminfo=mysql_query("SELECT status,rank,games,percent FROM ladder_$ladderid WHERE id='$wteamid'");
  956. $wtinfo=mysql_fetch_array($winteaminfo);
  957. //GET LOSER STATS
  958. $loserteam=mysql_query("SELECT teamname FROM teams WHERE id='$lteamid'");
  959. $loser=mysql_fetch_array($loserteam);
  960. $losteaminfo=mysql_query("SELECT status,rank,games,percent FROM ladder_$ladderid WHERE id='$lteamid'");
  961. $ltinfo=mysql_fetch_array($losteaminfo);
  962. // GET SKILL INFO
  963. if($wtinfo[rank] > $ltinfo[rank]){
  964. $rankdifference=($wtinfo[rank] - $ltinfo[rank]);
  965. }else{
  966. $rankdifference="1";
  967. }
  968. if($ltinfo[percent]){
  969. $percentoratio=($wtinfo[percent] / $ltinfo[percent]);
  970. }else{
  971. $percentoratio="1";
  972. }
  973. $skilladjust=($rankdifference * $percentoratio / 10);
  974. $skillfactor=($skilladjust + $wtinfo[games] / 100);
  975. if($skillfactor > 20){
  976. $gainedskill="20";
  977. }else{
  978. $gainedskill=round($skillfactor);
  979. }
  980. //IF BOTH RANKED AND LOSER WAS RANKED BETTER THAN WINNER, WINNER GETS EXTRA POINTS
  981. if(($wtinfo[rank] > 0) && ($ltinfo[rank] > 0) && ($wtinfo[rank] > $ltinfo[rank])){
  982. $trankedplayers=mysql_query("SELECT COUNT(*) FROM ladder_$ladderid WHERE rank > '0'");
  983. $trplayers=mysql_fetch_array($trankedplayers);
  984. $rankedplayers="$rplayers[0]";
  985. $gainedpoints=($rankedplayers - $ltinfo[rank]);
  986. if($gainedpoints < 10){
  987. $gainedpoints=($gainedpoints + 10);
  988. }
  989. }else{
  990. //GET FLAT RATE OF 10 POINTS
  991. $gainedpoints="10";
  992. }
  993. //ADD TO UNVALIDATED MATCHES
  994. $tday=date("Y-m-d H:i:s");
  995. $mcode=md5(uniqid(microtime()));
  996. $mcode="$mcode";
  997. $ip=getenv("REMOTE_ADDR");
  998. mysql_query("INSERT INTO matchdb VALUES (
  999. '$mcode',
  1000. '$wteamid',
  1001. '$lteamid',
  1002. '$winner[teamname]',
  1003. '$loser[teamname]',
  1004. '$ladderid',
  1005. '$ladder[laddername]',
  1006. '$wtinfo[rank]',
  1007. '$ltinfo[rank]',
  1008. '0',
  1009. '0',
  1010. '0',
  1011. '0',
  1012. '0',
  1013. '0',
  1014. '0',
  1015. '0',
  1016. '0',
  1017. '0',
  1018. '0',
  1019. '$tday',
  1020. '$ip',
  1021. '0',
  1022. '$tday',
  1023. '$ip');");
  1024. $getcode=mysql_query("SELECT matchid FROM matchdb WHERE winnerid='$wteamid' AND loserid='$lteamid'");
  1025. $match=mysql_fetch_array($getcode);
  1026. $matchcode="$match[matchid]";
  1027. //GET WINNERS LADDER STATS
  1028. $winnerladder=mysql_query("SELECT * FROM ladder_$ladderid WHERE id='$wteamid'");
  1029. $wlinfo=mysql_fetch_array($winnerladder);
  1030. //GET LOSERS LADDER STATS
  1031. $loserladder=mysql_query("SELECT * FROM ladder_$ladderid WHERE id='$lteamid'");
  1032. $llinfo=mysql_fetch_array($loserladder);
  1033. //GET TOTAL RANKERS
  1034. $totalranked=mysql_query("SELECT COUNT(*) FROM ladder_$ladderid WHERE rank > '0'");
  1035. $totalranks=mysql_fetch_array($totalranked);
  1036. $totalranks="$totalranks[0]";
  1037. //UPDATE LADDER RANKS
  1038. if(($wtinfo[rank] > 0) && ($ltinfo[rank] > 0)){
  1039. $wtempnewrank=($wtinfo[rank] + $ltinfo[rank]);
  1040. $wtempnewrank=($wtempnewrank / 2 - 0.5);
  1041. if($wtempnewrank > $totalranks){
  1042. $wtempnewrank="$totalranks";
  1043. }
  1044. }
  1045. else if(($wtinfo[rank] < 1) && ($ltinfo[rank] > 0)){
  1046. $wtempnewrank=($totalranks + 1);
  1047. }
  1048. else if(($wtinfo[rank] < 1) && ($ltinfo[rank] < 1)){
  1049. $wtempnewrank=($totalranks + 1);
  1050. }else{
  1051. $wtempnewrank="";
  1052. }
  1053. $wtempnewrank=round($wtempnewrank);
  1054. //IF RANK IS BETTER THAN CURRENT RANK UPDATE LADDER
  1055. if(($wtempnewrank) && ($wtempnewrank > 0)){
  1056. if(($wtempnewrank < $wlinfo[rank]) || ($wlinfo[rank] < 1)){
  1057. update_teamranks($ladderid,$wteamid,$wtempnewrank);
  1058. $updatedrank="$wtempnewrank";
  1059. }
  1060. }
  1061. //UPDATE WINNERS LADDER STATS
  1062. if($updatedrank){
  1063. $newlastrank="$wlinfo[rank]";
  1064. if(($updatedrank < $wlinfo[bestrank]) || ($wlinfo[bestrank] < 1)){
  1065. $newbestrank="$updatedrank";
  1066. }else{
  1067. $newbestrank="$wlinfo[bestrank]";
  1068. }
  1069. }else{
  1070. $newlastrank="$wlinfo[lastrank]";
  1071. $newbestrank="$wlinfo[bestrank]";
  1072. }
  1073. $newwins=($wlinfo[wins] + 1);
  1074. $newgames=($newwins + $wlinfo[losses]);
  1075. $newpercent=round($newwins / $newgames * 100);
  1076. $newstreak=($wlinfo[streak] + 1);
  1077. if($newstreak < 1){
  1078. $newstreak="1";
  1079. }
  1080. if($newstreak > $wlinfo[beststreak]){
  1081. $newbeststreak="$newstreak";
  1082. }else{
  1083. $newbeststreak="$wlinfo[beststreak]";
  1084. }
  1085. if($llinfo[rank] > 0){
  1086. $newpoints=($totalranks - $llinfo[rank]);
  1087. $newpoints=round($newpoints / 10);
  1088. }
  1089. if($newpoints < 10){
  1090. $newpoints="10";
  1091. }
  1092. $newskill=($wlinfo[skill] + $totalkills);
  1093. $newpoints=($newpoints + $wlinfo[points]);
  1094. mysql_query("UPDATE ladder_$ladderid SET
  1095. lastmatch='$tday',
  1096. lastplayed='$lteamid',
  1097. statusdisplay='',
  1098. lastrank='$newlastrank',
  1099. bestrank='$newbestrank',
  1100. wins='$newwins',
  1101. games='$newgames',
  1102. percent='$newpercent',
  1103. streak='$newstreak',
  1104. beststreak='$newbeststreak',
  1105. points='$newpoints',
  1106. skill='$newskill'
  1107. WHERE id='$wteamid'");
  1108. //UPDATE LOSERS LADDER STATS
  1109. $newlastrank="$llinfo[rank]";
  1110. if(($llinfo[rank] < $llinfo[bestrank]) || ($llinfo[bestrank]=="0")){
  1111. $newbestrank="$llinfo[rank]";
  1112. }else{
  1113. $newbestrank="$llinfo[bestrank]";
  1114. }
  1115. if($llinfo[rank] > $llinfo[worstrank]){
  1116. $newworstrank="$llinfo[rank]";
  1117. }else{
  1118. $newworstrank="$llinfo[worstrank]";
  1119. }
  1120. $newlosses=($llinfo[losses] + 1);
  1121. $newgames=($newlosses + $llinfo[wins]);
  1122. $newpercent=round($llinfo[wins] / $newgames * 100);
  1123. $newstreak=($llinfo[streak] - 1);
  1124. if($newstreak > 0){
  1125. $newstreak="-1";
  1126. }
  1127. if($newstreak < $llinfo[worststreak]){
  1128. $newworststreak="$newstreak";
  1129. }else{
  1130. $newworststreak="$llinfo[worststreak]";
  1131. }
  1132. $newskill=($llinfo[skill] + $match[skill]);
  1133. mysql_query("UPDATE ladder_$ladderid SET
  1134. lastmatch='$tday',
  1135. lastplayed='$wteamid',
  1136. statusdisplay='',
  1137. lastrank='$newlastrank',
  1138. bestrank='$newbestrank',
  1139. worstrank='$newworstrank',
  1140. losses='$newlosses',
  1141. games='$newgames',
  1142. percent='$newpercent',
  1143. streak='$newstreak',
  1144. worststreak='$newworststreak',
  1145. skill='$newskill'
  1146. WHERE id='$lteamid'");
  1147. $ranksadjusted=rank_checkadjust($ladderid);
  1148. }
  1149. mysql_query("UPDATE tourneys SET open='0' WHERE tid='$admin[tid]'");
  1150. include("$dir[func]/admin_finishmessage.php");
  1151. display_message("All Matches Have Been Reported. <br><br>Tournament is now closed and cannot be edited further without re-opening.<br>");
  1152. include("$dir[curtheme]");
  1153. }
  1154. function admin_autobracket(){
  1155. global $config,$tinfo,$admin,$out,$url,$dir,$site,$file;
  1156. mysql_query("DELETE FROM brackets2 WHERE tid='$admin[tid]'");
  1157. $players=mysql_query("SELECT pid,name FROM players2 WHERE tid='$admin[tid]' ORDER BY joined LIMIT $tinfo[size]");
  1158. while(list($pid,$name)=mysql_fetch_row($players)){
  1159. $count++;
  1160. mysql_query("INSERT INTO brackets2 VALUES (
  1161. '1_$count',
  1162. '$admin[tid]',
  1163. '$pid',
  1164. '$name');");
  1165. }
  1166. include("$dir[func]/admin_finishmessage.php");
  1167. display_message("The brackets have been automatically set.<br>");
  1168. include("$dir[curtheme]");
  1169. }
  1170. function close_tournament(){
  1171. global $config,$tinfo,$admin,$out,$url,$dir,$site,$file;
  1172. mysql_query("UPDATE tourneys SET open='0' WHERE tid='$admin[tid]'");
  1173. include("$dir[func]/admin_finishmessage.php");
  1174. display_message("Tournament is now closed and cannot be edited further.<br>The results were not reported.<br>");
  1175. include("$dir[curtheme]");
  1176. }
  1177. ?>