12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- /**
- * Downloadable checkout success page
- *
- * @author Magento Core Team <core@magentocommerce.com>
- */
- namespace Magento\Downloadable\Block\Checkout;
- use Magento\Framework\View\Element\Template;
- /**
- * @api
- * @since 100.0.2
- */
- class Success extends \Magento\Checkout\Block\Onepage\Success
- {
- /**
- * @var \Magento\Customer\Helper\Session\CurrentCustomer
- */
- protected $currentCustomer;
- /**
- * @param Template\Context $context
- * @param \Magento\Checkout\Model\Session $checkoutSession
- * @param \Magento\Sales\Model\Order\Config $orderConfig
- * @param \Magento\Framework\App\Http\Context $httpContext
- * @param \Magento\Customer\Helper\Session\CurrentCustomer $currentCustomer
- * @param array $data
- */
- public function __construct(
- \Magento\Framework\View\Element\Template\Context $context,
- \Magento\Checkout\Model\Session $checkoutSession,
- \Magento\Sales\Model\Order\Config $orderConfig,
- \Magento\Framework\App\Http\Context $httpContext,
- \Magento\Customer\Helper\Session\CurrentCustomer $currentCustomer,
- array $data = []
- ) {
- parent::__construct(
- $context,
- $checkoutSession,
- $orderConfig,
- $httpContext,
- $data
- );
- $this->currentCustomer = $currentCustomer;
- }
- /**
- * Return true if order(s) has one or more downloadable products
- *
- * @return bool
- */
- private function orderHasDownloadableProducts()
- {
- return $this->isVisible($this->_checkoutSession->getLastRealOrder())
- && $this->currentCustomer->getCustomerId()
- ? $this->_checkoutSession->getHasDownloadableProducts(true)
- : false;
- }
- /**
- * Prepares block data
- *
- * @return void
- */
- protected function prepareBlockData()
- {
- parent::prepareBlockData();
- $this->addData(
- [
- 'order_has_downloadable' => $this->orderHasDownloadableProducts()
- ]
- );
- }
- /**
- * Return url to list of ordered downloadable products of customer
- *
- * @return string
- */
- public function getDownloadableProductsUrl()
- {
- return $this->getUrl('downloadable/customer/products', ['_secure' => true]);
- }
- }
|