Changeset 609 for trunk


Ignore:
Timestamp:
Aug 7, 2009, 10:03:50 PM (15 years ago)
Author:
george
Message:
  • Upraveno: Stránky přizpůsobeny pro podporu více světů. Doplněna stránka seznamu světů.
Location:
trunk
Files:
2 added
15 edited

Legend:

Unmodified
Added
Removed
  • trunk/inc/config.sample.php

    r597 r609  
    1919    'UDBRevision' => '204',
    2020    'ScriptDev2Revision' => '137',
    21     'ClientVersion' => '3.0.9',
    22     'MaxOnlinePlayers' => 100,
     21    'ClientVersion' => '3.1.3',
     22    'DatabaseRealmd' => 'realmd',
    2323    'RequiredOnlinePlayers' => 70,
    24     'DatabaseMangos' => 'mangos',
    25     'DatabaseCharacters' => 'characters',
    26     'DatabaseRealmd' => 'realmd',
    27     'DatabaseScriptDev2' => 'scriptdev2',
    2824    'GMCommandsLog' => 'gm_commands.log',
    2925    'CharacterDataOffset' => array
     
    3430      'HonorPoints' => 1648,
    3531      'ArenaPoints' => 1649,
     32    ),
     33    'RealmList' => array(
     34      1 => array(
     35        'Name' => 'Realm 1'
     36        'DatabaseCharacters' => 'realm1_characters',
     37        'DatabaseMangos' => 'realm1_mangos',
     38        'DatabaseScriptDev2' => 'realm1_scriptdev2',
     39        'MaxOnlinePlayers' => 100,
     40        'XPRate' => 1,
     41        'Type' => 'Normalní',
     42        'Description' => 'Hlavní realm',
     43      ),
    3644    ),
    3745  ),
     
    5058    'ShowSQLError' => false,
    5159    'ShowSQLQuery' => false,
     60    'ShowPHPError' => false,
    5261  ),
    5362  'CheckRegistration' => array
  • trunk/inc/html.php

    r595 r609  
    195195  public function ShowNews($kategorie)
    196196  {
    197           global $Config;
    198                
     197    global $Config;
     198   
    199199    echo('<table class="NewsCategoryTable">'.
    200200      '<tr>'.
     
    214214      $where = 'WHERE `category` = "'.$kategorie.'"';
    215215    }
    216                
     216   
    217217    $this->db->select_db($Config['Database']['Database']);
    218218    $limit = 5;
     
    297297        '<tr>'.
    298298        '<td colspan="2">'.
    299         '<strong>Server : </strong>'.$server->ServerImg($server->ServerOnline($Config['Web']['WoWServerAddr'], 8085)).'<b> (<a href="?page=online">'.$server->MangosOnline().' hráčů</a>) | Patch '.$Config['Mangos']['ClientVersion'].' | <a href="'.$Config['Web']['BaseURL'].'/pages/realmlist.wtf">Realmlist</a> | Více info <a href="?page=server">zde</a></b>'.
     299        '<strong>Server : </strong>'.$server->ServerImg($server->ServerOnline($Config['Web']['WoWServerAddr'], 3724)).'<b> (<a href="?page=online">'.$server->ServerMangosOnline().' hráčů</a>) | Patch '.$Config['Mangos']['ClientVersion'].' | <a href="'.$Config['Web']['BaseURL'].'/pages/realmlist.wtf">Realmlist</a> | Více info <a href="?page=server">zde</a></b>'.
    300300        '</td></tr></table><br />');
    301301    }
  • trunk/inc/player.php

    r583 r609  
    77  private $db;
    88 
    9   function __construct ($db)
     9  function __construct($db)
    1010  {
    1111    $this->db = &$db;
     
    1515  {
    1616    if($err == 0) echo('<img src="imgs/inc/on.gif">&nbsp;<font color="#234303" size="4">'.$text.'</font><br />');
    17     else echo('<img src="imgs/inc/off.gif">&nbsp;<font color="#990000" size="4\">'.$text.'</font><br />');
     17      else echo('<img src="imgs/inc/off.gif">&nbsp;<font color="#990000" size="4\">'.$text.'</font><br />');
    1818  }
    1919
     
    4949    if($sql->num_rows == 1)
    5050    {
    51       $row = $sql->fetch_array();
     51      $row = $sql->fetch_assoc();
    5252      $_SESSION['UserId'] = $row['id'];
    5353      $_SESSION['UserName'] = $username;
     
    7373    if(!array_key_exists('Time', $_SESSION)) $_SESSION['Time'] = time();
    7474    if(!array_key_exists('UserId', $_SESSION)) $_SESSION['UserId'] = 0;
    75     if($_SESSION['Time'] < (time() - 60 * $this->SessionTimeout))
    76     {
    77       $this->Logout();
    78     }
     75    if($_SESSION['Time'] < (time() - 60 * $this->SessionTimeout)) $this->Logout();
    7976    $_SESSION['Time'] = time();
    8077    return($_SESSION['UserId'] != 0);
     
    8380  public function LoginForm()
    8481  {
    85     echo('<form method="post" action="?page=acc">
    86      <table>
    87                 <tr>
    88                   <td><b>Jméno : </b></td><td><input type="text" name="user" class="textinput"></td>
     82    echo('<form method="post" action="?page=acc">'.
     83     '<table>'.
     84    '<tr>'.
     85    '<td><b>Jméno : </b></td><td><input type="text" name="user" class="textinput"></td>
    8986                </tr>
    9087                <tr>
     
    9794            </form>
    9895            <div align="left">
    99             <a href="?page=register">Registrace</a><br /><a href="?page=lostpass">Obnova hesla</a>
    100             </div>');
     96            <a href="?page=register">Registrace</a><br />'. //<a href="?page=lostpass">Obnova hesla</a>
     97            '</div>');
    10198   }
    10299
     
    105102    global $Config;
    106103
    107     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
    108       $DbResult = $this->db->query(
    109       'SELECT CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, " ", '.($Config['Mangos']['CharacterDataOffset']['Level'] + 1).'), " ", -1)'.
    110       ' AS UNSIGNED) AS `level` FROM `characters` WHERE `guid` = "'.$guid.'" LIMIT 1;');
     104    $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
     105    $DbResult = $this->db->query('SELECT CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, " ", '.($Config['Mangos']['CharacterDataOffset']['Level'] + 1).'), " ", -1) AS UNSIGNED) AS `level` FROM `characters` WHERE `guid` = "'.$guid.'" LIMIT 1;');
    111106    $row = $DbResult->fetch_assoc();
    112107    return($row['level']);
     
    146141      if(!$this->IsOnline($guid))
    147142      {
    148         $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     143        $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    149144        $row = $this->db->query('SELECT `data` FROM `characters` WHERE `guid` = "'.$guid.'" LIMIT 1')->fetch_assoc();
    150145        $data = explode(' ', $row['data']);
     
    161156    global $Config;
    162157
    163     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     158    $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    164159    if($this->CharInAcc($guid, 0))
    165160    {
     
    189184    global $Config;
    190185
    191     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     186    $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    192187    // .go xyz -90.54 41.35 -31.71
    193188    // .go xyz -91.01 100.46 -31.71
     
    230225    global $Config;
    231226
    232     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     227    $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    233228    $row = $this->db->query('SELECT `online` FROM `characters` WHERE `guid` = "'.$guid.'" LIMIT 1;')->fetch_assoc();
    234229    if($row['online'] == 1) return(true);
    235     else return(false);
     230      else return(false);
    236231  }
    237232
     
    246241        $acc = $_SESSION['UserId'];
    247242      }
    248       $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     243      $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    249244      if($this->db->query('SELECT `guid` FROM `characters` WHERE `characters`.`guid`="'.$char.'" AND `account`="'.$acc.'" LIMIT 1;')->num_rows == 1)
    250245      {
     
    265260    global $Config;
    266261
    267     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     262    $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    268263    $row = $this->db->query('SELECT `guid` FROM `characters` WHERE `name` LIKE "'.$name.'" LIMIT 1;')->fetch_assoc();
    269264    if($row['guid'] != '')
     
    280275    global $Config;
    281276
    282     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     277    $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    283278    $row = $this->db->query('SELECT `name` FROM `characters` WHERE `guid` = "'.$guid.'" LIMIT 1;')->fetch_assoc();
    284279    if($row['name'] != '')
     
    359354            <th>Nahráno</th>
    360355          </tr>');
    361     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     356    $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    362357    echo($this->db->error);
    363358    $sql = $this->db->query('SELECT `guid`,`name`,`race`,`totaltime`,`class`, mid(lpad( hex( CAST(substring_index(substring_index(data, " ", '.($Config['Mangos']['CharacterDataOffset']['Gender'] + 1).'), " ",-1) AS unsigned) ), 8, 0), 4, 1) AS gender FROM `characters` WHERE `account`='.$accid.' ORDER BY `totaltime` DESC LIMIT 0, 10');
  • trunk/inc/server.php

    r596 r609  
    11<?php
     2
     3function NullErrorHandler()
     4{
     5}
    26
    37class Server
     
    4549  }
    4650     
    47   public function MangosOnline()
     51  public function MangosOnline($RealmId)
    4852  {
    4953    global $Config;
    5054   
    51     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);   
     55    $this->db->select_db($Config['Mangos']['RealmList'][$RealmId]['DatabaseCharacters']);   
    5256    $DbResult = $this->db->query('SELECT COUNT(*) FROM `characters` WHERE `online` = 1');
    5357    $DbRow = $DbResult->fetch_row();
     
    5559  }
    5660
    57   public function ServerOnline($ip, $port)
    58   {
    59     if($fp1 = @fsockopen($ip, $port, $ERROR_NO, $ERROR_STR, (float)0.5))
     61  public function ServerMangosOnline()
     62  {
     63    global $Config;
     64   
     65    $TotalCount = 0;
     66    foreach($Config['Mangos']['RealmList'] as $Index => $Realm)
    6067    {
    61       fclose($fp1);
    62       return(true);
    63     } else
     68      $TotalCount += $this->MangosOnline($Index);
     69    }
     70    return($TotalCount);
     71  } 
     72
     73  public function ServerOnline($Address, $Port, $Timeout = 0.5)
     74  {
     75    set_error_handler('NullErrorHandler');
     76    if($Socket = @fsockopen($Address, $Port, $ERROR_NO, $ERROR_STR, (float)$Timeout))
    6477    {
    65       return(false);
    66     }
    67   }
     78      fclose($Socket);
     79      $Result = true;
     80    } else $Result = false;
     81    restore_error_handler();
     82    return($Result);  }
    6883
    6984  public function ServerImg($status)
     
    7590  public function ServerUptime()
    7691  {
    77           global $Config;
     92    global $Config;
    7893
    7994    $this->db->select_db($Config['Mangos']['DatabaseRealmd']);
     
    8499  }
    85100
    86   public function CharacterCount()
    87   {
    88     global $Config;
    89 
    90     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     101  public function CharacterCount($RealmId)
     102  {
     103    global $Config;
     104
     105    $this->db->select_db($Config['Mangos']['RealmList'][$RealmId]['DatabaseCharacters']);
    91106    $row = $this->db->query('SELECT COUNT(*) FROM characters')->fetch_row();
    92107    return($row[0]);
    93108  }
    94109
     110  public function ServerCharacterCount()
     111  {
     112    global $Config;
     113   
     114    $TotalCount = 0;
     115    foreach($Config['Mangos']['RealmList'] as $Index => $Realm)
     116    {
     117      $TotalCount += $this->CharacterCount($Index);
     118    }
     119    return($TotalCount);
     120  }
     121 
    95122  public function AccountCount()
    96123  {
    97           global $Config;
     124    global $Config;
    98125
    99126    $this->db->select_db($Config['Mangos']['DatabaseRealmd']);
     
    104131  public function GuidToCharName($guid)
    105132  {
    106           global $Config;
    107 
    108     $this->db->select_db($Config['Mangos']['DatabaseCharacters']);
     133    global $Config;
     134
     135    $this->db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    109136    $row = $this->db->query('SELECT `name` FROM `characters` WHERE `guid` = "'.$guid.'" LIMIT 1')->fetch_array();
    110137    return($row['name']);
     
    198225    $map_id = Array
    199226    (
    200         0 => array(0,"Azeroths"),
     227      0 => array(0,"Azeroths"),
    201228      1 => array(1,"Kalimdor"),
    202229      13 => array(13,"Test Zone"),
     
    269296    );
    270297    if(isset($map_id[$id])) return($map_id[$id][1]);
    271                 else return("Neznámá");
     298    else return("Neznámá");
    272299  }
    273300
     
    276303    $zone_id = Array
    277304    (
    278         1497 => Array("Undercity",1497),
    279         1537 => Array("Ironforge",1537),
    280         1519 => Array("Stormwind city",1519),
    281         3 => Array("Badlands",3),
    282         11 => Array("Wetlands",11),
    283         33 => Array("Stranglethorn Vale",33),
    284         44 => Array("Redridge Mountains",44),
    285         38 => Array("Loch Modan",38),
    286         10 => Array("Duskwood",10),
    287         41 => Array("Deadwind Pass",41),
    288         12 => Array("Elwynn Forest",12),
    289         46 => Array("Burning Steppes",46),
    290         51 => Array("Searing Gorge",51),
    291         1 => Array("Dun Morogh",1),
    292         47 => Array("The Hinterlands",47),
    293         40 => Array("Westfall",40),
    294         267 => Array("Hillsbrad Foothills",267),
    295         139 => Array("Eastern Plaguelands",139),
    296         28 => Array("Western Plaguelands",28),
    297         130 => Array("Silverpine Forest",130),
    298         85 => Array("Tirisfal Glades",85),
    299         4 => Array("Blasted Lands",4),
    300         8 => Array("Swamp of Sorrows",8),
    301         45 => Array("Arathi Highlands",45),
    302         36 => Array("Alterac Mountains",36),
    303         1657 => Array("Darnassus",1657),
    304         1638 => Array("Thunder_bluff",1638),
    305         1637 => Array("Orgrimmar",1637),
    306         493 => Array("Moonglade",493),
    307         1377 => Array("Silithus",1377),
    308         618 => Array("Winterspring",618),
    309         490 => Array("Un Goro Crater",490),
    310         361 => Array("Felwood",361),
    311         16 => Array("Azshara",16),
    312         440 => Array("Tanaris",440),
    313         15 => Array("Dustwallow Marsh",15),
    314         215 => Array("Mulgore",215),
    315         357 => Array("Feralas",357),
    316         405 => Array("Desolace",405),
    317         400 => Array("Thousand Needles",400),
    318         14 => Array("Durotar",14),
    319         331 => Array("Ashenvale",331),
    320         148 => Array("Darkshore",148),
    321         141 => Array("Teldrassil",141),
    322         406 => Array("Stonetalon Mountains",406),
    323         17 => Array("She Barrens",17),
    324         3703 => Array("Shattrath city",3703),
    325         3487 => Array("Silvermoon city",3487),
    326         3523 => Array("Netherstorm",3523),
    327         3519 => Array("Terokkar Forest",3519),
    328         3518 => Array("Nagrand",3518),
    329         3525 => Array("Bloodmyst Isle",3525),
    330         3522 => Array("Blades Edge Mountains",3522),
    331         3520 => Array("Shadowmoon Valley",3520),
    332         3557 => Array("The Exodar",3557),
    333         3521 => Array("Zangarmarsh",3521),
    334         3483 => Array("Hellfire Peninsula",3483),
    335         3524 => Array("Azuremyst Isle",3524),
    336         3433 => Array("Ghostlands",3433),
    337         3430 => Array("Eversong Woods",3430)
     305      1497 => Array("Undercity",1497),
     306      1537 => Array("Ironforge",1537),
     307      1519 => Array("Stormwind city",1519),
     308      3 => Array("Badlands",3),
     309      11 => Array("Wetlands",11),
     310      33 => Array("Stranglethorn Vale",33),
     311      44 => Array("Redridge Mountains",44),
     312      38 => Array("Loch Modan",38),
     313      10 => Array("Duskwood",10),
     314      41 => Array("Deadwind Pass",41),
     315      12 => Array("Elwynn Forest",12),
     316      46 => Array("Burning Steppes",46),
     317      51 => Array("Searing Gorge",51),
     318      1 => Array("Dun Morogh",1),
     319      47 => Array("The Hinterlands",47),
     320      40 => Array("Westfall",40),
     321      267 => Array("Hillsbrad Foothills",267),
     322      139 => Array("Eastern Plaguelands",139),
     323      28 => Array("Western Plaguelands",28),
     324      130 => Array("Silverpine Forest",130),
     325      85 => Array("Tirisfal Glades",85),
     326      4 => Array("Blasted Lands",4),
     327      8 => Array("Swamp of Sorrows",8),
     328      45 => Array("Arathi Highlands",45),
     329      36 => Array("Alterac Mountains",36),
     330      1657 => Array("Darnassus",1657),
     331      1638 => Array("Thunder_bluff",1638),
     332      1637 => Array("Orgrimmar",1637),
     333      493 => Array("Moonglade",493),
     334      1377 => Array("Silithus",1377),
     335      618 => Array("Winterspring",618),
     336      490 => Array("Un Goro Crater",490),
     337      361 => Array("Felwood",361),
     338      16 => Array("Azshara",16),
     339      440 => Array("Tanaris",440),
     340      15 => Array("Dustwallow Marsh",15),
     341      215 => Array("Mulgore",215),
     342      357 => Array("Feralas",357),
     343      405 => Array("Desolace",405),
     344      400 => Array("Thousand Needles",400),
     345      14 => Array("Durotar",14),
     346      331 => Array("Ashenvale",331),
     347      148 => Array("Darkshore",148),
     348      141 => Array("Teldrassil",141),
     349      406 => Array("Stonetalon Mountains",406),
     350      17 => Array("She Barrens",17),
     351      3703 => Array("Shattrath city",3703),
     352      3487 => Array("Silvermoon city",3487),
     353      3523 => Array("Netherstorm",3523),
     354      3519 => Array("Terokkar Forest",3519),
     355      3518 => Array("Nagrand",3518),
     356      3525 => Array("Bloodmyst Isle",3525),
     357      3522 => Array("Blades Edge Mountains",3522),
     358      3520 => Array("Shadowmoon Valley",3520),
     359      3557 => Array("The Exodar",3557),
     360      3521 => Array("Zangarmarsh",3521),
     361      3483 => Array("Hellfire Peninsula",3483),
     362      3524 => Array("Azuremyst Isle",3524),
     363      3433 => Array("Ghostlands",3433),
     364      3430 => Array("Eversong Woods",3430)
    338365    );
    339366    if(isset($zone_id[$id])) return($zone_id[$id][0]);
  • trunk/index.php

    r599 r609  
    55foreach($_GET as $Index => $Item) $_GET[$Index] = addslashes($Item);
    66
     7if(array_key_exists('RealmIndex', $_POST))
     8{
     9  setcookie('RealmIndex', $_POST['RealmIndex']);
     10  $_COOKIE['RealmIndex'] = $_POST['RealmIndex'];
     11}
     12if(!array_key_exists('RealmIndex', $_COOKIE)) $_COOKIE['RealmIndex'] = 1;
     13  else
     14  {
     15    if(!array_key_exists($_COOKIE['RealmIndex'], $Config['Mangos']['RealmList']))
     16      $_COOKIE['RealmIndex'] = 1;
     17  }
     18 
    719session_start();
    820include_once('inc/config.php');
     21include_once('inc/error.php');
    922include_once('inc/db.php');
    1023include_once('inc/html.php');
     
    2538  '<div id="menu">');
    2639
    27 $MenuItems = array(
     40$ServerMenuItems = array(
    2841  array('link' => '?page=main', 'Text' => 'Úvod'),
    2942  array('link' => '?page=begin', 'Text' => 'Jak začít'),
     
    3750  array('link' => '?page=download', 'Text' => 'Stahování'),
    3851  array('link' => '?page=links', 'Text' => 'Odkazy'),
     52  array('link' => '?page=banlist', 'Text' => 'Bany'),
     53  array('link' => '?page=dotation', 'Text' => 'Dotace'),
     54  array('link' => '?page=teamspeak', 'Text' => 'Team speak'),
     55  array('link' => '?page=client', 'Text' => 'HoF Client'),
     56  array('link' => '?page=search', 'Text' => 'Vyhledávání'),   
     57  array('link' => '?page=realmlist', 'Text' => 'Světy'),   
     58);
     59
     60$RealmMenuItems = array(
    3961  array('link' => '?page=online', 'Text' => 'Online hráči'),
    4062  array('link' => '#', 'Text' => 'Mapa hráčů', 'OnClick' => "popup('../minimanager/pomm/pomm.php?realmid=1', 1000, 800); return false;"),
    4163  array('link' => '?page=tophraci', 'Text' => 'Nej hráči'),
    42   array('link' => '?page=banlist', 'Text' => 'Bany'),
    4364  array('link' => '?page=guildy', 'Text' => 'Spolky'),
    4465  array('link' => '?page=gh', 'Text' => 'Domky spolků'),
    4566  array('link' => '?page=arena', 'Text' => 'Arény'),
    4667  array('link' => '?page=events', 'Text' => 'Události'),
    47   array('link' => '?page=dotation', 'Text' => 'Dotace'),
    48   array('link' => '?page=teamspeak', 'Text' => 'Team speak'),
    49   array('link' => '?page=client', 'Text' => 'HoF Client'),
    5068  array('link' => '?page=gmlog', 'Text' => 'GM log'),
    51   array('link' => '?page=search', 'Text' => 'Vyhledávání'),   
    5269);
    5370
    54 echo('<div id="mainmenu"><br /><br />');
    55 foreach($MenuItems as $Item)
     71echo('<br /><br />');
     72echo('<div id="mainmenu">');
     73foreach($ServerMenuItems as $Item)
     74{
     75  if(array_key_exists('OnClick', $Item)) $OnClick = ' onclick="'.$Item['OnClick'].'"';
     76    else $OnClick = '';
     77  if(array_key_exists('Target', $Item)) $Target = ' target="'.$Item['Target'].'"';
     78    else $Target = '';
     79
     80  echo('<a href="'.$Item['link'].'"'.$OnClick.$Target.'>'.$Item['Text'].'</a><br />');
     81}
     82echo('</div>');
     83
     84if(count($Config['Mangos']['RealmList']) > 1)
     85{
     86  echo('Výběr světa:');
     87  echo('<form name="realm_selection" action="" method="post">'.
     88  '<select name="RealmIndex" style="width: 100%" onchange="document.realm_selection.submit()">');
     89  foreach($Config['Mangos']['RealmList'] as $Index => $Realm)
     90  {
     91    if($_COOKIE['RealmIndex'] == $Index) $Selected = ' selected="selected"';
     92      else $Selected = '';
     93    echo('<option value="'.$Index.'"'.$Selected.'>'.$Realm['Name'].'</option>');
     94  }
     95  echo('</select>'.
     96  '</form>');
     97}
     98
     99echo('<br /><br />');
     100echo('<div id="mainmenu">');
     101foreach($RealmMenuItems as $Item)
    56102{
    57103  if(array_key_exists('OnClick', $Item)) $OnClick = ' onclick="'.$Item['OnClick'].'"';
  • trunk/pages/arena.php

    r598 r609  
    1818}
    1919
    20 $db->select_db($Config['Mangos']['DatabaseCharacters']);
     20$db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    2121$count = $db->query('SELECT COUNT(*) FROM arena_team')->fetch_row();
    2222$all_record = $count[0];
  • trunk/pages/begin.php

    r550 r609  
    11<?php
    22
    3 echo('<br />
    4 Vítejte na <b>Heroes of Fantasy</b>, neoficiálním herním serveru hry <b>World of Warcraft</b>!<br />
     3echo('<h2 align="center">Jak začít:</h2>
     4<ol>
     5<li>Nainstalujte hru <b>World of Warcraft</b> včetně datadisku <strong>Wrath of The Lich King</strong>. Instalační program stáhnete zde: <a href="http://www.heroesoffantasy.cz:81/InstallWoW.exe">enUS</a>.</li>
     6<li>Aktualizujte hru postupně až na verzi <b>'.$Config['Mangos']['ClientVersion'].'</b> buď pomocí oficiálního Launcheru nebo pomocí ručně stažených patch souborů z <a href="http://www.wowwiki.com/Patch_mirrors">wowwiky</a>.</li>
     7<li>Upravte obsah souboru realmlist.wtf (nejčastěji umístěn ve složce C:\Program Files\World of Warcraft\Data\enUS) dle souboru <a href="pages/realmlist.wtf">realmlist.wtf</a> tak, aby obsahoval adresu tohoto serveru.</lu>
     8<li>Vytvořte si nový herní účet <a href="?page=register">zde</a>.</li>
     9<li>Přejmenujte program Launcher.exe ve složce s hrou např. na Launcher2.exe a dále spouštějte hru přímo přes program WoW.exe. Předejdete tím nechtěnému stažení novější verze hry než podporuje tento server.</li>
     10<li>Spusťte hru, vyberte si <a href="?page=realmlist">svět</a>, vytvořte si novou postavu a ponořte se do nového herního světa hry <strong>World of Warcraft</strong>.</li>
     11</ol>
    512<br />
     13<strong>Další možnosti:</strong><br />
     14<ul>
     15<li>Můžete se zaregistrovat do diskuzního fóra serveru <a href="forum/">zde</a>.</li>
     16<li>Ve hře se můžete připojit příkazem /join world do společného textového chat kanálu.</li>
     17<li>Prozkoumejte webové stránky serveru a sledujte <a href="rss.php?category=articles">nejnovější informace</a> přes RSS čtečku.</li>
     18</ul>
    619<br />
    7 
    8 <b>Jak se připojit:</b><br />
    9 1) Nainstalujte hru <b>World of Warcraft</b> s datadisky  <b>The Burning Crusade</b> a <b>Wrath of the Lich King</b>. Program na stažení všech tří (verze enUS): <a href="http://game.zdechov.net:81/InstallWoW.exe">HTML</a>.<br />
    10 2) Nainstalujte zjistěte si verzi World of Warcraft s oběma datadisky (ukazuje se po spuštění v levém, dolním rohu) a stáhněte si postupně patche až do verze <b>3.0.9</b> <a href="http://www.wowwiki.com/Patch_mirrors" target="_blank">WoWWiky</a>.<br />
    11 3) První řádku souboru <a href="pages/realmlist.wtf">realmlist.wtf</a> (je umístěn ve složce s WoW/data/enUS/realmlist.wtf)přepište na <b>set realmlist wow.zdechov.net</b>, zbytek realmlistu můžete nechat jaký je.<br />
    12 4) Vytvořte si <a href="?page=register">zde</a> nový herní účet<br />
    13 5) Smažte soubor launcher.exe ve složce s hrou a <b>spouštějte hru jen přes WoW.exe.</b> Zamezíte tím samovolné auktualizaci hry (stahování vyšších patchů) a následné nemožnosti připojit se na Heroes of Fantasy, který by jel na jiném patchi.<br />
    14 6) Spusťte hru, vytvořte si postavu a ponořte se do nového herního světa Heroes of Fantasy, hry <b>World of Warcraft</b>.<br />
    15 <br />
    16 <b>Další možnosti:</b><br />
    17 - Můžete se zaregistrovat do diskuzního fóra serveru: <a href="forum/">zde</a>.<br />
    18 - Ve hře se můžete připojit příkazem /join world do společného textového chat kanálu.<br />
    19 - Prozkoumejte webové stránky serveru a sledujte nejnovější informace přes RSS čtečku.<br />
    20 <br />
    21 <b>Přejeme příjemnou zábavu!</b>
    22 ');
     20<strong>Přejeme příjemnou zábavu!</strong>');
    2321
    2422?>
  • trunk/pages/events.php

    r595 r609  
    4343 
    4444  $Events = array('Running' => array(), 'Planned' => array());
    45   $db->select_db($Config['Mangos']['DatabaseMangos']); 
     45  $db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseMangos']);
    4646
    4747  $DbResult = $db->query('SELECT *, UNIX_TIMESTAMP(start_time) as start FROM game_event WHERE end_time > NOW() AND start_time < NOW()');
  • trunk/pages/gmlog.php

    r583 r609  
    11<?php
    22
    3 $gmlog = $Config['Mangos']['GMCommandsLog'];
     3$gmlog = $Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['GMCommandsLog'];
    44$pocet_radku = 50; //KOLIK RADKU Z LOGU SE BUDE ZOBRAZOVAT
    55
  • trunk/pages/guilda.php

    r595 r609  
    33function count_days($a, $b)
    44{
    5         $gd_a = getdate($a);
    6         $gd_b = getdate($b);
    7         $a_new = mktime(12, 0, 0, $gd_a['mon'], $gd_a['mday'], $gd_a['year']);
    8         $b_new = mktime(12, 0, 0, $gd_b['mon'], $gd_b['mday'], $gd_b['year']);
    9         return round(abs($a_new - $b_new) / 86400);
     5  $gd_a = getdate($a);
     6  $gd_b = getdate($b);
     7  $a_new = mktime(12, 0, 0, $gd_a['mon'], $gd_a['mday'], $gd_a['year']);
     8  $b_new = mktime(12, 0, 0, $gd_b['mon'], $gd_b['mday'], $gd_b['year']);
     9  return round(abs($a_new - $b_new) / 86400);
    1010}
    1111
    12 $db->select_db($Config['Mangos']['DatabaseCharacters']);
     12$db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    1313$id = (isset($_GET['id'])) ? $_GET['id'] : 0;
    1414if($id != 0)
     
    5959    $query = $db->query('SELECT `race`,`class`,`online`, `account`, `logout_time`, SUBSTRING_INDEX(SUBSTRING_INDEX(`characters`.`data`, " ", '.$Config['Mangos']['CharacterDataOffset']['Level'].' + 1), " ", -1) AS level, mid(lpad( hex( CAST(substring_index(substring_index(data, " ", '.($Config['Mangos']['CharacterDataOffset']['Gender'] + 1).'), " ", -1) as unsigned) ), 8, 0), 4, 1) as gender FROM `characters` WHERE `guid` = '.$member[0].' LIMIT 1;');
    6060    $online = $query->fetch_assoc();
    61           $accid = $online['account'];
    62          
     61    $accid = $online['account'];
     62   
    6363    $LogoutTime = count_days($online['logout_time'], time());
    6464    $LogoutTimeColorList = array(0 => '#0000CC', 5 => '#FFFF00', 15 => '#FF8000', 30 => '#FF0000', 60 => '#FF00FF', 90 => '#8000FF');
     
    6969    }
    7070   
    71         $Level = $online['level'];
     71    $Level = $online['level'];
    7272    $LevelColorList = array(9 => '#858585', 19 => '#339900', 29 => '#3300CC', 39 => '#5552FF', 49 => '#FF8000', 59 => '#FF0000', 69 => '#FF00CC', 70 => '#FFF000');
    7373    $LevelColor = '#FFFFFF';
     
    7777    }
    7878   
    79                 if($online['gender'] == 0) $gender = 0;
     79    if($online['gender'] == 0) $gender = 0;
    8080    else $gender = 1;
    8181    echo('<tr>'.
  • trunk/pages/guildy.php

    r595 r609  
    4242  </tr>');
    4343
    44 $db->select_db($Config['Mangos']['DatabaseCharacters']);
     44$db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    4545
    4646$sql = $db->query('SELECT `guild`.homepage, `guild`.name, `guild`.guildid, `guild`.createdate, COUNT(`guild_member`.`guildid`) AS member_count ,`leader`.`race` IN (1, 3, 4, 7, 11) AS fraction , `leader`.`guid` AS leader FROM `guild` JOIN `guild_member` ON `guild_member`.`guildid` = `guild`.`guildid` JOIN `characters` AS `memebers` ON `memebers`.`guid`= `guild_member`.`guid` JOIN `characters` AS `leader` ON `leader`.`guid`= `guild`.`leaderguid` GROUP BY guild.name ORDER BY '.$order_by.' '.$order_dir.';');
  • trunk/pages/links.php

    r532 r609  
    55$Links = array
    66(
    7   array('URL' => 'http://wow.hisgrak.cz/', 'Description' => 'České informace o WoW'),
    87  array('URL' => 'http://wow.vigudes.cz', 'Description' => 'České informace o WoW'),
    98  array('URL' => 'http://wow.herniweb.cz/', 'Description' => 'České informace o WoW'),
     
    2019  array('URL' => 'http://www.gotwow.ic.cz/', 'Description' => 'Historie emulace WoW'),
    2120  array('URL' => 'http://www.zdechov.net/', 'Description' => 'Komunitní počítačová síť, ve které je provozován tento server'),
    22   array('URL' => 'http://game.zdechov.net/', 'Description' => 'Rozcestník tohoto herního serveru'),
    2321  array('URL' => 'http://wowpreklad.zdechov.net/', 'Description' => 'Český překlad WoW'),
    2422);
    2523
     24echo('<ul>');
    2625foreach($Links as $Link)
    2726{
    28   echo('<a href="'.$Link['URL'].'" target="_blank" title="'.$Link['Description'].'">'.$Link['URL'].'</a> - '.$Link['Description'].'<br />');
     27  echo('<li><a href="'.$Link['URL'].'" target="_blank" title="'.$Link['Description'].'">'.$Link['URL'].'</a> - '.$Link['Description'].'</li>');
    2928}
     29echo('</ul>');
    3030
    3131?>
  • trunk/pages/online.php

    r595 r609  
    2222
    2323echo('<h3 class="PageTitle">Online hráči</h3>');
    24 echo('<div style="text-align: center">Celkem '.$server->MangosOnline().' hráčů.</div>'.
     24echo('<div style="text-align: center">Celkem '.$server->MangosOnline($_COOKIE['RealmIndex']).' hráčů.</div>'.
    2525'<table class="BaseTable">
    2626  <tr>
     
    3434    MakeLink('Aréna body', 'arena_points').'</th></tr>');
    3535
    36 $db->select_db($Config['Mangos']['DatabaseCharacters']);
     36$db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    3737$sql = $db->query('SELECT guid, name, race, class, zone, map, '.
    3838  'CAST( SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, " ", '.$Config['Mangos']['CharacterDataOffset']['HonorPoints'].'+1), " ", -1) AS UNSIGNED) AS highest_rank, '.
  • trunk/pages/server.php

    r608 r609  
    1010    <td>'.$server->ServerImg($server->ServerOnline($Config['Web']['WoWServerAddr'], 8085)).'</td>
    1111  </tr>
    12 
    1312  <tr>
    14     <td>Ve hře přítomno</td>
    15     <td>'.$server->MangosOnline().' hráčů</td>
     13    <td>Celkem světů</td>
     14    <td>'.count($Config['Mangos']['RealmList']).'</td>
     15  </tr>
     16  <tr>
     17    <td>Ve všech světech přítomno</td>
     18    <td>'.$server->ServerMangosOnline().' hráčů</td>
    1619  </tr>
    1720  <tr>
     
    2427  </tr>
    2528  <tr>
    26     <td>V databázi uloženo</td>
    27     <td>'.$server->CharacterCount().' postav</td>
     29    <td>Ve všech světech uloženo</td>
     30    <td>'.$server->ServerCharacterCount().' postav</td>
    2831  </tr>
    2932  <tr>
  • trunk/pages/tophraci.php

    r589 r609  
    1414}
    1515
    16 
    1716function getOnline($online)
    1817{
    19   if ($online == 1):
    20     $status = '<span style="color: green;">Online</span>';
    21   else:
    22     $status = '<span style="color: red;">Offline</span>';
    23   endif;
    24  
     18  if($online == 1) $status = '<span style="color: green;">Online</span>';
     19    else $status = '<span style="color: red;">Offline</span>';
    2520  return($status);
    2621}
    2722
    28 $db->select_db($Config['Mangos']['DatabaseCharacters']);
     23$db->select_db($Config['Mangos']['RealmList'][$_COOKIE['RealmIndex']]['DatabaseCharacters']);
    2924$sql = 'SELECT name, totaltime, online FROM characters ORDER BY totaltime DESC LIMIT '.$top;
    3025$result = $db->query($sql);
Note: See TracChangeset for help on using the changeset viewer.