PluginProbe
VikBooking Hotel Booking Engine & PMS / 1.8.15
VikBooking Hotel Booking Engine & PMS v1.8.15
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 1.7.3 All 36 releases
vikbooking / site / views / packageslist / view.html.php

view.html.php in VikBooking Hotel Booking Engine & PMS 1.8.15, at site/views/packageslist/view.html.php

85 lines 3.0 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
14 jimport('joomla.application.component.view');
15
16 class VikbookingViewPackageslist extends JViewVikBooking {
17 function display($tpl = null) {
18 VikBooking::prepareViewContent();
19 $dbo = JFactory::getDBO();
20 $vbo_tn = VikBooking::getTranslator();
21 $psortby = VikRequest::getString('sortby', '', 'request');
22 $psortby = !in_array($psortby, array('cost', 'name', 'id', 'dfrom')) ? 'dfrom' : $psortby;
23 $psorttype = VikRequest::getString('sorttype', '', 'request');
24 $psorttype = $psorttype == 'desc' ? 'DESC' : 'ASC';
25 $preslim = VikRequest::getInt('reslim', '', 'request');
26 $preslim = empty($preslim) || $preslim < 1 ? 20 : $preslim;
27 $lim0 = VikRequest::getVar('limitstart', 0, '', 'int');
28
29 $nowts = time();
30 $packages = array();
31 $navig = '';
32
33 $q = "SELECT SQL_CALC_FOUND_ROWS * FROM `#__vikbooking_packages` WHERE `dto`>=".$nowts." ORDER BY `".$psortby."` ".$psorttype;
34 $dbo->setQuery($q, $lim0, $preslim);
35 $dbo->execute();
36 if ($dbo->getNumRows() > 0) {
37 $packages = $dbo->loadAssocList();
38 //pagination
39 $dbo->setQuery('SELECT FOUND_ROWS();');
40 jimport('joomla.html.pagination');
41 $pageNav = new JPagination($dbo->loadResult(), $lim0, $preslim);
42 $navig = $pageNav->getPagesLinks();
43 //
44 $vbo_tn->translateContents($packages, '#__vikbooking_packages');
45 if ($vbo_tn->default_lang != $vbo_tn->current_lang && $psortby == 'name') {
46 //VBO 1.9 - resort packages by name after the translations have been applied
47 $resort_map = array();
48 foreach ($packages as $k => $v) {
49 $resort_map[$k] = $v['name'];
50 }
51 asort($resort_map);
52 $resorted = array();
53 foreach ($resort_map as $k => $v) {
54 $resorted[$k] = $packages[$k];
55 }
56 $packages = $resorted;
57 unset($resorted);
58 }
59 foreach ($packages as $pk => $pv) {
60 $q = "SELECT `pr`.`idroom`,`r`.`name`,`r`.`img`,`r`.`fromadult`,`r`.`toadult`,`r`.`fromchild`,`r`.`tochild`,`r`.`totpeople`,`r`.`params` FROM `#__vikbooking_packages_rooms` AS `pr` LEFT JOIN `#__vikbooking_rooms` `r` ON `r`.`id`=`pr`.`idroom` AND `r`.`avail`=1 WHERE `pr`.`idpackage`=".(int)$pv['id'].";";
61 $dbo->setQuery($q);
62 $dbo->execute();
63 if ($dbo->getNumRows() > 0) {
64 $pkg_rooms = $dbo->loadAssocList();
65 $vbo_tn->translateContents($pkg_rooms, '#__vikbooking_rooms', array('id' => 'idroom'));
66 $packages[$pk]['rooms'] = $pkg_rooms;
67 }
68 }
69 }
70 $this->packages = $packages;
71 $this->navig = $navig;
72 $this->vbo_tn = $vbo_tn;
73 //theme
74 $theme = VikBooking::getTheme();
75 if ($theme != 'default') {
76 $thdir = VBO_SITE_PATH.DS.'themes'.DS.$theme.DS.'packageslist';
77 if (is_dir($thdir)) {
78 $this->_setPath('template', $thdir.DS);
79 }
80 }
81 //
82 parent::display($tpl);
83 }
84 }
85