PluginProbe
VikBooking Hotel Booking Engine & PMS / 1.8.16
VikBooking Hotel Booking Engine & PMS v1.8.16
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
← All changes | admin/controllers/listings.php +36 -0 1.8.7 → 1.8.16 View file →
@@ -70,5 +70,41 @@
70 70
71 71 // send result to output
72 72 VBOHttpDocument::getInstance()->json($result);
73 73 }
74 +
75 + /**
76 + * AJAX endpoint to get the eligible options/extras for a given room party.
77 + *
78 + * @return void
79 + *
80 + * @since 1.18.8 (J) - 1.8.8 (WP)
81 + */
82 + public function get_eligible_options()
83 + {
84 + if (!JSession::checkToken()) {
85 + VBOHttpDocument::getInstance()->close(403, JText::translate('JINVALID_TOKEN'));
86 + }
87 +
88 + $app = JFactory::getApplication();
89 +
90 + // gather request values
91 + $listingId = $app->input->getUInt('listing_id', 0);
92 + $adults = $app->input->getUInt('adults', 0);
93 + $children = $app->input->getUInt('children', 0);
94 + $rateId = $app->input->getUInt('rate_id', 0);
95 + $checkin = $app->input->getString('checkin', '');
96 + $checkout = $app->input->getString('checkout', '');
97 +
98 + // get the listing eligible options for the given room party
99 + $eligibleOptions = VBORoomHelper::getInstance()->getEligibleOptions($listingId, [
100 + 'checkin' => $checkin,
101 + 'checkout' => $checkout,
102 + 'adults' => $adults,
103 + 'children' => $children,
104 + 'rate_id' => $rateId,
105 + ]);
106 +
107 + // send list to output
108 + VBOHttpDocument::getInstance($app)->json($eligibleOptions);
109 + }
74 110 }