PluginProbe
VikBooking Hotel Booking Engine & PMS / trunk
VikBooking Hotel Booking Engine & PMS vtrunk
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 / layouts / ai / gencontent.php

gencontent.php in VikBooking Hotel Booking Engine & PMS trunk, at admin/layouts/ai/gencontent.php

100 lines 5.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 srl
6 * @copyright Copyright (C) 2025 E4J srl. 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 * Obtain vars from arguments received in the layout file.
15 *
16 * @var string $type Type identifier for the content to generate.
17 * @var string $prefix The class prefix for the various elements.
18 * @var string $ecls Optional extra class list to append.
19 * @var string $info Optional information to be used by default.
20 * @var string $help Optional help text to enter the information.
21 * @var string $fields Optional extra fields or content to display.
22 * @var array $room Optional room record for generating room content.
23 */
24 extract($displayData);
25
26 // define the default argument values
27 $type = $type ?? 'mail_content';
28 $prefix = $prefix ?? 'vbo-content-genai';
29 $info = $info ?? '';
30 $help = $help ?? '';
31 $ecls = $ecls ?? null;
32
33 ?>
34
35 <div class="<?php echo $prefix; ?>-helper<?php echo $ecls ? ' ' . $ecls : ''; ?>" style="display: none;">
36 <div class="<?php echo $prefix; ?>-wrap<?php echo $ecls ? ' ' . $ecls : ''; ?>">
37 <div class="vbo-admin-container vbo-admin-container-full vbo-admin-container-compact">
38 <div class="vbo-params-wrap">
39 <div class="vbo-params-container">
40 <div class="vbo-params-block">
41
42 <div class="vbo-param-container">
43 <div class="vbo-param-label"><?php echo JText::translate('VBOBOOKINGLANG'); ?></div>
44 <div class="vbo-param-setting">
45 <select class="<?php echo $prefix; ?>-field" data-field="language">
46 <option value="">- <?php echo JText::translate('VBCONFIGSEARCHPSMARTSEARCHAUTO'); ?> -</option>
47 <?php
48 foreach (VikBooking::getVboApplication()->getKnownLanguages() as $tag => $lang) {
49 ?>
50 <option value="<?php echo JHtml::fetch('esc_attr', $lang['nativeName'] . '__' . $tag); ?>"><?php echo JHtml::fetch('esc_html', $lang['nativeName']); ?></option>
51 <?php
52 }
53 ?>
54 </select>
55 </div>
56 </div>
57
58 <?php
59 // optional extra fields in HTML format
60 if (($fields ?? null) && is_string($fields)) {
61 echo $fields;
62 }
63
64 // information string
65 $room_def_ai_info = $info;
66 if (($room ?? []) && !$info) {
67 // build the basic room information string
68 $geo = VikBooking::getGeocodingInstance();
69 $room_params = json_decode(($room['params'] ?? '[]'), true);
70 $address = $geo->getRoomGeoParams($room_params, 'address', '');
71 $latitude = $geo->getRoomGeoParams($room_params, 'latitude', '');
72 $longitude = $geo->getRoomGeoParams($room_params, 'longitude', '');
73
74 $room_ai_infos = [
75 $room['name'] ?? '',
76 JText::translate('VBEDITORDERADULTS') . ': ' . ($room['toadult'] ?? 1),
77 (($room['tochild'] ?? 0) > 0 ? (JText::translate('VBEDITORDERCHILDREN') . ': ' . $room['tochild']) : ''),
78 ($address ? (JText::translate('VBO_GEO_ADDRESS') . ': ' . $address) : ''),
79 (!$address && $latitude ? (JText::translate('VBPLACELAT') . ': ' . $latitude) : ''),
80 (!$address && $longitude ? (JText::translate('VBPLACELNG') . ': ' . $longitude) : ''),
81 ];
82
83 $room_def_ai_info = implode(', ', array_filter($room_ai_infos));
84 }
85 ?>
86 <div class="vbo-param-container">
87 <div class="vbo-param-label"><?php echo JText::translate('VBOADMINLEGENDDETAILS'); ?></div>
88 <div class="vbo-param-setting">
89 <textarea rows="6" class="<?php echo $prefix; ?>-field" data-field="information"><?php echo JHtml::fetch('esc_textarea', $room_def_ai_info); ?></textarea>
90 <span class="vbo-param-setting-comment"><?php echo $help ?: JText::translate('VBO_AI_GEN_CONTENT_INFO_HELP'); ?></span>
91 </div>
92 </div>
93
94 </div>
95 </div>
96 </div>
97 </div>
98 </div>
99 </div>
100