Jump to content

Override classe Customers.php errore strano


Madsex

Recommended Posts

Salve,

stò effettuando l'override della classe customer (classes/Customer.php) in particolare della funzione getByEmail .

 

Accade però una cosa strana, anche se copiata pari pari e senza modifiche, la funzione nell'override scatena un errore che vi riporto: PHP Fatal error:  Class 'ServiceLocator' not found in /home/ait/public_html/override/classes/Customer.php on line 45

 

la riga incriminata è questa: $crypto = ServiceLocator::get('\\PrestaShop\\PrestaShop\\Core\\Crypto\\Hashing');

 

Mi sembra un errore di path ma non capisco perchè, essendo un override.

Tra l'altro non riesco a capire cosa rappresenti quel path scritto in maniera strana, sicurametne una mia mancanza ma se qualcuno mi illumina sarei gratissimo.

 

Attendo vostre, grazie in anticipo.

Link to comment
Share on other sites

Ciao,

 

che versione stai usando di Prestashop? Ho dato un'occhiata alla classe Customer (1.6.1.17) e la riga che hai citato non c'è proprio, sembra un comando che permette di criptare dei dati (o di controllarli se criptati) bisognerebbe andare a vedere come funziona serviceLocator.

 

Buon pomeriggio,

Federica

Link to comment
Share on other sites

Ciao a tutti,

ho risolto fortunatamente. In pratica fuori dalla classe originale ma nello stesso file c'è questo: use PrestaShop\PrestaShop\Adapter\ServiceLocator;

 

Ho aggiunto la stessa cosa anche nella mia classe di override e ha funzionato tutto.

 

Per mia ignoranza però continuo a non capire cosa significano entrambe le cose.

 

Grazie se avete risposte utili a chiarirmi le idee e cmq grazie lo stesso per l'aiuto

 

PS: sono su 1.7.1.2

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...