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

  [Opened] [astuce] plugger jCommunity à Phorum

Posted by foxmask on 09/29/2008 11:58

bonjour,

je cherche à plugger jCommunity à Phorum.

J'ai donc défini dans dbprofils.ini.php :

 default = jportal
 [jportal]
 driver="mysql"
 database="jportal"
 host= "localhost"
 user= "jportal"
 password=jportal
 persistent= on
 table_prefix = "phorum_"

ensuite j'ai voulu créé mon DAO me permettant d'utiliser la table phorums_users comme suit :

php jelix --jportal createdao jportal users users

mais jelix me dit ne pas trouver la table jportal.users malgré mon table_prefix ...

Apres cela comme la primary key de la table users est l'id auto incrementé et que jCommunity impose un pk sur le login ; il faut bien changer la PK de ma table users non ?

Merci de vos lumieres ;)

Cordialement.


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

  [Opened] Re: plugger jCommunity à Phorum

Reply #1 Posted by laurentj on 09/29/2008 13:49

Salut,

mais jelix me dit ne pas trouver la table jportal.users malgré mon table_prefix ...

Créer un ticket pour ce bug. En attendant, créer le dao à la main. Ou encore, enlève cette option table_prefix et indique les noms complets des tables

Après cela comme la primary key de la table users est l'id auto incrementé et que jCommunity impose un pk sur le login ; il faut bien changer la PK de ma table users non ?

surtout pas, sinon phorum risque de ne plus fonctionner correctement..

pour la solution, je ne sais pas trop..

  [Opened] Re: plugger jCommunity à Phorum

Reply #2 Posted by foxmask on 09/29/2008 13:56

Merci pour les infos je fais un ticket ;)

Comme solution peut-être faire une 0.3 de jcommunity utilisant un ID comme PK ? :-) (quitte à ce que j'aide à adapter, ça me gêne pas sauf, si c'est écrit dans le marbre que jcommunity doit marcher ainsi)

Parce que sur la page du projet jcommunity il est dit que le projet permet une auth compatible avec phorum. Mais là ce n'est pas trop le cas non ? Ou bien est-ce juste dans la fonction de cryptage qu'il l'est simplement ?

Cordialement

edit : ticket 703


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

  [Opened] Re: plugger jCommunity à Phorum

Reply #3 Posted by foxmask on 09/30/2008 15:16

Pour tenir informé :

Je suis parvenu à faire en sorte que la PK soit un id avec ma DAO. Tout roule jusque là ;)

j'ai produit un listener PhorumAuth qui recupère les infos de l'utilisateur vient de se connecter :

 class phorumauthListener extends jEventListener{
    function onAuthCanLogin($event) {
        $username = $event->getParam('user')->login;
        $password = $event->getParam('user')->password;
        
        $accountFact = jDao::get('user');
        
        $list = $accountFact->getByLoginPassword($username,$password);
    }
 }

reste à pondre la méthode qui va ouvrir la session Phorum en utilisant $list, mais pour l'heure je n'ai pas encore bien cerné la "redaction" des hooks phorum.


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

  [Opened] Re: plugger jCommunity à Phorum

Reply #4 Posted by Julien on 09/30/2008 15:21

Pour tenir informé aussi, les tickets #702 et #703 ont été patchés ;)


Julien

  [Opened] Re: [astuce] plugger jCommunity à Phorum

Reply #5 Posted by laurentj on 09/30/2008 22:34

pour 1) et 2), parfait.

Par contre, pour le 3, c'est totalement inutile, et d'ailleurs insuffisant : si ailleurs dans une appli on fait un jAuth::login() (pour une raison ou pour une autre), l'utilisateur ne sera pas authentifié sur le forum.

Or il se trouve que justement, les méthodes de jAuth emettent des évènements.

Donc il vaut mieux répondre à ces évènements que de hacker jcommunity ;-)

Conçernant l'appel de l'API de phorum, c'est un peu lourd je trouve. On ne peut vraiment pas faire plus leger ? genre, faire soi même les setcookies et la création des variables en sessions ?

  [Opened] Re: [astuce] plugger jCommunity à Phorum

Reply #6 Posted by foxmask on 10/01/2008 15:57

j'ai demandé sur phorum.org comment simplifier la comm jelix<=>phorum ; ce qu j'ai ecrit est correct ; mais "yaurait" mieux ; en passant par un " hook phorum " qu'on depose dans le rep mods de phorum et qui lui se charge de vérifier si le user est (dé)connecté dans jelix.

Donc un utilisateur se (dé)connecte avec jCommunity (voire juste que jAuth) Quand on se rend sur phorum, le hook vérifie si un session jelix existe ou non. Inversement, si depuis phorum, l'utilisateur se deconnecte, le hook doit gerer la fin de session de jelix.

Du coup ça serait peut-etre aussi bien voire mieux de passer par un hook phorum non ?


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

  [Opened] Re: [astuce] plugger jCommunity à Phorum

Reply #7 Posted by foxmask on 10/01/2008 17:41

la question est donc :

comment peut-on accéder aux infos de la session de jelix en dehors de jelix. techniquement, dans un script foobar.php du repertoire www, quelles lignes PHP ajoutées pour avoir la main sur ces infos ?


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

  [Opened] Re: [astuce] plugger jCommunity à Phorum

Reply #8 Posted by laurentj on 10/01/2008 22:05

Du coup ça serait peut-etre aussi bien voire mieux de passer par un hook phorum non ?

Si tu laisses la possibilité de se connecter/deconnecter à la fois à partir de jelix et à partir de phorum, il faut gérer la session Jelix dans phorum et la session phorum dans jelix. Donc c'est pas "mieux", c'est ni moins bien, il faut le faire, c'est tout.

Une autre chose, serait tout simplement que tu désactives dans phorum les pages de connection/déconnection, et dans les templates, que tu remplace les liens de connection/deconnection en les faisant pointer sur ceux de ton appli jelix.

comment peut-on accéder aux infos de la session de jelix en dehors de jelix.

euh... $_SESSION ?

  [Opened] Re: [astuce] plugger jCommunity à Phorum

Reply #9 Posted by foxmask on 10/02/2008 11:08

Correction : ya rien dans $_COOKIE c'est dans $_SESSION ;)

Je pense qu'en partant du postulat que dans le hook on devra utiliser le meme nom de session que celui de auth.coord.ini.php cela allegera considerablement le hook et le process de verification de l'existence d'une session existente.

je continue mes teste avec le hook ;)


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

 
Page
  1. [astuce] plugger jCommunity à Phorum