public function getSupportedCurrencies() { $supportedCurrencies = []; $supportedCurrencies[Settings_CurrencyUpdate_Module_Model::getCRMCurrencyName($this->getMainCurrencyCode())] = $this->getMainCurrencyCode(); $source = $this->getSource(); $XML = simplexml_load_file($source[0]); foreach ($XML->Cube->Cube[0] as $currency) { $currencyCode = $currency['currency']->__toString(); $supportedCurrencies[Settings_CurrencyUpdate_Module_Model::getCRMCurrencyName($currencyCode)] = $currencyCode; } return $supportedCurrencies; }
public function getSupportedCurrencies() { $supportedCurrencies = []; $supportedCurrencies[Settings_CurrencyUpdate_Module_Model::getCRMCurrencyName($this->getMainCurrencyCode())] = $this->getMainCurrencyCode(); $dateCur = date('Y-m-d', strtotime('last monday')); $date = str_replace('-', '', $dateCur); $date = substr($date, 2); $txtSrc = 'http://www.nbp.pl/kursy/xml/dir.txt'; $xmlSrc = 'http://nbp.pl/kursy/xml/'; $newXmlSrc = ''; $file = file($txtSrc); $fileNum = count($file); $numberOfDays = 1; $stateA = false; while (!$stateA) { for ($i = 0; $i < $fileNum; $i++) { $lineStart = strstr($file[$i], $date, true); if ($lineStart && $lineStart[0] == 'a') { $stateA = true; $newXmlSrc = $xmlSrc . $lineStart . $date . '.xml'; } } if (!$stateA) { $newDate = strtotime("-{$numberOfDays} day", strtotime($dateCur)); $newDate = date('Y-m-d', $newDate); $date = str_replace('-', '', $newDate); $date = substr($date, 2); $numberOfDays++; } } $xml = simplexml_load_file($newXmlSrc); $xmlObj = $xml->children(); $num = count($xmlObj->pozycja); for ($i = 0; $i <= $num; $i++) { if (!$xmlObj->pozycja[$i]->nazwa_waluty) { continue; } $currencyCode = $xmlObj->pozycja[$i]->kod_waluty->__toString(); if ($currencyCode == 'XDR') { continue; } $currencyName = Settings_CurrencyUpdate_Module_Model::getCRMCurrencyName($currencyCode); $supportedCurrencies[$currencyName] = $currencyCode; } return $supportedCurrencies; }
public function getSupportedCurrencies() { $supportedCurrencies = []; $supportedCurrencies[Settings_CurrencyUpdate_Module_Model::getCRMCurrencyName($this->getMainCurrencyCode())] = $this->getMainCurrencyCode(); $source = $this->getSource(); $client = new \SoapClient($source[0]); $curs = $client->GetCursOnDate(array("On_date" => date('Y-m-d'))); $ratesXml = new \SimpleXMLElement($curs->GetCursOnDateResult->any); foreach ($ratesXml->ValuteData[0] as $currency) { $currencyCode = (string) $currency->VchCode; $currencyName = Settings_CurrencyUpdate_Module_Model::getCRMCurrencyName($currencyCode); if ($currencyName) { $supportedCurrencies[$currencyName] = $currencyCode; } } return $supportedCurrencies; }