root/dev/mods/apoc_fitting/kill_detail.php @ 419

Revision 419, 29.0 KB (checked in by kovell, 12 years ago)

Fixes: some php4 errors fixed. The great commenting project continues.

Line 
1<?php
2require_once('common/includes/class.kill.php');
3
4$page = new Page('Kill details');
5
6$kll_id = intval($_GET['kll_id']);
7$kll_external_id = intval($_GET['kll_external_id']);
8if (!$kll_id && !$kll_external_id)
9{
10    $html = "No kill id specified.";
11    $page->setContent($html);
12    $page->generate($html);
13    exit;
14}
15
16if($kll_id)
17{
18        $kill = new Kill($kll_id);
19}
20else
21{
22        $kill = new Kill($kll_external_id, true);
23        $kll_id = $kill->getID();
24}
25$kill->setDetailedInvolved();
26
27if (!$kill->exists())
28{
29    $html="That kill doesn't exist.";
30    $page->setContent($html);
31    $page->generate($html);
32    exit;
33}
34
35// If a comment is being posted then we don't exit this block.
36if(isset($_POST['comment']) && config::get('comments'))
37{
38    include('common/comments.php');
39}
40
41require_once('common/includes/class.killsummarytable.php');
42require_once('common/includes/class.pilot.php');
43require_once('common/includes/class.corp.php');
44require_once('common/includes/class.alliance.php');
45
46$page=new Page('Kill details');
47$page->addHeader('<link rel="stylesheet" type="text/css" href="mods/apoc_fitting/style.css">');
48
49// check apoc settings are set up. If not, put defaults in.
50if(!config::get('apocfitting_colour'))
51{
52        config::set('apocfitting_colour', 'apoc');
53        config::set('apocfitting_themedir', 'panel');
54}
55
56$smarty->assign('panel_colour', config::get('apocfitting_colour'));
57$smarty->assign('dropped_colour', config::get('apocfitting_dropped_colour'));
58$smarty->assign('themedir', config::get('apocfitting_themedir'));
59$smarty->assign('showammo', config::get('apocfitting_showammo'));
60$smarty->assign('showiskd', config::get('apocfitting_showiskd'));
61$smarty->assign('showext', config::get('apocfitting_showext'));
62$mapmod = config::get('apocfitting_mapmod');
63$sidemap = config::get('apocfitting_sidemap');
64$showbox = config::get('apocfitting_showbox');
65
66if (config::get('item_values'))
67{
68    $smarty->assign('item_values', 'true');
69
70    if ($page->isAdmin())
71        {
72                $smarty->assign('admin', 'true');
73
74                if (isset($_POST['submit']) && $_POST['submit'] == 'UpdateValue')
75                {
76                        // Send new value for item to the database
77                        $IID=$_POST['IID'];
78                        $Val=$_POST[$IID];
79                        $qry=new DBQuery();
80                        $qry->execute("INSERT INTO kb3_item_price (typeID, price) VALUES ('" . $IID . "', '" . $Val
81                                                          . "') ON DUPLICATE KEY UPDATE price = '" . $Val . "'");
82                        foreach($kill->destroyeditems_ as &$ditem)
83                        {
84                                //php4
85                                $item = $ditem->getItem();
86                                if($item->getID() == $IID) $ditem->value = $Val;
87                        }
88                        foreach($kill->droppeditems_ as &$ditem)
89                        {
90                                //php4
91                                $item = $ditem->getItem();
92                                if($item->getID() == $IID) $ditem->value = $Val;
93                        }
94                        $qry->execute("UPDATE kb3_kills SET kll_isk_loss = ".$kill->calculateISKLoss()." WHERE kll_id = ".$kill->getID());
95                }
96        }
97}
98
99if ($page->isAdmin())
100    {
101    if (isset($_GET['view']) && $_GET['view'] == 'FixSlot')
102        {
103        $smarty->assign('fixSlot', 'true');
104        }
105
106    $smarty->assign('admin', 'true');
107
108    if (isset($_POST['submit']) && $_POST['submit'] == 'UpdateSlot')
109        {
110        $IID  =$_POST['IID'];
111        $KID  =$_POST['KID'];
112        $Val  =$_POST[$IID];
113        $table=$_POST['TYPE'];
114        $old  =$_POST['OLDSLOT'];
115        $qry  =new DBQuery();
116        $qry->execute("UPDATE kb3_items_" . $table . " SET itd_itl_id ='" . $Val . "' WHERE itd_itm_id=" . $IID
117                          . " AND itd_kll_id = " . $KID . " AND itd_itl_id = " . $old);
118        }
119    }
120
121// Begin -- Sapyx 25-08-2008
122
123$qry=new DBQuery();
124
125if (ALLIANCE_ID <> '0')
126    {
127    $qry->execute("SELECT all_name FROM kb3_alliances WHERE all_id = " . ALLIANCE_ID) or die($qry->getErrorMsg());
128
129    $row=$qry->getRow();
130    $smarty->assign('IsAlly', true);
131    $smarty->assign('HomeName', $row['all_name']);
132
133/*
134    $qry->execute("SELECT `kb3_corps`.`crp_name` FROM kb3_corps WHERE (kb3_corps.crp_all_id=" . ALLIANCE_ID . ")")
135        or die($qry->getErrorMsg());
136
137    $rosso=0x70;
138    $verde=0;
139    $blu  =0x70;
140
141    while ($row=$qry->getRow())
142        {
143        $verde+=10;
144        $blu-=10;
145        $rosso-=15;
146        $corps[$row['crp_name']]="RGB($rosso,$verde,$blu)";
147        }
148 */
149    }
150else
151    {
152    $qry->execute("SELECT crp_name FROM kb3_corps WHERE crp_id = " . CORP_ID) or die($qry->getErrorMsg());
153
154    $row=$qry->getRow();
155    $smarty->assign('IsAlly', false);
156    $smarty->assign('HomeName', $row['crp_name']);
157    }
158
159// END --
160
161// victim $smarty->assign('',);
162$smarty->assign('KillId', $kill->getID());
163$smarty->assign('VictimPortrait', $kill->getVictimPortrait(64));
164$smarty->assign('VictimURL', "?a=pilot_detail&amp;plt_id=" . $kill->getVictimID());
165$smarty->assign('VictimName', $kill->getVictimName());
166$smarty->assign('VictimCorpURL', "?a=corp_detail&amp;crp_id=" . $kill->getVictimCorpID());
167$smarty->assign('VictimCorpName', $kill->getVictimCorpName());
168$smarty->assign('VictimAllianceURL', "?a=alliance_detail&amp;all_id=" . $kill->getVictimAllianceID());
169$smarty->assign('VictimAllianceName', $kill->getVictimAllianceName());
170$smarty->assign('VictimDamageTaken', $kill->VictimDamageTaken);
171$smarty->assign('InvolvedPartyCount', $kill->getInvolvedPartyCount()); // Anne Sapyx 07/05/2008
172$smarty->assign('AllyCorps', $corps);
173
174// involved
175$i=1;
176
177$involved=array();
178$ownKill= false;
179
180foreach ($kill->involvedparties_ as $inv)
181{
182    $pilot                     =$inv->getPilot();
183    $corp                      =$inv->getCorp();
184    $alliance                  =$inv->getAlliance();
185    $ship                      =$inv->getShip();
186    $weapon                    =$inv->getWeapon();
187
188    $involved[$i]['shipImage'] =$ship->getImage(64);
189    $involved[$i]['PilotURL']  ="?a=pilot_detail&amp;plt_id=" . $pilot->getID();
190    $involved[$i]['PilotName'] =$pilot->getName();
191    $involved[$i]['CorpURL']   ="?a=corp_detail&amp;crp_id=" . $corp->getID();
192    $involved[$i]['CorpName']  =$corp->getName();
193    $involved[$i]['AlliURL']   ="?a=alliance_detail&amp;all_id=" . $alliance->getID();
194    $involved[$i]['AlliName']  =$alliance->getName();
195    $involved[$i]['ShipName']  =$ship->getName();
196    $involved[$i]['ShipID']    =$ship->externalid_;
197    $involved[$i]['damageDone']=$inv->dmgdone_;
198    $shipclass                 =$ship->getClass();
199
200    $involved[$i]['shipClass'] =$shipclass->getName();
201
202    if ($pilot->getID() == $kill->getFBPilotID())
203        {
204        $involved[$i]['FB']="true";
205        }
206    else
207        {
208        $involved[$i]['FB']="false";
209        }
210
211    if ($corp->isNPCCorp())
212        {
213        $involved[$i]['portrait']=$corp->getPortraitURL(64);
214        }
215    else
216        {
217        $involved[$i]['portrait']=$pilot->getPortraitURL(64);
218        }
219
220    if ($weapon->getName() != "Unknown" && $weapon->getName() != $ship->getName())
221        {
222        $involved[$i]['weaponName']=$weapon->getName();
223        $involved[$i]['weaponID']  =$weapon->row_['itm_externalid'];
224        }
225    else
226        $involved[$i]['weaponName']="Unknown";
227
228    // Sapyx 16/09/2008 -- from Rostik idea
229    // Update by Rostik 19/08/2008 - Add Alliance logo
230    //sapyx 29/10/2008
231    // Sapyx 16/09/2008 -- from Rostik idea
232// Update by Rostik 19/08/2008 - Add Alliance logo
233//sapyx 29/10/2008
234// Rostik 11/03/2009
235
236    $handle=@fopen("mods/apoc_fitting/ItemsList", "r");
237
238    if ($handle)
239        {
240        while (!feof($handle))
241            {
242            $ItemsArray = explode(",", fgets($handle));
243              if (strpos($involved[$i]['weaponName'], trim($ItemsArray[0])) !== FALSE)
244                  {
245                  $involved[$i]['shipImage']="img/ships/64_64/" . trim($ItemsArray[1]) . ".png";
246
247                    if ($corp->isNPCCorp()) {
248                    } else {
249                    if ($involved[$i]['CorpName'] =="None") {
250                              $aliimg                  =ereg_replace(" ", "", $involved[$i]['AlliName']);
251                              $aliimg                  =ereg_replace("\.", "", $aliimg);
252                              $aliimg                  =ereg_replace("-", "", $aliimg);
253
254                    if (file_exists("img/alliances/".$aliimg.".png")) {
255                              $involved[$i]['portrait']="img/alliances/" . $aliimg . ".png";
256                    } else {
257                         $involved[$i]['portrait']="img/alliances/default.png";}
258
259                    if ((($involved[$i]['AlliName'] == "None") || ($involved[$i]['AlliName'] == "Unknown"))) {
260                       $involved[$i]['portrait']="img/alliances/default.png";
261                       }
262
263                    } else {
264                       $involved[$i]['portrait']="img/corps/" . $corp->getID() . ".jpg";
265                           }
266                    }
267                }
268            }
269
270        fclose($handle);
271        }
272
273// END -- Sapyx Rostik & C
274
275    // END -- Sapyx Rostik & C
276
277    // Begin -- Sapyx 25-06-2008
278    $InvAllies[$involved[$i]['AlliName']]["quantity"]+=1;
279    $InvAllies[$involved[$i]['AlliName']]["corps"][$involved[$i]['CorpName']]+=1;
280//HK    $InvShips[$involved[$i]['ShipName'] ." (" .$involved[$i]['shipClass'] .")"] += 1;
281    $InvShips[$involved[$i]['ShipName']] += 1;
282if(ALLIANCE_ID >0 && $alliance->getID()==ALLIANCE_ID) $ownKill=true;
283elseif(CORP_ID >0 && $corp->getID()==CORP_ID) $ownKill=true;
284    // End -- Sapyx 25-06-2008
285
286    ++$i;
287    }
288if($ownKill) $smarty->assign('kill',true);
289else $smarty->assign('kill',false);
290
291$smarty->assign_by_ref('involved', $involved);
292$smarty->assign_by_ref('AlliesCount', count($InvAllies));
293$smarty->assign_by_ref('InvAllies', $InvAllies);
294$smarty->assign_by_ref('InvShips', $InvShips);
295
296if (config::get('comments'))
297{
298    include('common/comments.php');
299    $smarty->assign('comments', $comment);
300}
301
302// ship, ship details
303$ship=$kill->getVictimShip();
304$shipclass=$ship->getClass();
305$system=$kill->getSystem();
306
307$smarty->assign('VictimShip', $kill->getVictimShip());
308$smarty->assign('ShipClass', $ship->getClass());
309$smarty->assign('ShipImage', $ship->getImage(64));
310$smarty->assign('ShipName', $ship->getName());
311$smarty->assign('ShipID', $ship->externalid_);
312$smarty->assign('ClassName', $shipclass->getName());
313
314include_once('common/includes/class.dogma.php');
315
316$ssc=new dogma($ship->externalid_);
317
318$smarty->assign_by_ref('ssc', $ssc);
319
320if ($kill->isClassified())
321    {
322    //Admin is able to see classified Systems
323    if ($page->isAdmin())
324        {
325        if ($mapmod) {
326            $smarty->assign('SystemID', $system->getID());
327        }
328        $smarty->assign('System', $system->getName() . ' (Classified)');
329        $smarty->assign('SystemURL', "?a=system_detail&amp;sys_id=" . $system->getID());
330        $smarty->assign('SystemSecurity', $system->getSecurity(true));
331        }
332    else
333        {
334        $smarty->assign('System', 'Classified');
335        $smarty->assign('SystemURL', "");
336        $smarty->assign('SystemSecurity', '0.0');
337        }
338    }
339else
340    {
341    if ($mapmod) {
342        $smarty->assign('SystemID', $system->getID());
343    }
344    $smarty->assign('System', $system->getName());
345    $smarty->assign('SystemURL', "?a=system_detail&amp;sys_id=" . $system->getID());
346    $smarty->assign('SystemSecurity', $system->getSecurity(true));
347    }
348
349$smarty->assign('TimeStamp', $kill->getTimeStamp());
350$smarty->assign('VictimShipImg', $ship->getImage(64));
351
352if ($mapmod) {
353        if(strpos($config->get('mods_active'), 'map_mod') !== false) {
354
355        $smarty->assign('loc_active', TRUE);
356        }
357        else {
358        $smarty->assign('loc_active', FALSE);
359        }
360}
361
362// preparing slot layout
363
364$slot_array=array();
365
366$slot_array[1]=array
367    (
368    'img'   => 'icon08_11.png',
369    'text'  => 'Fitted - High slot',
370    'items' => array()
371    );
372
373$slot_array[2]=array
374    (
375    'img'   => 'icon08_10.png',
376    'text'  => 'Fitted - Mid slot',
377    'items' => array()
378    );
379
380$slot_array[3]=array
381    (
382    'img'   => 'icon08_09.png',
383    'text'  => 'Fitted - Low slot',
384    'items' => array()
385    );
386
387$slot_array[5]=array
388    (
389    'img'   => 'icon68_01.png',
390    'text'  => 'Fitted - Rig slot',
391    'items' => array()
392    );
393
394$slot_array[6]=array
395    (
396    'img'   => 'icon02_10.png',
397    'text'  => 'Drone bay',
398    'items' => array()
399    );
400
401$slot_array[4]=array
402    (
403    'img'   => 'icon03_14.png',
404    'text'  => 'Cargo Bay',
405    'items' => array()
406    );
407$slot_array[7]=array
408    (
409    'img'   => 'icon76_04.png',
410    'text'  => 'Fitted - Subsystems',
411    'items' => array()
412    );
413
414// ship fitting
415if (count($kill->destroyeditems_) > 0)
416    {
417    $dest_array=array();
418
419    foreach ($kill->destroyeditems_ as $destroyed)
420        {
421        $item = $destroyed->getItem();
422        $i_qty=$destroyed->getQuantity();
423
424        if (config::get('item_values'))
425            {
426            $value=$destroyed->getValue();
427            $TotalValue+=$value * $i_qty;
428            $formatted=$destroyed->getFormattedValue();
429            }
430
431        $i_name     =$item->getName();
432        $i_location =$destroyed->getLocationID();
433        $i_id       =$item->getID();
434        $i_usedgroup=$item->get_used_launcher_group();
435
436        $dest_array[$i_location][]=array
437            (
438            'Icon'        => $item->getIcon(32),
439            'Name'        => $i_name,
440            'Quantity'    => $i_qty,
441            'Value'       => $formatted,
442            'single_unit' => $value,
443            'itemID'      => $i_id,
444            'slotID'      => $i_location
445            );
446
447        //Fitting, KE - add destroyed items to an array of all fitted items.
448        if (($i_location != 4) && ($i_location != 5) && ($i_location != 6))
449            {
450            if (($i_usedgroup != 0))
451                {
452                if ($i_location == 1)
453                    {
454                    $i_ammo=$item->get_ammo_size($i_name);
455
456                    if ($i_usedgroup == 481)
457                        {
458                        $i_ammo=0;
459                        }
460                    }
461                else
462                    {
463                    $i_ammo=0;
464                    }
465
466                $ammo_array[$i_location][]=array
467                    (
468                    'Name'        => $i_name,
469                    'Icon'        => $item->getIcon(24),
470                    'itemID'      => $i_id,
471                    'usedgroupID' => $i_usedgroup,
472                    'size'        => $i_ammo
473                    );
474                }
475            else
476                {
477                for ($count=0; $count < $i_qty; $count++)
478                    {
479                    if ($i_location == 1)
480                        {
481                        $i_charge=$item->get_used_charge_size();
482                        }
483                    else
484                        {
485                        $i_charge=0;
486                        }
487
488                    $fitting_array[$i_location][]=array
489                        (
490                        'Name'       => $i_name,
491                        'Icon'       => $item->getIcon(32),
492                        'itemID'     => $i_id,
493                        'groupID'    => $item->get_group_id(),
494                        'chargeSize' => $i_charge
495                        );
496                    }
497                }
498            }
499        else if (($destroyed->getLocationID() == 5))
500            {
501            for ($count=0; $count < $i_qty; $count++)
502                {
503                $fitting_array[$i_location][]=array
504                    (
505                    'Name'   => $i_name,
506                    'Icon'   => $item->getIcon(32),
507                    'itemID' => $i_id
508                    );
509                }
510            }
511        //fitting thing end
512        }
513    }
514
515if (count($kill->droppeditems_) > 0)
516    {
517    $drop_array=array();
518
519    foreach ($kill->droppeditems_ as $dropped)
520        {
521        $item = $dropped->getItem();
522        $i_qty=$dropped->getQuantity();
523
524        if (config::get('item_values'))
525            {
526            $value=$dropped->getValue();
527            $dropvalue+=$value * $i_qty;
528            $formatted=$dropped->getFormattedValue();
529            }
530
531        $i_name     =$item->getName();
532        $i_location =$dropped->getLocationID();
533        $i_id       =$item->getID();
534        $i_usedgroup=$item->get_used_launcher_group();
535
536        $drop_array[$i_location][]=array
537            (
538            'Icon'        => $item->getIcon(32),
539            'Name'        => $i_name,
540            'Quantity'    => $i_qty,
541            'Value'       => $formatted,
542            'single_unit' => $value,
543            'itemID'      => $i_id,
544            'slotID'      => $i_location
545            );
546
547        //Fitting -KE, add dropped items to the list
548        if (($i_location != 4) && ($i_location != 6))
549            {
550            if (($i_usedgroup != 0))
551                {
552                if ($i_location == 1)
553                    {
554                    $i_ammo=$item->get_ammo_size($i_name);
555
556                    if ($i_usedgroup == 481)
557                        {
558                        $i_ammo=0;
559                        }
560                    }
561                else
562                    {
563                    $i_ammo=0;
564                    }
565
566                $ammo_array[$i_location][]=array
567                    (
568                    'Name'        => $i_name,
569                    'Icon'        => $item->getIcon(24),
570                    'itemID'      => $i_id,
571                    'usedgroupID' => $i_usedgroup,
572                    'size'        => $i_ammo
573                    );
574                }
575            else
576                {
577                for ($count=0; $count < $i_qty; $count++)
578                    {
579                    if ($i_location == 1)
580                        {
581                        $i_charge=$item->get_used_charge_size();
582                        }
583                    else
584                        {
585                        $i_charge=0;
586                        }
587
588                    $fitting_array[$i_location][]=array
589                        (
590                        'Name'       => $i_name,
591                        'Icon'       => $item->getIcon(32),
592                        'itemID'     => $i_id,
593                        'groupID'    => $item->get_group_id(),
594                        'chargeSize' => $i_charge
595                        );
596                    }
597                }
598            }
599        //fitting thing end
600
601        }
602    }
603
604//Fitting - KE, sort the fitted items into groupID order, so that several of the same item apear next to each other.
605if (is_array($fitting_array[1]))
606    {
607    foreach ($fitting_array[1] as $array_rowh)
608        {
609        $sort_by_nameh["groupID"][]=$array_rowh["groupID"];
610        }
611
612    array_multisort($sort_by_nameh["groupID"], SORT_ASC, $fitting_array[1]);
613    }
614
615if (is_array($fitting_array[2]))
616    {
617    foreach ($fitting_array[2] as $array_rowm)
618        {
619        $sort_by_namem["groupID"][]=$array_rowm["groupID"];
620        }
621
622    array_multisort($sort_by_namem["groupID"], SORT_ASC, $fitting_array[2]);
623    }
624
625if (is_array($fitting_array[3]))
626    {
627    foreach ($fitting_array[3] as $array_rowl)
628        {
629        $sort_by_namel["groupID"][]=$array_rowl["Name"];
630        }
631
632    array_multisort($sort_by_namel["groupID"], SORT_ASC, $fitting_array[3]);
633    }
634
635if (is_array($fitting_array[5]))
636    {
637    foreach ($fitting_array[5] as $array_rowr)
638        {
639        $sort_by_namer["Name"][]=$array_rowr["Name"];
640        }
641
642    array_multisort($sort_by_namer["Name"], SORT_ASC, $fitting_array[5]);
643    }
644
645if (is_array($fitting_array[7]))
646    {
647    foreach ($fitting_array[7] as $array_rowr)
648        {
649        $sort_by_namer["groupID"][]=$array_rowr["groupID"];
650        }
651
652    array_multisort($sort_by_namer["groupID"], SORT_ASC, $fitting_array[7]);
653    }
654
655//Fitting - KE, sort the fitted items into name order, so that several of the same item apear next to each other. -end
656
657$length=count($ammo_array[1]);
658
659$temp=array();
660
661if (is_array($fitting_array[1]))
662    {
663    $hiammo=array();
664
665    foreach ($fitting_array[1] as $highfit)
666        {
667        $group = $highfit["groupID"];
668        $size  =$highfit["chargeSize"];
669
670        if ($group
671            == 483                          // Modulated Deep Core Miner II, Modulated Strip Miner II and Modulated Deep Core Strip Miner II
672        || $group == 53                     // Laser Turrets
673        || $group == 55                     // Projectile Turrets
674        || $group == 74                     // Hybrid Turrets
675        || ($group >= 506 && $group <= 511) // Some Missile Lauchers
676        || $group == 481                    // Probe Launchers
677        || $group == 899                    // Warp Disruption Field Generator I
678        || $group == 771                    // Heavy Assault Missile Launchers
679        || $group == 589                    // Interdiction Sphere Lauchers
680        || $group == 524                    // Citadel Torpedo Launchers
681        )
682            {
683            $found=0;
684
685            if ($group == 511)
686                {
687                $group=509;
688                } // Assault Missile Lauchers uses same ammo as Standard Missile Lauchers
689
690            if (is_array($ammo_array[1]))
691                {
692                $i=0;
693
694                while (!($found) && $i < $length)
695                    {
696                    $temp = array_shift($ammo_array[1]);
697
698                    if (($temp["usedgroupID"] == $group) && ($temp["size"] == $size))
699                        {
700                        $hiammo[]=array
701                            (
702                            'show' => $smarty->fetch(get_tpl('ammo')),
703                            'type' => $temp["Icon"]
704                            );
705
706                        $found=1;
707                        }
708
709                    array_push($ammo_array[1], $temp);
710                    $i++;
711                    }
712                }
713
714            if (!($found))
715                {
716                $hiammo[]=array
717                    (
718                    'show' => $smarty->fetch(get_tpl('ammo')),
719                    'type' => $smarty->fetch(get_tpl('noicon'))
720                    );
721                }
722            }
723        else
724            {
725            $hiammo[]=array
726                (
727                'show' => $smarty->fetch(get_tpl('blank')),
728                'type' => $smarty->fetch(get_tpl('blank'))
729                );
730            }
731        }
732    }
733
734$length=count($ammo_array[2]);
735
736if (is_array($fitting_array[2]))
737    {
738    $midammo=array();
739
740    foreach ($fitting_array[2] as $midfit)
741        {
742        $group = $midfit["groupID"];
743
744        if ($group == 76 // Capacitor Boosters
745        || $group == 208 // Remote Sensor Dampeners
746        || $group == 212 // Sensor Boosters
747        || $group == 291 // Tracking Disruptors
748        || $group == 213 // Tracking Computers
749        || $group == 209 // Tracking Links
750        || $group == 290 // Remote Sensor Boosters
751        )
752            {
753            $found=0;
754
755            if (is_array($ammo_array[2]))
756                {
757                $i=0;
758
759                while (!($found) && $i < $length)
760                    {
761                    $temp = array_shift($ammo_array[2]);
762
763                    if ($temp["usedgroupID"] == $group)
764                        {
765                        $midammo[]=array
766                            (
767                            'show' => $smarty->fetch(get_tpl('ammo')),
768                            'type' => $temp["Icon"]
769                            );
770
771                        $found=1;
772                        }
773
774                    array_push($ammo_array[2], $temp);
775                    $i++;
776                    }
777                }
778
779            if (!($found))
780                {
781                $midammo[]=array
782                    (
783                    'show' => $smarty->fetch(get_tpl('ammo')),
784                    'type' => $smarty->fetch(get_tpl('noicon'))
785                    );
786                }
787            }
788        else
789            {
790            $midammo[]=array
791                (
792                'show' => $smarty->fetch(get_tpl('blank')),
793                'type' => $smarty->fetch(get_tpl('blank'))
794                );
795            }
796        }
797    }
798
799if ($TotalValue >= 0)
800    {
801    $Formatted=number_format($TotalValue, 2);
802    }
803
804// Get Ship Value
805$ShipValue=$ship->getPrice();
806
807if (config::get('kd_droptototal'))
808    {
809    $TotalValue+=$dropvalue;
810    }
811
812$TotalLoss=number_format($TotalValue + $ShipValue, 2);
813$ShipValue=number_format($ShipValue, 2);
814$dropvalue=number_format($dropvalue, 2);
815
816$smarty->assign_by_ref('destroyed', $dest_array);
817$smarty->assign_by_ref('dropped', $drop_array);
818$smarty->assign_by_ref('slots', $slot_array);
819$smarty->assign_by_ref('fitting_high', $fitting_array[1]);
820$smarty->assign_by_ref('fitting_med', $fitting_array[2]);
821$smarty->assign_by_ref('fitting_low', $fitting_array[3]);
822$smarty->assign_by_ref('fitting_rig', $fitting_array[5]);
823$smarty->assign_by_ref('fitting_sub', $fitting_array[7]);
824$smarty->assign_by_ref('fitting_ammo_high', $hiammo);
825$smarty->assign_by_ref('fitting_ammo_mid', $midammo);
826$smarty->assign('ItemValue', $Formatted);
827$smarty->assign('DropValue', $dropvalue);
828$smarty->assign('ShipValue', $ShipValue);
829$smarty->assign('TotalLoss', $TotalLoss);
830
831$hicount =count($fitting_array[1]);
832$medcount=count($fitting_array[2]);
833$lowcount=count($fitting_array[3]);
834
835$smarty->assign('hic', $hicount);
836$smarty->assign('medc', $medcount);
837$smarty->assign('lowc', $lowcount);
838
839$menubox=new Box("Menu");
840$menubox->setIcon("menu-item.gif");
841$menubox->addOption("caption", "View");
842$menubox->addOption("link",
843                    "Killmail",
844                    "javascript:sndReq('index.php?a=kill_mail&amp;kll_id=" . $kill->getID()
845                        . "');ReverseContentDisplay('popup')");
846
847if (config::get('apocfitting_showeft')) {
848$menubox->addOption("link",
849                    "EFT Fitting",
850                    "javascript:sndReq('index.php?a=eft_fitting&amp;kll_id=" . $kill->getID()
851                        . "');ReverseContentDisplay('popup')");
852}
853
854if (config::get('apocfitting_showeft2eve')) {
855$menubox->addOption("link", "EFT To EVE", "javascript:sndReq('index.php?a=convertinkilldetail');ReverseContentDisplay('popup')");
856}
857
858if ($kill->relatedKillCount() > 1 || $kill->relatedLossCount() > 1 ||
859        ((ALLIANCE_ID || CORP_ID || PILOT_ID) && $kill->relatedKillCount() + $kill->relatedLossCount() > 1))
860{
861        $menubox->addOption("link", "Related kills (" . $kill->relatedKillCount() . "/" . $kill->relatedLossCount() . ")",
862                                        "?a=kill_related&amp;kll_id=" . $kill->getID());
863}
864
865if ($page->isAdmin())
866    {
867    $menubox->addOption("caption", "Admin");
868    $menubox->addOption("link",
869                        "Delete",
870                        "javascript:openWindow('?a=admin_kill_delete&amp;kll_id=" . $kill->getID()
871                            . "', null, 420, 300, '' );");
872
873    if (isset($_GET['view']) && $_GET['view'] == 'FixSlot')
874        {
875        $menubox->addOption("link", "Adjust Values", "?a=kill_detail&amp;kll_id=" . $kill->getID() . "");
876        }
877    else
878        {
879        $menubox->addOption("link", "Fix Slots", "?a=kill_detail&amp;kll_id=" . $kill->getID() . "&amp;view=FixSlot");
880        }
881    }
882
883$page->addContext($menubox->generate());
884
885if (config::get('kill_points'))
886    {
887    $scorebox=new Box("Points");
888    $scorebox->addOption("points", $kill->getKillPoints());
889    $page->addContext($scorebox->generate());
890    }
891
892// Final Blow/Top Damage Dealer - Begin (Ben Thomas - 17/05/09)
893if ($showbox) {
894$topdamage = $involved;
895
896class FBlowBox
897{
898
899    function generate()
900    {
901        global $smarty;
902        return $smarty->fetch('../mods/apoc_fitting/damage_box.tpl');
903    }
904}
905
906function multi_sort(&$array, $key) {
907    usort($array,create_function('$a,$b','if ($a["'.$key.'"] == $b["'.$key.'"]) return 0;' .'return ($a["'.$key.'"] > $b["'.$key.'"]) ? -1 : 1;'));
908}
909
910multi_sort($topdamage,"damageDone");
911$topdamage = array_slice($topdamage, 0, 1);
912$smarty->assign('topdamage', $topdamage);
913
914$finalblow = new FBlowBox();
915$page->addContext($finalblow->generate());
916}
917// Final Blow/Top Damage Dealer - End
918
919//Admin is able to see classsified systems
920if ((!$kill->isClassified()) || ($page->isAdmin()))
921    {
922        if (!$sidemap) {
923            $mapbox=new Box("Map");
924            $mapbox->addOption("img", "?a=mapview&amp;sys_id=" . $system->getID() . "&amp;mode=map&amp;size=145");
925            $mapbox->addOption("img", "?a=mapview&amp;sys_id=" . $system->getID() . "&amp;mode=region&amp;size=145");
926            $mapbox->addOption("img", "?a=mapview&amp;sys_id=" . $system->getID() . "&amp;mode=cons&amp;size=145");
927            $page->addContext($mapbox->generate());
928        }
929    }
930
931$html.=$smarty->fetch('../mods/apoc_fitting/kill_detail.tpl');
932
933$html.='<br/><hr><!-- <div style="font-size: 10px;"><b>Based on Apoc Fitting v2.0</a> (2009 - Ben Thomas</a>)</div> -->';
934
935$page->setContent($html);
936$page->generate();
937?>
Note: See TracBrowser for help on using the browser.