[RESOLU] Afficher Une Icone sur nouvel onglet

Bonjour,
Je développe un module pour dolibarr 3.2.0 qui ajoute un onglet dans le top menu.
Est-il possible d’ajouter une icône à cet onglet sans modifier les styles des thèmes de dolibarr (eldy, auguria …)?
Donc mettre l’image et le style dans le répertoire du module.

Toujours pas de réponses pour une question aussi simple???

C’est possible,
il me semble qu’il suffit de déposer l’icône dans le répertoire /htdocs/monmodule/img/
et de la nommer « monmodule.png ».
Ca marche bien mais comme ça fait déjà un bon moment que je l’ai fait, je ne me rappelle plus s’il
avait fallu configurer un autre fichier …
Tiens nous au courant.
Bonsoir.

J’ai déja éssayé mais ça ne marche pas.

Normalement ça devrait, il faut garder une cohérence avec le nom du module, tant au niveau des classes, des images, que du répertoire du module

je viens de vérifier, tout fonctionne pour les classes, l’admin, le sql, la configuration.
Le picto est bien affiché dans la configuration du module.
j’ai bien un dossier img avec dedans l’image png qui a le meme nom que le module.
mais aucune image ne s’affiche dans l’onglet du top menu.

actualise ta page ou vide le cache du browser

j’ai rechargé la page, vidé le cache, desinstallé et réinstallé le module. Toujours pas d’icône.

et firebug il dit quoi ?
en regardant le code source de la page il va la chercher où cette image ?

apparemment il va la chercher dans le theme eldy

Pas d’autres idées ??
Quelqu’un pourrait peut-être m’envoyer un exemple de module tout bête avec un simple onglet avec icône dans le top menu. Icône dont l’image se trouvera dans le répertoire du module et non dans les themes eldy ou auguria.

Moi j’utilise le gestionnaire de menu eldy,
et manifestement, le code qui s’occupe de chercher les bonnes images se trouve dans le fichier
/htdocs/theme/eldy/style.css.php

d’abord récupération des images pour les menus prédéfinis (l339 -> l402)

puis ensuite les images pour les modules complémentaires
cf la ligne : « $url=dol_buildpath(’/’.$val.’/img/’.$val.’.png’, 1); »

Avec ça tu devrais pouvoir comprendre pourquoi ton icone ne s’affiche pas …

Justement, moi aussi j’utilise le theme Eldy et je ne veux pas qu’il aille chercher l’image dans le theme Eldy. Ca, je sais le faire mais il faut modifier le fichier style.css.php et je ne veux pas.
Donc si je regarde le code dans le fichier style.css.php.

// Search img file in module dir $found=0; $url=''; foreach($conf-\>file-\>dol_document_root as $dirroot) { if (file_exists($dirroot."/".$val."/img/".$val.".png")) { $url=dol_buildpath($path.'/'.$val.'/img/'.$val.'.png', 1); $found=1; break; } } // Img file not found if (! $found && $generic <= 4) { $url=dol_buildpath($path.'/theme/eldy/img/menus/generic'.$generic.".png",1); $found=1; $generic++; } if ($found) { print "/\* A mainmenu entry but img file ".$val.".png not found, so we use a generic one */\n"; print "div.mainmenu.".$val." {\n"; print " background-image: url(".$url.");\n"; print " height:28px;\n"; print "}\n"; }
Donc soit il ne trouve pas l’image qui se trouve pourtant dans:
monmodule/img/monmodule.png, soit la valeur $val n’est pas bonne.
mais dans ce cas, il devrait m’afficher l’image generic.png.
Or il n’y a rien d’afficher ???

Après vérification la valeur $val qui devrait être monmodule n’est pas récupéré mais je ne comprends pas pourquoi.
De plus, j’ai vérifié et dans la table llx_const j’ai bien une ligne MAIN_MODULE_MONMODULE.

Je me réponds à moi même. Après avoir regardé la class conf.php, j’ai vu que les noms de module sont récupérés uniquement avec des lettres or dans le nom de mon module j’avais inclus un chiffre : mon2module. Comme cela le nom n’est pas récupéré et l’icône n’est donc pas affichée. Un nom de module correct ne doit comporter que des lettres. en mettant monmodule, l’icône est correctement affichée. Merci à tous pour le coup de main.

pouvez vous me donner quelques explication ou je doit intervenir exactement j’arrive pas à résoudre le problème
merci d’avance