root/dev/common/kill_detail.php @ 39

Revision 39, 9.2 KB (checked in by exi, 14 years ago)

created cache/data for several purposes
small changes to comments and kill details to filter for valid killids
added signature generator alpha-version

Line 
1<?php
2require_once("class.kill.php");
3require_once("class.page.php");
4require_once("class.pilot.php");
5require_once("class.corp.php");
6require_once("class.box.php");
7require_once("class.alliance.php");
8require_once("globals.php");
9
10$page = new Page("Kill details");
11
12if (!$kll_id = intval($_GET['kll_id']))
13{
14    $html = "No kill id spezified.";
15    $page->setContent($html);
16    $page->generate($html);
17    exit;
18}
19$kill = new Kill($kll_id);
20if (!$kill->exists())
21{
22    $html = "That kill doesn't exist.";
23    $page->setContent($html);
24    $page->generate($html);
25    exit;
26}
27
28$html .= "<table cellpadding=0 cellspacing=1 border=0><tr><td width=360 align=left valign=top>";
29
30// victim
31$html .= "<table class=kb-table width=360 cellpadding=0 cellspacing=1 border=0>";
32$html .= "<tr class=kb-table-row-odd><td rowspan=3 width=\"64\"><img src=\"" . $kill->getVictimPortrait(64) . "\" border=\"0\"></td>";
33$html .= "<td class=kb-table-cell width=64><b>Victim:</b></td><td class=kb-table-cell><a href=\"?a=pilot_detail&plt_id=" . $kill->getVictimID() . "\">" . $kill->getVictimName() . "</a></td>";
34$html .= "</tr>";
35$html .= "<tr class=kb-table-row-odd>";
36$html .= "<td class=kb-table-cell width=64><b>Corp:</b></td><td class=kb-table-cell><a href=\"?a=corp_detail&crp_id=" . $kill->getVictimCorpID() . "\">" . $kill->getVictimCorpName() . "</a></td>";
37$html .= "</tr>";
38$html .= "<tr class=kb-table-row-odd>";
39$html .= "<td class=kb-table-cell width=64><b>Alliance:</b></td><td class=kb-table-cell><b>" . $kill->getVictimAllianceName() . "</b></td>";
40$html .= "</tr>";
41$html .= "</table>";
42
43// involved
44$html .= "<div class=block-header>Involved parties</div>";
45$html .= "<table class=kb-table width=360 border=0 cellspacing=\"1\">";
46$odd = true;
47foreach ($kill->involvedparties_ as $inv)
48{
49    $pilot = new Pilot($inv->getPilotID());
50    $corp = new Corporation($inv->getCorpID());
51    $alliance = new Alliance($inv->getAllianceID());
52    $ship = $inv->getShip();
53    $weapon = $inv->getWeapon();
54
55    if ($odd)
56    {
57        $odd = false;
58        $rowclass = "kb-table-row-even";
59    }
60    else
61    {
62        $odd = true;
63        $rowclass = "kb-table-row-odd";
64    }
65
66    if ($pilot->getID() == $kill->getFBPilotID())
67    {
68        $imgclass = "class=finalblow ";
69    }
70    else
71    {
72        $imgclass = "";
73    }
74
75    $html .= "<tr class=kb-table-row-even>";
76    if ($corp->isNPCCorp())
77    {
78        $html .= "<td rowspan=4 width=\"64\"><img " . $imgclass . "src=\"" . $corp->getPortraitURL(64) . "\" border=\"0\"></td>";
79    }
80    else
81    {
82        $html .= "<td rowspan=4 width=\"64\"><img " . $imgclass . "src=\"" . $pilot->getPortraitURL(64) . "\" border=\"0\"></td>";
83    }
84    $html .= "<td rowspan=4 width=\"64\"><img " . $imgclass . "src=\"" . $ship->getImage(64) . "\" border=\"0\"></td>";
85    $html .= "<td class=kb-table-cell style=\"padding-top: 1px; padding-bottom: 1px;\"><a href=\"?a=pilot_detail&plt_id=" . $pilot->getID() . "\">" . $pilot->getName() . "</a></td>";
86    $html .= "</tr>";
87
88    $html .= "<tr class=kb-table-row-odd><td class=kb-table-cell style=\"padding-top: 1px; padding-bottom: 1px;\"><a href=\"?a=corp_detail&crp_id=" . $corp->getID() . "\">" . $corp->getName() . "</a></td></tr>";
89    $html .= "<tr class=kb-table-row-even><td class=kb-table-cell style=\"padding-top: 1px; padding-bottom: 1px;\"><b>" . $ship->getName() . "</b></td></tr>";
90
91    if ($weapon->getName() != "Unknown" && $weapon->getName() != $ship->getName())
92        $html .= "<tr class=kb-table-row-odd><td class=kb-table-cell style=\"padding-top: 1px; padding-bottom: 1px;\">" . $weapon->getName() . "</td></tr>";
93    else
94        $html .= "<tr class=kb-table-row-odd><td class=kb-table-cell style=\"padding-top: 1px; padding-bottom: 1px;\">Unknown</td></tr>";
95}
96$html .= "</table>";
97
98if ($config->getConfig('comments'))
99{
100    include('comments.php');
101}
102
103$html .= "</td><td width=50>&nbsp;</td>";
104// ship, ship details
105$html .= "<td align=left valign=top width=360>";
106
107$html .= "<table class=kb-table width=360 cellspacing=\"1\">";
108$ship = $kill->getVictimShip();
109$shipclass = $ship->getClass();
110$html .= "<tr class=kb-table-row-odd><td width=\"64\" rowspan=3><img src=\"" . $ship->getImage(64) . "\"></td>";
111$html .= "<td class=kb-table-cell><b>Ship:</b></td><td class=kb-table-cell><b>" . $ship->getName() . "</b> (" . $shipclass->getName() . ")</td>";
112$html .= "</tr>";
113// $html .= "<tr class=kb-table-row-odd><td><b>Location:</b></td><td><b>".$sys_name."</b> (".$sys_sec.")</td>";
114$system = $kill->getSystem();
115$html .= "<tr class=kb-table-row-odd><td class=kb-table-cell><b>Location:</b></td><td class=kb-table-cell><b><a href=\"javascript:openWindow( '?a=system_detail&sys_id=" . $system->getID() . "', '', 620, 260, '' );\">" . $system->getName() . "</a></b> (" . $system->getSecurity(true) . ")</td>";
116
117$html .= "</tr>";
118$html .= "<tr class=kb-table-row-odd><td class=kb-table-cell><b>Date:</b></td><td class=kb-table-cell>" . $kill->getTimeStamp() . "</td>";
119$html .= "</tr>";
120$html .= "</table>";
121
122// ship fitting
123if (count($kill->destroyeditems_) > 0)
124{
125    $html .= "<div class=block-header>Ship details</div>";
126    $html .= "<table class=kb-table width=360 border=\"0\" cellspacing=\"1\">";
127    $imgid = 0;
128    foreach($kill->destroyeditems_ as $destroyed)
129    {
130        $item = $destroyed->getItem();
131        switch ($destroyed->getLocationID())
132        {
133            case 4:
134                $location = "Cargo";
135                break;
136            case 6: // drone
137                $location = "Drone Bay";
138                break;
139            default:
140                switch ($item->getSlot())
141                {
142                    case 1: // high
143                        $location = "Fitted - High slot";
144                        break;
145                    case 2: // high
146                        $location = "Fitted - Medium slot";
147                        break;
148                    case 3: // high
149                        $location = "Fitted - Low slot";
150                        break;
151                    case 6: // drone
152                        $location = "Drone Bay";
153                        break;
154                }
155                break;
156        }
157
158        if ($location != $lastlocation)
159        {
160            $lastlocation = $location;
161            $html .= "<tr class=kb-table-row-odd>";
162            $html .= "<td width=\"32\"><img src=\"" . IMG_URL . "/" . strtolower(str_replace(' ', '_', $location)) . ".jpg\" alt=\"" . $location . "\" border=\"0\"></a></td>";
163            $html .= "<td class=kb-table-cell colspan=2><b>" . $location . "</b></td>";
164            $html .= "</tr>";
165        }
166        // item detail
167        // $html .= "<tr class=kb-table-row-even onclick=\"openWindow( '?a=item_detail&itm_id=".$row['itm_id']."', null, 225, 250, '' );\" onmouseover=\"document.getElementById('item_img".$imgid."').className='icon-hover'; this.style.cursor='pointer';\" onmouseout=\"document.getElementById('item_img".$imgid."').className='icon';\">";
168        $html .= "<tr class=kb-table-row-even>";
169        // $html .= "<td width=\"32\"><img id=item_img".$imgid." class=icon src=\"".IMG_URL."/items/32_32/".$row['itm_icon'].".png\"></td>";
170        // $html .= "<td class=icon width=\"32\" height=\"32\"></td>";
171        // $html .= "<td class=item-icon width=\"30\" height=\"34\" background=\"".$destroyed->getItem()->getIcon( 32 )."\" valign=top>";
172        // if ( substr( $destroyed->getItem()->getName(), strlen( $destroyed->getItem()->getName() ) - 2, 2 ) == "II" )
173        // $html .= "<img src=\"".IMG_URL."/items/32_32/t2.gif\" border=\"0\">";
174        // else
175        // $html .= "<img src=\"".IMG_URL."/items/32_32/blank.gif\" border=\"0\">";
176        // $hmtl .= "</td>";
177        $html .= $item->getIcon(32);
178
179        $html .= "<td class=kb-table-cell>" . $item->getName() . "</td>";
180        $html .= "<td width=\"30\" align=\"center\">" . $destroyed->getQuantity() . "</td>";
181        $html .= "</tr>";
182        $imgid++;
183    }
184    $html .= "</table>";
185}
186else
187    $html .= "<div class=block-header>No ship details</div>";
188
189$html .= "</td></tr></table>";
190
191$menubox = new MenuBox();
192$menubox->addCaption("View");
193$menubox->addOption("Killmail", "javascript:openWindow( '?a=kill_mail&kll_id=" . $kill->getID() . "', null, 355, 430, '' );");
194if ($kill->relatedKillCount() > 1 || $kill->relatedLossCount() > 1)
195{
196    $menubox->addOption("Related kills (" . $kill->relatedKillCount() . "/" . $kill->relatedLossCount() . ")", "?a=kill_related&kll_id=" . $kill->getID());
197}
198if ($page->isAdmin())
199{
200    $menubox->addCaption("Admin");
201    $menubox->addOption("Delete", "javascript:openWindow('?a=kill_delete&kll_id=".$kill->getID()."', null, 420, 300, '' );");
202}
203$page->addContext($menubox->generate());
204
205if ($config->getKillPoints())
206{
207    $scorebox = new Box("Points awarded");
208    $scorebox->setHeight(64);
209    $scorebox->setContent("<div class=kill-points>" . $kill->getKillPoints() . "</div>");
210    $page->addContext($scorebox->generate());
211}
212
213$mapbox = new Box("Map");
214$maphtml = "<img src=\"?a=mapview&sys_id=" . $system->getID() . "&mode=map&size=145\" border=0><br>";
215$maphtml .= "<img src=\"?a=mapview&sys_id=" . $system->getID() . "&mode=region&size=145\" border=0><br>";
216$maphtml .= "<img src=\"?a=mapview&sys_id=" . $system->getID() . "&mode=cons&size=145\" border=0>";
217$mapbox->setContent($maphtml);
218$page->addContext($mapbox->generate());
219
220$page->setContent($html);
221$page->generate();
222?>
Note: See TracBrowser for help on using the browser.