Guest User

characters.php

a guest
Feb 9th, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 28.28 KB | None | 0 0
  1. <?php
  2. if(!defined('INITIALIZED'))
  3.     exit;
  4.  
  5. $name = '';
  6. if(isset($_REQUEST['name']))
  7.     $name = (string) $_REQUEST['name'];
  8.  
  9. if(!empty($_REQUEST['view'])
  10. && isset($_REQUEST['view'])){
  11.     if($_REQUEST['view'] == "matches"){
  12.  
  13.         $main_content .= '<BR><BR>
  14.             <FORM ACTION="?subtopic=characters&view=matches" METHOD=post>
  15.                 <TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4>
  16.                     <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Search Character</B></TD></TR>
  17.                     <TR>
  18.                         <TD BGCOLOR="'.$config['site']['darkborder'].'">
  19.                             <TABLE BORDER=0 CELLPADDING=1>
  20.                                 <TR><TD>Name:</TD><TD><INPUT NAME="name" VALUE=""SIZE=29 MAXLENGTH=29></TD><TD>
  21.                                 <INPUT TYPE=image NAME="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD></TR>
  22.                             </TABLE>
  23.                         </TD>
  24.                     </TR>
  25.                 </TABLE>
  26.             </FORM>';
  27.         $main_content .= '</TABLE>';
  28.  
  29.         if(isset($name) && !empty($name)){
  30.             $matches = $SQL->query('SELECT * FROM `players` WHERE `name` LIKE '.$SQL->quote("%".$name."%").' LIMIT 25')->fetchAll();
  31.  
  32.             if(count($matches) > 0){
  33.                 foreach($matches as $match){
  34.                     $sim = similar_text(strtolower($name), strtolower($match['name']), $pct);
  35.                     $match["similarity"] = $pct;
  36.                 }
  37.  
  38.                 //arsort($matches);
  39.                 for($i = 0; $i < count($fruits)-1; $i++){
  40.                     for($j = 0; $j < (count($fruits)-1)-$i; $j++){
  41.                         if($fruits[$j]["similarity"] < $fruits[$j+1]["similarity"]){
  42.                             $temp = $fruits[$j];
  43.                             $fruits[$j] = $fruits[$j+1];
  44.                             $fruits[$j+1] = $temp;
  45.                         }
  46.                     }
  47.                 }
  48.  
  49.                 $main_content.='<table style="width:100%;" cellspacing="1" cellpadding="4" border="0">
  50.                 <tr><td class="white" bgcolor="#505050" colspan="2"><b>Matches Found</b> - Keyword(s): '.$name.'</td></tr>';
  51.                     foreach($matches as $index => $player){
  52.                         $main_content.="
  53.                         <tr bgcolor=\"#D4C0A1\">
  54.                             <td><a href=\"/?subtopic=characters&name=".urlencode($player['name'])."\">".$player["name"]."</td>
  55.                             <td>[ ".$player["level"]." ]</td>
  56.                         </tr>";
  57.                     }
  58.                 $main_content.="</table>";
  59.             } else {
  60.  
  61.                 $main_content.="<b>No matches found. Keyword: ".$name." </b>";
  62.  
  63.             }
  64.             //print_r($matches);
  65.         } else {
  66.             $main_content .= "<b>Warning: Search parameter empty</b>";
  67.         }
  68.     }
  69. } else {
  70.         if(!empty($name))
  71.         {
  72.             $player = new Player();
  73.             $player->find($name);
  74.             if($player->isLoaded())
  75.             {
  76.                 $number_of_rows = 0;
  77.                 $account = $player->getAccount();
  78.                 $skull = '';
  79.                 if ($player->getSkull() == 4)
  80.                     $skull = "<img style='border: 0;' src='./images/skulls/redskull.gif'/>";
  81.                 else if ($player->getSkull() == 5)
  82.                     $skull = "<img style='border: 0;' src='./images/skulls/blackskull.gif'/>";
  83.                 $main_content .= '<table border="0" cellspacing="1" cellpadding="4" width="100%"><tr bgcolor="'.$config['site']['vdarkborder'].'"><td colspan="2" style="font-weight:bold;color:white">Character Information</td></tr>';
  84.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  85.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td width="20%">Name:</td><td style="font-weight:bold;color:' . (($player->isOnline()) ? 'green' : 'red') . '">' . htmlspecialchars($player->getName()) . ' ' . $skull . ' <img src="' . $config['site']['flag_images_url'] . $account->getFlag() . $config['site']['flag_images_extension'] . '" title="Country: ' . $account->getFlag() . '" alt="' . $account->getFlag() . '" />';
  86.                 if($player->isBanned() || $account->isBanned())
  87.                     $main_content .= '<span style="color:red">[BANNED]</span>';
  88.                 if($player->isNamelocked())
  89.                     $main_content .= '<span style="color:red">[NAMELOCKED]</span>';
  90.                 $main_content .= '<br /><img src="' . $config['site']['outfit_images_url'] . '?id=' . $player->getLookType() . '&addons=' . $player->getLookAddons() . '&head=' . $player->getLookHead() . '&body=' . $player->getLookBody() . '&legs=' . $player->getLookLegs() . '&feet=' . $player->getLookFeet() . '" alt="" /></td></tr>';
  91.  
  92.                 $playerNamelocks = new DatabaseList('PlayerNamelocks');
  93.                 $filter = new SQL_Filter(new SQL_Field('player_id'), SQL_Filter::EQUAL, $player->getID());
  94.                 $playerNamelocks->setFilter($filter);
  95.                 if(count($playerNamelocks) > 0)
  96.                 {
  97.                     $old_names_text = array();
  98.                     foreach($playerNamelocks as $oldName)
  99.                     {
  100.                         $old_names_text[] = 'until ' . date("j F Y, g:i a", $oldName->getDate()) . ' known as <b>' . htmlspecialchars($oldName->getName()) . '</b>';
  101.                     }
  102.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  103.                     $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Old Names:</td><td>' . implode('<br />', $old_names_text) . '</td></tr>';
  104.                 }
  105.                 if(in_array($player->getGroup(), $config['site']['groups_support']))
  106.                 {
  107.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  108.                     $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Group:</td><td>' . htmlspecialchars(Website::getGroupName($player->getGroup())) . '</td></tr>';
  109.                 }
  110.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  111.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Sex:</td><td>' . htmlspecialchars((($player->getSex() == 0) ? 'female' : 'male')) . '</td></tr>';
  112.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  113.                 $meritalStatus = 'single';
  114.                 if($player->getMarriage() > 0)
  115.                 {
  116.                     $marriage = new Player();
  117.                     $marriage->load($player->getMarriage());
  118.                     if($marriage->isLoaded())
  119.                         $meritalStatus = 'married to <a href="?subtopic=characters&name='.urlencode($marriage->getName()).'"><b>'.htmlspecialchars($marriage->getName()).'</b></a>';
  120.                 }
  121.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Marital status:</td><td>' . $meritalStatus . '</td></tr>';
  122.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  123.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Profession:</td><td>' . htmlspecialchars(Website::getVocationName($player->getVocation(), $player->getPromotion())) . '</td></tr>';
  124.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  125.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Level:</td><td>' . htmlspecialchars($player->getLevel()) . '</td></tr>';
  126.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  127.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>World:</td><td>' . htmlspecialchars($config['site']['worlds'][$player->getWorldID()]) . '</td></tr>';
  128.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  129.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Residence:</td><td>' . htmlspecialchars($towns_list[$player->getWorldID()][$player->getTownID()]) . '</td></tr>';
  130.                 $rank_of_player = $player->getRank();
  131.                 if(!empty($rank_of_player))
  132.                 {
  133.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  134.                     $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Guild Membership:</td><td>' . htmlspecialchars($rank_of_player->getName()) . ' of the <a href="?subtopic=guilds&action=show&guild='. $rank_of_player->getGuild()->getID() .'">' . htmlspecialchars($rank_of_player->getGuild()->getName()) . '</a></td></tr>';
  135.                 }
  136.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  137.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Balance:</td><td>' . htmlspecialchars($player->getBalance()) . ' gold coins</td></tr>';
  138.                 $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  139.                 $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Last login:</td><td>' . (($player->getLastLogin() > 0) ? date("j F Y, g:i a", $player->getLastLogin()) : 'Never logged in.') . '</td></tr>';
  140.                 if($player->getCreateDate() > 0)
  141.                 {
  142.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  143.                     $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Created:</td><td>' . date("j F Y, g:i a", $player->getCreateDate()) . '</td></tr>';
  144.                 }
  145.                 if($config['site']['show_vip_storage'] > 0)
  146.                 {
  147.                     $storageValue = $player->getStorage($config['site']['show_vip_storage']);
  148.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  149.                     $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>VIP:</td><td>' . (($storageValue === null || $storageValue < 0) ? '<span style="font-weight:bold;color:red">NOT VIP</span>' : '<span style="font-weight:bold;color:green">VIP</span>') . '</td></tr>';
  150.                 }
  151.                 $comment = $player->getComment();
  152.                 $newlines = array("\r\n", "\n", "\r");
  153.                 $comment_with_lines = str_replace($newlines, '<br />', $comment, $count);
  154.                 if($count < 50)
  155.                     $comment = $comment_with_lines;
  156.                 if(!empty($comment))
  157.                 {
  158.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  159.                     $main_content .= '<tr bgcolor="' . $bgcolor . '"><td>Comment:</td><td>' . $comment . '</td></tr>';
  160.                 }
  161.                 $main_content .= '</TABLE>';
  162.  
  163.                 $main_content .= '<table width=100%><tr>';
  164.                 $itemsList = $player->getItems();
  165.                 $main_content .= '<td align=center><table with=100% style="border: solid 1px #888888;" CELLSPACING="1"><TR>';
  166.                 $list = array('2','1','3','6','4','5','9','7','10','8');
  167.                 foreach ($list as $number_of_items_showed => $slot)
  168.                 {
  169.                     if($slot == '8') // add Soul before show 'feet'
  170.                     {
  171.                         $main_content .= '<td style="background-color: '.$config['site']['darkborder'].'; text-align: center;">Soul:<br/>'. $player->getSoul() .'</td>';
  172.                     }
  173.                     if($itemsList->getSlot($slot) === false) // item does not exist in database
  174.                     {
  175.                         $main_content .= '<TD style="background-color: '.$config['site']['darkborder'].';"><img src="' . $config['site']['item_images_url'] . $slot . $config['site']['item_images_extension'] . '" width="45"/></TD>';
  176.                     }
  177.                     else
  178.                     {
  179.                         $main_content .= '<TD style="background-color: '.$config['site']['darkborder'].';"><img src="' . $config['site']['item_images_url'] . $itemsList->getSlot($slot)->getID() . $config['site']['item_images_extension'] . '" width="45"/></TD>';
  180.                     }
  181.                     if($number_of_items_showed % 3 == 2)
  182.                     {
  183.                         $main_content .= '</tr><tr>';
  184.                     }
  185.                     if($slot == '8') // add Capacity after show 'feet'
  186.                     {
  187.                         $main_content .= '<td style="background-color: '.$config['site']['darkborder'].'; text-align: center;">Cap:<br/>'. $player->getCap() .'</td>';
  188.                     }
  189.                 }
  190.                 $main_content .= '</tr></TABLE></td>';
  191.  
  192.                 $hpPercent = max(0, min(100, $player->getHealth() / max(1, $player->getHealthMax()) * 100));
  193.                 $manaPercent = max(0, min(100, $player->getMana() / max(1, $player->getManaMax()) * 100));
  194.                 $main_content .= '<td align=center ><table width=100%><tr><td align=center><table CELLSPACING="1" CELLPADDING="4" width="100%"><tr><td BGCOLOR="'.$config['site']['lightborder'].'" align="left" width="20%"><b>Player Health:</b></td>
  195.                 <td BGCOLOR="'.$config['site']['lightborder'].'" align="left">'.$player->getHealth().'/'.$player->getHealthMax().'<div style="width: 100%; height: 3px; border: 1px solid #000;"><div style="background: red; width: ' . $hpPercent . '%; height: 3px;"></td></tr>
  196.                 <tr><td BGCOLOR="'.$config['site']['darkborder'].'" align="left"><b>Player Mana:</b></td><td BGCOLOR="'.$config['site']['darkborder'].'" align="left">' . $player->getMana() . '/' . $player->getManaMax() . '<div style="width: 100%; height: 3px; border: 1px solid #000;"><div style="background: blue; width: '.$manaPercent.'%; height: 3px;"></td></tr></table><tr>';
  197.  
  198.                 $expCurrent = Functions::getExpForLevel($player->getLevel());
  199.                 $expNext = Functions::getExpForLevel($player->getLevel() + 1);
  200.                 $expLeft = bcsub($expNext, $player->getExperience(), 0);
  201.  
  202.  
  203.                 $expLeftPercent = max(0, min(100, ($player->getExperience() - $expCurrent) / ($expNext - $expCurrent) * 100));
  204.                 $main_content .= '<tr><table CELLSPACING="1" CELLPADDING="4"><tr><td BGCOLOR="'.$config['site']['lightborder'].'" align="left" width="20%"><b>Player Level:</b></td><td BGCOLOR="'.$config['site']['lightborder'].'" align="left">'.$player->getLevel().'</td></tr>
  205.                 <tr><td BGCOLOR="'.$config['site']['darkborder'].'" align="left"><b>Player Experience:</b></td><td BGCOLOR="'.$config['site']['darkborder'].'" align="left">' . $player->getExperience() . ' EXP.</td></tr>
  206.                 <tr><td BGCOLOR="' . $config['site']['lightborder'].'" align="left"><b>To Next Level:</b></td><td BGCOLOR="'.$config['site']['lightborder'].'" align="left">You need <b>' . $expLeft . ' EXP</b> to Level <b>' . ($player->getLevel() + 1) . '</b>.<div title="' . (100 - $expLeftPercent)  . '% left" style="width: 100%; height: 3px; border: 1px solid #000;"><div style="background: red; width: '.$expLeftPercent.'%; height: 3px;"></td></tr></table></td></tr></table></tr></TABLE></td>';
  207.  
  208.                 if($config['site']['show_skills_info'])
  209.                 {
  210.                     $main_content .= '<center><strong>Skills</strong><table cellspacing="0" cellpadding="0" border="1" width="200">
  211.  
  212.                         <tbody>
  213.                             <tr>
  214.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=experience&world=' . $player->getWorldID() . '"><img src="images/skills/level.gif" alt="" style="border-style: none"/></td>
  215.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=magic&world=' . $player->getWorldID() . '"><img src="images/skills/ml.gif" alt="" style="border-style: none"/></td>
  216.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=fist&world=' . $player->getWorldID() . '"><img src="images/skills/fist.gif" alt="" style="border-style: none"/></td>
  217.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=club&world=' . $player->getWorldID() . '"><img src="images/skills/club.gif" alt="" style="border-style: none"/></td>
  218.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=sword&world=' . $player->getWorldID() . '"><img src="images/skills/sword.gif" alt="" style="border-style: none"/></td>
  219.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=axe&world=' . $player->getWorldID() . '"><img src="images/skills/axe.gif" alt="" style="border-style: none"/></td>
  220.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=distance&world=' . $player->getWorldID() . '"><img src="images/skills/dist.gif" alt="" style="border-style: none"/></td>
  221.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=shield&world=' . $player->getWorldID() . '"><img src="images/skills/def.gif" alt="" style="border-style: none"/></td>
  222.                                 <td style="text-align: center;"><a href="?subtopic=highscores&list=fishing&world=' . $player->getWorldID() . '"><img src="images/skills/fish.gif" alt="" style="border-style: none"/></td>
  223.                             </tr>
  224.                             <tr>
  225.                                 <tr bgcolor="' . $config['site']['darkborder'] . '"><td style="text-align: center;"><strong>Level</strong></td>
  226.                                 <td style="text-align: center;"><strong>ML</strong></td>
  227.                                 <td style="text-align: center;"><strong>Fist</strong></td>
  228.                                 <td style="text-align: center;"><strong>Mace</strong></td>
  229.                                 <td style="text-align: center;"><strong>Sword</strong></td>
  230.                                 <td style="text-align: center;"><strong>Axe</strong></td>
  231.                                 <td style="text-align: center;"><strong>Dist</strong></td>
  232.                                 <td style="text-align: center;"><strong>Def</strong></td>
  233.                                 <td style="text-align: center;"><strong>Fish</strong></td>
  234.                             </tr>
  235.                             <tr>
  236.                                 <tr bgcolor="' . $config['site']['lightborder'] . '"><td style="text-align: center;">' . $player->getLevel() . '</td>
  237.                                 <td style="text-align: center;">' . $player->getMagLevel().'</td>
  238.                                 <td style="text-align: center;">' . $player->getSkill(0) . '</td>
  239.                                 <td style="text-align: center;">' . $player->getSkill(1) . '</td>
  240.                                 <td style="text-align: center;">' . $player->getSkill(2) . '</td>
  241.                                 <td style="text-align: center;">' . $player->getSkill(3) . '</td>
  242.                                 <td style="text-align: center;">' . $player->getSkill(4) . '</td>
  243.                                 <td style="text-align: center;">' . $player->getSkill(5) . '</td>
  244.                                 <td style="text-align: center;">' . $player->getSkill(6) . '</td>
  245.                             </tr>
  246.                         </tbody>
  247.                     </table>
  248.                     <div style="text-align: center;">&nbsp;<br />&nbsp;</div></center>';
  249.                 }
  250.  
  251.                 $main_content .= '<center><table cellspacing="0" cellpadding="0" border="1" width="200">
  252.                         <tbody>
  253.                             <tr bgcolor="' . $config['site']['darkborder'] . '">
  254.                                 <td style="text-align: center;"><img src="?subtopic=signature&name=' . urlencode($player->getName()) . '" alt="Signature" /></td>
  255.                             </tr>
  256.                             <tr bgcolor="' . $config['site']['lightborder'] . '">
  257.                                 <td style="text-align: center;"><b>Link:</b><input type="text" name="" size="100" value="' . htmlspecialchars($config['server']['url'] . '?subtopic=signature&name=' . urlencode($player->getName())) . '" /></td>
  258.                             </tr>
  259.                         </tbody>
  260.                     </table>
  261.                     <div style="text-align: center;">&nbsp;<br />&nbsp;</div></center>';
  262.  
  263.                 if(isset($config['site']['quests']) && is_array($config['site']['quests']) && count($config['site']['quests']) > 0)
  264.                 {
  265.                     $main_content .= '<TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR="'.$config['site']['vdarkborder'].'"><TD align="left" COLSPAN=2 CLASS=white><B>Quests</B></TD></TD align="right"></TD></TR>';
  266.                     $number_of_quests = 0;
  267.                     foreach($config['site']['quests'] as $questName => $storageID)
  268.                     {
  269.                         $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  270.                         $number_of_quests++;
  271.                         $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD WIDTH=95%>' . $questName . '</TD>';
  272.                         if($player->getStorage($storageID) === null)
  273.                         {
  274.                             $main_content .= '<TD><img src="images/false.png"/></TD></TR>';
  275.                         }
  276.                         else
  277.                         {
  278.                             $main_content .= '<TD><img src="images/true.png"/></TD></TR>';
  279.                         }
  280.                     }
  281.                     $main_content .= '</TABLE></td></tr></table><br />';
  282.                 }
  283.  
  284.                 $deads = 0;
  285.  
  286.                 //deaths list
  287.                 $player_deaths = $SQL->query('SELECT ' . $SQL->fieldName('id') . ', ' . $SQL->fieldName('date') . ', ' . $SQL->fieldName('level') . ' FROM ' . $SQL->tableName('player_deaths') . ' WHERE ' . $SQL->fieldName('player_id') . ' = '.$player->getId().' ORDER BY ' . $SQL->fieldName('date') . ' DESC LIMIT 10');
  288.                 foreach($player_deaths as $death)
  289.                 {
  290.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  291.                     $deads++;
  292.                     $dead_add_content .= "<tr bgcolor=\"".$bgcolor."\"><td width=\"20%\" align=\"center\">".date("j M Y, H:i", $death['date'])."</td><td>";
  293.                     $killers = $SQL->query('SELECT ' . $SQL->tableName('environment_killers') . '.' . $SQL->fieldName('name') . ' AS monster_name, ' . $SQL->tableName('players') . '.' . $SQL->fieldName('name') . ' AS player_name, ' . $SQL->tableName('players') . '.' . $SQL->fieldName('deleted') . ' AS player_exists FROM ' . $SQL->tableName('killers') . ' LEFT JOIN ' . $SQL->tableName('environment_killers') . ' ON ' . $SQL->tableName('killers') . '.' . $SQL->fieldName('id') . ' = ' . $SQL->tableName('environment_killers') . '.' . $SQL->fieldName('kill_id') . ' LEFT JOIN ' . $SQL->tableName('player_killers') . ' ON ' . $SQL->tableName('killers') . '.' . $SQL->fieldName('id') . ' = ' . $SQL->tableName('player_killers') . '.' . $SQL->fieldName('kill_id') . ' LEFT JOIN ' . $SQL->tableName('players') . ' ON ' . $SQL->tableName('players') . '.' . $SQL->fieldName('id') . ' = ' . $SQL->tableName('player_killers') . '.' . $SQL->fieldName('player_id') . '  WHERE ' . $SQL->tableName('killers') . '.' . $SQL->fieldName('death_id') . ' = ' . $SQL->quote($death['id']) . ' ORDER BY ' . $SQL->tableName('killers') . '.' . $SQL->fieldName('final_hit') . ' DESC, ' . $SQL->tableName('killers') . '.' . $SQL->fieldName('id') . ' ASC')->fetchAll();
  294.  
  295.                     $i = 0;
  296.                     $count = count($killers);
  297.                     foreach($killers as $killer)
  298.                     {
  299.                         $i++;
  300.                         if($i == 1)
  301.                         {
  302.                             if($count <= 4)
  303.                                 $dead_add_content .= "killed at level <b>".$death['level']."</b> by ";
  304.                             elseif($count > 4 and $count < 10)
  305.                                 $dead_add_content .= "slain at level <b>".$death['level']."</b> by ";
  306.                             elseif($count > 9 and $count < 15)
  307.                                 $dead_add_content .= "crushed at level <b>".$death['level']."</b> by ";
  308.                             elseif($count > 14 and $count < 20)
  309.                                 $dead_add_content .= "eliminated at level <b>".$death['level']."</b> by ";
  310.                             elseif($count > 19)
  311.                                 $dead_add_content .= "annihilated at level <b>".$death['level']."</b> by ";
  312.                         }
  313.                         elseif($i == $count)
  314.                             $dead_add_content .= " and ";
  315.                         else
  316.                             $dead_add_content .= ", ";
  317.  
  318.                         if($killer['player_name'] != "")
  319.                         {
  320.                             if($killer['monster_name'] != "")
  321.                                 $dead_add_content .= htmlspecialchars($killer['monster_name'])." summoned by ";
  322.  
  323.                             if($killer['player_exists'] == 0)
  324.                                 $dead_add_content .= "<a href=\"index.php?subtopic=characters&name=".urlencode($killer['player_name'])."\">";
  325.  
  326.                             $dead_add_content .= htmlspecialchars($killer['player_name']);
  327.                             if($killer['player_exists'] == 0)
  328.                                 $dead_add_content .= "</a>";
  329.                         }
  330.                         else
  331.                             $dead_add_content .= htmlspecialchars($killer['monster_name']);
  332.                     }
  333.  
  334.                     $dead_add_content .= "</td></tr>";
  335.                 }
  336.  
  337.                 if($deads > 0)
  338.                     $main_content .= '<TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR="'.$config['site']['vdarkborder'].'"><TD COLSPAN=2 CLASS=white><B>Deaths</B></TD></TR>' . $dead_add_content . '</TABLE><br />';
  339.  
  340.                 if(!$player->getHideChar())
  341.                 {
  342.                     $main_content .= '<TABLE BORDER=0><TR><TD></TD></TR></TABLE><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR="'.$config['site']['vdarkborder'].'"><TD COLSPAN=2 CLASS=white><B>Account Information</B></TD></TR>';
  343.                     if($account->getRLName())
  344.                     {
  345.                         $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  346.                         $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD WIDTH=20%>Real name:</TD><TD>' . $account->getRLName() . '</TD></TR>';
  347.                     }
  348.                     if($account->getLocation())
  349.                     {
  350.                         $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  351.                         $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD WIDTH=20%>Location:</TD><TD>' . $account->getLocation() . '</TD></TR>';
  352.                     }
  353.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  354.                     if($account->getLastLogin())
  355.                         $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD WIDTH=20%>Last login:</TD><TD>' . date("j F Y, g:i a", $account->getLastLogin()) . '</TD></TR>';
  356.                     else
  357.                         $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD WIDTH=20%>Last login:</TD><TD>Never logged in.</TD></TR>';
  358.                     if($account->getCreateDate())
  359.                     {
  360.                         $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  361.                         $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD WIDTH=20%>Created:</TD><TD>' . date("j F Y, g:i a", $account->getCreateDate()) . '</TD></TR>';
  362.                     }
  363.                     $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  364.                     $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD>Account&#160;Status:</TD><TD>';
  365.                     $main_content .= ($account->isPremium() > 0) ? '<b><font color="green">Premium Account</font></b>' : '<b><font color="red">Free Account</font></b>';
  366.                     if($account->isBanned())
  367.                     {
  368.                         if($account->getBanTime() > 0)
  369.                             $main_content .= '<font color="red"> [Banished until '.date("j F Y, G:i", $account->getBanTime()).']</font>';
  370.                         else
  371.                             $main_content .= '<font color="red"> [Banished FOREVER]</font>';
  372.                     }
  373.                     $main_content .= '</TD></TR></TABLE>';
  374.                     $main_content .= '<br><TABLE BORDER=0><TR><TD></TD></TR></TABLE><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR="'.$config['site']['vdarkborder'].'"><TD COLSPAN=5 CLASS=white><B>Characters</B></TD></TR>
  375.                     <TR BGCOLOR="' . $bgcolor . '"><TD><B>Name</B></TD><TD><B>World</B></TD><TD><B>Level</B></TD><TD><b>Status</b></TD><TD><B>&#160;</B></TD></TR>';
  376.                     $account_players = $account->getPlayersList();
  377.                     $player_number = 0;
  378.                     foreach($account_players as $player_list)
  379.                     {
  380.                         if(!$player_list->getHideChar())
  381.                         {
  382.                             $player_number++;
  383.                             $bgcolor = (($number_of_rows++ % 2 == 1) ?  $config['site']['darkborder'] : $config['site']['lightborder']);
  384.                             if(!$player_list->isOnline())
  385.                                 $player_list_status = '<font color="red">Offline</font>';
  386.                             else
  387.                                 $player_list_status = '<font color="green">Online</font>';
  388.                             $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD WIDTH=52%><NOBR>'.$player_number.'.&#160;'.htmlspecialchars($player_list->getName());
  389.                             $main_content .= ($player_list->isDeleted()) ? '<font color="red"> [DELETED]</font>' : '';
  390.                             $main_content .= '</NOBR></TD><TD WIDTH=15%>'.$config['site']['worlds'][$player_list->getWorld()].'</TD><TD WIDTH=25%>'.$player_list->getLevel().' '.htmlspecialchars($vocation_name[$player_list->getPromotion()][$player_list->getVocation()]).'</TD><TD WIDTH="8%"><b>'.$player_list_status.'</b></TD><TD><TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0><FORM ACTION="?subtopic=characters" METHOD=post><TR><TD><INPUT TYPE="hidden" NAME="name" VALUE="'.htmlspecialchars($player_list->getName()).'"><INPUT TYPE=image NAME="View '.htmlspecialchars($player_list->getName()).'" ALT="View '.htmlspecialchars($player_list->getName()).'" SRC="'.$layout_name.'/images/buttons/sbutton_view.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD></TR></FORM></TABLE></TD></TR>';
  391.                         }
  392.                     }
  393.                     $main_content .= '</TABLE></TD><TD><IMG SRC="'.$layout_name.'/images/blank.gif" WIDTH=10 HEIGHT=1 BORDER=0></TD></TR></TABLE>';
  394.                 }
  395.             }
  396.             else
  397.                 $search_errors[] = 'Character <b>'.htmlspecialchars($name).'</b> does not exist.';
  398.         }
  399. }
  400.  
  401. if(!isset($_REQUEST['view'])){
  402.     if(!empty($search_errors))
  403.     {
  404.         $main_content .= '<div class="SmallBox" >  <div class="MessageContainer" >    <div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif);" /></div>    <div class="BoxFrameEdgeLeftTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif);" /></div>    <div class="BoxFrameEdgeRightTop" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif);" /></div>    <div class="ErrorMessage" >      <div class="BoxFrameVerticalLeft" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif);" /></div>      <div class="BoxFrameVerticalRight" style="background-image:url('.$layout_name.'/images/content/box-frame-vertical.gif);" /></div>      <div class="AttentionSign" style="background-image:url('.$layout_name.'/images/content/attentionsign.gif);" /></div><b>The Following Errors Have Occurred:</b><br/>';
  405.         foreach($search_errors as $search_error)
  406.         $main_content .= '<li>'.$search_error;
  407.         $main_content .= '</div>    <div class="BoxFrameHorizontal" style="background-image:url('.$layout_name.'/images/content/box-frame-horizontal.gif);" /></div>    <div class="BoxFrameEdgeRightBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif);" /></div>    <div class="BoxFrameEdgeLeftBottom" style="background-image:url('.$layout_name.'/images/content/box-frame-edge.gif);" /></div>  </div></div><br/>';
  408.     }
  409.     $main_content .= '<BR><BR>
  410.     <FORM ACTION="?subtopic=characters&view=matches" METHOD=post>
  411.     <TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4>
  412.     <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Search Character</B></TD></TR>
  413.     <TR><TD BGCOLOR="'.$config['site']['darkborder'].'">
  414.     <TABLE BORDER=0 CELLPADDING=1>
  415.     <TR><TD>Name:</TD><TD><INPUT NAME="name" VALUE=""SIZE=29 MAXLENGTH=29></TD><TD>
  416.     <INPUT TYPE=image NAME="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD></TR>
  417.     </TABLE></TD></TR>
  418.     </TABLE>
  419.     </FORM>';
  420.     $main_content .= '</TABLE>';
  421. }
Add Comment
Please, Sign In to add comment