Jump to content

Accès interdit à mon module


Recommended Posts

Bonjour,

 

Je suis en train de rendre compatible un module que j'avais développé pour la version 1.4 de prestasop compatible avec la version 1.5.

 

J'ai donc déjà testé d'installer mon module tel quel sur prestashop 1.5 j'ai rencontré l'erreur de la variable PS_ADMIN_DIR qui a changé de nom _PS_ADMIN_DIR_ que j'ai donc défini dans l'index.php du répertoire admin :

define('PS_ADMIN_DIR', getcwd());

 

Mais j'ai désormais un problème d'accès quand je tente d'accéder à mon module j'ai l'erreur suivante :

Trying to get property of non-object in C:\wamp\www\prestashop\classes\AdminTab.php on line 2250
Accès interdit

 

Je ne comprends pas d'ou vient ce problème je me suis rendu à la fonction qui pose problème et il n'arrive pas à accéder à cette propriété pour m'identifier :

$this->context->employee->id_profile

 

Quelqu'un aurait une idée du problème ?

 

Merci d'avance pour votre aide

Edited by aliaspresta (see edit history)
Link to comment
Share on other sites

(Merci pour le déplacement j'ai vu trop tard que je m'étais trompé de forum)

 

Ton code me permet d'accéder à mon module coeos.pro mais le problème c'est que ce module va etre disponible au téléchargement et je ne peux pas demander à l'acheteur d'aller modifier sa classe AdminTab.php

 

Le problème pourrait venir de la définition de la variable PS_ADMIN_DIR vu qu'elle n'existe visiblement plus dans la version 1.5 de prestashop je ne sais pas trop ou mettre cette nouvelle déclaration :

define('PS_ADMIN_DIR', getcwd());

Edited by aliaspresta (see edit history)
Link to comment
Share on other sites

Si il faut changer l'AdminTab, alors fait un override.

 

Je ne suis pas sûre de comprendre, ton module va chercher un fichier dans le dossier admin ? sinon dans classesAdminTab.php il y a bien _PS_ADMIN_DIR_ donc elle est définie et tu ne peux pas la redéfinir, à la rigueur change tes PS_ADMIN_DIR par _PS_ADMIN_DIR_

 

 

pour l'orthographe c'est coeos.pro ;)

Link to comment
Share on other sites

Oui je vais récupérer des fichiers dans le répertoire admin

J'avais bien penser remplacer mes PS_ADMIN_TAB par _PS_ADMIN_TAB_ sauf que dans ce cas mon module ne serait plus compatible avec prestashop 1.4...

Donc il faut que je vois si je peux surcharger cette méthode d'AdminTab mais c'est quand même bizarre que j'ai à la surcharger...

 

Merci de ton aide

Link to comment
Share on other sites

Sinon tu peux toujours faire un truc du genre :

 

public function TaFonction()
{
 if(version_compare(_PS_VERSION_,'1.5','>'))
  return $this->TaFonction_15();
 else
  return $this->TaFonction_14();
}

 

Dans TaFonction_14 tu utilises PS_ADMIN_DIR et dans TaFonction_15 tu utilises _PS_ADMIN_DIR_

Link to comment
Share on other sites

Si je reprend : quand tu es sur la page "Modules" du back office tu peux accéder à n'importe quel module sans problème sauf au tiens qui affiche

 

Trying to get property of non-object in C:\wamp\www\prestashop\classes\AdminTab.php on line 2250

Accès interdit

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