- implementation Coupon Read page
This commit is contained in:
gmorel
2013-09-03 11:02:02 +02:00
parent 6383de251e
commit 6ee99b6cad
4 changed files with 79 additions and 33 deletions

View File

@@ -59,8 +59,7 @@
<default key="action">edit</default>
</route>
<route id="admin.coupon.read" path="/admin/coupon/read/{id}">
<default key="_controller">Thelia\Controller\Admin\CouponController::processAction</default>
<default key="action">read</default>
<default key="_controller">Thelia\Controller\Admin\CouponController::readAction</default>
</route>

View File

@@ -23,6 +23,7 @@
namespace Thelia\Controller\Admin;
use Symfony\Component\HttpFoundation\Request;
use Thelia\Core\Event\Coupon\CouponCreateEvent;
use Thelia\Core\Event\TheliaEvents;
use Thelia\Core\Security\Exception\AuthenticationException;
@@ -143,15 +144,23 @@ class CouponController extends BaseAdminController
/**
* Manage Coupons read display
*
* @param array $args GET arguments
* @param int $id Coupon Id
*
* @return \Symfony\Component\HttpFoundation\Response
*/
protected function readCoupon($args)
public function readAction($id)
{
$this->checkAuth("ADMIN", "admin.coupon.view");
return $this->render('coupon/read', $args);
// Database request repeated in the loop but cached
$search = CouponQuery::create();
$coupon = $search->findOneById($id);
if ($coupon === null) {
return $this->pageNotFound();
}
return $this->render('coupon/read', array('couponId' => $id));
}
/**

View File

@@ -72,7 +72,7 @@ class Coupon extends BaseI18nLoop
$search = CouponQuery::create();
/* manage translations */
$locale = $this->configureI18nProcessing($search, array());
$locale = $this->configureI18nProcessing($search, array('TITLE', 'DESCRIPTION', 'SHORT_DESCRIPTION'));
$id = $this->getId();
@@ -91,9 +91,17 @@ class Coupon extends BaseI18nLoop
$loopResultRow->set("ID", $coupon->getId())
->set("IS_TRANSLATED", $coupon->getVirtualColumn('IS_TRANSLATED'))
->set("LOCALE", $locale)
->set("CODE", $coupon->getCode())
->set("TITLE", $coupon->getVirtualColumn('i18n_TITLE'))
->set("CODE", $coupon->getVirtualColumn('i18n_CODE'));
->set("SHORT_DESCRIPTION", $coupon->getVirtualColumn('i18n_SHORT_DESCRIPTION'))
->set("DESCRIPTION", $coupon->getVirtualColumn('i18n_DESCRIPTION'))
->set("EXPIRATION_DATE", $coupon->getExpirationDate())
->set("USAGE_LEFT", $coupon->getMaxUsage())
->set("IS_CUMULATIVE", $coupon->getIsCumulative())
->set("IS_REMOVING_POSTAGE", $coupon->getIsRemovingPostage())
->set("IS_ENABLED", $coupon->getIsEnabled())
->set("AMOUNT", $coupon->getAmount())
->set("APPLICATION_CONDITIONS", $coupon->getRules());
$loopResult->addRow($loopResultRow);
}