|
Danny Boy
|
Mercredi 23 Juillet 2008 5:07:19 pm
Création d'objets par programmation en ayant le rôle Anonymous
Hello,
J'essaie de faire une extension avec un module qui crée des objets par programmation.
Ca marche très bien, mais seulement quand j'appelle mon module avec l'url "vue du backoffice" (http://back/module/vue/params)
Par contre quand je l'appelle avec l'url du front (http://front/module/vue/params), il n'y a pas de plantage, mais je ne vois pas mon objet dans le BO.
En fait je le vois en base (en passant par phpmyadmin), mais c'est une "coquille vide" : son name est resté celui par défaut, il n'a pas de date de modification, ni de date de publication...
Je remarque que son OWNER_ID est celui de l'utilisateur Anonymous, contrairement aux objets qui sont biens créés en appelant l'URL du BO, et qui ont comme owner l'utilisateur Admin !
J'ai donc pensé à un problème de droits : pour en être sûr j'ai carrément accordé TOUS les droits à Anonymous (all modules, all functions, No limitations) , mais ça n'a rien changé !! 
En fait j'aimerais pouvoir créer des objets en appelant mon module, même sans être authentifié : depuis un site externe par exemple (mon module se comporterait donc comme une sorte de service web)
Qqun saurait m'expliquer comment faire ?
Merci,
Danny.
|
|
Danny Boy
|
Jeudi 24 Juillet 2008 11:24:30 am
Re: Création d'objets par programmation en ayant le rôle Anonymous
Bon voila la solution : on se pose pas de questions, on se connecte en Admin le temps de créer les objets !! 
$currentUser = eZUser::currentUser();
$adminUser = eZUser::fetch(14);
$adminUser->loginCurrent( );
// création des objets
$adminUser->logoutCurrent( );
$currentUser->loginCurrent( );
|