Fork me on GitHub






version et info du module
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
Bonjour
--------------
Coment faire pour récupérer le numéro de version, le nom, ect du module.
J'ai essayé en faisant :
global $modversion;
mais ça ne marche que si je fais un include de xoops_version, et ca me parait pas tres caholique (ni protestant non plus d'ailleurs) et dans les $xoopsConfig, $xoppsModuleCongig, ect. je n'ai rien trouvé.
Y-a-t-il des variables du genre de XOOPS_VERSION qui donne le numéro de verion de xoops.

Posté le : 28/06/2007 11:37
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Xoops accro
Inscrit: 25/02/2004 00:20
De Région parisienne
Messages: 2526
Pour la version de xoops, il y a cette constante

XOOPS_VERSION


Pour les modules c'est très different

include_once( XOOPS_ROOT_PATH '/lernel/module.php');
$moduleObj XoopsModule::getByDirname("[color=cc0000]dossier du module[/color]");
$moduleVersion $moduleObj->getVar('version')/100);
$moduleName  $moduleObj->getVar('name');

Posté le : 28/06/2007 12:09
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
d'abord merci.

bizarre le "/100" sur le numéro de version

dans mon module version j'ai çà
$modversion['name'] = "lexique";
$modversion['version'] = "1.8.1";
$modversion['description'] = 'Gestion multi-Lexiques';
$modversion['credits'] = "Jean-Jacques DELALANDRE";
$modversion['author'] = "jjd@kiolo.com";
$modversion['initiales'] = "J°J°D";
$modversion['license'] = "GPL";

il semble que ne puisse récupérer que certains champs: version et name, les autres pas moyen !!!

Posté le : 28/06/2007 12:48
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Xoops accro
Inscrit: 25/02/2004 00:20
De Région parisienne
Messages: 2526
Citation :

bizarre le "/100" sur le numéro de version


Normal dans la base de donnée le numéro de version est stocké sous forme d'entier.
$modversion['version'] * 100


Citation :

$modversion['name'] = "lexique";
$modversion['version'] = "1.8.1";
$modversion['description'] = 'Gestion multi-Lexiques';
$modversion['credits'] = "Jean-Jacques DELALANDRE";
$modversion['author'] = "jjd@kiolo.com";
$modversion['initiales'] = "J°J°D";
$modversion['license'] = "GPL";

il semble que ne puisse récupérer que certains champs: version et name, les autres pas moyen !!!


Avec la fonction que je t'ai donné, c'est normal seul les données enregistrées dans la base de donnée sont "récpurable".

Si tu regardes l'objet lernel/module.php tu trouvera la fonction loadInfo qui permet de lire les variables contenues dans le fichier xoops_version.php

$module_handler =& xoops_gethandler('module');
$module =& $module_handler->create();
$module->loadInfo("[color=CC0000]dossier du module[/color]);

$module_handler =& xoops_gethandler('module');
$moduleObj =& $module_handler->create();
$moduleObj->loadInfo("[color=CC0000]dossier du module[/color]");
echo 
$moduleObj->getInfo('[color=CC0000]Nom de la clés du tableau modinfo à récurpérer[/color]');


Important :
Comme je l'ai écrit plus haut, le numéro de version du module est enregistré comme un entier dans la base de donnée.

Si le numéro de version de ton module est 1.8.1, c'est 180 qui sera enregistré dans la base de donnée.

Donc si tu veux garder cette numérotation, il faut donner la valeur 1.81 à $modversion['version']
$modversion['version'] = "[color=cc0000]1.81[/color]";

Posté le : 28/06/2007 14:25
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
Merci, mais entre temps en fouinant un peu dans d'autres modules, j'ai testé cette solution qui fonctionne bien et qui récupère bien le numéro de version et tous les autres éléments.
//---------------------------------------------
function lex_copyright() {
global $xoopsModule;

$module_handler = &xoops_gethandler('module');
$versioninfo = &$module_handler->get($xoopsModule->getVar('mid'));
$v = $versioninfo->getInfo('version');
$i = $versioninfo->getInfo('initiales');
$n = $versioninfo->getInfo('name');

$cr = "<a href='http://www.wakasensei.fr' target='_new'><B>{$n}</B> "
._MD_LEX_VERSION." {$v} "._MD_LEX_BY." <B>{$i}</B></a>";

return ($cr);

}

sub test (){
echo "résultat : ".copyright();

}
//----------------------------

donne bien

résultat : Lexique Version 1.8.1 par J°J°D

Quelle est la meilleure méthode ?
Sans doute celle qui done le résultat attentu, mais est-ce correct ?

Posté le : 28/06/2007 14:48
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Semi pro
Inscrit: 13/12/2004 11:28
De Lyon
Messages: 1364
Pour ma part j'utilise ta méthode et elle fonctionne très bien

Posté le : 28/06/2007 15:47
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
alors j'adopte, merci.

Posté le : 28/06/2007 17:04
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Xoops accro
Inscrit: 25/02/2004 00:20
De Région parisienne
Messages: 2526
Ta methode permet d'obtenir les informations lorsque le visiteur est sur ton module.

L'autre permet d'avoir les informations lorsque le visiteur se trouve sur n'importe quel module.

Donc tout dépend de ce que tu veux faire!!!
si tu souhaites afficher les informations dans un block (donc sur tous les modules du site), je t'invite à utiliser la solution que je propose.

Posté le : 28/06/2007 17:07
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Semi pro
Inscrit: 13/12/2004 11:28
De Lyon
Messages: 1364
Citation :

DuGris a écrit:
Ta methode permet d'obtenir les informations lorsque le visiteur est sur ton module.

L'autre permet d'avoir les informations lorsque le visiteur se trouve sur n'importe quel module.

Donc tout dépend de ce que tu veux faire!!!
si tu souhaites afficher les informations dans un block (donc sur tous les modules du site), je t'invite à utiliser la solution que je propose.

Je suis d'accord aussi avec Dugris

Posté le : 28/06/2007 17:25
Partager Twitter Partagez cette article sur GG+
Re: version et info du module
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
ok vu la diférence.
Je note les deux, mais pour l'instant je garde l'autre, c'est juste pour afficher en bas de page du formulaire qui permettra d'imprimer la fiche complete d'un élément du lexique (module que je termine), la version, le nom du module l'auteur (bibi), ect, ect. donc un truc très basic.
Mais je garde l'autre dans mes archives pour mon prochain module que j'ai plus ou moins entammer en faisant le multi lexiques.
Merci encore.

Posté le : 28/06/2007 17:40
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

51 Personne(s) en ligne (38 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 51 | Plus ...