Ajout du module OrderStatusNotify
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
|
||||
namespace OrderStatusNotify\Controller\Back;
|
||||
|
||||
use Thelia\Controller\Admin\BaseAdminController;
|
||||
use OrderStatusNotify\Model\OrderStatusNotificationQuery;
|
||||
use OrderStatusNotify\Model\OrderStatusNotification;
|
||||
|
||||
/**
|
||||
* Class OrderStatusController
|
||||
* @package OrderStatusNotify\Controller\Back
|
||||
* @author Laurent LE CORRE <laurent@thecoredev.fr>
|
||||
*/
|
||||
class OrderStatusController extends BaseAdminController
|
||||
{
|
||||
public function showStatus()
|
||||
{
|
||||
$vars = '';
|
||||
if (null !== $result = OrderStatusNotificationQuery::create()->findByToNotify(true)) {
|
||||
foreach ($result->getData() as $order_status) {
|
||||
// Il faut serialiser le tableau afin de pouvoir l'exploiter dans la page HTML.
|
||||
$vars .= $order_status->getOrderStatusId() . ',';
|
||||
}
|
||||
}
|
||||
return $this->render('display-order-status', ['status' => $vars]);
|
||||
}
|
||||
|
||||
public function setToggleVisibilityAction()
|
||||
{
|
||||
try {
|
||||
$order_status_to_modify = $_GET['order_status_id'];
|
||||
$current_order_status = OrderStatusNotificationQuery::create()->findOneByOrderStatusId($order_status_to_modify);
|
||||
if (null === $current_order_status) {
|
||||
$new_order_status = new OrderStatusNotification();
|
||||
$new_order_status->setOrderStatusId($order_status_to_modify);
|
||||
$new_order_status->setToNotify(true);
|
||||
$new_order_status->save();
|
||||
}
|
||||
else {
|
||||
$current_order_status->delete();
|
||||
}
|
||||
} catch (\Exception $ex) {
|
||||
// Any error
|
||||
return $this->errorPage($ex);
|
||||
}
|
||||
|
||||
return $this->nullResponse();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user