[690] | 1 | <?php
|
---|
| 2 |
|
---|
| 3 | $EventsLinks = array
|
---|
| 4 | (
|
---|
| 5 | 1 => array('http://wwpw.wowwiki.com/Midsummer_Fire_Festival', 'http://www.worldofwarcraft.com/info/events/midsummer/'),
|
---|
| 6 | 2 => array('http://www.wowwiki.com/Feast_of_Winter_Veil', 'http://www.worldofwarcraft.com/info/events/winterveil/'),
|
---|
| 7 | 3 => array('http://www.wowwiki.com/Darkmoon_Faire', 'http://www.worldofwarcraft.com/info/basics/factions/darkmoon/'),
|
---|
| 8 | 4 => array('http://www.wowwiki.com/Darkmoon_Faire', 'http://www.worldofwarcraft.com/info/basics/factions/darkmoon/'),
|
---|
| 9 | 5 => array('http://www.wowwiki.com/Darkmoon_Faire', 'http://www.worldofwarcraft.com/info/basics/factions/darkmoon/'),
|
---|
| 10 | 6 => array('http://www.wowwiki.com/New_Year', 'http://www.worldofwarcraft.com/info/events/newyears/'),
|
---|
| 11 | 7 => array('http://www.wowwiki.com/Lunar_Festival', 'http://www.worldofwarcraft.com/info/events/lunarnewyears/'),
|
---|
| 12 | 8 => array('http://www.wowwiki.com/Love_is_in_the_Air', 'http://www.worldofwarcraft.com/info/events/loveisintheair/'),
|
---|
| 13 | 9 => array('http://www.wowwiki.com/Noblegarden', 'http://www.worldofwarcraft.com/community/ingameevents.html#noblegarden'),
|
---|
| 14 | 10 => array('http://www.wowwiki.com/Children%27s_Week', 'http://www.worldofwarcraft.com/info/events/childrensweek/'),
|
---|
| 15 | 11 => array('http://www.wowwiki.com/Harvest_Festival', 'http://www.worldofwarcraft.com/info/events/harvestfestival/'),
|
---|
| 16 | 12 => array('http://www.wowwiki.com/Hallow%27s_End', 'http://www.worldofwarcraft.com/info/events/hallowsend/'),
|
---|
| 17 | 13 => array('http://www.wowwiki.com/Elemental_Invasions', 'http://www.worldofwarcraft.com/community/ingameevents.html#elemental'),
|
---|
| 18 | 14 => array('http://www.wowwiki.com/Stranglethorn_Fishing_Extravaganza', 'http://www.worldofwarcraft.com/info/events/fishing/'),
|
---|
| 19 | 15 => array('http://www.wowwiki.com/Stranglethorn_Fishing_Extravaganza', 'http://www.worldofwarcraft.com/info/events/fishing/'),
|
---|
| 20 | 16 => array('http://www.wowwiki.com/Gurubashi_Arena#Gurubashi_Arena_Booty_Run', 'http://www.worldofwarcraft.com/community/ingameevents.html#gurubashi'),
|
---|
| 21 | 17 => array('http://www.wowwiki.com/The_Scourge_Invasion', 'http://www.worldofwarcraft.com/info/events/scourgeinvasion/'),
|
---|
| 22 | 18 => array('', 'http://www.worldofwarcraft.com/community/ingameevents.html#calltoarms'),
|
---|
| 23 | 19 => array('', 'http://www.worldofwarcraft.com/community/ingameevents.html#calltoarms'),
|
---|
| 24 | 20 => array('', 'http://www.worldofwarcraft.com/community/ingameevents.html#calltoarms'),
|
---|
| 25 | 21 => array('', 'http://www.worldofwarcraft.com/community/ingameevents.html#calltoarms'),
|
---|
| 26 | 22 => array('http://www.wowwiki.com/Ahn%27Qiraj_War_Effort', 'http://www.worldofwarcraft.com/wareffort/servers.html'),
|
---|
| 27 | 23 => array('', ''),
|
---|
| 28 | 24 => array('', ''),
|
---|
| 29 | 25 => array('', 'http://www.worldofwarcraft.com/community/ingameevents.html#calltoarms'),
|
---|
| 30 | 26 => array('http://www.wowwiki.com/Brewfest', 'http://www.worldofwarcraft.com/info/events/brewfest/'),
|
---|
| 31 | 27 => array('', ''),
|
---|
| 32 | 28 => array('http://www.wowwiki.com/Noblegarden', 'http://www.worldofwarcraft.com/community/ingameevents.html#noblegarden'),
|
---|
| 33 | 29 => array('http://www.wowwiki.com/Edge_of_Madness', ''),
|
---|
| 34 | 30 => array('http://www.wowwiki.com/Edge_of_Madness', ''),
|
---|
| 35 | 31 => array('http://www.wowwiki.com/Edge_of_Madness', ''),
|
---|
| 36 | 32 => array('http://www.wowwiki.com/Edge_of_Madness', ''),
|
---|
| 37 | 34 => array('http://www.wowwiki.com/L70ETC', ''),
|
---|
| 38 | );
|
---|
| 39 |
|
---|
| 40 | function Events()
|
---|
| 41 | {
|
---|
| 42 | global $db, $EventsLinks, $Config, $System;
|
---|
| 43 |
|
---|
| 44 | $Events = array('Running' => array(), 'Planned' => array());
|
---|
| 45 | $Realm = new Realm($System, $_COOKIE['RealmIndex']);
|
---|
| 46 |
|
---|
| 47 | $DbResult = $Realm->MangosDatabase->query('SELECT *, UNIX_TIMESTAMP(start_time) as start FROM game_event WHERE end_time > NOW() AND start_time < NOW()');
|
---|
| 48 | while($Row = $DbResult->fetch_array())
|
---|
| 49 | {
|
---|
| 50 | if(!array_key_exists($Row['entry'], $EventsLinks)) $EventsLinks[$Row['entry']] = array('', '');
|
---|
| 51 | $Start = (floor((time() - $Row['start']) / ($Row['occurence'] * 60))) * $Row['occurence'] * 60 + $Row['start'];
|
---|
| 52 | $End = $Start + $Row['length'] * 60;
|
---|
| 53 | if((time() > $Start) and (time() < $End)) $EventState = 'Running';
|
---|
| 54 | else
|
---|
| 55 | {
|
---|
| 56 | $EventState = 'Planned';
|
---|
| 57 | $Start += $Row['occurence'] * 60;
|
---|
| 58 | $End += $Row['occurence'] * 60;
|
---|
| 59 | }
|
---|
| 60 | $Events[$EventState][$Row['start']] = array('StartTime' => $Start, 'EndTime' => $End, 'Title' => $Row['description'], 'WoWWiki' => $EventsLinks[$Row['entry']][0], 'Official' => $EventsLinks[$Row['entry']][1]);
|
---|
| 61 | }
|
---|
| 62 |
|
---|
| 63 | // Add events not started so far
|
---|
| 64 | //$DbResult = $db->select('game_event', '*, UNIX_TIMESTAMP(start_time) as start', 'start_time > NOW()');
|
---|
| 65 | $DbResult = $db->query('SELECT * , UNIX_TIMESTAMP(start_time) as start FROM game_event WHERE start_time > NOW()');
|
---|
| 66 | while($Row = $DbResult->fetch_array())
|
---|
| 67 | {
|
---|
| 68 | if(!array_key_exists($Row['entry'], $EventsLinks)) $EventsLinks[$Row['entry']] = array('', '');
|
---|
| 69 | $Events['Planned'][$Row['start']] = array('StartTime' => $Row['start'], 'EndTime' => ($Row['start'] + $Row['length'] * 60), 'Title' => $Row['description'], 'WoWWiki' => $EventsLinks[$Row['entry']][0], 'Official' => $EventsLinks[$Row['entry']][1]);
|
---|
| 70 | }
|
---|
| 71 |
|
---|
| 72 | sort($Events['Running']);
|
---|
| 73 | sort($Events['Planned']);
|
---|
| 74 |
|
---|
| 75 | return($Events);
|
---|
| 76 | }
|
---|
| 77 |
|
---|
| 78 | function ShowEventList($Events)
|
---|
| 79 | {
|
---|
| 80 | foreach($Events as $Event)
|
---|
| 81 | {
|
---|
| 82 | echo('<tr><td>'.$Event['Title'].'</td><td>'.date('j.n.Y H:i', $Event['StartTime']).'</td><td>'.date('j.n.Y H:i', $Event['EndTime']).'</td>');
|
---|
| 83 | if($Event['WoWWiki'] != '') echo('<td><a href="'.$Event['WoWWiki'].'">wowwiki</a>');
|
---|
| 84 | else echo('<td> ');
|
---|
| 85 | if($Event['Official'] != '') echo(' <a href="'.$Event['Official'].'">worldofwarcraft</a></td>'); else echo(' </td>');
|
---|
| 86 | echo('</tr>');
|
---|
| 87 | }
|
---|
| 88 | }
|
---|
| 89 |
|
---|
| 90 | echo('<h3 class="PageTitle">Události ve hře</h3>');
|
---|
| 91 | $Realm = new Realm($System, $_COOKIE['RealmIndex']);
|
---|
| 92 | $db = $Realm->MangosDatabase;
|
---|
| 93 |
|
---|
| 94 | $Events = Events();
|
---|
| 95 | echo('<table class="BaseTable">');
|
---|
| 96 | echo('<tr><th>Název</th><th>Začátek</th><th>Konec</th><th>Informace</th></tr>');
|
---|
| 97 | echo('<tr><td colspan="5"><b>Probíhající akce</b></td></tr>');
|
---|
| 98 | ShowEventList($Events['Running']);
|
---|
| 99 | echo('<tr><td colspan="5"><b>Plánované akce</b></td></tr>');
|
---|
| 100 | ShowEventList($Events['Planned']);
|
---|
| 101 | echo('</table>');
|
---|
| 102 |
|
---|
| 103 | ?>
|
---|