PluginProbe
VikBooking Hotel Booking Engine & PMS / 1.6.4
VikBooking Hotel Booking Engine & PMS v1.6.4
1.8.16 1.8.15 1.8.14 1.8.13 1.8.12 1.8.11 1.8.10 1.8.9 1.8.6 1.8.7 1.8.8 trunk 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 All 37 releases
vikbooking / admin / views / tariffs / view.html.php

view.html.php in VikBooking Hotel Booking Engine & PMS 1.6.4, at admin/views/tariffs/view.html.php

137 lines 5.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * @package VikBooking
4 * @subpackage com_vikbooking
5 * @author Alessio Gaggii - e4j - Extensionsforjoomla.com
6 * @copyright Copyright (C) 2018 e4j - Extensionsforjoomla.com. All rights reserved.
7 * @license GNU General Public License version 2 or later; see LICENSE
8 * @link https://vikwp.com
9 */
10
11 defined('ABSPATH') or die('No script kiddies please!');
12
13 // import Joomla view library
14 jimport('joomla.application.component.view');
15
16 class VikBookingViewTariffs extends JViewVikBooking {
17
18 function display($tpl = null) {
19 // Set the toolbar
20 $this->addToolBar();
21
22 $cid = VikRequest::getVar('cid', array(0));
23 $aid = $cid[0];
24
25 $dbo = JFactory::getDBO();
26 $mainframe = JFactory::getApplication();
27 if (empty($aid)) {
28 $q = "SELECT `id` FROM `#__vikbooking_rooms` ORDER BY `#__vikbooking_rooms`.`name` ASC LIMIT 1";
29 $dbo->setQuery($q);
30 $dbo->execute();
31 if ($dbo->getNumRows() == 1) {
32 $aid = $dbo->loadResult();
33 }
34 }
35 if (empty($aid)) {
36 VikError::raiseWarning('', 'No Rooms.');
37 $mainframe->redirect("index.php?option=com_vikbooking&task=rooms");
38 exit;
39 }
40 $q = "SELECT `id`,`name`,`img`,`idcat` FROM `#__vikbooking_rooms` WHERE `id`=".$dbo->quote($aid).";";
41 $dbo->setQuery($q);
42 $dbo->execute();
43 if ($dbo->getNumRows() != 1) {
44 VikError::raiseWarning('', 'No Rooms.');
45 $mainframe->redirect("index.php?option=com_vikbooking&task=rooms");
46 exit;
47 }
48 $roomrows = $dbo->loadAssoc();
49 $q = "SELECT * FROM `#__vikbooking_prices`;";
50 $dbo->setQuery($q);
51 $dbo->execute();
52 $prices = $dbo->getNumRows() > 0 ? $dbo->loadAssocList() : "";
53 $pnewtar = VikRequest::getString('newdispcost', '', 'request');
54 $pddaysfrom = VikRequest::getInt('ddaysfrom', '', 'request');
55 $pddaysto = VikRequest::getInt('ddaysto', '', 'request');
56 if (!empty($pnewtar) && !empty($pddaysfrom) && is_array($prices)) {
57 if (empty($pddaysto) || $pddaysfrom == $pddaysto) {
58 foreach ($prices as $pr) {
59 $tmpvarone = VikRequest::getFloat('dprice'.$pr['id'], '', 'request');
60 if (!empty($tmpvarone)) {
61 $tmpvartwo = VikRequest::getString('dattr'.$pr['id'], '', 'request');
62 $multipattr = is_numeric($tmpvartwo) ? true : false;
63 $safeq = "SELECT `id` FROM `#__vikbooking_dispcost` WHERE `days`=".$dbo->quote($pddaysfrom)." AND `idroom`='".$roomrows['id']."' AND `idprice`='".$pr['id']."';";
64 $dbo->setQuery($safeq);
65 $dbo->execute();
66 if ($dbo->getNumRows() == 0) {
67 $q = "INSERT INTO `#__vikbooking_dispcost` (`idroom`,`days`,`idprice`,`cost`,`attrdata`) VALUES('".$roomrows['id']."',".$dbo->quote($pddaysfrom).",'".$pr['id']."','".($tmpvarone * $pddaysfrom)."',".($multipattr ? "'".($tmpvartwo * $pddaysfrom)."'" : $dbo->quote($tmpvartwo)).");";
68 $dbo->setQuery($q);
69 $dbo->execute();
70 } elseif ($dbo->getNumRows() == 1) {
71 $upd_id = $dbo->loadResult();
72 $q = "UPDATE `#__vikbooking_dispcost` SET `cost`='".($tmpvarone * $pddaysfrom)."', `attrdata`=".($multipattr ? "'".($tmpvartwo * $pddaysfrom)."'" : $dbo->quote($tmpvartwo))." WHERE `id`=".(int)$upd_id." AND `days`=".$dbo->quote($pddaysfrom)." AND `idroom`='".$roomrows['id']."' AND `idprice`='".$pr['id']."' LIMIT 1;";
73 $dbo->setQuery($q);
74 $dbo->execute();
75 }
76 }
77 }
78 } else {
79 $pddaysto = intval($pddaysto) > 365 ? 365 : $pddaysto;
80 for ($i = intval($pddaysfrom); $i <= intval($pddaysto); $i++) {
81 foreach ($prices as $pr) {
82 $tmpvarone = VikRequest::getFloat('dprice'.$pr['id'], '', 'request');
83 if (!empty($tmpvarone)) {
84 $tmpvartwo = VikRequest::getString('dattr'.$pr['id'], '', 'request');
85 $multipattr = is_numeric($tmpvartwo) ? true : false;
86 $safeq = "SELECT `id` FROM `#__vikbooking_dispcost` WHERE `days`=".$dbo->quote($i)." AND `idroom`='".$roomrows['id']."' AND `idprice`='".$pr['id']."';";
87 $dbo->setQuery($safeq);
88 $dbo->execute();
89 if ($dbo->getNumRows() == 0) {
90 $q = "INSERT INTO `#__vikbooking_dispcost` (`idroom`,`days`,`idprice`,`cost`,`attrdata`) VALUES('".$roomrows['id']."',".$dbo->quote($i).",'".$pr['id']."','".($tmpvarone * $i)."',".($multipattr ? "'".($tmpvartwo * $i)."'" : $dbo->quote($tmpvartwo)).");";
91 $dbo->setQuery($q);
92 $dbo->execute();
93 } elseif ($dbo->getNumRows() == 1) {
94 $upd_id = $dbo->loadResult();
95 $q = "UPDATE `#__vikbooking_dispcost` SET `cost`='".($tmpvarone * $i)."', `attrdata`=".($multipattr ? "'".($tmpvartwo * $i)."'" : $dbo->quote($tmpvartwo))." WHERE `id`=".(int)$upd_id." AND `days`=".$dbo->quote($i)." AND `idroom`='".$roomrows['id']."' AND `idprice`='".$pr['id']."' LIMIT 1;";
96 $dbo->setQuery($q);
97 $dbo->execute();
98 }
99 }
100 }
101 }
102 }
103 }
104
105 $q = "SELECT * FROM `#__vikbooking_dispcost` WHERE `idroom`=" . (int)$roomrows['id'] . " ORDER BY `#__vikbooking_dispcost`.`days` ASC, `#__vikbooking_dispcost`.`idprice` ASC;";
106 $dbo->setQuery($q);
107 $rows = $dbo->loadAssocList();
108
109 $q = "SELECT `id`,`name` FROM `#__vikbooking_rooms` ORDER BY `#__vikbooking_rooms`.`name` ASC;";
110 $dbo->setQuery($q);
111 $allc = $dbo->loadAssocList();
112
113 $this->roomrows = $roomrows;
114 $this->rows = $rows;
115 $this->prices = $prices;
116 $this->allc = $allc;
117
118 // Display the template
119 parent::display($tpl);
120 }
121
122 /**
123 * Sets the toolbar
124 */
125 protected function addToolBar() {
126 JToolBarHelper::title(JText::translate('VBMAINTARIFFETITLE'), 'vikbooking');
127 JToolBarHelper::save('cancel', JText::translate('VBMAINTARIFFEBACK'));
128 JToolBarHelper::spacer();
129 if (JFactory::getUser()->authorise('core.delete', 'com_vikbooking')) {
130 JToolBarHelper::deleteList(JText::translate('VBDELCONFIRM'), 'removetariffs', JText::translate('VBMAINTARIFFEDEL'));
131 JToolBarHelper::spacer();
132 JToolBarHelper::spacer();
133 }
134 }
135
136 }
137