root/dev/mods/api_alliance/alliance_detail.php

Revision 465, 28.7 KB (checked in by kovell, 10 years ago)

Refactoring mod input to match core

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