ShippingCategory.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?php
  2. namespace Cpcommerce\ShippingNotifications\Block;
  3. use Magento\Catalog\Block\Product\View\Description;
  4. use Magento\Catalog\Model\Product\Attribute\Repository;
  5. use Magento\Framework\View\Element\Template;
  6. use Magento\Framework\View\Element\Template\Context;
  7. use Cpcommerce\ShippingNotifications\Model\ShippingCategory AS DelayedShippingCategory;
  8. use Cpcommerce\ShippingNotifications\Model\ResourceModel\ShippingCategory\Collection;
  9. use Magento\Framework\App\ResourceConnection;
  10. use \Magento\Framework\App\Config\ScopeConfigInterface;
  11. class ShippingCategory extends Template
  12. {
  13. protected $resource;
  14. public function __construct(
  15. Description $description,
  16. Repository $attribute,
  17. Context $context,
  18. array $data = [],
  19. DelayedShippingCategory $delayedShippingCategory,
  20. Collection $delayedCollection,
  21. ResourceConnection $resource,
  22. ScopeConfigInterface $scopeConfig
  23. ) {
  24. $this->description = $description;
  25. $this->attribute = $attribute;
  26. $this->delayedShippingCategory = $delayedShippingCategory;
  27. $this->delayedCollection = $delayedCollection;
  28. $this->resource = $resource;
  29. $this->scopeConfig = $scopeConfig;
  30. return parent::__construct($context, $data);
  31. }
  32. public function getShippingCategory(){
  33. $_product = $this->description->getProduct();
  34. $option_id = $_product->getShippingCategory();
  35. return $option_id;
  36. }
  37. public function getDelayedShippingCategories(){
  38. $delayedShipCategs = $this->scopeConfig->getValue('cpcommerce_shipping_notifications/general/shipping_categories',\Magento\Store\Model\ScopeInterface::SCOPE_STORE);
  39. if(isset($delayedShipCategs)){
  40. $delayedShipCategsArray = explode(",",$delayedShipCategs);
  41. return $delayedShipCategsArray;
  42. }
  43. return null;
  44. }
  45. }