Prodám výdělečný web ZelenyTiket.cz 1.2Mil/rok
Zobrazují se odpovědi 1 až 5 z 5

ContextErrorException in PrestaShopTranslatorTrait.php line 57

  1. Dobrý deň

    Rozbieham eshop na systéme Prestashop, dnes som testoval objednávky a všimol som si že keď dojdem do 1,osobných údajov (prvý bod v objednávke) a dám pokračovať na adresy tak to hodí chybu a nedá sa teda v objednávke pokračovať, viz. foto: chyba

    Neviem v čom je chyba všetky tie súbory som prešiel a nenašiel som nič.

    Ďakujem za rady.

  2. Co se právě děje na Webtrhu?
  3. může za to špatný překlad do sk, je ke správné verzi prestashopu?

    Z překladu "%1$s (%2$s) pole je príliš dlhé (maximálne %3$d znakov)" pro "The %1$s field is too long (%2$d chars max).", stačí odstranit tu první závorku (%2$s) a v té druhé změnit %3 na %2 a bude ti to fungovat.

  4. Áno verzia je taká akú zadáva predajca šablóny.

    Ale kde to mám prepísať ? v súbore ktorý tam je napísany nieje nič takéto.

    In PrestaShopTranslatorTrait.php line 57
    Tu je tá zložka.

    Kód:
    namespace PrestaShopBundle\Translation;
    
    trait PrestaShopTranslatorTrait
    {
        public static $regexSprintfParams = '#(?:%%|%(?:[0-9]+\$)?[+-]?(?:[ 0]|\'.)?-?[0-9]*(?:\.[0-9]+)?[bcdeufFosxX])#';
        public static $regexClassicParams = '/%\w+%/';
    
        /**
         * {@inheritdoc}
         */
        public function trans($id, array $parameters = array(), $domain = null, $locale = null)
        {
            if (null !== $domain) {
                $domain = str_replace('.', '', $domain);
            }
    
            if (isset($parameters['legacy'])) {
                $legacy = $parameters['legacy'];
                unset($parameters['legacy']);
            }
    
            $translated = parent::trans($id, array(), $domain, $locale);
            if (isset($legacy) && 'htmlspecialchars' === $legacy) {
                $translated = call_user_func($legacy, $translated, ENT_NOQUOTES);
            } elseif (isset($legacy)) {
                $translated = call_user_func($legacy, $translated);
            }
    
            if (!empty($parameters) && $this->isSprintfString($id)) {
                $translated = vsprintf($translated, $parameters);
            } elseif (!empty($parameters)) {
                $translated = strtr($translated, $parameters);
            }
    
            return $translated;
        }
    
        public function getSourceString($translated, $domain, $locale = null)
        {
            if (empty($domain)) {
                return $translated;
            }
    
            $domain = str_replace('.', '', $domain);
            $contextCatalog = $this->getCatalogue()->all($domain);
    
            if ($untranslated = array_search($translated, $contextCatalog)) {
                return $untranslated;
            }
    
            return $translated;
        }
    
        /**
         * {@inheritdoc}
         */
        public function transChoice($id, $number, array $parameters = array(), $domain = null, $locale = null)
        {
            if (null !== $domain) {
                $domain = str_replace('.', '', $domain);
            }
    
            if (!$this->isSprintfString($id)) {
                return parent::transChoice($id, $number, $parameters, $domain, $locale);
            }
    
            return vsprintf(parent::transChoice($id, $number, array(), $domain, $locale), $parameters);
        }
    
        /**
         * @param string $string
         *
         * @return bool
         */
        final private function isSprintfString($string)
        {
            return (bool) preg_match_all(static::$regexSprintfParams, $string)
                && !(bool) preg_match_all(static::$regexClassicParams, $string);
        }
    }

  5. máš tam někde v administraci určitě sekci na správu překladů, tam to musíš přepísat a ne v tomhle souboru, ten za to nemůže. Nejsem php programátor, nepracuji s weby a ani s prestashopem, konkrétně ti poradit nedokážu.

  6. Inac mam uplne rovnaky problem. A doteraz som to nevedel fixnut.
    Ale ako pise hore TomášX tak problem bol v zlom preklade v SVK. Tie su tam po update alebo neviem ako sa tam dostali, ale ja som to urcite takto neprekladal.
    Isiel som teda v translations cast po casti (back office, modules, theme, etc) a dal som vyhladat vyraz: (%2$s)
    Vsade kde to naslo tak som to opravil a vsetko funguje ako ma.
    Vdaka TomasX!

Hostujeme u Server powered by TELE3