Bonjour @baptistebordeaux et @sebastienlille,
Exactement, @sebastienlille a mis le doigt dessus. La méthode initContent() des contrôleurs d'administration dans PrestaShop est cruciale car elle initialise l'environnement. Quand elle est vide, le contrôleur ne bénéficie pas des setups de base de AdminController, ce qui peut effectivement causer des problèmes de sécurité (accès non autorisé) ou des erreurs de contexte (Context::getContext()->smarty ou d'autres objets étant null).
Pour résoudre ce problème dans myquill/controllers/admin/AdminMyquillAjaxController.php, il suffit d'appeler la méthode initContent() de la classe parente. Voici le correctif :
public function initContent()
{
parent::initContent();
}
En ajoutant parent::initContent();, vous vous assurez que toutes les initialisations standards (comme la configuration du contexte, les vérifications des droits d'accès et le chargement de Smarty) sont effectuées avant que votre contrôleur AJAX ne traite les requêtes. Cela permet d'avoir un environnement stable et sécurisé pour vos opérations.