diff --git a/core/lib/Thelia/Core/Event/Area/AreaRemoveCountryEvent.php b/core/lib/Thelia/Core/Event/Area/AreaRemoveCountryEvent.php new file mode 100644 index 000000000..84c8f10d2 --- /dev/null +++ b/core/lib/Thelia/Core/Event/Area/AreaRemoveCountryEvent.php @@ -0,0 +1,35 @@ +. */ +/* */ +/*************************************************************************************/ + +namespace Thelia\Core\Event\Area; + + +/** + * Class AreaRemoveCountryEvent + * @package Thelia\Core\Event\Area + * @author Manuel Raynaud + */ +class AreaRemoveCountryEvent extends AreaAddCountryEvent +{ + +} \ No newline at end of file diff --git a/core/lib/Thelia/Core/Event/Area/AreaUpdatePostageEvent.php b/core/lib/Thelia/Core/Event/Area/AreaUpdatePostageEvent.php new file mode 100644 index 000000000..5f799b93c --- /dev/null +++ b/core/lib/Thelia/Core/Event/Area/AreaUpdatePostageEvent.php @@ -0,0 +1,85 @@ +. */ +/* */ +/*************************************************************************************/ + +namespace Thelia\Core\Event\Area; + + +/** + * Class AreaUpdatePostageEvent + * @package Thelia\Core\Event\Area + * @author Manuel Raynaud + */ +class AreaUpdatePostageEvent extends AreaEvent +{ + protected $area_id; + protected $postage; + + function __construct($area_id) + { + $this->area_id = $area_id; + } + + /** + * @param mixed $area_id + * + * @return $this + */ + public function setAreaId($area_id) + { + $this->area_id = $area_id; + + return $this; + } + + /** + * @return mixed + */ + public function getAreaId() + { + return $this->area_id; + } + + /** + * @param mixed $postage + * + * @return $this + */ + public function setPostage($postage) + { + $this->postage = $postage; + + return $this; + } + + /** + * @return mixed + */ + public function getPostage() + { + return $this->postage; + } + + + + +} \ No newline at end of file diff --git a/core/lib/Thelia/Form/Area/AreaPostageForm.php b/core/lib/Thelia/Form/Area/AreaPostageForm.php new file mode 100644 index 000000000..ba24499e8 --- /dev/null +++ b/core/lib/Thelia/Form/Area/AreaPostageForm.php @@ -0,0 +1,88 @@ +. */ +/* */ +/*************************************************************************************/ + +namespace Thelia\Form\Area; + +use Symfony\Component\Validator\Constraints\GreaterThan; +use Symfony\Component\Validator\Constraints\GreaterThanOrEqual; +use Symfony\Component\Validator\Constraints\NotBlank; +use Thelia\Form\BaseForm; +use Thelia\Core\Translation\Translator; + + +/** + * Class AreaPostageForm + * @package Thelia\Form\Area + * @author Manuel Raynaud + */ +class AreaPostageForm extends BaseForm +{ + + /** + * + * in this function you add all the fields you need for your Form. + * Form this you have to call add method on $this->formBuilder attribute : + * + * $this->formBuilder->add("name", "text") + * ->add("email", "email", array( + * "attr" => array( + * "class" => "field" + * ), + * "label" => "email", + * "constraints" => array( + * new \Symfony\Component\Validator\Constraints\NotBlank() + * ) + * ) + * ) + * ->add('age', 'integer'); + * + * @return null + */ + protected function buildForm() + { + $this->formBuilder + ->add('area_id', 'integer', array( + 'constraints' => array( + new GreaterThan(array('value' => 0)), + new NotBlank() + ) + )) + ->add('postage', 'number', array( + 'constraints' => array( + new GreaterThanOrEqual(array('value' => 0)), + new NotBlank() + ), + 'label_attr' => array('for' => 'area_postage'), + 'label' => Translator::getInstance()->trans('Postage') + )) + ; + } + + /** + * @return string the name of you form. This name must be unique + */ + public function getName() + { + return 'thelia_area_postage'; + } +} \ No newline at end of file