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 / admin / helpers / src / history / detector / room.php

room.php in VikBooking Hotel Booking Engine & PMS 1.8.15, at admin/helpers/src/history/detector/room.php

77 lines 2.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 core
5 * @author E4J s.r.l.
6 * @copyright Copyright (C) 2025 E4J s.r.l. All Rights Reserved.
7 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
8 * @link https://vikwp.com
9 */
10
11 // No direct access
12 defined('ABSPATH') or die('No script kiddies please!');
13
14 /**
15 * Item room changes detector class.
16 *
17 * @since 1.18 (J) - 1.8 (WP)
18 */
19 class VBOHistoryDetectorRoom extends VBOHistoryDetectoraware
20 {
21 /**
22 * Class constructor.
23 */
24 public function __construct(?string $propertyName = null)
25 {
26 parent::__construct($propertyName ?: 'id_room');
27 }
28
29 /**
30 * @inheritDoc
31 */
32 protected function checkChanges($previousValue, $currentValue)
33 {
34 // compare the room IDs as integers
35 return (int) $previousValue !== (int) $currentValue;
36 }
37
38 /**
39 * @inheritDoc
40 */
41 protected function doDescribe($previousValue, $currentValue)
42 {
43 if ($previousValue) {
44 // convert room ID into a readable name
45 $previousValue = VikBooking::getRoomInfo((int) $previousValue);
46 $previousValue = $previousValue['name'] ?? null;
47 }
48
49 if ($currentValue) {
50 // convert room ID into a readable name
51 $currentValue = VikBooking::getRoomInfo((int) $currentValue);
52 $currentValue = $currentValue['name'] ?? null;
53 }
54
55 if (!$previousValue) {
56 // assigned to a room from empty
57 return JText::sprintf('VBO_HISTORY_TRACKER_ROOM_ADDED', $currentValue);
58 }
59
60 if (!$currentValue) {
61 // removed assigned room
62 return JText::sprintf('VBO_HISTORY_TRACKER_ROOM_REMOVED', $previousValue);
63 }
64
65 // changed from a room to another
66 return JText::sprintf('VBO_HISTORY_TRACKER_ROOM_CHANGED', $previousValue, $currentValue);
67 }
68
69 /**
70 * @inheritDoc
71 */
72 public function getIcon()
73 {
74 return VikBookingIcons::i('bed');
75 }
76 }
77