source: guildy.php@ 382

Last change on this file since 382 was 334, checked in by george, 17 years ago

Přidáno: Zobrazení frakce ve výpisu spolků.

File size: 5.9 KB
Line 
1<?php
2 include('global.php');
3 ShowHeader();
4
5require_once("minimanager/scripts/defines.php");
6
7$RanksEN = array('Guildmaster', 'Veteran', 'Intendant', 'Support Officer', 'PR Officer', 'Officer', 'Famed Member',
8'Member', 'Rokie', 'Newbie');
9$RanksCZ = array('Pán cechu', 'Veterán', 'Vrchní správce', 'Pomocný dùstojník', 'PR dùstojník', 'Dùstojník', 'Proslavený èlen', 'Èlen', 'Zelenáè', 'Nováèek');
10
11$order_by = (isset($_GET['order_by'])) ? $Database->real_escape_string($_GET['order_by']) : "name";
12
13$dir = (isset($_GET['dir'])) ? $Database->real_escape_string($_GET['dir']) : 1;
14$order_dir = ($dir) ? "ASC" : "DESC";
15$dir = ($dir) ? 0 : 1;
16
17function HeaderText($Text, $Column)
18{
19 global $dir, $order_by, $GuildId;
20 echo('<th><a href="?order_by='.$Column.'&amp;dir='.$dir.'">'.($order_by==$Column ? '<img src="images/online_player/arr_'.($dir ? 'up' : 'dw').'.gif" /> ' : '').$Text.'</a></th>');
21}
22
23function HeaderTextGuild($Text, $Column)
24{
25 global $dir, $order_by, $GuildId;
26 echo('<th><a href="?guild='.$GuildId.'&amp;order_by='.$Column.'&amp;dir='.$dir.'">'.($order_by==$Column ? '<img src="images/online_player/arr_'.($dir ? 'up' : 'dw').'.gif" /> ' : '').$Text.'</a></th>');
27}
28
29 $Database->select_db('characters');
30if(!array_key_exists('guild', $_GET))
31{
32 echo('<h3>Seznam spolkù:</h3><div align="center">');
33 echo('<table class="TableGuilda" border="1" cellpadding="3" cellspacing="0"><tr>');
34 HeaderText('F', 'fraction');
35 HeaderText('Název', 'name');
36 HeaderText('Poèet èlenù', 'member_count');
37 HeaderText('Souèet levelù', 'guild_level');
38 HeaderText('Souèet bodù cti', 'guild_honor');
39 HeaderText('Webové stránky', '');
40 echo('</tr>');
41// DB_Query(' COUNT(guild_member.guildid) as member_count FROM guild JOIN guild_member ON guild_member.guildid = guild.guildid GROUP BY guild.name ORDER BY member_count DESC');
42 $Result = $Database->query('SELECT `guild`.homepage, `guild`.name, guild.guildid, COUNT(`guild_member`.`guildid`) as member_count, SUM(SUBSTRING_INDEX(SUBSTRING_INDEX(`memebers`.`data`, " ", 35), " ", -1)) as guild_level, SUM(SUBSTRING_INDEX(SUBSTRING_INDEX(`memebers`.`data`, " ", '.(CHAR_DATA_OFFSET_HONOR_POINTS+1).'), " ", -1)) as guild_honor, `leader`.`race` IN (1, 3, 4, 7, 11) as fraction 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);
43 while($Guild = $Result->fetch_array())
44 {
45 if($Guild['fraction'] == 1) $Fraction = 'aliance'; else $Fraction = 'horda';
46 if($Guild['homepage'] == '') $Guild['homepage'] = '&nbsp;';
47 else $Guild['homepage'] = '<a href="http://'.$Guild['homepage'].'/">'.$Guild['homepage'].'</a>';
48 echo('<tr><td><img src="images/online_player/'.$Fraction.'.gif" alt="'.$Fraction.'"></td><td><a href="?guild='.$Guild['guildid'].'">'.$Guild['name'].'</a></td><td>'.$Guild['member_count'].'</td><td>'.$Guild['guild_level'].'</td><td>'.$Guild['guild_honor'].'</td><td>'.$Guild['homepage'].'</td></tr>');
49 }
50 echo('</table></div>');
51} else {
52 $GuildId = addslashes($_GET['guild']);
53 $Result = $Database->query('SELECT `guild`.name, guild.guildid, guild.leaderguid, COUNT(`guild_member`.`guildid`) as member_count, SUM(SUBSTRING_INDEX(SUBSTRING_INDEX(`characters`.`data`, " ", '.(CHAR_DATA_OFFSET_LEVEL+1).'), " ", -1)) as guild_level, SUM(SUBSTRING_INDEX(SUBSTRING_INDEX(`characters`.`data`, " ", '.(CHAR_DATA_OFFSET_HONOR_POINTS+1).'), " ", -1)) as guild_honor FROM `guild` JOIN `guild_member` ON `guild_member`.`guildid` = `guild`.`guildid` JOIN `characters` ON `characters`.`guid`= `guild_member`.`guid` WHERE guild.guildid='.$GuildId.' GROUP BY guild.name');
54 if($Result->num_rows > 0)
55 {
56 $Guild = $Result->fetch_array();
57 // if($Guild['homepage'] != '') $Guild['name'] = $Guild['name'].' <a href="'.$Guild['homepage'].'">WWW</a>';
58 //if($Guild['info'] != '') $Guild['info'] = ''.$Guild['info'].'</i>';
59 echo('<h3>Seznam èlenù spolku '.$Guild['name'].'</h3><div align="center">');
60 $Result = $Database->select('characters', 'name', $Guild['leaderguid'].'=guid');
61 $GuildMaster = $Result->fetch_array();
62 echo('Vedoucí spolku: '.$GuildMaster['name'].'<br>');
63 echo('<table class="TableGuilda" border="1" cellpadding="1" cellspacing="0">');
64 echo('<tr>');
65 HeaderTextGuild('Jméno', 'name');
66 HeaderTextGuild('Úroveò', 'level');
67 HeaderTextGuild('Hodnost', 'rank');
68 HeaderTextGuild('Body cti', 'honor');
69 echo('</tr>');
70 //echo('<tr><td colspan="2" Class="TdGuilda">Informace: '.$Guild['public_info'].'</td></tr>');
71
72 $GuildRanks = array();
73 $Result = $Database->select('guild_rank', '*', 'guildid='.$Guild['guildid']);
74 while($GuildRank = $Result->fetch_array()) $GuildRanks[$GuildRank['rid']] = $GuildRank;
75
76 $Result = $Database->query('SELECT guild_member.rank, guild_member.guid, SUBSTRING_INDEX(SUBSTRING_INDEX(characters.data," ", '.(CHAR_DATA_OFFSET_LEVEL+1).'), " ", -1)*1 as level, SUBSTRING_INDEX(SUBSTRING_INDEX(characters.data," ", '.(CHAR_DATA_OFFSET_HONOR_POINTS+1).'), " ", -1)*1 as honor, characters.name FROM guild_member JOIN `characters` ON guild_member.guid = characters.guid AND guild_member.guildid='.$Guild['guildid'].' ORDER BY '.$order_by.' '.$order_dir);
77 while($Member = $Result->fetch_array())
78 {
79 if(array_key_exists($Member['rank']+1, $GuildRanks)) $GuildRank = $GuildRanks[$Member['rank']+1]['rname']; else $GuildRank = '&nbsp;';
80// $DataParts = explode(' ', $Member['data']);
81// $Member['level'] .= ','.$DataParts[34];
82 echo('<tr><td width="30%">'.$Member['name'].'</td><td>'.$Member['level'].'</td><td>'.$GuildRank.'</td><td>'.$Member['honor'].'</td></tr>');
83 }
84 echo('</table>');
85 echo('<a href="guildy.php">Zpìt na seznam spolkù</a></div>');
86 } else echo('Spolek nenalezen!');
87}
88
89ShowFooter();
90?>
Note: See TracBrowser for help on using the repository browser.