diff --git a/core/lib/Thelia/Core/HttpKernel/Exception/NotFountHttpException.php b/core/lib/Thelia/Core/HttpKernel/Exception/NotFountHttpException.php new file mode 100644 index 000000000..a52f0eb86 --- /dev/null +++ b/core/lib/Thelia/Core/HttpKernel/Exception/NotFountHttpException.php @@ -0,0 +1,46 @@ +. */ +/* */ +/*************************************************************************************/ +namespace Thelia\Core\HttpKernel\Exceptions; + +use Symfony\Component\HttpKernel\Exception\NotFoundHttpException as BaseNotFountHttpException; +/** + * Class NotFountHttpException + * @author Manuel Raynaud + */ +class NotFountHttpException extends BaseNotFountHttpException { + + protected $adminContext = false; + + public function __construct($message = null, \Exception $previous = null, $code = 0, $adminContext = false) + { + $this->adminContext = $adminContext; + + parent::__construct($message, $previous, $code); + } + + public function isAdminContext() + { + return $this->adminContext === true; + + } +} \ No newline at end of file diff --git a/core/lib/Thelia/Model/Address.php b/core/lib/Thelia/Model/Address.php index 5ce697e8f..dbd334ba2 100755 --- a/core/lib/Thelia/Model/Address.php +++ b/core/lib/Thelia/Model/Address.php @@ -58,6 +58,10 @@ class Address extends BaseAddress { */ public function preDelete(ConnectionInterface $con = null) { + if($this->getIsDefault()) { + return false; + } + $this->dispatchEvent(TheliaEvents::BEFORE_DELETEADDRESS, new AddressEvent($this)); return true; } @@ -71,14 +75,4 @@ class Address extends BaseAddress { $this->dispatchEvent(TheliaEvents::AFTER_DELETEADDRESS, new AddressEvent($this)); } - public function preSave() - { - $valid = true; - if($this->getIsDefault()) { - $valid = false; - } - - return $valid; - } - } diff --git a/core/lib/Thelia/Tests/Action/CustomerTest.php b/core/lib/Thelia/Tests/Action/CustomerTest.php index b70d39428..10ba01587 100644 --- a/core/lib/Thelia/Tests/Action/CustomerTest.php +++ b/core/lib/Thelia/Tests/Action/CustomerTest.php @@ -86,6 +86,8 @@ class CustomerTest extends \PHPUnit_Framework_TestCase $addressCreated = $customerCreated->getDefaultAddress(); + $this->assertInstanceOf("Thelia\Model\Address", $addressCreated); + $this->assertEquals($customerCreateEvent->getFirstname(), $addressCreated->getFirstname()); $this->assertEquals($customerCreateEvent->getLastname(), $addressCreated->getLastname()); $this->assertEquals($customerCreateEvent->getTitle(), $addressCreated->getTitleId());