root/dev/mods/known_members/corp_detail.php @ 325

Revision 325, 19.6 KB (checked in by ralle030583, 14 years ago)

-Ticket 81 : german translation
-fixes in forum mod files
-fixes in known member mod files

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.box.php");
8require_once("common/includes/class.toplist.php");
9require_once("common/includes/class.pilot.php");
10
11if (!$crp_id = intval($_GET['crp_id']))
12{
13    if (CORP_ID)
14    {
15        $crp_id = CORP_ID;
16    }
17    else
18    {
19        echo 'no valid corp id specified<br/>';
20        return;
21    }
22}
23$all_id = $_GET['all_id'];
24$corp = new Corporation($crp_id);
25$alliance = $corp->getAlliance();
26
27$kill_summary = new KillSummaryTable();
28$kill_summary->addInvolvedCorp($corp);
29$kill_summary->setBreak(config::get('summarytable_rowcount'));
30$summary_html = $kill_summary->generate();
31
32$page = new Page('Corporation details - '.$corp->getName());
33$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>";
34
35if (file_exists("img/corps/".$corp->getID().".jpg") || file_exists("img/corps/".$corp->getUnique().".jpg"))
36{
37    $html .= "<img src=\"".$corp->getPortraitURL(128)."\" border=\"0\"></td>";
38}
39else
40{
41    $html .= "<img src=\"".IMG_URL."/campaign-big.gif\" border=\"0\"></td>";
42}
43
44$html .= "<td class=kb-table-cell width=180><b>Alliance:</b></td><td class=kb-table-cell>";
45if ($alliance->getName() == "Unknown" || $alliance->getName() == "None")
46{
47    $html .= "<b>".$alliance->getName()."</b>";
48}
49else
50{
51    $html .= "<a href=\"?a=alliance_detail&all_id=".$alliance->getID()."\">".$alliance->getName()."</a>";
52}
53$html .= "</td></tr>";
54$html .= "<tr class=kb-table-row-even><td class=kb-table-cell><b>Kills:</b></td><td class=kl-kill>".$kill_summary->getTotalKills()."</td></tr>";
55$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>";
56$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()/1000000, 2)."M</td></tr>";
57$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()/1000000, 2)."M</td></tr>";
58if ($kill_summary->getTotalKillISK())
59{
60    $efficiency = round($kill_summary->getTotalKillISK() / ($kill_summary->getTotalKillISK() + $kill_summary->getTotalLossISK()) * 100, 2);
61}
62else
63{
64    $efficiency = 0;
65}
66
67$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>";
68$html .= "</table>";
69$html .= "<br/>";
70
71if ($_GET['view'] == "" || $_GET['view'] == "kills" || $_GET['view'] == "losses")
72{
73    $html .= $summary_html;
74}
75
76switch ($_GET['view'])
77{
78    case "":
79        $html .= "<div class=kb-kills-header>10 Most recent kills</div>";
80
81        $list = new KillList();
82        $list->setOrdered(true);
83        $list->setLimit(10);
84        $list->setPodsNoobships(true);
85        $list->addInvolvedCorp($corp);
86        if ($_GET['scl_id'])
87            $list->addVictimShipClass(new ShipClass($_GET['scl_id']));
88
89        $ktab = new KillListTable($list);
90        $ktab->setLimit(10);
91        $ktab->setDayBreak(false);
92        $html .= $ktab->generate();
93
94        $html .= "<div class=kb-losses-header>10 Most recent losses</div>";
95
96        $list = new KillList();
97        $list->setOrdered(true);
98        $list->setLimit(10);
99        $list->setPodsNoobships(true);
100        $list->addVictimCorp($corp);
101        if ($_GET['scl_id'])
102            $list->addVictimShipClass(new ShipClass($_GET['scl_id']));
103
104        $ltab = new KillListTable($list);
105        $ltab->setLimit(10);
106        $ltab->setDayBreak(false);
107        $html .= $ltab->generate();
108
109        break;
110    case "kills":
111        $html .= "<div class=kb-kills-header>All kills</div>";
112
113        $list = new KillList();
114        $list->setOrdered(true);
115        $list->addInvolvedCorp($corp);
116        if ($_GET['scl_id'])
117            $list->addVictimShipClass(new ShipClass($_GET['scl_id']));
118        $pagesplitter = new PageSplitter($list->getCount(), 30);
119        $list->setPageSplitter($pagesplitter);
120        $table = new KillListTable($list);
121        $table->setDayBreak(false);
122        $html .= $table->generate();
123        $html .= $pagesplitter->generate();
124
125        break;
126    case "losses":
127        $html .= "<div class=kb-losses-header>All losses</div>";
128
129        $list = new KillList();
130        $list->setOrdered(true);
131        $list->setPodsNoobships(true);
132        $list->addVictimCorp($corp);
133        if ($_GET['scl_id'])
134            $list->addVictimShipClass(new ShipClass($_GET['scl_id']));
135        $pagesplitter = new PageSplitter($list->getCount(), 30);
136        $list->setPageSplitter($pagesplitter);
137
138        $table = new KillListTable($list);
139        $table->setDayBreak(false);
140        $html .= $table->generate();
141        $html .= $pagesplitter->generate();
142
143        break;
144    case "pilot_kills":
145        $html .= "<div class=block-header2>Top killers</div>";
146
147        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
148        $html .= "<div class=block-header>This month</div>";
149
150        $list = new TopKillsList();
151        $list->addInvolvedCorp($corp);
152        $list->setPodsNoobShips(false);
153        $list->setMonth(kbdate("m"));
154        $list->setYear(kbdate("Y"));
155        $table = new TopPilotTable($list, "Kills");
156        $html .= $table->generate();
157
158        $html .= "</td><td valign=top width=400>";
159        $html .= "<div class=block-header>All time</div>";
160
161        $list = new TopKillsList();
162        $list->addInvolvedCorp($corp);
163        $list->setPodsNoobShips(false);
164        $table = new TopPilotTable($list, "Kills");
165        $html .= $table->generate();
166
167        $html .= "</td></tr></table>";
168
169        break;
170    case "pilot_scores":
171        $html .= "<div class=block-header2>Top scorers</div>";
172
173        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
174        $html .= "<div class=block-header>This month</div>";
175
176        $list = new TopScoreList();
177        $list->addInvolvedCorp($corp);
178        $list->setPodsNoobShips(true);
179        $list->setMonth(kbdate("m"));
180        $list->setYear(kbdate("Y"));
181        $table = new TopPilotTable($list, "Points");
182        $html .= $table->generate();
183
184        $html .= "</td><td valign=top width=400>";
185        $html .= "<div class=block-header>All time</div>";
186
187        $list = new TopScoreList();
188        $list->addInvolvedCorp($corp);
189        $list->setPodsNoobShips(true);
190        $table = new TopPilotTable($list, "Points");
191        $html .= $table->generate();
192
193        $html .= "</td></tr></table>";
194
195        break;
196    case "pilot_solo":
197        $html .= "<div class=block-header2>Top solokillers</div>";
198
199        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
200        $html .= "<div class=block-header>This month</div>";
201
202        $list = new TopSoloKillerList();
203        $list->addInvolvedCorp($corp);
204        $list->setPodsNoobShips(false);
205        $list->setMonth(kbdate("m"));
206        $list->setYear(kbdate("Y"));
207        $table = new TopPilotTable($list, "Solokills");
208        $html .= $table->generate();
209
210        $html .= "</td><td valign=top width=400>";
211        $html .= "<div class=block-header>All time</div>";
212
213        $list = new TopSoloKillerList();
214        $list->addInvolvedCorp($corp);
215        $list->setPodsNoobShips(false);
216        $table = new TopPilotTable($list, "Solokills");
217        $html .= $table->generate();
218
219        $html .= "</td></tr></table>";
220
221        break;
222
223    case "pilot_damage":
224        $html .= "<div class=block-header2>Top damagedealers</div>";
225
226        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
227        $html .= "<div class=block-header>This month</div>";
228
229        $list = new TopDamageDealerList();
230        $list->addInvolvedCorp($corp);
231        $list->setPodsNoobShips(false);
232        $list->setMonth(kbdate("m"));
233        $list->setYear(kbdate("Y"));
234        $table = new TopPilotTable($list, "Kills");
235        $html .= $table->generate();
236
237        $html .= "</td><td valign=top width=400>";
238        $html .= "<div class=block-header>All time</div>";
239
240        $list = new TopDamageDealerList();
241        $list->addInvolvedCorp($corp);
242        $list->setPodsNoobShips(false);
243        $table = new TopPilotTable($list, "Kills");
244        $html .= $table->generate();
245
246        $html .= "</td></tr></table>";
247
248        break;
249
250    case "pilot_griefer":
251        $html .= "<div class=block-header2>Top griefers</div>";
252
253        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
254        $html .= "<div class=block-header>This month</div>";
255
256        $list = new TopGrieferList();
257        $list->addInvolvedCorp($corp);
258        $list->setMonth(kbdate("m"));
259        $list->setYear(kbdate("Y"));
260        $table = new TopPilotTable($list, "Kills");
261        $html .= $table->generate();
262
263        $html .= "</td><td valign=top width=400>";
264        $html .= "<div class=block-header>All time</div>";
265
266        $list = new TopGrieferList();
267        $list->addInvolvedCorp($corp);
268        $table = new TopPilotTable($list, "Kills");
269        $html .= $table->generate();
270
271        $html .= "</td></tr></table>";
272
273        break;
274
275    case "pilot_losses":
276        $html .= "<div class=block-header2>Top losers</div>";
277
278        $html .= "<table class=kb-subtable><tr><td valign=top width=440>";
279        $html .= "<div class=block-header>This month</div>";
280
281        $list = new TopLossesList();
282        $list->addVictimCorp($corp);
283        $list->setPodsNoobShips(false);
284        $list->setMonth(kbdate("m"));
285        $list->setYear(kbdate("Y"));
286        $table = new TopPilotTable($list, "Losses");
287        $html .= $table->generate();
288
289        $html .= "</td><td valign=top width=400>";
290        $html .= "<div class=block-header>All time</div>";
291
292        $list = new TopLossesList();
293        $list->addVictimCorp($corp);
294        $list->setPodsNoobShips(false);
295        $table = new TopPilotTable($list, "Losses");
296        $html .= $table->generate();
297
298        $html .= "</td></tr></table>";
299
300        break;
301    case "ships_weapons":
302        $html .= "<div class=block-header2>Ships & weapons used</div>";
303
304        $html .= "<table class=kb-subtable><tr><td valign=top width=400>";
305        $shiplist = new TopShipList();
306        $shiplist->addInvolvedCorp($corp);
307        $shiplisttable = new TopShipListTable($shiplist);
308        $html .= $shiplisttable->generate();
309        $html .= "</td><td valign=top align=right width=400>";
310
311        $weaponlist = new TopWeaponList();
312        $weaponlist->addInvolvedCorp($corp);
313        $weaponlisttable = new TopWeaponListTable($weaponlist);
314        $html .= $weaponlisttable->generate();
315        $html .= "</td></tr></table>";
316
317        break;
318    case 'violent_systems':
319        $html .= "<div class=block-header2>Most violent systems</div>";
320        $html .= "<table width=\"99%\"><tr><td align=center valign=top>";
321
322        $html .= "<div class=block-header>This month</div>";
323        $html .= "<table class=kb-table>";
324        $html .= "<tr class=kb-table-header><td>#</td><td width=180>System</td><td width=40 align=center >Kills</td></tr>";
325
326        $sql = "select sys.sys_name, sys.sys_sec, sys.sys_id, count(distinct kll.kll_id) as kills
327                    from kb3_systems sys, kb3_kills kll, kb3_inv_detail inv
328                    where kll.kll_system_id = sys.sys_id
329                    and inv.ind_kll_id = kll.kll_id";
330
331        if ($crp_id)
332            $sql .= " and inv.ind_crp_id in (".$crp_id.")";
333        if ($all_id)
334            $sql .= " and inv.ind_all_id = ".$all_id;
335
336        $sql .= "   and date_format( kll.kll_timestamp, \"%c\" ) = ".kbdate("m")."
337                    and date_format( kll.kll_timestamp, \"%Y\" ) = ".kbdate("Y")."
338                    group by sys.sys_name
339                    order by kills desc
340                    limit 25";
341
342        $qry = new DBQuery();
343        $qry->execute($sql);
344        $odd = false;
345        $counter = 1;
346        while ($row = $qry->getRow())
347        {
348            if (!$odd)
349            {
350                $odd = true;
351                $rowclass = 'kb-table-row-odd';
352            }
353            else
354            {
355                $odd = false;
356                $rowclass = 'kb-table-row-even';
357            }
358
359            $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>";
360            $counter++;
361        }
362
363        $html .= "</table>";
364
365        $html .= "</td><td align=center valign=top>";
366        $html .= "<div class=block-header>All-Time</div>";
367        $html .= "<table class=kb-table>";
368        $html .= "<tr class=kb-table-header><td>#</td><td width=180>System</td><td width=40 align=center>Kills</td></tr>";
369
370        $sql = "select sys.sys_name, sys.sys_id, sys.sys_sec, count(distinct kll.kll_id) as kills
371                    from kb3_systems sys, kb3_kills kll, kb3_inv_detail inv
372                    where kll.kll_system_id = sys.sys_id
373                    and inv.ind_kll_id = kll.kll_id";
374
375        if ($crp_id)
376            $sql .= " and inv.ind_crp_id in (".$crp_id.")";
377        if ($all_id)
378            $sql .= " and inv.ind_all_id = ".$all_id;
379
380        $sql .= " group by sys.sys_name
381                    order by kills desc
382                    limit 25";
383
384        $qry = new DBQuery();
385        $qry->execute($sql);
386        $odd = false;
387        $counter = 1;
388        while ($row = $qry->getRow())
389        {
390            if (!$odd)
391            {
392                $odd = true;
393                $rowclass = 'kb-table-row-odd';
394            }
395            else
396            {
397                $odd = false;
398                $rowclass = 'kb-table-row-even';
399            }
400
401            $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>";
402            $counter++;
403        }
404        $html .= "</table>";
405        $html .= "</td></tr></table>";
406            break;
407               
408   case "known_members":
409                if(config::get('known_members_own'))
410                        {
411                                $alliance->getID();
412                                if (ALLIANCE_ID && $alliance->getID() == ALLIANCE_ID)
413                                {
414                                        $can_view = 1;
415                                }
416                                elseif (CORP_ID && $corp->getID() == CORP_ID)
417                                {
418                                        $can_view = 1;
419                                }
420
421                        }
422                       
423                       
424                       
425                if($can_view == 1)
426                {
427                $html .= "Cannot View this corps Member List";
428                }
429                else
430                {       
431                        $query = "SELECT * FROM `kb3_pilots`  WHERE plt_crp_id =".intval($_GET['crp_id'])." ORDER BY `plt_name` ASC";
432                        $qry = new DBQuery();
433                        $qry->execute($query);
434                        $cnt = $qry->recordCount();
435                        $clmn = config::get('known_members_clmn');
436                       
437                $html .= "<div class=block-header2>Known Pilots (".$cnt.")</div>";
438                $html .= "<table class=kb-table align=center>";
439                $html .= '<tr class=kb-table-header>';
440                if (strpos($clmn,"img"))
441                {
442                $html .= '<td class=kb-table-header align="center"></td>';
443                }
444                $html .= '<td class=kb-table-header align="center">Pilot</td>';
445                if (strpos($clmn,"kll_pnts"))
446                {
447                $html .= '<td class=kb-table-header align="center">Kill Points</td>';
448                }
449                if (strpos($clmn,"dmg_dn"))
450                {               
451                $html .= '<td class=kb-table-header align="center">Dmg Done (isk)</td>';
452                }
453                if (strpos($clmn,"dmg_rcd"))
454                {
455                $html .= '<td class=kb-table-header align="center">Dmg Recived (isk)</td>';
456                }
457                if (strpos($clmn,"eff"))
458                {
459                $html .= '<td class=kb-table-header align="center">Efficiency</td>';
460                }
461                if ($page->isAdmin())
462                {
463                $html .= '<td class=kb-table-header align="center">Admin - Move</td>';
464                }
465                $html .= '</tr>';
466                        while ($data = $qry->getRow())
467                        {
468                                $pilot = new Pilot( $data['plt_id'] );
469                                $plist = new KillList();
470                                $plist->addInvolvedPilot($pilot);
471                                $plist->getAllKills();
472                                $points = $plist->getPoints();
473                               
474                                $pllist = new KillList();
475                                $pllist->addVictimPilot($pilot);
476                                $pllist->getAllKills();
477                               
478                                $plistisk = $plist->getISK();
479                                $pllistisk = $pllist->getISK();
480                                if ($plistisk == 0) { $plistisk = 1; } //Remove divide by 0
481                                if ($pllistisk == 0) { $pllistisk = 1; } //Remove divide by 0
482                                $efficiency = round($plistisk / ($plistisk + $pllistisk) * 100, 2); 
483                               
484                                        if (!$odd)
485                                        {
486                                                $odd = true;
487                                                $class = 'kb-table-row-odd';
488                                        }
489                                        else
490                                        {                                                                       
491                                                $odd = false;
492                                                $class = 'kb-table-row-even';
493                                        }
494
495                                        $html .= "<tr class=".$class." style=\"height: 32px;\">"; 
496                                        if (strpos($clmn,"img"))
497                                        {                                       
498                                        $html .= '<td width="64" align="center"><img src='.$pilot->getPortraitURL( 32 ).'></td>';
499                                        }
500                                        $html .= '<td align="center"><a href=?a=pilot_detail&plt_id='.$pilot->getID().'>'.$pilot->getName().'</a></td>'; 
501                                        if (strpos($clmn,"kll_pnts"))
502                                        {
503                                        $html .= '<td align="center">'.$points.'</td>';
504                                        }
505                                        if (strpos($clmn,"dmg_dn"))
506                                        {
507                                        $html .= '<td align="center">'.(round($plist->getISK(),2)/1000000).'M</td>';
508                                        }
509                                        if (strpos($clmn,"dmg_rcd"))
510                                        {                                       
511                                        $html .= '<td align="center">'.(round($pllist->getISK(),2)/1000000).'M</td>';
512                                        }
513                                        if (strpos($clmn,"eff"))
514                                        {
515                                        $html .= '<td align="center">'.$efficiency.'%</td>';
516                                        }
517                                        if ($page->isAdmin())
518                                        {
519                                        $html .= "<td align=center><a href=\"javascript:openWindow('?a=admin_move_pilot&plt_id=".$data['plt_id']."', null, 500, 500, '' )\">Move</a></td>";
520                                        }
521                                        $html .= '</tr>';
522                        }
523
524                $html .='</table>';
525                }
526        break;
527}
528
529$menubox = new box("Menu");
530$menubox->setIcon("menu-item.gif");
531$menubox->addOption("caption","Kills & losses");
532$menubox->addOption("link","Recent activity", "?a=corp_detail&crp_id=" . $corp->getID());
533$menubox->addOption("link","Kills", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=kills");
534$menubox->addOption("link","Losses", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=losses");
535$menubox->addOption("caption","Pilot statistics");
536$menubox->addOption("link","Top killers", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=pilot_kills");
537
538if (config::get('kill_points'))
539    $menubox->addOption("link","Top scorers", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=pilot_scores");
540$menubox->addOption("link","Top solokillers", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=pilot_solo");
541$menubox->addOption("link","Top damagedealers", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=pilot_damage");
542$menubox->addOption("link","Top griefers", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=pilot_griefer");
543$menubox->addOption("link","Top losers", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=pilot_losses");
544$menubox->addOption("caption","Global statistics");
545$menubox->addOption("link","Ships & weapons", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=ships_weapons");
546$menubox->addOption("link","Most violent systems", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=violent_systems");
547$menubox->addOption("link","Known Members", "?a=corp_detail&crp_id=" . $corp->getID() . "&view=known_members");
548$page->addContext($menubox->generate());
549$page->setContent($html);
550$page->generate();
551?>
Note: See TracBrowser for help on using the browser.