WIP : Coupon : Fix condition selection JS + Dependency Injection register
This commit is contained in:
@@ -208,10 +208,7 @@ class CouponController extends BaseAdminController
|
||||
$conditions = $conditionFactory->unserializeConditionCollection(
|
||||
$coupon->getSerializedConditions()
|
||||
);
|
||||
var_dump($coupon->getIsEnabled());;
|
||||
var_dump($coupon->getIsAvailableOnSpecialOffers());;
|
||||
var_dump($coupon->getIsCumulative());;
|
||||
var_dump($coupon->getIsRemovingPostage());;
|
||||
|
||||
$data = array(
|
||||
'code' => $coupon->getCode(),
|
||||
'title' => $coupon->getTitle(),
|
||||
@@ -219,11 +216,11 @@ var_dump($coupon->getIsRemovingPostage());;
|
||||
'type' => $coupon->getType(),
|
||||
'shortDescription' => $coupon->getShortDescription(),
|
||||
'description' => $coupon->getDescription(),
|
||||
'isEnabled' => ($coupon->getIsEnabled() == 1),
|
||||
'isEnabled' => $coupon->getIsEnabled(),
|
||||
'expirationDate' => $coupon->getExpirationDate('Y-m-d'),
|
||||
'isAvailableOnSpecialOffers' => ($coupon->getIsAvailableOnSpecialOffers() == 1),
|
||||
'isCumulative' => ($coupon->getIsCumulative() == 1),
|
||||
'isRemovingPostage' => ($coupon->getIsRemovingPostage() == 1),
|
||||
'isAvailableOnSpecialOffers' => $coupon->getIsAvailableOnSpecialOffers(),
|
||||
'isCumulative' => $coupon->getIsCumulative(),
|
||||
'isRemovingPostage' => $coupon->getIsRemovingPostage(),
|
||||
'maxUsage' => $coupon->getMaxUsage(),
|
||||
'conditions' => $conditions,
|
||||
'locale' => $coupon->getLocale(),
|
||||
@@ -264,7 +261,7 @@ var_dump($coupon->getIsRemovingPostage());;
|
||||
Router::ABSOLUTE_URL
|
||||
);
|
||||
|
||||
$args['formAction'] = 'admin/coupon/update' . $couponId;
|
||||
$args['formAction'] = 'admin/coupon/update/' . $couponId;
|
||||
|
||||
return $this->render('coupon-update', $args);
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ use Thelia\Core\DependencyInjection\Compiler\RegisterCouponPass;
|
||||
use Thelia\Core\DependencyInjection\Compiler\RegisterListenersPass;
|
||||
use Thelia\Core\DependencyInjection\Compiler\RegisterParserPluginPass;
|
||||
use Thelia\Core\DependencyInjection\Compiler\RegisterRouterPass;
|
||||
use Thelia\Core\DependencyInjection\Compiler\RegisterRulePass;
|
||||
use Thelia\Core\DependencyInjection\Compiler\RegisterCouponConditionPass;
|
||||
|
||||
/**
|
||||
* First Bundle use in Thelia
|
||||
@@ -63,8 +63,6 @@ class TheliaBundle extends Bundle
|
||||
->addCompilerPass(new RegisterParserPluginPass())
|
||||
->addCompilerPass(new RegisterRouterPass())
|
||||
->addCompilerPass(new RegisterCouponPass())
|
||||
->addCompilerPass(new RegisterRulePass())
|
||||
;
|
||||
|
||||
->addCompilerPass(new RegisterCouponConditionPass());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,11 +35,13 @@ use Symfony\Component\DependencyInjection\Reference;
|
||||
* Class RegisterListenersPass
|
||||
* Source code come from Symfony\Bundle\FrameworkBundle\DependencyInjection\Compiler\RegisterKernelListenersPass class
|
||||
*
|
||||
* Register all available Conditions for the coupon module
|
||||
*
|
||||
* @package Thelia\Core\DependencyInjection\Compiler
|
||||
* @author Guillaume MOREL <gmorel@openstudio.fr>
|
||||
*
|
||||
*/
|
||||
class RegisterRulePass implements CompilerPassInterface
|
||||
class RegisterCouponConditionPass implements CompilerPassInterface
|
||||
{
|
||||
/**
|
||||
* You can modify the container here before it is dumped to PHP code.
|
||||
@@ -55,11 +57,11 @@ class RegisterRulePass implements CompilerPassInterface
|
||||
}
|
||||
|
||||
$couponManager = $container->getDefinition('thelia.coupon.manager');
|
||||
$services = $container->findTaggedServiceIds("thelia.coupon.addRule");
|
||||
$services = $container->findTaggedServiceIds("thelia.coupon.addCondition");
|
||||
|
||||
foreach ($services as $id => $rule) {
|
||||
foreach ($services as $id => $condition) {
|
||||
$couponManager->addMethodCall(
|
||||
'addAvailableRule',
|
||||
'addAvailableCondition',
|
||||
array(
|
||||
new Reference($id)
|
||||
)
|
||||
@@ -241,7 +241,7 @@ class CouponManager
|
||||
*
|
||||
* @param ConditionManagerInterface $condition ConditionManagerInterface
|
||||
*/
|
||||
public function addAvailableRule(ConditionManagerInterface $condition)
|
||||
public function addAvailableCondition(ConditionManagerInterface $condition)
|
||||
{
|
||||
$this->availableConditions[] = $condition;
|
||||
}
|
||||
|
||||
@@ -28,6 +28,7 @@ use Symfony\Component\Validator\Constraints\DateTime;
|
||||
use Symfony\Component\Validator\Constraints\GreaterThanOrEqual;
|
||||
use Symfony\Component\Validator\Constraints\NotBlank;
|
||||
use Symfony\Component\Validator\Constraints\NotEqualTo;
|
||||
use Symfony\Component\Validator\Constraints\Range;
|
||||
|
||||
/**
|
||||
* Created by JetBrains PhpStorm.
|
||||
@@ -110,7 +111,7 @@ class CouponCreationForm extends BaseForm
|
||||
)
|
||||
->add(
|
||||
'isEnabled',
|
||||
'checkbox',
|
||||
'text',
|
||||
array()
|
||||
)
|
||||
->add(
|
||||
@@ -125,17 +126,17 @@ class CouponCreationForm extends BaseForm
|
||||
)
|
||||
->add(
|
||||
'isCumulative',
|
||||
'checkbox',
|
||||
'text',
|
||||
array()
|
||||
)
|
||||
->add(
|
||||
'isRemovingPostage',
|
||||
'checkbox',
|
||||
'text',
|
||||
array()
|
||||
)
|
||||
->add(
|
||||
'isAvailableOnSpecialOffers',
|
||||
'checkbox',
|
||||
'text',
|
||||
array()
|
||||
)
|
||||
->add(
|
||||
|
||||
Reference in New Issue
Block a user