Problém: Při nastavení isProductionMode na false se použije produkční prostředí v novém Symfony, které používá .env na konfiguraci.
Proč: Ve třídě GoPay v metodě buildUrl() na řádku 49 se používá (bool)$this->getConfig('isProductionMode'). To je v novém symfony problém, protože parametry z .env souboru jsou by default přetypovány na string a (bool) 'false' vrací true. Samozřejmě programátor může pole přetypovat, ale není to moc typické a v Symfony dokumentaci je to docela utopené.
Řešení: Předělat funkci buildUrl například takto. Pravděpodobně se najde i hezčí řešení.
public function buildUrl($urlPath)
{
$isProductionMode = $this->getConfig('isProductionMode');
if (!(bool) $isProductionMode || $isProductionMode === 'false') {
return 'https://gw.sandbox.gopay.com/';
}
return 'https://gate.gopay.cz/';
}
Problém: Při nastavení
isProductionMode
nafalse
se použije produkční prostředí v novém Symfony, které používá.env
na konfiguraci.Proč: Ve třídě
GoPay
v metoděbuildUrl()
na řádku49
se používá(bool)$this->getConfig('isProductionMode')
. To je v novém symfony problém, protože parametry z.env
souboru jsou by default přetypovány na string a(bool) 'false'
vracítrue
. Samozřejmě programátor může pole přetypovat, ale není to moc typické a v Symfony dokumentaci je to docela utopené.Řešení: Předělat funkci
buildUrl
například takto. Pravděpodobně se najde i hezčí řešení.