1 | <?php |
---|
2 | |
---|
3 | defined('SYSPATH') or die('No direct script access.'); |
---|
4 | |
---|
5 | class Killboard_Pilot_Model extends Model |
---|
6 | { |
---|
7 | public $id = -1; |
---|
8 | public $name = ""; |
---|
9 | public $killCount = 0; |
---|
10 | public $finalBlows = 0; |
---|
11 | public $lossCount = 0; |
---|
12 | public $damageDone = 0; |
---|
13 | public $damageReceived = 0; |
---|
14 | |
---|
15 | public $corp = null; |
---|
16 | public $alliance = null; |
---|
17 | public $faction = null; |
---|
18 | |
---|
19 | public function __construct($id=0, $name="", $kills=0, $losses=0, $finalBlows=0, |
---|
20 | $damageDone=0, $damageReceived=0, $corp=null, $alliance=null, $faction=null) |
---|
21 | { |
---|
22 | parent::__construct(); |
---|
23 | |
---|
24 | if ($id==0) return; |
---|
25 | |
---|
26 | if (!is_numeric($id)) |
---|
27 | { |
---|
28 | // Pilot name provided, check for existance and load SQL |
---|
29 | $db = Database::instance(); |
---|
30 | $query = $db->from('killboard_pilots')->where('pilot_name="'.$name.'"')->join( |
---|
31 | 'killboard_alliances', 'pilot_alliance=alliance_id', '', 'left' |
---|
32 | )->join( |
---|
33 | 'killboard_factions', 'pilot_faction=faction_id', '', 'left' |
---|
34 | )->join( |
---|
35 | 'killboard_corps', 'pilot_corp=corp_id', '', 'left' |
---|
36 | )->get(); |
---|
37 | if ($query->count() > 0) |
---|
38 | { |
---|
39 | $row = $query->current(); |
---|
40 | $this->id = $row->pilot_id; |
---|
41 | $this->name = $row->pilot_name; |
---|
42 | $this->killCount = $row->pilot_kills; |
---|
43 | $this->finalBlows = $row->pilot_final_blows; |
---|
44 | $this->lossCount = $row->pilot_losses; |
---|
45 | $this->damageDone = $row->pilot_damage_done; |
---|
46 | $this->damageReceived = $row->pilot_damage_received; |
---|
47 | if ($row->faction_id !== null) |
---|
48 | $this->faction = new Killboard_faction_Model( |
---|
49 | $row->faction_id, $row->faction_name, $row->faction_kills, $row->faction_losses, |
---|
50 | $row->faction_final_blows, $row->faction_damage_done, |
---|
51 | $row->faction_damage_received, $row->faction_efficiency, |
---|
52 | $row->faction_corps, $row->faction_pilots |
---|
53 | ); |
---|
54 | if ($row->alliance_id !== null) |
---|
55 | $this->alliance = new Killboard_Alliance_Model( |
---|
56 | $row->alliance_id, $row->alliance_name, $row->alliance_kills, $row->alliance_losses, |
---|
57 | $row->alliance_final_blows, $row->alliance_damage_done, |
---|
58 | $row->alliance_damage_received, $row->alliance_efficiency, |
---|
59 | $row->alliance_corps, $row->alliance_pilots |
---|
60 | ); |
---|
61 | if ($row->corp_id !== null) |
---|
62 | $this->corp = new Killboard_Corp_Model( |
---|
63 | $row->corp_id, $row->corp_name, $row->corp_kills, $row->corp_losses, |
---|
64 | $row->corp_final_blows, $row->corp_damage_done, |
---|
65 | $row->corp_damage_received, $row->corp_efficiency, |
---|
66 | $row->corp_pilots, $this->alliance, $this->faction |
---|
67 | ); |
---|
68 | } |
---|
69 | } else { |
---|
70 | // Full/partial object data provided, load that sucka up |
---|
71 | if ($name == "") |
---|
72 | { |
---|
73 | // Only ID provided, load based on ID |
---|
74 | } else { |
---|
75 | // Check for alliance, corp and faction |
---|
76 | } |
---|
77 | } |
---|
78 | } |
---|
79 | |
---|
80 | } |
---|
81 | |
---|
82 | ?> |
---|