i am working to customize a reservation plugin.while coding in plugin main file i am getting this error: "Parse error: syntax error, unexpected 'require' (T_REQUIRE) in /Applications/XAMPP/xamppfiles/htdocs/dn/wp-content/plugins/marmaris/marmaris.php on line 11" this plugin already working on my existing site.i have just download and install on new site. i am doubtful including files.All these files i included are in proper directories.no file is missing.But it encountered this error. Is this i am not properly include these files? or any thing else? Guide me through this code,where is actual error? Here is marmaris.php file:
DIR.
'/xhp-lib/init.php');
require(DIR.
'/lib/database.hh');
require(DIR.
'/lib/h.hh');
require(DIR.
'/lib/session.hh');
require(DIR.
'/lib/mirror.php');
require(DIR.
'/lib/formng.hh');
require(DIR.
'/lib/ajax.hh');
require(DIR.
'/AdminPages.hh');
require(DIR.
'/lib/shapes.hh');
require(DIR.
'/xhp/mods.hh');
require(DIR.
'/xhp/header.hh');
require(DIR.
'/xhp/email.hh');
require(DIR.
'/xhp/shopping-cart.hh');
require(DIR.
'/xhp/options-currency.hh');
require(DIR.
'/xhp/options-subsites.hh');
require(DIR.
'/xhp/options-wrap.hh');
require(DIR.
'/xhp/reservation-list.hh');
require(DIR.
'/xhp/reservation-view.hh');
require(DIR.
'/xhp/reservation-delete.hh');
require(DIR.
'/xhp/widget.hh');
enum MarmarisKeys: string as string {
CUR = 'MarmarisCurrencies';
CUR_DEF = 'MarmarisCurrenciesDefault';
SUBS = 'MarmarisSubsites';
SUBS_DEF = 'MarmarisSubsitesdefault';
}
class Marmaris {
public static ? string $DefaultSubsite;
public static ? string $DefaultCurrency;
public static Map $Currencies = Map {};
public static Map $Subsites = Map {};
public static Map): Map) > $Ajax = Map {};
public static
function InitParams(array $Get, array $Post): void {
Mirror::$Get = [];
foreach($Get as $Key => $Value) {
if (is_string($Value)) {
Mirror::$Get[trim($Key)] = trim($Value);
}
}
Mirror::$Post = [];
foreach($Post as $Key => $Value) {
if (is_string($Value)) {
Mirror::$Post[trim($Key)] = trim($Value);
}
}
}
public static
function Init(): void {
self::$Currencies = MarmarisH::CurrenciesList();
$DefaultCurrency = get_option(MarmarisKeys::CUR_DEF);
if (Marmaris::$Currencies - > contains((string) $DefaultCurrency)) static::$DefaultCurrency = $DefaultCurrency;
self::$Subsites = MarmarisH::Subsites();
$DefaultSubsite = get_option(MarmarisKeys::SUBS_DEF);
if (static::$Subsites - > contains((string) $DefaultSubsite)) static::$DefaultSubsite = $DefaultSubsite;
self::$Ajax - > set('reservation-set', class_meth('MarmarisAjax', 'ReservationSet'));
self::$Ajax - > set('reservation-delete', class_meth('MarmarisAjax', 'ReservationDelete'));
self::$Ajax - > set('currency', class_meth('MarmarisAjax', 'Currency'));
self::$Ajax - > set('info', class_meth('MarmarisAjax', 'Info'));
Mirror::$DB = AsyncDatabase::connect(DB_HOST, 3306, DB_NAME, DB_USER, DB_PASSWORD);
Mirror::$DB - > query("Set names 'utf8mb4'", []);
Mirror::$Session = new MarmarisSession();
}
public static
function Scripts(): void {
wp_enqueue_style('Marmaris-FE-Widget', plugins_url('marmaris/assets/fe.css'));
wp_enqueue_style('select2', '//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.min.css');
wp_enqueue_script('Marmaris-FE-Widget-Script', plugins_url('marmaris/assets/fe.js'), ['jquery'], '1.0.0', true);
wp_enqueue_script('select2', '//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.min.js', ['jquery'], '4.0.0', true);
}
public static
function AdminInit(): void {
wp_register_style('Marmaris-DatePicker', get_template_directory_uri().
'/js/libs/datepick/jquery.datepick.css');
wp_enqueue_style('Marmaris-DatePicker');
wp_enqueue_script('Marmaris-JQPlugin', get_template_directory_uri().
'/js/libs/datepick/jquery.plugin.min.js', ['jquery']);
wp_enqueue_script('Marmaris-DatePicker', get_template_directory_uri().
'/js/libs/datepick/jquery.datepick.min.js', ['jquery', 'Marmaris-JQPlugin']);
}
public static
function WidgetsInit(): void {
register_widget("MarmarisReservationWidget");
}
public static
function RegisterMenuEntries(): void {
add_menu_page('Marmaris', 'Marmaris', 'manage_options', 'marmaris-options', class_meth('MarmarisAdminPages', 'OptionsPage'));
add_menu_page('Reservations', 'Reservations', 'manage_options', 'marmaris-reservations', class_meth('MarmarisAdminPages', 'ReservationPage'));
}
public static
function Ajax(): void {
try {
if (!array_key_exists('subaction', Mirror::$Post) || !array_key_exists('data', Mirror::$Post) || !is_string(Mirror::$Post['subaction']) || !is_string(Mirror::$Post['data'])) {
throw new AjaxException();
} else {
if (!self::$Ajax - > contains(Mirror::$Post['subaction'])) throw new AjaxException("Your request was not recognized");
}
$Data = [];
parse_str(Mirror::$Post['data'], $Data);
$Data = new Map($Data);
$Callback = static::$Ajax[Mirror::$Post['subaction']];
echo json_encode($Callback($Data));
} catch (AjaxFieldMultiException $e) {
echo $e - > getMessage();
} catch (AjaxException $e) {
$Message = $e - > getMessage();
$Message = $Message === '' ? ('Uh Oh, Something bad happened', 'marmaris') : $Message;
echo json_encode(['ERROR' => true, 'Message' => $Message]);
} catch (Exception $e) {
error_log(print_r($e, 1));
echo json_encode(['ERROR' => true, 'Message' => __('Uh Oh, Something bad happened', 'marmaris')]);
}
wp_die();
}
public static
function ShoppingInfoComplete(): bool {
// When they submit the form to add email, that form will only validate if all the other stuff is correct as well
return !(Mirror::$Session - > Info['Email'] === null || strlen(Mirror::$Session - > Info['Email']) < 1);
}
public static
function ProcessReservation(): bool {
$ToInsert = Map {
'Name' => String(Mirror::$Session - > Info['Name']),
'Surname' => String(Mirror::$Session - > Info['Surname']),
'Email' => String(Mirror::$Session - > Info['Email']),
'Hotel' => String(Mirror::$Session - > Info['Hotel']),
'PhoneNumber' => String(Mirror::$Session - > Info['PhoneNumber']),
'ArrivalDate' => String(Mirror::$Session - > Info['ArrivalDate']),
'ArrivalTime' => String(Mirror::$Session - > Info['ArrivalTime']),
'Notes' => String(Mirror::$Session - > Info['Notes']),
'Currency' => json_encode(['CurrentRate' => Mirror::$Session - > Currency['Rate'], 'CurrentSymbol' => Mirror::$Session - > Currency['Symbol']]),
'Time' => date("Y-m-d H:i:s")
};
$Tours = Map {};
foreach(Mirror::$Session - > Tours as $TourID => $Tour) {
$TourInfo = MarmarisH::Info($TourID);
if ($TourInfo === null) continue;
$Tours - > set($TourID, Map {
'ID' => $TourID,
'Link' => get_post_permalink($TourID),
'Title' => MarmarisH::PostTitle($TourID),
'TicketNumber' => substr(sha1(mt_rand(11111111, 11111111 * 9)), 0, 7),
'AdultsNum' => $Tour['NumAdults'],
'AdultsPrice' => $TourInfo['PriceDiscountedAdult'],
'ChildrenNum' => $Tour['NumChildren'],
'ChildrenPrice' => $TourInfo['PriceDiscountedChild'],
'ChildrenAllow' => $TourInfo['ChildrenAllow'],
'ChildrenLabel' => $TourInfo['ChildrenLabel'],
'InfantsNum' => $Tour['NumInfants'],
'InfantsPrice' => $TourInfo['PriceDiscountedInfant'],
'InfantsAllow' => $TourInfo['InfantsAllow'],
'InfantsLabel' => $TourInfo['InfantsLabel'],
'PickupDate' => $Tour['PickupDate'],
'PickupTime' => $Tour['PickupTime']
});
}
if (!count($Tours)) return false;
$ToInsert - > set('Tours', json_encode($Tours));
$ID = Mirror::$DB - > insert('reservations', $ToInsert);
$Info = MarmarisH::InfoRecord($ID);
if ($Info !== null) { // Of course its not null!
foreach($Info['Tours'] as $Tour) {
$Email = (string)
;
Mirror::$DB - > insert('emails_queue', ImmMap {
'EmailTo' => String(Mirror::$Session - > Info['Email']),
'Title' => __('Reservation Details', 'marmaris'),
'Content' => $Email
});
}
} else return false;
Mirror::$Session - > Tours - > clear();
return true;
}
}
require(__DIR.
'/runner.hh');
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire