root/dev/mods/api_alliance/alliance_detail.php @ 423

Revision 423, 28.8 KB (checked in by kovell, 11 years ago)

Fixes: missing code in rankmod located. logo code detects missing gd function, api_alliance labels Faction a Faction

Line 
1<?php
2require_once('common/includes/class.corp.php');
3require_once('common/includes/class.alliance.php');
4require_once('common/includes/class.killlist.php');
5require_once('common/includes/class.killlisttable.php');
6require_once('common/includes/class.killsummarytable.php');
7require_once('common/includes/class.toplist.php');
8require_once("common/includes/class.eveapi.php");
9
10$all_id = intval($_GET['all_id']);
11$all_external_id = intval($_GET['all_external_id']);
12if (!$all_id && !$all_external_id)
13{
14    if (ALLIANCE_ID)
15    {
16        $all_id = ALLIANCE_ID;
17    }
18    else
19    {
20        echo 'no valid alliance id specified<br/>';
21        return;
22    }
23}
24
25if(!$all_id && $all_external_id)
26{
27        $qry = new DBQuery();
28        $qry->execute("SELECT all_id FROM kb3_alliances WHERE all_external_id = ".$all_external_id);
29        if($qry->recordCount())
30        {
31                $row = $qry->getRow();
32                $all_id = $row['all_id'];
33        }
34}
35
36$month = $_GET['m'];
37$year = $_GET['y'];
38
39if ($month == '')
40    $month = kbdate('m');
41
42if ($year == '')
43    $year = kbdate('Y');
44
45if ($month == 12)
46{
47    $nmonth = 1;
48    $nyear = $year + 1;
49}
50else
51{
52    $nmonth = $month + 1;
53    $nyear = $year;
54}
55if ($month == 1)
56{
57    $pmonth = 12;
58    $pyear = $year - 1;
59}
60else
61{
62    $pmonth = $month - 1;
63    $pyear = $year;
64}
65$monthname = kbdate("F", strtotime("2000-".$month."-2"));
66
67$alliance = new Alliance($all_id);
68$tempMyCorp = new Corporation();
69
70$myAlliName = $alliance->getName();
71
72$myAlliAPI = new AllianceAPI();
73$myAlliAPI->fetchalliances();
74$myAlliAPI->UpdateAlliances();
75
76$myAlliance = $myAlliAPI->LocateAlliance( $myAlliName );
77
78$myCorpAPI = new API_CorporationSheet();
79
80if ($myAlliance)
81{
82        if($alliance->isFaction()) $page = new Page('Faction details - '.$alliance->getName() . " [" . $myAlliance["shortName"] . "]");
83        else $page = new Page('Alliance details - '.$alliance->getName() . " [" . $myAlliance["shortName"] . "]");
84       
85        foreach ( (array)$myAlliance["memberCorps"] as $tempcorp)
86        {
87                $myCorpAPI->setCorpID($tempcorp["corporationID"]);
88                $result .= $myCorpAPI->fetchXML();
89       
90                if ($tempcorp["corporationID"] == $myAlliance["executorCorpID"])
91                {
92                        $ExecutorCorp = $myCorpAPI->getCorporationName();
93                }
94                // Build Data array
95                $membercorp["corpName"] = $myCorpAPI->getCorporationName();
96                $membercorp["ticker"] = $myCorpAPI->getTicker();
97                $membercorp["members"] = $myCorpAPI->getMemberCount();
98                $membercorp["joinDate"] = $tempcorp["startDate"];
99                $membercorp["taxRate"] = $myCorpAPI->getTaxRate() . "%";
100                $membercorp["url"] = $myCorpAPI->getUrl();
101       
102                $AllianceCorps[] = $membercorp;
103
104                // Check if corp is known to EDK DB, if not, add it.
105                $tempMyCorp->Corporation();
106                $tempMyCorp->lookup($myCorpAPI->getCorporationName());
107                if ($tempMyCorp->getID() == 0)
108                {
109                        $tempMyCorp->add($myCorpAPI->getCorporationName(), $alliance , substr($tempcorp["startDate"], 0, 16));
110                }
111       
112                $membercorp = array();
113                unset($membercorp);
114        }
115       
116        $html .= "<table class=kb-table width=\"100%\" border=\"0\" cellspacing=1><tr class=kb-table-row-even><td rowspan=8 width=128 align=center bgcolor=black>";
117
118        if (file_exists("img/alliances/".$alliance->getUnique().".png"))
119        {
120        $html .= "<img src=\"".IMG_URL."/alliances/".$alliance->getUnique().".png\" border=\"0\"></td>";
121        }
122        else
123        {
124        $html .= "<img src=\"".IMG_URL."/alliances/default.gif\" border=\"0\"></td>";
125        }
126        $kill_summary = new KillSummaryTable();
127        $kill_summary->addInvolvedAlliance($alliance);
128        $kill_summary->setBreak(config::get('summarytable_rowcount'));
129        $summary_html = $kill_summary->generate();
130
131        $html .= "<td class=kb-table-cell width=150><b>Kills:</b></td><td class=kl-kill>".$kill_summary->getTotalKills()."</td>";
132        $html .= "<td class=kb-table-cell width=65><b>Executor:</b></td><td class=kb-table-cell><a href=\"?a=search&searchtype=corp&searchphrase=" . $ExecutorCorp . "\">" . $ExecutorCorp . "</a></td></tr>";
133        $html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Losses:</b></td><td class=kl-loss>".$kill_summary->getTotalLosses()."</td>";
134        $html .= "<td class=kb-table-cell><b>Members:</b></td><td class=kb-table-cell>" . $myAlliance["memberCount"] . "</td></tr>";
135        $html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Damage done (ISK):</b></td><td class=kl-kill>".round($kill_summary->getTotalKillISK()/1000000000, 2)."B</td>";
136        $html .= "<td class=kb-table-cell><b>Start Date:</b></td><td class=kb-table-cell>" . $myAlliance["startDate"] . "</td></tr>";
137        $html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Damage received (ISK):</b></td><td class=kl-loss>".round($kill_summary->getTotalLossISK()/1000000000, 2)."B</td>";
138        $html .= "<td class=kb-table-cell><b>Number of Corps:</b></td><td class=kb-table-cell>" . count($myAlliance["memberCorps"]) . "</td></tr>";
139        if ($kill_summary->getTotalKillISK())
140        {
141                 $efficiency = round($kill_summary->getTotalKillISK() / ($kill_summary->getTotalKillISK() + $kill_summary->getTotalLossISK()) * 100, 2);
142        }
143        else
144        {
145        $efficiency = 0;
146        }
147
148        $html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Efficiency:</b></td><td class=kb-table-cell><b>" . $efficiency . "%</b></td>";
149        $html .= "<td class=kb-table-cell></td><td class=kb-table-cell></td></tr>";
150
151        $html .= "</table>";
152        $html .= "<br/>";
153
154        $html .= "<table class=kb-table width=\"100%\" border=\"0\" cellspacing=1><tr class=kb-table-header>";
155        $html .= "<td class=kb-table-cell><b>Corporation Name</b></td><td class=kb-table-cell align=center><b>Ticker</b></td><td class=kb-table-cell align=center><b>Members</b></td><td class=kb-table-cell align=center><b>Join Date</b></td><td class=kb-table-cell align=center><b>Tax Rate</b></td><td class=kb-table-cell><b>Website</b></td></tr>";
156        foreach ( (array)$AllianceCorps as $tempcorp )
157        {
158                $html .= "<tr class=kb-table-row-even>";
159                $html .= "<td class=kb-table-cell><a href=\"?a=search&searchtype=corp&searchphrase=" . $tempcorp["corpName"] . "\">" . $tempcorp["corpName"] . "</a></td>";
160                $html .= "<td class=kb-table-cell align=center>" . $tempcorp["ticker"] . "</td>";
161                $html .= "<td class=kb-table-cell align=center>" . $tempcorp["members"] . "</td>";
162                $html .= "<td class=kb-table-cell align=center>" . $tempcorp["joinDate"] . "</td>";
163                $html .= "<td class=kb-table-cell align=center>" . $tempcorp["taxRate"] . "</td>";
164                $html .= "<td class=kb-table-cell><a href=\"" . $tempcorp["url"] . "\">" . $tempcorp["url"] . "</a></td>";
165                $html .= "</tr>";
166        }
167        $html .= "</table>";
168        $html .= "<br/>";           
169} else {
170        if($alliance->isFaction()) $page = new Page('Faction details - '.$alliance->getName() . " [" . $myAlliance["shortName"] . "]");
171        else $page = new Page('Alliance details - '.$alliance->getName() . " [" . $myAlliance["shortName"] . "]");
172       
173        $html .= "<table class=kb-table width=\"100%\" border=\"0\" cellspacing=1><tr class=kb-table-row-even><td rowspan=8 width=128 align=center bgcolor=black>";
174
175        if (file_exists("img/alliances/".$alliance->getUnique().".png"))
176        {
177    $html .= "<img src=\"".IMG_URL."/alliances/".$alliance->getUnique().".png\" border=\"0\"></td>";
178        }
179        else
180        {
181        $html .= "<img src=\"".IMG_URL."/alliances/default.gif\" border=\"0\"></td>";
182        }
183        $kill_summary = new KillSummaryTable();
184        $kill_summary->addInvolvedAlliance($alliance);
185        $kill_summary->setBreak(config::get('summarytable_rowcount'));
186        $summary_html = $kill_summary->generate();
187
188        $html .= "<td class=kb-table-cell width=180><b>Kills:</b></td><td class=kl-kill>".$kill_summary->getTotalKills()."</td></tr>";
189        $html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Losses:</b></td><td class=kl-loss>".$kill_summary->getTotalLosses()."</td></tr>";
190        $html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Damage done (ISK):</b></td><td class=kl-kill>".round($kill_summary->getTotalKillISK()/1000000000, 2)."B</td></tr>";
191        $html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Damage received (ISK):</b></td><td class=kl-loss>".round($kill_summary->getTotalLossISK()/1000000000, 2)."B</td></tr>";
192        if ($kill_summary->getTotalKillISK())
193        {
194        $efficiency = round($kill_summary->getTotalKillISK() / ($kill_summary->getTotalKillISK() + $kill_summary->getTotalLossISK()) * 100, 2);
195        }
196        else
197        {
198        $efficiency = 0;
199        }
200
201        $html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Efficiency:</b></td><td class=kb-table-cell><b>" . $efficiency . "%</b></td></tr>";
202
203        $html .= "</table>";
204        $html .= "<br/>";
205}
206
207if ($_GET['view'] == "" || $_GET['view'] == "kills" || $_GET['view'] == "losses")
208{
209    $html .= $summary_html;
210}
211
212switch ($_GET['view'])
213{
214    case "":
215        $html .= "<div class=kb-kills-header>10 Most recent kills</div>";
216
217        $list = new KillList();
218        $list->setOrdered(true);
219        $list->setLimit(10);
220        $list->setPodsNoobships(true);
221        $list->addInvolvedAlliance($alliance);
222        if ($_GET['scl_id'])
223            $list->addVictimShipClass(new ShipClass($_GET['scl_id']));
224
225        $ktab = new KillListTable($list);
226        $ktab->setLimit(10);
227        $ktab->setDayBreak(false);
228        $html .= $ktab->generate();
229
230        $html .= "<div class=kb-losses-header>10 Most recent losses</div>";
231
232        $list = new KillList();
233        $list->setOrdered(true);
234        $list->setLimit(10);
235        $list->setPodsNoobships(true);
236        $list->addVictimAlliance($alliance);
237        if ($_GET['scl_id'])
238            $list->addVictimShipClass(new ShipClass($_GET['scl_id']));
239
240        $ltab = new KillListTable($list);
241        $ltab->setLimit(10);
242        $ltab->setDayBreak(false);
243        $html .= $ltab->generate();
244
245        break;
246    case "kills":
247        $html .= "<div class=kb-kills-header>All kills</div>";
248
249        $list = new KillList();
250        $list->setOrdered(true);
251        $list->addInvolvedAlliance($alliance);
252        if ($_GET['scl_id'])
253            $list->addVictimShipClass(new ShipClass($_GET['scl_id']));
254        $pagesplitter = new PageSplitter($list->getCount(), 30);
255        $list->setPageSplitter($pagesplitter);
256        $table = new KillListTable($list);
257        $table->setDayBreak(false);
258        $html .= $table->generate();
259        $html .= $pagesplitter->generate();
260
261        break;
262    case "losses":
263        $html .= "<div class=kb-losses-header>All losses</div>";
264
265        $list = new KillList();
266        $list->setOrdered(true);
267        $list->setPodsNoobships(true);
268        $list->addVictimAlliance($alliance);
269        if ($_GET['scl_id'])
270            $list->addVictimShipClass(new ShipClass($_GET['scl_id']));
271        $pagesplitter = new PageSplitter($list->getCount(), 30);
272        $list->setPageSplitter($pagesplitter);
273
274        $table = new KillListTable($list);
275        $table->setDayBreak(false);
276        $html .= $table->generate();
277        $html .= $pagesplitter->generate();
278
279        break;
280    case "corp_kills":
281        $html .= "<div class=block-header2>Top killers</div>";
282
283        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
284        $html .= "<div class=block-header>$monthname $year</div>";
285
286        $list = new TopCorpKillsList();
287        $list->addInvolvedAlliance($alliance);
288        $list->setPodsNoobShips(false);
289        $list->setMonth($month);
290        $list->setYear($year);
291        $table = new TopCorpTable($list, "Kills");
292        $html .= $table->generate();
293       
294                $html .= "<table width=300 cellspacing=1><tr><td><a href='?a=alliance_detail&view=corp_kills&m=$pmonth&all_id=$all_id&y=$pyear'>previous</a></td>";
295        $html .= "<td align='right'><a href='?a=alliance_detail&view=corp_kills&all_id=$all_id&m=$nmonth&y=$nyear'>next</a></p></td></tr></table>";
296       
297        $html .= "</td><td valign=top width=400>";
298        $html .= "<div class=block-header>All time</div>";
299
300        $list = new TopCorpKillsList();
301        $list->addInvolvedAlliance($alliance);
302        $list->setPodsNoobShips(false);
303        $table = new TopCorpTable($list, "Kills");
304        $html .= $table->generate();
305
306        $html .= "</td></tr></table>";
307
308        break;
309    case "corp_kills_class":
310        $html .= "<div class=block-header2>Destroyed ships</div>";
311
312        // Get all ShipClasses
313        $sql = "select scl_id, scl_class from kb3_ship_classes
314            where scl_class not in ('Drone','Unknown') order by scl_class";
315
316        $qry = new DBQuery();
317        $qry->execute($sql);
318        while ($row = $qry->getRow())
319        {
320            $shipclass[] = new Shipclass($row['scl_id']);
321        }
322        $html .= "<table class=kb-subtable>";
323        $html .= "<tr>";
324        $newrow = true;
325
326        foreach ($shipclass as $shp){
327            if ($newrow){
328            $html .= '</tr><tr>';
329            }
330            $list = new TopCorpKillsList();
331            $list->addInvolvedAlliance($alliance);
332            $list->addVictimShipClass($shp);
333            $table = new TopCorpTable($list, "Kills");
334            $content = $table->generate();
335            if ($content != '<table class=kb-table cellspacing=1><tr class=kb-table-header><td class=kb-table-cell align=center>#</td><td class=kb-table-cell align=center>Corporation</td><td class=kb-table-cell align=center width=60>Kills</td></tr></table>'){
336            $html .= "<td valign=top width=440>";
337            $html .= "<div class=block-header>".$shp->getName()."</div>";
338            $html .= $content;
339            $html .= "</td>";
340            $newrow = !$newrow;
341            }
342
343        }
344        $html .= "</tr></table>";       
345        break;
346    case "kills_class":
347        $html .= "<div class=block-header2>Destroyed ships</div>";
348
349        // Get all ShipClasses
350        $sql = "select scl_id, scl_class from kb3_ship_classes
351            where scl_class not in ('Drone','Unknown') order by scl_class";
352
353        $qry = new DBQuery();
354        $qry->execute($sql);
355        while ($row = $qry->getRow())
356        {
357            $shipclass[] = new Shipclass($row['scl_id']);
358        }
359        $html .= "<table class=kb-subtable>";
360        $html .= "<tr>";
361        $newrow = true;
362
363        foreach ($shipclass as $shp){
364            if ($newrow){
365            $html .= '</tr><tr>';
366            }
367            $list = new TopKillsList();
368            $list->addInvolvedAlliance($alliance);
369            $list->addVictimShipClass($shp);
370            $table = new TopPilotTable($list, "Kills");
371            $content = $table->generate();
372            if ($content != '<table class=kb-table cellspacing=1><tr class=kb-table-header><td class=kb-table-cell align=center colspan=2>Pilot</td><td class=kb-table-cell align=center width=60>Kills</td></tr></table>'){
373            $html .= "<td valign=top width=440>";
374            $html .= "<div class=block-header>".$shp->getName()."</div>";
375            $html .= $content;
376            $html .= "</td>";
377            $newrow = !$newrow;
378            }
379
380        }
381        $html .= "</tr></table>";
382
383        break;
384    case "corp_losses_class":
385        $html .= "<div class=block-header2>Lost ships</div>";
386
387            // Get all ShipClasses
388        $sql = "select scl_id, scl_class from kb3_ship_classes
389            where scl_class not in ('Drone','Unknown') order by scl_class";
390
391        $qry = new DBQuery();
392        $qry->execute($sql);
393        while ($row = $qry->getRow())
394        {
395            $shipclass[] = new Shipclass($row['scl_id']);
396        }
397        $html .= "<table class=kb-subtable>";
398        $html .= "<tr>";
399        $newrow = true;
400
401        foreach ($shipclass as $shp){
402            if ($newrow){
403            $html .= '</tr><tr>';
404            }
405            $list = new TopCorpLossesList();
406                $list->addVictimAlliance($alliance);
407            $list->addVictimShipClass($shp);
408            $table = new TopCorpTable($list, "Losses");
409            $content = $table->generate();
410            if ($content != '<table class=kb-table cellspacing=1><tr class=kb-table-header><td class=kb-table-cell align=center>#</td><td class=kb-table-cell align=center>Corporation</td><td class=kb-table-cell align=center width=60>Losses</td></tr></table>'){
411            $html .= "<td valign=top width=440>";
412                $html .= "<div class=block-header>".$shp->getName()."</div>";
413                $html .= $content;
414            $html .= "</td>";
415            $newrow = !$newrow;
416            }
417        }
418        $html .= "</tr></table>";
419
420        break;
421    case "losses_class":
422        $html .= "<div class=block-header2>Lost ships</div>";
423
424            // Get all ShipClasses
425        $sql = "select scl_id, scl_class from kb3_ship_classes
426            where scl_class not in ('Drone','Unknown') order by scl_class";
427
428        $qry = new DBQuery();
429        $qry->execute($sql);
430        while ($row = $qry->getRow())
431        {
432            $shipclass[] = new Shipclass($row['scl_id']);
433        }
434        $html .= "<table class=kb-subtable>";
435        $html .= "<tr>";
436        $newrow = true;
437
438        foreach ($shipclass as $shp){
439            if ($newrow){
440            $html .= '</tr><tr>';
441            }
442            $list = new TopLossesList();
443                $list->addVictimAlliance($alliance);
444            $list->addVictimShipClass($shp);
445            $table = new TopPilotTable($list, "Losses");
446            $content = $table->generate();
447            if ($content != '<table class=kb-table cellspacing=1><tr class=kb-table-header><td class=kb-table-cell align=center colspan=2>Pilot</td><td class=kb-table-cell align=center width=60>Losses</td></tr></table>'){
448            $html .= "<td valign=top width=440>";
449                $html .= "<div class=block-header>".$shp->getName()."</div>";
450                $html .= $content;
451            $html .= "</td>";
452            $newrow = !$newrow;
453            }
454        }
455        $html .= "</tr></table>";
456
457        break;
458    case "corp_losses":
459        $html .= "<div class=block-header2>Top losers</div>";
460
461        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
462        $html .= "<div class=block-header>$monthname $year</div>";
463
464        $list = new TopCorpLossesList();
465        $list->addVictimAlliance($alliance);
466        $list->setPodsNoobShips(false);
467        $list->setMonth($month);
468        $list->setYear($year);
469        $table = new TopCorpTable($list, "Losses");
470        $html .= $table->generate();
471
472                $html .= "<table width=300 cellspacing=1><tr><td><a href='?a=alliance_detail&view=corp_losses&m=$pmonth&all_id=$all_id&y=$pyear'>previous</a></td>";
473        $html .= "<td align='right'><a href='?a=alliance_detail&view=corp_losses&all_id=$all_id&m=$nmonth&y=$nyear'>next</a></p></td></tr></table>";
474         
475        $html .= "</td><td valign=top width=400>";
476        $html .= "<div class=block-header>All time</div>";
477
478        $list = new TopCorpLossesList();
479        $list->addVictimAlliance($alliance);
480        $list->setPodsNoobShips(false);
481        $table = new TopCorpTable($list, "Losses");
482        $html .= $table->generate();
483
484        $html .= "</td></tr></table>";
485
486        break;
487    case "pilot_kills":
488        $html .= "<div class=block-header2>Top killers</div>";
489
490        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
491        $html .= "<div class=block-header>$monthname $year</div>";
492
493        $list = new TopKillsList();
494        $list->addInvolvedAlliance($alliance);
495        $list->setPodsNoobShips(false);
496        $list->setMonth($month);
497        $list->setYear($year);
498        $table = new TopPilotTable($list, "Kills");
499        $html .= $table->generate();
500
501                $html .= "<table width=300 cellspacing=1><tr><td><a href='?a=alliance_detail&view=pilot_kills&m=$pmonth&all_id=$all_id&y=$pyear'>previous</a></td>";
502        $html .= "<td align='right'><a href='?a=alliance_detail&view=pilot_kills&all_id=$all_id&m=$nmonth&y=$nyear'>next</a></p></td></tr></table>";
503       
504        $html .= "</td><td valign=top width=400>";
505        $html .= "<div class=block-header>All time</div>";
506
507        $list = new TopKillsList();
508        $list->addInvolvedAlliance($alliance);
509        $list->setPodsNoobShips(false);
510        $table = new TopPilotTable($list, "Kills");
511        $html .= $table->generate();
512
513        $html .= "</td></tr></table>";
514
515        break;
516    case "pilot_scores":
517        $html .= "<div class=block-header2>Top scorers</div>";
518
519        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
520        $html .= "<div class=block-header>$monthname $year</div>";
521
522        $list = new TopScoreList();
523        $list->addInvolvedAlliance($alliance);
524        $list->setPodsNoobShips(true);
525        $list->setMonth($month);
526        $list->setYear($year);
527        $table = new TopPilotTable($list, "Points");
528        $html .= $table->generate();
529
530                $html .= "<table width=300 cellspacing=1><tr><td><a href='?a=alliance_detail&view=pilot_scores&m=$pmonth&all_id=$all_id&y=$pyear'>previous</a></td>";
531        $html .= "<td align='right'><a href='?a=alliance_detail&view=pilot_scores&all_id=$all_id&m=$nmonth&y=$nyear'>next</a></p></td></tr></table>";
532         
533        $html .= "</td><td valign=top width=400>";
534        $html .= "<div class=block-header>All time</div>";
535
536        $list = new TopScoreList();
537        $list->addInvolvedAlliance($alliance);
538        $list->setPodsNoobShips(true);
539        $table = new TopPilotTable($list, "Points");
540        $html .= $table->generate();
541
542        $html .= "</td></tr></table>";
543
544        break;
545    case "pilot_losses":
546        $html .= "<div class=block-header2>Top losers</div>";
547
548        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
549        $html .= "<div class=block-header>$monthname $year</div>";
550
551        $list = new TopLossesList();
552        $list->addVictimAlliance($alliance);
553        $list->setPodsNoobShips(false);
554        $list->setMonth($month);
555        $list->setYear($year);
556        $table = new TopPilotTable($list, "Losses");
557        $html .= $table->generate();
558
559                $html .= "<table width=300 cellspacing=1><tr><td><a href='?a=alliance_detail&view=pilot_losses&m=$pmonth&all_id=$all_id&y=$pyear'>previous</a></td>";
560        $html .= "<td align='right'><a href='?a=alliance_detail&view=pilot_losses&all_id=$all_id&m=$nmonth&y=$nyear'>next</a></p></td></tr></table>";
561       
562        $html .= "</td><td valign=top width=400>";
563        $html .= "<div class=block-header>All time</div>";
564
565        $list = new TopLossesList();
566        $list->addVictimAlliance($alliance);
567        $list->setPodsNoobShips(false);
568        $table = new TopPilotTable($list, "Losses");
569        $html .= $table->generate();
570
571        $html .= "</td></tr></table>";
572
573        break;
574    case "ships_weapons":
575        $html .= "<div class=block-header2>Ships & weapons used</div>";
576
577        $html .= "<table class=kb-subtable><tr><td valign=top width=400>";
578        $shiplist = new TopShipList();
579        $shiplist->addInvolvedAlliance($alliance);
580        $shiplisttable = new TopShipListTable($shiplist);
581        $html .= $shiplisttable->generate();
582        $html .= "</td><td valign=top align=right width=400>";
583
584        $weaponlist = new TopWeaponList();
585        $weaponlist->addInvolvedAlliance($alliance);
586        $weaponlisttable = new TopWeaponListTable($weaponlist);
587        $html .= $weaponlisttable->generate();
588        $html .= "</td></tr></table>";
589
590        break;
591    case 'violent_systems':
592        $html .= "<div class=block-header2>Most violent systems</div>";
593        $html .= "<table width=\"99%\"><tr><td align=center valign=top>";
594
595        $html .= "<div class=block-header>This month</div>";
596        $html .= "<table class=kb-table>";
597        $html .= "<tr class=kb-table-header><td>#</td><td width=180>System</td><td width=40 align=center >Kills</td></tr>";
598
599        $sql = "select sys.sys_name, sys.sys_sec, sys.sys_id, count(distinct kll.kll_id) as kills
600                    from kb3_systems sys, kb3_kills kll, kb3_inv_detail inv
601                    where kll.kll_system_id = sys.sys_id
602                    and inv.ind_kll_id = kll.kll_id";
603
604        if ($crp_id)
605            $sql .= " and inv.ind_crp_id in (".$crp_id.")";
606        if ($all_id)
607            $sql .= " and inv.ind_all_id = ".$all_id;
608
609        $sql .= "   and date_format( kll.kll_timestamp, \"%c\" ) = ".kbdate("m")."
610                    and date_format( kll.kll_timestamp, \"%Y\" ) = ".kbdate("Y")."
611                    group by sys.sys_name
612                    order by kills desc
613                    limit 25";
614
615        $qry = new DBQuery();
616        $qry->execute($sql);
617        $odd = false;
618        $counter = 1;
619        while ($row = $qry->getRow())
620        {
621            if (!$odd)
622            {
623                $odd = true;
624                $rowclass = 'kb-table-row-odd';
625            }
626            else
627            {
628                $odd = false;
629                $rowclass = 'kb-table-row-even';
630            }
631
632            $html .= "<tr class=".$rowclass."><td><b>".$counter.".</b></td><td class=kb-table-cell width=180><b><a href=\"?a=system_detail&amp;sys_id=".$row['sys_id']."\">".$row['sys_name']."</a></b> (".roundsec($row['sys_sec']).")</td><td align=center>".$row['kills']."</td></tr>";
633            $counter++;
634        }
635
636        $html .= "</table>";
637
638        $html .= "</td><td align=center valign=top>";
639        $html .= "<div class=block-header>All-Time</div>";
640        $html .= "<table class=kb-table>";
641        $html .= "<tr class=kb-table-header><td>#</td><td width=180>System</td><td width=40 align=center>Kills</td></tr>";
642
643        $sql = "select sys.sys_name, sys.sys_id, sys.sys_sec, count(distinct kll.kll_id) as kills
644                    from kb3_systems sys, kb3_kills kll, kb3_inv_detail inv
645                    where kll.kll_system_id = sys.sys_id
646                    and inv.ind_kll_id = kll.kll_id";
647
648        if ($crp_id)
649            $sql .= " and inv.ind_crp_id in (".$crp_id.")";
650        if ($all_id)
651            $sql .= " and inv.ind_all_id = ".$all_id;
652
653        $sql .= " group by sys.sys_name
654                    order by kills desc
655                    limit 25";
656
657        $qry = new DBQuery();
658        $qry->execute($sql);
659        $odd = false;
660        $counter = 1;
661        while ($row = $qry->getRow())
662        {
663            if (!$odd)
664            {
665                $odd = true;
666                $rowclass = 'kb-table-row-odd';
667            }
668            else
669            {
670                $odd = false;
671                $rowclass = 'kb-table-row-even';
672            }
673
674            $html .= "<tr class=".$rowclass."><td><b>".$counter.".</b></td><td class=kb-table-cell><b><a href=\"?a=system_detail&amp;sys_id=".$row['sys_id']."\">".$row['sys_name']."</a></b> (".roundsec($row['sys_sec']).")</td><td align=center>".$row['kills']."</td></tr>";
675            $counter++;
676        }
677        $html .= "</table>";
678        $html .= "</td></tr></table>";
679    break;
680}
681
682$html .= "<hr><b>Extended Alliance Detail by " . FindThunk() . ".<b/></br>";
683
684$menubox = new Box("Menu");
685$menubox->setIcon("menu-item.gif");
686$menubox->addOption("caption","Kills & losses");
687$menubox->addOption("link","Recent activity", "?a=alliance_detail&all_id=" . $alliance->getID());
688$menubox->addOption("link","Kills", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=kills");
689$menubox->addOption("link","Losses", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=losses");
690$menubox->addOption("caption","Corp statistics");
691$menubox->addOption("link","Top killers", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=corp_kills");
692$menubox->addOption("link","Top losers", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=corp_losses");
693$menubox->addOption("link","Destroyed ships", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=corp_kills_class");
694$menubox->addOption("link","Lost ships", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=corp_losses_class");
695$menubox->addOption("caption","Pilot statistics");
696$menubox->addOption("link","Top killers", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=pilot_kills");
697if (config::get('kill_points'))
698{
699    $menubox->addOption('link', "Top scorers", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=pilot_scores");
700}
701$menubox->addOption("link","Top losers", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=pilot_losses");
702$menubox->addOption("link","Destroyed ships", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=kills_class");
703$menubox->addOption("link","Lost ships", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=losses_class");
704$menubox->addOption("caption","Global statistics");
705$menubox->addOption("link","Ships & weapons", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=ships_weapons");
706$menubox->addOption("link","Most violent systems", "?a=alliance_detail&all_id=" . $alliance->getID() . "&view=violent_systems");
707$page->addContext($menubox->generate());
708
709$page->setContent($html);
710$page->generate();
711?>
Note: See TracBrowser for help on using the browser.