This project does not seem to handle request data directly as such no vulnerable execution paths were found.
include
, or for example
via PHP's auto-loading mechanism.
These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more
1 | <?php |
||
2 | include_once __DIR__ . '/admin_header.php'; |
||
3 | /* |
||
4 | * 处理 |
||
5 | **/ |
||
6 | |||
7 | //头部 |
||
8 | include "martin.header.php"; |
||
9 | $currentFile = basename(__FILE__); |
||
10 | $myModuleAdmin = new ModuleAdmin(); |
||
11 | echo $myModuleAdmin->addNavigation($currentFile); |
||
12 | |||
13 | //parameter 参数 |
||
14 | $action = isset($_POST['action']) ? $_POST['action'] : @$_GET['action']; |
||
15 | $action = empty($action) ? 'list' : $action; |
||
16 | $action = trim(strtolower($action)); |
||
17 | $id = !empty($_POST['id']) ? $_POST['id'] : @$_GET['id']; |
||
18 | $id = (int)($id); |
||
19 | $typeid = !empty($_POST['typeid']) ? (int)($_POST['typeid']) : (int)(@$_GET['typeid']); |
||
20 | $hotel_id = isset($_GET['hotel_id']) ? (int)($_GET['hotel_id']) : 0; |
||
21 | $service_id = isset($_GET['service_id']) ? (int)($_GET['service_id']) : 0; |
||
22 | $start = isset($_GET['start']) ? (int)($_GET['start']) : 0; |
||
23 | //确认删除 |
||
24 | $confirm = (isset($_POST['confirm'])) ? $_POST['confirm'] : 0; |
||
25 | //parameter 参数 |
||
26 | |||
27 | // martin_adminMenu(3, "订房后台 > 酒店服务"); |
||
28 | |||
29 | $hotelservice_handler =& xoops_getmodulehandler('hotelservice', MARTIN_DIRNAME, true); |
||
30 | $hotelservicetype_handler =& xoops_getmodulehandler('hotelservicetype', MARTIN_DIRNAME, true); |
||
31 | |||
32 | $HotelServiceObj = $id > 0 ? $hotelservice_handler->get($id) : $hotelservice_handler->create(); |
||
33 | $HotelServiceTypeObj = $typeid > 0 ? $hotelservicetype_handler->get($typeid) : $hotelservicetype_handler->create(); |
||
34 | |||
35 | switch ($action) { |
||
36 | View Code Duplication | case "add": |
|
37 | include MARTIN_ROOT_PATH . 'include/form.hotel.service.php'; |
||
38 | martin_collapsableBar('createtable', 'createtableicon', _AM_MARTIN_ADD_SERVICE, _AM_MARTIN_ADD_SERVICE); |
||
39 | CreateButton(); |
||
40 | $TypeList = $hotelservicetype_handler->GetList(); |
||
41 | $form = new form_hotel_service($HotelServiceObj, $TypeList); |
||
42 | $form->display(); |
||
43 | martin_close_collapsable('createtable', 'createtableicon'); |
||
0 ignored issues
–
show
Unused Code
introduced
by
![]() |
|||
44 | break; |
||
45 | View Code Duplication | case "typeadd": |
|
46 | include MARTIN_ROOT_PATH . 'include/form.hotel.service.type.php'; |
||
47 | martin_collapsableBar('createtable', 'createtableicon', _AM_MARTIN_ADD_SERVICE_TYPE, _AM_MARTIN_ADD_SERVICE_TYPE); |
||
48 | CreateButton(); |
||
49 | $form = new form_hotel_service_type($HotelServiceTypeObj); |
||
50 | $form->display(); |
||
51 | martin_close_collapsable('createtable', 'createtableicon'); |
||
0 ignored issues
–
show
|
|||
52 | break; |
||
53 | case "addhotel": |
||
54 | include MARTIN_ROOT_PATH . 'include/form.hotel.service.relation.php'; |
||
55 | martin_collapsableBar('createtable', 'createtableicon', _AM_MARTIN_ADD_HOTEL_SERVICE, _AM_MARTIN_ADD_HOTEL_SERVICE); |
||
56 | CreateButton(); |
||
57 | $serviceList = $hotelservice_handler->getServiceList($service_id); |
||
58 | $hotelList = $hotelservice_handler->getHotelList($hotel_id); |
||
59 | $Relation = $hotelservice_handler->getHotelServiceRelation($hotel_id, $service_id); |
||
60 | $form = new form_hotel_service_relation($Relation, $serviceList, $hotelList); |
||
61 | $form->display(); |
||
62 | martin_close_collapsable('createtable', 'createtableicon'); |
||
0 ignored issues
–
show
|
|||
63 | break; |
||
64 | case "save": |
||
65 | $HotelServiceObj->setVar('service_id', $id); |
||
66 | $HotelServiceObj->setVar('service_type_id', (isset($_POST['service_type_id'])) ? (int)($_POST['service_type_id']) : 0); |
||
67 | $HotelServiceObj->setVar('service_unit', (isset($_POST['service_unit'])) ? addslashes($_POST['service_unit']) : ''); |
||
68 | $HotelServiceObj->setVar('service_name', (isset($_POST['service_name'])) ? addslashes($_POST['service_name']) : ''); |
||
69 | $HotelServiceObj->setVar('service_instruction', (isset($_POST['service_instruction'])) ? addslashes($_POST['service_instruction']) : ''); |
||
70 | if (!$id) { |
||
71 | $HotelServiceObj->setNew(); |
||
72 | } |
||
73 | if ($HotelServiceObj->isNew()) { |
||
74 | $redirect_msg = _AM_MARTIN_ADDED_SUCCESSFULLY; |
||
75 | } else { |
||
76 | $redirect_msg = _AM_MARTIN_MODIFIED_SUCCESSFULLY; |
||
77 | } |
||
78 | $redirect_to = 'martin.hotel.service.php?action=list'; |
||
79 | if (!$hotelservice_handler->insert($HotelServiceObj)) { |
||
80 | redirect_header('javascript:history.go(-1);', 2, _AM_MARTIN_OPERATION_FAILED); |
||
81 | exit(); |
||
82 | } |
||
83 | redirect_header($redirect_to, 2, $redirect_msg); |
||
84 | break; |
||
85 | case "typesave": |
||
86 | $HotelServiceTypeObj->setVar('service_type_id', $typeid); |
||
87 | $HotelServiceTypeObj->setVar('service_type_name', (isset($_POST['service_type_name'])) ? addslashes($_POST['service_type_name']) : ''); |
||
88 | if (!$typeid) { |
||
89 | $HotelServiceTypeObj->setNew(); |
||
90 | } |
||
91 | if ($HotelServiceTypeObj->isNew()) { |
||
92 | $redirect_msg = _AM_MARTIN_ADDED_SUCCESSFULLY; |
||
93 | } else { |
||
94 | $redirect_msg = _AM_MARTIN_MODIFIED_SUCCESSFULLY; |
||
95 | } |
||
96 | $redirect_to = 'martin.hotel.service.php?action=typelist'; |
||
97 | if (!$hotelservicetype_handler->insert($HotelServiceTypeObj)) { |
||
98 | redirect_header('javascript:history.go(-1);', 2, _AM_MARTIN_OPERATION_FAILED); |
||
99 | exit(); |
||
100 | } |
||
101 | redirect_header($redirect_to, 2, $redirect_msg); |
||
102 | break; |
||
103 | case "hotelsave": |
||
104 | $RelationData = array('hotel_id' => (int)($_POST['hotel_id']), 'service_id' => (int)($_POST['service_id']), 'service_extra_price' => (int)($_POST['service_extra_price'])); |
||
105 | |||
106 | $IsOld = false; |
||
107 | $redirect_msg = _AM_MARTIN_ADDED_SUCCESSFULLY; |
||
108 | if ($hotel_id && $service_id) { |
||
109 | $IsOld = true; |
||
110 | $redirect_msg = _AM_MARTIN_MODIFIED_SUCCESSFULLY; |
||
111 | $RelationData = array('hotel_id' => $hotel_id, 'service_id' => $service_id, 'service_extra_price' => (int)($_POST['service_extra_price'])); |
||
112 | } |
||
113 | $redirect_to = 'martin.hotel.service.php?action=hotellist'; |
||
114 | |||
115 | //var_dump($IsOld); |
||
116 | //var_dump($RelationData);exit; |
||
117 | |||
118 | if (!$hotelservice_handler->InsertRelation($RelationData, $IsOld)) { |
||
119 | redirect_header('javascript:history.go(-1);', 2, _AM_MARTIN_OPERATION_FAILED . '<br>' . _AM_MARTIN_ERROR_DUPLICATION); |
||
120 | exit(); |
||
121 | } |
||
122 | redirect_header($redirect_to, 2, $redirect_msg); |
||
123 | |||
124 | break; |
||
125 | View Code Duplication | case "del": |
|
126 | if (!$confirm) { |
||
127 | xoops_confirm(array('op' => 'del', 'id' => $id, 'confirm' => 1, 'name' => $HotelServiceObj->service_name()), '?action=del', _DELETE . " '" . $HotelServiceObj->service_name() . "'. <br /> <br /> ". _AM_MARTIN_OK_TO_DELETE_SERVICE, _DELETE); |
||
128 | } else { |
||
129 | if ($hotelservice_handler->delete($HotelServiceObj)) { |
||
130 | $redirect_msg = _AM_MARTIN_OK_TO_DELETE_THE_ORDER; |
||
131 | $redirect_to = "martin.hotel.service.php"; |
||
132 | } else { |
||
133 | $redirect_msg = _AM_MARTIN_DELETE_FAILED; |
||
134 | $redirect_to = "javascript:history.go(-1);"; |
||
135 | } |
||
136 | redirect_header($redirect_to, 2, $redirect_msg); |
||
137 | } |
||
138 | break; |
||
139 | View Code Duplication | case "typedel": |
|
140 | if (!$confirm) { |
||
141 | xoops_confirm(array('op' => 'del', 'typeid' => $typeid, 'confirm' => 1, 'name' => $HotelServiceTypeObj->service_type_name()), '?action=typedel', _DELETE . " '" . $HotelServiceTypeObj->service_type_name() . "'. <br /> <br /> "._AM_MARTIN_OK_TO_DELETE_SERVICE_CATEGORY, _DELETE); |
||
142 | } else { |
||
143 | if ($hotelservicetype_handler->delete($HotelServiceTypeObj)) { |
||
144 | $redirect_msg = _AM_MARTIN_OK_TO_DELETE_THE_ORDER; |
||
145 | $redirect_to = "martin.hotel.service.php?action=typelist"; |
||
146 | } else { |
||
147 | $redirect_msg = _AM_MARTIN_DELETE_FAILED; |
||
148 | $redirect_to = "javascript:history.go(-1);"; |
||
149 | } |
||
150 | redirect_header($redirect_to, 2, $redirect_msg); |
||
151 | } |
||
152 | break; |
||
153 | case "hoteldel": |
||
154 | $Relation = $hotelservice_handler->getHotelServiceRelation($hotel_id, $service_id); |
||
155 | if (!$confirm) { |
||
156 | xoops_confirm(array( |
||
157 | 'op' => 'del', |
||
158 | 'hotel_id' => $hotel_id, |
||
159 | 'confirm' => 1, |
||
160 | 'name' => $Relation['hotel_name']), "?action=hoteldel&hotel_id=$hotel_id&service_id=$service_id", _DELETE . " '" . $Relation['hotel_name'] . " : " . $Relation['service_name'] . "'. <br /> <br />"._AM_MARTIN_SURE_TO_DELETE_RELATION, _DELETE); |
||
161 | } else { |
||
162 | if ($hotelservice_handler->DeleteServiceRelation($hotel_id, $service_id)) { |
||
163 | $redirect_msg = _AM_MARTIN_OK_TO_DELETE_THE_ORDER; |
||
164 | $redirect_to = "martin.hotel.service.php?action=hotellist"; |
||
165 | } else { |
||
166 | $redirect_msg = _AM_MARTIN_DELETE_FAILED; |
||
167 | $redirect_to = "javascript:history.go(-1);"; |
||
168 | } |
||
169 | redirect_header($redirect_to, 2, $redirect_msg); |
||
170 | } |
||
171 | break; |
||
172 | case "list": |
||
173 | martin_collapsableBar('createtable', 'createtableicon', _AM_MARTIN_SERVICE_LIST, _AM_MARTIN_SERVICE_LIST); |
||
174 | CreateButton(); |
||
175 | $HotelServiceObjs = $hotelservice_handler->getHotelServices($xoopsModuleConfig['perpage'], $start, 0); |
||
176 | |||
177 | echo "<table width='100%' cellspacing=1 cellpadding=2 border=0 class = outer>"; |
||
178 | echo "<tr>"; |
||
179 | echo "<td class='bg3' align='left'><b>ID</b></td>"; |
||
180 | echo "<td class='bg3' align='left'><b>" . _AM_MARTIN_SERVICE_TYPE . "</b></td>"; |
||
181 | echo "<td class='bg3' align='left'><b>" . _AM_MARTIN_SERVICE_UNIT . "</b></td>"; |
||
182 | echo "<td class='bg3' align='left'><b>" . _AM_MARTIN_SERVICE_NAME . "</b></td>"; |
||
183 | echo "<td width='60' class='bg3' align='center'><b>" . _AM_MARTIN_ACTIONS . "</b></td>"; |
||
184 | echo "</tr>"; |
||
185 | $Cout = $hotelservice_handler->getCount(); |
||
186 | if (count($HotelServiceObjs) > 0) { |
||
187 | foreach ($HotelServiceObjs as $key => $thiscat) { |
||
188 | $modify = "<a href='?action=add&id=" . $thiscat->service_id() . "'><img src='" . XOOPS_URL . "/modules/" . $xoopsModule->dirname() . "/images/icon/edit.gif'/></a>"; |
||
189 | $delete = "<a href='?action=del&id=" . $thiscat->service_id() . "'><img src='" . XOOPS_URL . "/modules/" . $xoopsModule->dirname() . "/images/icon/delete.gif'/></a>"; |
||
190 | echo "<tr><td class='even' align='left'>" . $thiscat->service_id() . "</td>"; |
||
191 | echo "<td class='even' align='left'>" . $thiscat->service_type_name() . "</td>"; |
||
192 | echo "<td class='even' align='left'>" . $thiscat->service_unit() . "</td>"; |
||
193 | echo "<td class='even' align='left'>" . $thiscat->service_name() . "</td>"; |
||
194 | echo "<td class='even' align='center'> $modify $delete </td></tr>"; |
||
195 | } |
||
196 | } else { |
||
197 | echo "<tr>"; |
||
198 | echo "<td class='head' align='center' colspan= '4'>" . MARTIN_IS_NUll . "</td>"; |
||
199 | echo "</tr>"; |
||
200 | } |
||
201 | echo "</table>\n"; |
||
202 | include_once XOOPS_ROOT_PATH . '/class/pagenav.php'; |
||
203 | $pagenav = new XoopsPageNav($Cout, $xoopsModuleConfig['perpage'], $start, "action=$action&start"); |
||
204 | echo '<div style="text-align:right;">' . $pagenav->renderNav() . '</div>'; |
||
205 | echo "<br />"; |
||
206 | martin_close_collapsable('createtable', 'createtableicon'); |
||
0 ignored issues
–
show
|
|||
207 | echo "<br>"; |
||
208 | break; |
||
209 | case "typelist": |
||
210 | martin_collapsableBar('createtable', 'createtableicon', _AM_MARTIN_SERVICE_TYPE_LIST, _AM_MARTIN_SERVICE_TYPE_LIST); |
||
211 | CreateButton(); |
||
212 | $HotelServiceTypeObjs = $hotelservicetype_handler->getHotelServiceTypes($xoopsModuleConfig['perpage'], $start, 0); |
||
213 | |||
214 | echo "<table width='100%' cellspacing=1 cellpadding=2 border=0 class = outer>"; |
||
215 | echo "<tr>"; |
||
216 | echo "<td class='bg3' align='left'><b>ID</b></td>"; |
||
217 | echo "<td class='bg3' align='left'><b>" . _AM_MARTIN_SERVICE_TYPE . "</b></td>"; |
||
218 | echo "<td width='60' class='bg3' align='center'><b>" . _AM_MARTIN_ACTIONS . "</b></td>"; |
||
219 | echo "</tr>"; |
||
220 | $Cout = $hotelservicetype_handler->getCount(); |
||
221 | if (count($HotelServiceTypeObjs) > 0) { |
||
222 | foreach ($HotelServiceTypeObjs as $key => $thiscat) { |
||
223 | $modify = "<a href='?action=typeadd&typeid=" . $thiscat->service_type_id() . "'><img src='" . XOOPS_URL . "/modules/" . $xoopsModule->dirname() . "/images/icon/edit.gif'/></a>"; |
||
224 | $delete = "<a href='?action=typedel&typeid=" . $thiscat->service_type_id() . "'><img src='" . XOOPS_URL . "/modules/" . $xoopsModule->dirname() . "/images/icon/delete.gif'/></a>"; |
||
225 | echo "<tr><td class='even' align='lefet'>" . $thiscat->service_type_id() . "</td>"; |
||
226 | echo "<td class='even' align='lefet'>" . $thiscat->service_type_name() . "</td>"; |
||
227 | echo "<td class='even' align='center'> $modify $delete </td></tr>"; |
||
228 | } |
||
229 | } else { |
||
230 | echo "<tr>"; |
||
231 | echo "<td class='head' align='center' colspan= '3'>" . MARTIN_IS_NUll . "</td>"; |
||
232 | echo "</tr>"; |
||
233 | } |
||
234 | echo "</table>\n"; |
||
235 | include_once XOOPS_ROOT_PATH . '/class/pagenav.php'; |
||
236 | $pagenav = new XoopsPageNav($Cout, $xoopsModuleConfig['perpage'], $start, "action=$action&start"); |
||
237 | echo '<div style="text-align:right;">' . $pagenav->renderNav() . '</div>'; |
||
238 | echo "<br />"; |
||
239 | martin_close_collapsable('createtable', 'createtableicon'); |
||
0 ignored issues
–
show
|
|||
240 | echo "<br>"; |
||
241 | break; |
||
242 | case "hotellist": |
||
243 | martin_collapsableBar('createtable', 'createtableicon', _AM_MARTIN_HOTEL_SERVICE_LIST, _AM_MARTIN_HOTEL_SERVICE_LIST); |
||
244 | CreateButton(); |
||
245 | $HotelServiceRelations = $hotelservice_handler->getHotelServiceRelations($xoopsModuleConfig['perpage'], $start); |
||
246 | |||
247 | echo "<table width='100%' cellspacing=1 cellpadding=2 border=0 class = outer>"; |
||
248 | echo "<tr>"; |
||
249 | echo "<td class='bg3' align='left'><b>" . _AM_MARTIN_HOTEL_NAME . "</b></td>"; |
||
250 | echo "<td class='bg3' align='left'><b>" . _AM_MARTIN_SERVICE_NAME . "</b></td>"; |
||
251 | echo "<td class='bg3' align='left'><b>" . _AM_MARTIN_SERVICE_PRICES . "</b></td>"; |
||
252 | echo "<td width='60' class='bg3' align='center'><b>" . _AM_MARTIN_ACTIONS . "</b></td>"; |
||
253 | echo "</tr>"; |
||
254 | $Cout = $hotelservice_handler->GetRelationCount(); |
||
255 | if (count($HotelServiceRelations) > 0) { |
||
256 | foreach ($HotelServiceRelations as $key => $relation) { |
||
257 | $modify = "<a href='?action=addhotel&hotel_id={$relation['hotel_id']}&service_id={$relation['service_id']}'><img src='" . XOOPS_URL . "/modules/" . $xoopsModule->dirname() . "/images/icon/edit.gif'/></a>"; |
||
258 | $delete = "<a href='?action=hoteldel&hotel_id={$relation['hotel_id']}&service_id={$relation['service_id']}'><img src='" . XOOPS_URL . "/modules/" . $xoopsModule->dirname() . "/images/icon/delete.gif'/></a>"; |
||
259 | echo "<td class='even' align='left'>" . $relation['hotel_name'] . "</td>"; |
||
260 | echo "<td class='even' align='left'>" . $relation['service_name'] . "</td>"; |
||
261 | echo "<td class='even' align='left'>" . $relation['service_extra_price'] . " </td>"; |
||
262 | echo "<td class='even' align='center'> $modify $delete </td></tr>"; |
||
263 | } |
||
264 | } else { |
||
265 | echo "<tr>"; |
||
266 | echo "<td class='head' align='center' colspan= '4'>" . MARTIN_IS_NUll . "</td>"; |
||
267 | echo "</tr>"; |
||
268 | } |
||
269 | echo "</table>\n"; |
||
270 | include_once XOOPS_ROOT_PATH . '/class/pagenav.php'; |
||
271 | $pagenav = new XoopsPageNav($Cout, $xoopsModuleConfig['perpage'], $start, "action=$action&start"); |
||
272 | echo '<div style="text-align:right;">' . $pagenav->renderNav() . '</div>'; |
||
273 | echo "<br />"; |
||
274 | |||
275 | martin_close_collapsable('createtable', 'createtableicon'); |
||
0 ignored issues
–
show
|
|||
276 | break; |
||
277 | default: |
||
278 | redirect_header(XOOPS_URL, 2, _AM_MARTIN_UNAUTHORIZED_ACCESS); |
||
279 | break; |
||
280 | } |
||
281 | |||
282 | function CreateButton() |
||
0 ignored issues
–
show
The function
CreateButton() has been defined more than once; this definition is ignored, only the first definition in admin/martin.auction.php (L178-184) is considered.
This check looks for functions that have already been defined in other files. Some Codebases, like WordPress, make a practice of defining functions multiple times. This
may lead to problems with the detection of function parameters and types. If you really
need to do this, you can mark the duplicate definition with the /**
* @ignore
*/
function getUser() {
}
function getUser($id, $realm) {
}
See also the PhpDoc documentation for @ignore. ![]() |
|||
283 | { |
||
284 | Create_button(array( |
||
285 | 'addservicetype' => array('url' => 'martin.hotel.service.php?action=typeadd', 'value' => _AM_MARTIN_ADD_SERVICE_TYPE), |
||
286 | 'servicetypelist' => array('url' => 'martin.hotel.service.php?action=typelist', 'value' => _AM_MARTIN_SERVICE_TYPE_LIST), |
||
287 | 'addservice' => array('url' => 'martin.hotel.service.php?action=add', 'value' => _AM_MARTIN_ADD_SERVICE), |
||
288 | 'servicetype' => array('url' => 'martin.hotel.service.php?action=list', 'value' => _AM_MARTIN_SERVICE_LIST), |
||
289 | 'addhotel' => array('url' => 'martin.hotel.service.php?action=addhotel', 'value' => _AM_MARTIN_ADD_HOTEL_SERVICE), |
||
290 | 'hotelservice' => array('url' => 'martin.hotel.service.php?action=hotellist', 'value' => _AM_MARTIN_HOTEL_SERVICE_LIST))); |
||
291 | } |
||
292 | |||
293 | //底部 |
||
294 | include_once __DIR__ . '/admin_footer.php'; |
||
295 | |||
296 |