root/dev/common/admin_cc.php @ 43

Revision 43, 11.9 KB (checked in by andrewgunn, 16 years ago)

Changed the minimum number of targets for Campaigns and Contracts from 10 to 30.

Line 
1<?php
2require_once("db.php");
3require_once("class.page.php");
4require_once("class.contract.php");
5require_once("admin_menu.php");
6
7$page = new Page();
8$page->setAdmin();
9
10if ($_GET['op'] == "view")
11{
12    $type = $_GET['type'];
13    if ($type == "campaign")
14    {
15        $page->setTitle("Administration - Campaigns");
16        $campaign = 1;
17    }
18    elseif ($type == "contract")
19    {
20        $page->setTitle("Administration - Contracts");
21        $campaign = 0;
22    }
23
24    $list = new ContractList();
25    if ($type == "campaign") $list->setCampaigns(true);
26    if ($list->getCount() > 0)
27    {
28        $html = "<table class=kb-table cellspacing=1>";
29        $html .= "<tr class=kb-table-header><td class=kb-table-cell width=160>Name</td><td class=kb-table-cell width=80>Startdate</td><td class=kb-table-cell width=80>Enddate</td><td class=kb-table-cell width=140 colspan=2 align=center>Action</td></tr>";
30    }
31    while ($contract = $list->getContract())
32    {
33        $html .= "<tr class=kb-table-row-odd>";
34        $html .= "<td class=kb-table-cell>" . $contract->getName() . "</td>";
35        $html .= "<td class=kb-table-cell>" . substr($contract->getStartDate(), 0, 10) . "</td>";
36        $html .= "<td class=kb-table-cell>" . substr($contract->getEndDate(), 0, 10) . "</td>";
37        $html .= "<td  class=kb-table-cell align=center width=70><a href=\"?a=admin_cc&ctr_id=" . $contract->getID() . "&op=edit&type=" . $type . "\">Edit</a></td><td align=center><a href=\"?a=admin_cc&ctr_id=" . $contract->getID() . "&op=del&type=" . $type . "\">Delete</a></td>";
38        $html .= "</tr>";
39    }
40    if ($list->getCount() > 0)
41        $html .= "</table><br>";
42    $html .= "[<a href=\"?a=admin_cc&op=add&type=" . $type . "\">Add " . $type . "</a>]";
43}
44// delete
45if ($_GET['op'] == "del")
46{
47    if ($_GET['confirm'])
48    {
49        $contract = new Contract($_GET['ctr_id']);
50        if (!$contract->validate()) exit;
51        $contract->remove();
52
53        Header("Location: ?a=admin_cc&op=view&type=" . $_GET['type']);
54    }
55    else
56    {
57        $page->setTitle("Administration - Delete " . $_GET['type']);
58        $html .= "Confirm deletion:&nbsp;";
59        $html .= "<button onClick=\"window.location.href='?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=del&type=" . $_GET['type'] . "&confirm=yes'\">Yes</button>&nbsp;&nbsp;&nbsp;";
60        $html .= "<button onClick=\"window.history.back();\">No</button>";
61    }
62}
63// edit
64if ($_GET['op'] == "edit")
65{
66    $contract = new Contract($_GET['ctr_id']);
67    if (!$contract->validate()) exit;
68    if ($_POST['detail_submit'])
69    {
70        $contract->add($_POST['ctr_name'], $_GET['type'],
71            $_POST['ctr_started'], $_POST['ctr_ended']);
72
73        Header("Location: ?a=admin_cc&op=view&type=" . $_GET['type']);
74    }
75
76    if ($_GET['sop'])
77    {
78        $id = $_GET['id'];
79        switch ($_GET['sop'])
80        {
81            case "del_corp":
82                $crp_id = $id;
83                break;
84            case "del_alliance":
85                $all_id = $id;
86                break;
87            case "del_region":
88                $reg_id = $id;
89                break;
90        }
91        $contracttarget = new ContractTarget($contract, $crp_id,
92            $all_id, $reg_id);
93        $contracttarget->remove();
94
95        Header("Location: ?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=edit&type=" . $_GET['type']);
96    }
97
98    if ($_GET['add_id'])
99    {
100        $id = $_GET['add_id'];
101        switch ($_GET['add_type'])
102        {
103            case 0:
104                $crp_id = $id;
105                break;
106            case 1:
107                $all_id = $id;
108                break;
109            case 2:
110                $reg_id = $id;
111                break;
112        }
113        $contracttarget = new ContractTarget($contract, $crp_id,
114            $all_id, $reg_id);
115        $contracttarget->add();
116
117        Header("Location: ?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=edit&type=" . $_GET['type']);
118    }
119    if ($_POST['add_name'])
120    {
121        $page->setTitle("Add target");
122        if (strlen($_POST['add_name']) < 3)
123            $html .= "Please type atleast 3 letters.";
124        else
125        {
126            switch ($_POST['add_type'])
127            {
128                case 0:
129                    $sql = "select crp.crp_id as id, crp.crp_name as name
130                      from kb3_corps crp
131                     where lower( crp.crp_name ) like '%" . strtolower($_POST['add_name']) . "%'";
132                    break;
133                case 1:
134                    $sql = "select ali.all_id as id, ali.all_name as name
135                      from kb3_alliances ali
136                     where lower( ali.all_name ) like '%" . strtolower($_POST['add_name']) . "%'";
137                    break;
138                case 2:
139                    $sql = "select reg_id as id, reg_name as name
140                      from kb3_regions
141                     where lower( reg_name ) like '%" . strtolower($_POST['add_name']) . "%'";
142                    break;
143            }
144
145            $qry = new DBQuery();
146            $qry->execute($sql) or die($qry->getErrorMsg());
147
148            if ($qry->recordCount() > 0)
149            {
150                $html .= "<table class=kb-table width=450>";
151                $html .= "<tr class=kb-table-header><td width=340>Name</td><td width=80 align=center>Action</td></tr>";
152            }
153            else
154                $html .= "No matches found for '" . $_POST['add_name'] . "'.";
155
156            while ($row = $qry->getRow())
157            {
158                $html .= "<tr class=kb-table-row-even>";
159                switch ($_POST['add_type'])
160                {
161                    case 0:
162                        $html .= "<td><a href=\"?a=corp_detail&crp_id=" . $row['id'] . "\">" . $row['name'] . "</a></td><td align=center><button id=submit name=submit onClick=\"window.location.href='?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=edit&type=" . $_GET['type'] . "&add_type=" . $_POST['add_type'] . "&add_id=" . $row['id'] . "'\">Select</button></td>";
163                        break;
164                    case 1:
165                        $html .= "<td><a href=\"?a=alliance_detail&all_id=" . $row['id'] . "\">" . $row['name'] . "</a></td><td align=center><button id=submit name=submit onClick=\"window.location.href='?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=edit&type=" . $_GET['type'] . "&add_type=" . $_POST['add_type'] . "&add_id=" . $row['id'] . "'\">Select</button></td>";
166                        break;
167                    case 2:
168                        $html .= "<td>" . $row['name'] . "</td><td align=center><button id=submit name=submit onClick=\"window.location.href='?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=edit&type=" . $_GET['type'] . "&add_type=" . $_POST['add_type'] . "&add_id=" . $row['id'] . "'\">Select</button></td>";
169                        break;
170                }
171                $html .= "</tr>";
172            }
173            if ($qry->recordCount() > 0)
174                $html .= "</table>";
175        }
176    }
177    else
178    {
179        $page->setTitle("Administration - Edit " . $_GET['type']);
180
181        $contract = new Contract($_GET['ctr_id']);
182
183        $html .= "<div class=block-header2>Details</div>";
184
185        $html .= "<form id=detail_edit name=detail_edit method=post action=?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=edit&type=" . $_GET['type'] . ">";
186        $html .= "<table class=kb-subtable width=98%>";
187
188        $html .= "<tr><td width=80><b>Name:</b></td><td><input type=text name=ctr_name id=ctr_name size=38 maxlength=38 value=\"" . $contract->getName() . "\"></td></tr>";
189        $html .= "<tr><td width=80><b>Start date:</b></td><td><input type=text name=ctr_started id=ctr_started size=10 maxlength=10 value=\"" . substr($contract->getStartDate(), 0, 10) . "\"> (yyyy-mm-dd)</td></tr>";
190        $html .= "<tr><td width-80><b>End date:</b></td><td><input type=text name=ctr_ended id=ctr_ended size=10 maxlength=10 value=\"" . substr($contract->getEndDate(), 0, 10) . "\"> (yyyy-mm-dd or blank)</td></tr>";
191        $html .= "<tr><td></td></tr>";
192        $html .= "<tr><td></td><td><input type=submit name=detail_submit value=\"Save\"></td></tr>";
193
194        $html .= "</table>";
195        $html .= "</form>";
196
197        $html .= "<div class=block-header2>Targets</div>";
198
199        $html .= "<table class=kb-table cellspacing=1>";
200        $html .= "<tr class=kb-table-header><td class=kb-table-cell width=160>Target</td><td class=kb-table-cell width=80 align=center>Corporation</td><td class=kb-table-cell width=80 align=center>Alliance</td><td class=kb-table-cell width=80 align=center>Region</td><td class=kb-table-cell width=80 align=center>Action</td><td</tr>";
201
202        $c = 0;
203        while ($contracttarget = $contract->getContractTarget())
204        {
205            $c++;
206            $type = $contracttarget->getType();
207            if ($type == "corp")
208            {
209                $corp = new Corporation($contracttarget->getID());
210                $name = $corp->getName();
211            }
212            if ($type == "alliance")
213            {
214                $alliance = new Alliance($contracttarget->getID());
215                $name = $alliance->getName();
216            }
217            if ($type == "region")
218            {
219                $region = new Region($contracttarget->getID());
220                $name = $region->getName();
221            }
222
223            $html .= "<tr class=kb-table-row-odd><td class=kb-table-cell><b>" . $name . "</b></td><td class=kb-table-cell align=center>";
224            if ($type == "corp")
225                $html .= "x";
226            $html .= "</td><td class=kb-table-cell align=center>";
227            if ($type == "alliance")
228                $html .= "x";
229            $html .= "</td><td class=kb-table-cell align=center>";
230            if ($type == "region")
231                $html .= "x";
232            $html .= "</td>";
233
234            $html .= "<td align=center><a href=\"?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=edit&type=" . $_GET['type'] . "&sop=del_" . $type . "&id=" . $contracttarget->getID() . "\">delete</a></td></tr>";
235        }
236
237        if ($c < 30)
238        {
239            $html .= "<form id=add_target name=add_target method=post action=?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=edit&type=" . $_GET['type'] . ">";
240            $html .= "<tr><td></td></tr>";
241            $html .= "<tr><td><input type=text id=add_name name=add_name size=30 maxlength=30></td><td align=center><input type=radio name=add_type id=add_type value=0 checked></td><td align=center><input type=radio name=add_type id=add_type value=1></td><td align=center><input type=radio name=add_type id=add_type value=2></td><td align=center><input type=submit id=submit name=submit value=Add></td></tr>";
242        }
243        $html .= "</table>";
244        $html .= "</form>";
245    }
246}
247// add
248if ($_GET['op'] == "add")
249{
250    if ($_POST['detail_submit'])
251    {
252        $contract = new Contract();
253        $contract->add($_POST['ctr_name'], $_GET['type'],
254            $_POST['ctr_started'], $_POST['ctr_ended']);
255
256        Header("Location: ?a=admin_cc&ctr_id=" . $contract->getID() . "&op=edit&type=" . $_GET['type']);
257    }
258
259    $page->setTitle("Administration - Add " . $_GET['type']);
260
261    $html .= "<div class=block-header2>Details</div>";
262
263    $html .= "<form id=detail_edit name=detail_edit method=post action=?a=admin_cc&ctr_id=" . $_GET['ctr_id'] . "&op=add&type=" . $_GET['type'] . ">";
264    $html .= "<table class=kb-table width=98%>";
265
266    $html .= "<tr><td width=80><b>Name:</b></td><td><input type=text name=ctr_name id=ctr_name size=40 maxlength=40></td></tr>";
267    $html .= "<tr><td width=80><b>Start date:</b></td><td><input type=text name=ctr_started id=ctr_started size=10 maxlength=10 value=\"" . date("Y-m-d") . "\"> (yyyy-mm-dd)</td></tr>";
268    $html .= "<tr><td width-80><b>End date:</b></td><td><input type=text name=ctr_ended id=ctr_ended size=10 maxlength=10> (yyyy-mm-dd or blank)</td></tr>";
269    $html .= "<tr><td></td></tr>";
270    $html .= "<tr><td></td><td><input type=submit name=detail_submit value=\"Save\"></td></tr>";
271
272    $html .= "</table>";
273    $html .= "</form>";
274}
275
276$page->addContext($menubox->generate());
277$page->setContent($html);
278$page->generate();
279?>
Note: See TracBrowser for help on using the browser.