Jump to content

Bug modulo Legal Compliance/Conformitá Legale Ps 1.7.2.3/1.7.2.4 (risolto)


Fabry

Recommended Posts

Tempo fá sviluppando un sito multi idioma mi sono imbattuto in questo problema ed ho scoperto che il problema/bug era nel modulo legal compliance o modulo Conformitá Legale se usate il Back Office in italiano.

Il problema nasce quando si ha un prodotto con attributi e quindi con variazione di prezzo  dove il modulo "stampa" una scritta o label che in italiano é tradotta con "da"...in inglese "From" ad indicare che i prezzi partono "da" e via dicendo., Succede che se siete sulla pagina inglese e poi andate nella versione italiana questa label non cambia, ossia rimane in cache l'ultima label che avete visualizzato...se l'ultima era "from" dall'inglese ve la ritrovate per tutte le lingue....se avevate visitato la versione italiana..stesso risultato, vi ritrovare il "da" per tutte le lingue. Poi mi sono accorto che disabilitando lo Smarty il problema spariva, quindi era legato alla cache.

Scandagliando nel file principale del modulo che é responsabile di questa scritta quindi ho apportato le suddette modifiche:

il file é : ps_legalcompliance.php

e in pratica in corrispondenza del  HookDisplayProductPriceBlock dovete aggiungere un terzo parametro cosicché la linea da:

return $this>dumpHookDisplayProductPriceBlock($smartyVars, $hook_type);

diventa:

return $this>dumpHookDisplayProductPriceBlock($smartyVars, $hook_type, (int)$this->context->language->id);

 

la modifica deve essere fatta alle linee : 900, 913, 941, 963 e 981.

 

Nel mio caso su due siti con ps 1.7.2.3 e 1.7.2.4 ha risolto perfettamente il problema quindi posso utilizzare ccc e smarty cache.

 

ciao

 

Ps: l'avevo giá pubblicato su Forge quindi spero che apportino modifica alla beta 1.7.3

http://forge.prestashop.com/browse/BOOM-4647

 

 

  • Like 2
Link to comment
Share on other sites

  • 1 year later...

Ciao Fabry perdonami ho un problema con il modulo Redis Cache scelto dal sistemista che mi da questo problema

Fatal error: Uncaught Error: Class 'CacheRedis' not found in /var/www/html/classes/cache/Cache.php:184 Stack trace: #0 /var/www/html/classes/db/Db.php(595): CacheCore::getInstance() #1 /var/www/html/classes/shop/Shop.php(345): DbCore->executeS('SELECT s.id_sho...') #2 /var/www/html/config/config.inc.php(119): ShopCore::initialize() #3 /var/www/html/index.php(27): require('/var/www/html/c...') #4 {main} thrown in /var/www/html/classes/cache/Cache.php on line 184.

Conosci una soluzione da consigliarmi abche un altro modulo sulla cache. Non so se è questo il forum giusto ma spero in un miracolo.

Grazie

 

Link to comment
Share on other sites

Ciao sì alla fine fo cancellato index sia in dev che prod e attivato overraide nel bk di presta.

Ho aggiunto la riga di codice return $this>dumpHookDisplayProductPriceBlock($smartyVars, $hook_type, (int)$this->context->language->id);  come consigliavi ma in debug mi da sempre errore :(

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...