Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] [résolu]master_admin & jelix 1.2

Posted by Nicolas on 01/05/2011 17:51

Bonjour,

Je me trouve face à un problème que je ne parviens pas à résoudre avec jelix 1.2 et jAuth (utilisé via master_admin).

En gros j'ai créé une application, j'ai configuré le fichier de conf de la base et j'ai lancé l'installation de master admin. Jusque ici pas trop de problème (mis à part un problème lors de l'insertion de l'admin en base pour jalc2 mais j'ai crée un ticket pour cela). Bref, je vais sur mon admin, je me connecte, tout marche. Je retourne sur le site (qui ne possède pas de jauth), et là j'ai ce message :

[[exception 18]] Module inconnu dans le sélecteur "jauthdb~jelixuser" /var/www/lib/jelix/core/selector/jSelectorDao.class.php 48

<code>
	0	jSelectorDao->_createPath()	/var/www/lib/jelix/core/selector/jSelectorModule.class.php : 44
	1	jSelectorModule->__construct()	/var/www/lib/jelix/core/selector/jSelectorDao.class.php : 42
	2	jSelectorDao->__construct()	/var/www/lib/jelix/init.php : 108
	3	jelix_autoload()	[php] : 
	4	spl_autoload_call()	[php] : 
	5	session_start()	/var/www/lib/jelix/core/jSession.class.php : 81
	6	jSession::start()	/var/www/lib/jelix/core/jCoordinator.class.php : 132
	7	jCoordinator->process()	/var/www/cdim/www/index.php : 18
</code>

Donc je recherche d'où cela vient et finalement, je me rend compte que lorsque je me déconnecte de l'admin cela remarche. Je ne sais vraiment pas pourquoi j'ai ce problème. Quelqu'un aurait-il une idée svp?

  [Opened] master_admin & jelix 1.2

Reply #1 Posted by foxmask on 01/06/2011 09:44

Bonjour,

Partout où on rencontre le message "Module inconnu dans le sélecteur 'foo~bar'", signifie qu'il ne trouve pas le couple module~action. Et quand on sait pertinemment que ce module~action existe, c'est alors qu'il n'est pas installé pour le point d'entrée concerné.

Donc jauth est dispo pour le point d'entrée admin.php mais pas pour index.php Donc il faut l'installer pour le point d'entrée index.php

voici la doc sur l'installation de ce fameux module :)

Si le point d'entrée de son application n'est pas index.php par défaut, le commande est

php jelix.php --myapp:monpoindentree.php installmodule jauth

@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

  [Opened] master_admin & jelix 1.2

Reply #2 Posted by Nicolas on 01/06/2011 10:05

Le problème la c'est que le point d'entrée index.php n'a pas besion du module jauth, j'en ai besoin que sur le point d'entrée admin.php. Du coup c'est normal qu'il ne soit pas installé sur index.php. Mais si je me connecte sur le point d'entrée admin.php alors index.php, je ne sais pas pourquoi, recherche le module jauth.

Je sais pas si je suis clair. Mais en gros j'ai l'impression que la création de la session d'un utilisateur connecté sur l'admin.php fait que tout les points d'entrée cherche le module jauth qu'il soit installé ou non. Je pensai qu'il était possible d'installer jauth sur qu'un seul des points d'entrée (a savoir ici admin.php). Avais-je tort ?

  [Opened] master_admin & jelix 1.2

Reply #3 Posted by foxmask on 01/06/2011 10:14

Nicolas a dit :
Je pensai qu'il était possible d'installer jauth sur qu'un seul des points d'entrée (a savoir ici admin.php). Avais-je tort ?

Oui et non.

Oui : La session ouverte depuis l'admin "cours toujours" sur toute l'application tant que le logout n'a pas eu lieu.

Non : comme on n'a pas besoin d'accéder aux pages "publiques" de connexion/deconnexion du module jauth, on peut se contenter de mettre dans la section "modules" du fichier defaultconfig.ini.php : jauth.access=1

voir la doc pour les niveaux d'accès, 0,1,2


@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

  [Opened] master_admin & jelix 1.2

Reply #4 Posted by laurentj on 01/06/2011 10:25

Salut,

tu as effectivement cette erreur parce que tu as un objet jelixuser du module jauthdb en session

Plusieurs solutions:

  • soit tu mets l'admin sur un autre domaine (ce qui est conseillé en général), et donc tu auras des sessions différentes
  • soit tu configure jauth pour qu'il utilise un autre dao que jelixuser, et qui soit dans un module commun à tes deux points d'entrées
  • soit tu déclares jauthdb (et non pas jauth) avec un access=1 (et un skipinstall=skip, voir la doc, pour l'installation) pour le point d'entrée index, et tu installes ce module (avec le skipinstall, il va faire semblant de l'installer, mais il sera actif)

  [Opened] [résolu]master_admin & jelix 1.2

Reply #5 Posted by Nicolas on 01/06/2011 11:13

Merci à vous pour ces informations. J'ai résolu le problème avec jauthdb.access=1

Par contre j'ai pas trouvé d'information encore sur le skipinstall=skip dans la doc mais j'ai surement du mal chercher.

  [Opened] [résolu]master_admin & jelix 1.2

Reply #6 Posted by catsoup on 01/06/2011 23:22

Salut, je viens de tester le jauthdb.skipinstall=skip dans mon config.ini.php du point d'entrée index, mais a priori il ne faut pas l'utiliser car ça a pour effet de ne pas executer l'installeur, meme en ayant jauthdb.access=2 et jauthdb.installparam=defaultuser dans le point d'entrée admin (soit les params ajoutés par initadmin)

Donc jauthdb.access=1 pour le point d'entrée index suffit, merci pour l'info, j'avais pas fait attention à ce détail non plus.

 
Page
  1. [résolu]master_admin & jelix 1.2