54 lines
1.8 KiB
PHP
54 lines
1.8 KiB
PHP
<?php
|
|
/*************************************************************************************/
|
|
/* Copyright (c) Franck Allimant, CQFDev */
|
|
/* email : thelia@cqfdev.fr */
|
|
/* web : http://www.cqfdev.fr */
|
|
/* */
|
|
/* For the full copyright and license information, please view the LICENSE */
|
|
/* file that was distributed with this source code. */
|
|
/*************************************************************************************/
|
|
|
|
/**
|
|
* Created by Franck Allimant, CQFDev <franck@cqfdev.fr>
|
|
* Date: 17/06/2019 13:03
|
|
*/
|
|
namespace Beds24\Controller\Front;
|
|
|
|
use Beds24\Beds24\Beds24Request;
|
|
use Beds24\Model\Beds24BookingOrderProductQuery;
|
|
use Thelia\Controller\Front\BaseFrontController;
|
|
use Thelia\Core\HttpFoundation\Response;
|
|
|
|
/**
|
|
* @author Franck Allimant <franck@cqfdev.fr>
|
|
*/
|
|
class NotificationController extends BaseFrontController
|
|
{
|
|
/**
|
|
* @return Response
|
|
* @throws \Propel\Runtime\Exception\PropelException
|
|
*/
|
|
public function notify()
|
|
{
|
|
// Clear request cache
|
|
$api = new Beds24Request();
|
|
|
|
$api->clearCache();
|
|
|
|
// Update booking, if required.
|
|
$bookId = $this->getRequest()->get('bookId');
|
|
|
|
if (! empty($bookId)) {
|
|
if (null !== $bookingInfo = Beds24BookingOrderProductQuery::create()->findOneByBeds24BookingId($bookId)) {
|
|
$status = $this->getRequest()->get('status');
|
|
|
|
if ($status === 'cancel') {
|
|
$bookingInfo->setBeds24BookingId('')->save();
|
|
}
|
|
}
|
|
}
|
|
|
|
return new Response('Cache cleared', 200);
|
|
}
|
|
}
|