Bonjour, vénérables glpiens! j'en appelle aux plus connaissants d'entre vous, sur le modèle des entités et sous-entités, et sur le concept de récursivité. J'ai pris il y a quelques mois la responsabilité du plugin Room, qui n'était plus supporté depuis la version 0.72.
Je l'ai porté en version 0.80.x au mieux de mes connaissances, mais comme nous n'utilisons pas le concept de multi-entité ici (tous les inventaires, tâches et utilisateurs sont déclarés / liés à l'entité-racine), je n'avais pas testé le fonctionnement du plugin dans ce contexte. Un bug m'a été soulevé, cependant. lorsqu'une salle est créée dans une sous-entité, et indiquée comme récursive, une erreur survient lors du chargement / affichage de celle-ci. *PHP User Notice: *GLPI autoload : file ../../../plugins/room/inc/room_computer.class.php not founded trying to load class 'PluginRoomRoom_Computer' in C:\Apache2.2\htdocs\glpi_0807\inc\includes.php at line 98 *PHP User Notice: *GLPI autoload : file ../../../inc/unknown.class.php not founded trying to load class 'UNKNOWN' in C:\Apache2.2\htdocs\glpi_0807\inc\includes.php at line 98 ( ! ) Fatal error: Class 'UNKNOWN' not found in C:\Apache2.2\htdocs\glpi_0807\inc\commondbtm.class.php on line *1483* L'erreur survient dans la méthode canUnrecurs() de la classe commondbtm, au moment de vérifier si des sous-objets (dans ce cas-ci des ordinateurs) sont liés à une entité parente. GLPI tente de charger une classe PluginRoomRoomComputer, laquelle n'existe pas. J'aimerais avoir plus de détails sur ce qui doit être vérifié dans un cas comme celui-ci; - sur quelles informations se base la méthode pour définir si une salle peut cesser d'être récursive ou pas; - pourquoi cette classe (sous-classe PluginRoomRoom_Computer) est essentielle à cet endroit alors que ça ne cause pas de problème dans tous scénarios si on n'a qu'une seule entité; - ce qu'implique la récursion d'un objet et le lien avec les entités. Je suis programmeur, je comprends le principe de récusion au niveau programmatique, mais je ne suis pas certain de l'application qui en est faite ici. Je suis aussi conscient que c'est une longue question à développement, mais j'essaie simplement de rendre le plugin utilisable par le plus grand nombre! :) Merci beaucoup à qui voudra bien me consacrer les minutes requises, je suis conscient que ma question nécessite plus de 2 lignes pour être répondue. Pascal Marier-Dionne
_______________________________________________ Glpi-dev mailing list [email protected] https://mail.gna.org/listinfo/glpi-dev
