Implemented methods for booking synchronization, including fetching, parsing, and updating bookings from a remote API. Added caching mechanisms and data validation for customer names, department names, and booking details. Integrated new API trait and remote booking class to improve scalability and enable automated tests for booking modules.
36 lines
1.2 KiB
PHP
36 lines
1.2 KiB
PHP
<?php
|
|
/**
|
|
* Cron job, ran every minute.
|
|
*/
|
|
$now = time();
|
|
|
|
// Log the time of the cron job
|
|
file_put_contents(__DIR__ . '/cron.log', date('Y-m-d H:i:s', $now) . ' - Cron job started' . PHP_EOL, FILE_APPEND);
|
|
|
|
// Include the required files
|
|
require_once __DIR__ . '/vendor/autoload.php';
|
|
require_once __DIR__ . '/config.php';
|
|
|
|
// Set the .htaccess file
|
|
$htaccess = "
|
|
# php -- BEGIN cPanel-generated handler, do not edit
|
|
# Set the “ea-php80” package as the default “PHP” programming language.
|
|
<IfModule mod_rewrite.c>
|
|
RewriteEngine On
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
RewriteCond %{REQUEST_FILENAME} !-d
|
|
RewriteRule ^(.*)$ index.php [QSA,L]
|
|
</IfModule>
|
|
|
|
<IfModule mime_module>
|
|
AddHandler application/x-httpd-ea-php80 .php .php8 .phtml
|
|
</IfModule>
|
|
# php -- END cPanel-generated handler, do not edit
|
|
";
|
|
|
|
// Write the .htaccess file (This is not really ideal, but it works for now. This is because the .htaccess file is changed by cPanel, and it's not going to be kept there anyway.)
|
|
file_put_contents(__DIR__ . '/.htaccess', $htaccess);
|
|
|
|
// Log the time of the cron job
|
|
file_put_contents(__DIR__ . '/cron.log', date('Y-m-d H:i:s', $now) . ' - Cron job executed in ' . (time() - $now) . ' seconds ( ' . (microtime(true) - $now) . 'ms )' . PHP_EOL, FILE_APPEND);
|