Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Config.php
Go to the documentation of this file.
1 <?php
6 namespace Magento\Payment\Model;
7 
11 
20 class Config
21 {
25  const YEARS_RANGE = 10;
26 
30  protected $_methods;
31 
37  protected $_scopeConfig;
38 
42  protected $_dataStorage;
43 
49  protected $localeResolver;
50 
57 
63  protected $_date;
64 
74  public function __construct(
75  \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
76  \Magento\Payment\Model\Method\Factory $paymentMethodFactory,
77  \Magento\Framework\Locale\ResolverInterface $localeResolver,
78  \Magento\Framework\Config\DataInterface $dataStorage,
79  \Magento\Framework\Stdlib\DateTime\DateTime $date
80  ) {
81  $this->_scopeConfig = $scopeConfig;
82  $this->_dataStorage = $dataStorage;
83  $this->_paymentMethodFactory = $paymentMethodFactory;
84  $this->localeResolver = $localeResolver;
85  $this->_date = $date;
86  }
87 
94  public function getActiveMethods()
95  {
96  $methods = [];
97  foreach ($this->_scopeConfig->getValue('payment', ScopeInterface::SCOPE_STORE, null) as $code => $data) {
98  if (isset($data['active'], $data['model']) && (bool)$data['active']) {
100  $methodModel = $this->_paymentMethodFactory->create($data['model']);
101  $methodModel->setStore(null);
102  if ($methodModel->getConfigData('active', null)) {
103  $methods[$code] = $methodModel;
104  }
105  }
106  }
107  return $methods;
108  }
109 
116  public function getCcTypes()
117  {
118  return $this->_dataStorage->get('credit_cards');
119  }
120 
127  public function getMethodsInfo()
128  {
129  return $this->_dataStorage->get('methods');
130  }
131 
138  public function getGroups()
139  {
140  return $this->_dataStorage->get('groups');
141  }
142 
149  public function getMonths()
150  {
151  $data = [];
152  $months = (new DataBundle())->get(
153  $this->localeResolver->getLocale()
154  )['calendar']['gregorian']['monthNames']['format']['wide'];
155  foreach ($months as $key => $value) {
156  $monthNum = ++$key < 10 ? '0' . $key : $key;
157  $data[$key] = $monthNum . ' - ' . $value;
158  }
159  return $data;
160  }
161 
168  public function getYears()
169  {
170  $years = [];
171  $first = (int)$this->_date->date('Y');
172  for ($index = 0; $index <= self::YEARS_RANGE; $index++) {
173  $year = $first + $index;
174  $years[$year] = $year;
175  }
176  return $years;
177  }
178 }
$methods
Definition: billing.phtml:71
$value
Definition: gender.phtml:16
__construct(\Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig, \Magento\Payment\Model\Method\Factory $paymentMethodFactory, \Magento\Framework\Locale\ResolverInterface $localeResolver, \Magento\Framework\Config\DataInterface $dataStorage, \Magento\Framework\Stdlib\DateTime\DateTime $date)
Definition: Config.php:74
$index
Definition: list.phtml:44
$code
Definition: info.phtml:12