Done !
| Server IP : 46.105.57.169 / Your IP : 216.73.217.35 Web Server : Apache System : Linux webm002.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaumee ( 152031) PHP Version : 8.5.7 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaumee/ptitsanes/modules/mod_sr_experience_search/ |
Upload File : |
<?php
/*------------------------------------------------------------------------
Solidres - Hotel booking extension for Joomla
------------------------------------------------------------------------
@Author Solidres Team
@Website http://www.solidres.com
@Copyright Copyright (C) 2013 - 2018 Solidres. All Rights Reserved.
@License GNU General Public License version 3, or later
------------------------------------------------------------------------*/
defined('_JEXEC') or die;
require_once __DIR__ . '/helper.php';
$moduleclass_sfx = htmlspecialchars($params->get('moduleclass_sfx'));
$filterRange = ModSRExperienceSearchHelper::getFilterRangeByPrice();
$showBaseLocation = $params->get('baseLocationBox', 1);
$showEndLocation = $params->get('endLocationBox', 1);
$showRangeBox = $params->get('rangeBox', 1);
$searchByCategory = $params->get('searchByCategory', 0);
$rangeByDate = $params->get('range_by_date', 0);
$colWidth = 12 / ($showBaseLocation + $showEndLocation + $showRangeBox + 1);
$colWidth = constant('SR_UI_GRID_COL_' . $colWidth);
$appendScript = '';
if ($searchByCategory)
{
$categories = ModSRExperienceSearchHelper::getCategories((array) $params->get('categoryIds', array()));
}
if ($showBaseLocation)
{
$baseLocationFieldType = $params->get('base_location_field_type', 0);
if ($baseLocationFieldType)
{
$baseLocationOptions = array_unique(preg_split('/\r\n|\n|;/', $params->get('base_location_list_values')));
}
else
{
$baseLocationDefaultValue = trim($params->get('base_location_text_default'));
if ($params->get('base_location_auto_complete', 0))
{
$appendScript .= '
$("input[name=base_location]").autocomplete({
source: ' . json_encode(ModSRExperienceSearchHelper::getLocations('base')) . '
});
';
}
}
}
if ($showEndLocation)
{
$endLocationFieldType = $params->get('end_location_field_type', 0);
if ($endLocationFieldType)
{
$endLocationOptions = array_unique(preg_split('/\r\n|\n|;/', $params->get('end_location_list_values')));
}
else
{
$endLocationDefaultValue = trim($params->get('end_location_text_default'));
if ($params->get('end_location_auto_complete', 0))
{
$appendScript .= '
$("input[name=end_location]").autocomplete({
source: ' . json_encode(ModSRExperienceSearchHelper::getLocations('end')) . '
});
';
}
}
}
if ($rangeByDate)
{
$input = JFactory::getApplication()->input;
$config = JComponentHelper::getParams('com_solidres');
$dateFormat = $config->get('date_format', 'd-m-Y');
$jsDateFormat = SRUtilities::convertDateFormatPattern($dateFormat);
$fromDate = trim($input->getString('fromDate', ''));
$toDate = trim($input->getString('toDate', ''));
$fromDateValue = $toDateValue = $fromDateJS = $toDateJS = '';
if (!empty($fromDate) && !empty($toDate))
{
try
{
$fromDate = JFactory::getDate($fromDate);
$toDate = JFactory::getDate($toDate);
$fromDateJS = $fromDate->format($dateFormat, false, false);
$fromDateValue = $fromDate->format('Y-m-d', false, false);
$toDateJS = $toDate->format($dateFormat, false, false);
$toDateValue = $toDate->format('Y-m-d', false, false);
}
catch (Exception $e)
{
$fromDateValue = $toDateValue = $fromDateJS = $toDateJS = '';
}
}
$months = (int) $config->get('datepicker_month_number', 3);
$appendScript .= '
var
dateFormat = "' . $jsDateFormat . '",
addDate = function (d, v) {
d.setDate(d.getDate() + v);
return d;
},
decodeHtml = function (maybeHtml) {
var textarea = document.createElement("textarea");
textarea.innerHTML = maybeHtml;
return textarea.value;
},
from = $("#srFromDate"),
to = $("#srToDate");
from.removeClass("hasDatepicker")
.datepicker({
dateFormat: dateFormat,
defaultDate: "+1d",
numberOfMonths: ' . $months . ',
altField: "#srFromDateValue",
altFormat: "yy-mm-dd",
minDate: "+1d",
onSelect: function (a, b) {
var d = $.datepicker.parseDate("yy-mm-dd", $("#srFromDateValue").val());
to.datepicker("option", "minDate", addDate(d, 1));
this.value = decodeHtml(this.value);
to.val(decodeHtml(to.val()));
}
});
to.removeClass("hasDatepicker").datepicker({
dateFormat: dateFormat,
defaultDate: "+2d",
minDate: "+2d",
numberOfMonths: ' . $months . ',
altField: "#srToDateValue",
altFormat: "yy-mm-dd",
onSelect: function () {
var d = $.datepicker.parseDate("yy-mm-dd", $("#srToDateValue").val());
from.datepicker("option", "maxDate", addDate(d, -1));
this.value = decodeHtml(this.value);
from.val(decodeHtml(from.val()));
}
});
if($("#srFromDateValue").val() == "" || $("#srToDateValue").val() == ""){
var date = new Date();
date = addDate(date, 1);
from.val(decodeHtml($.datepicker.formatDate(dateFormat, date)));
$("#srFromDateValue").val($.datepicker.formatDate("yy-mm-dd", date));
date = addDate(date, 1);
to.val(decodeHtml($.datepicker.formatDate(dateFormat, date)));
$("#srToDateValue").val($.datepicker.formatDate("yy-mm-dd", date));
}
';
}
if (!empty($appendScript))
{
SRHtml::_('jquery.ui');
JFactory::getDocument()->addScriptDeclaration('Solidres.jQuery(function($){' . trim($appendScript) . '});');
}
require JModuleHelper::getLayoutPath('mod_sr_experience_search', $params->get('layout', 'default'));