* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/AFL-3.0 Academic Free License version 3.0 */ namespace PrestaShop\Module\BlockWishList\Access; use Customer; use Tools; use Validate; use WishList; class CustomerAccess { /** * @var Customer */ private $customer; public function __construct(Customer $customer) { $this->customer = $customer; } /** * @return bool */ public function hasReadAccessToWishlist(WishList $wishlist) { // Wishlist is shared if (!empty($wishlist->token) && Tools::getIsset('token')) { return true; } return $this->hasWriteAccessToWishlist($wishlist); } /** * @return bool */ public function hasWriteAccessToWishlist(WishList $wishlist) { if (false === Validate::isLoadedObject($this->customer)) { return false; } return ((int) $wishlist->id_customer) === $this->customer->id; } }