You are not logged in.
Bonjour à tous
ceux qui ont fouillé GLPI se sont aperçu que la base de connaissance utilise TinyMCE pour le rédaction des messages ; cependant il est actuellement impossible de charger des images à part faire un pdf et mettre le pdf en téléchargement.
TinyMCE permet de charger des images, il suffit pour cela de rajouter cette option au chargement de la page mais TinyMCE ne possède pas d'explorateur de fichier donc si on peut charger des images, il est impossible d'aller les sélectionner directement sur son poste (ou sur le réseau).
Voici la procèdure pour ajouter le support des images et intégrer un explorateur de fichier à TinyMCE.
Tout d'abord, nous allons remplacer TinyMCE par TinyFCK, TinyFCK est un projet OpenSource qui prend le meilleur de TinyMCE en lui ajoutant l'explorateur de fichier de FCKeditor. On peut récupérer TinyFCK ici.
Une fois le fichier recupéré et dézippé, vous allez vous rendre dans le dossier plugins et supprimez tous les dossiers SAUF 'advimage', 'cleanup', 'directionality', 'table' et '_template'.
Faites une sauvegarde du dossier tiny_mce situé dans 'lib', supprimez son contenu et copiez le contenu du dossier de TinyFCK dedans.
Copiez le fichier 'tiny_mce_gzip.php' à partir du dossier sauvegardé de TinyMCE (je vous avais bien de ne pas le supprimer)
Créer un nouveau fichier nommé callback.js et copier-coller le code suivant :
function fileBrowserCallBack(field_name, url, type, win) {
var connector = "../../filemanager/browser.html?Connector=connectors/php/connector.php";
var enableAutoTypeSelection = true;
var cType;
tinyfck_field = field_name;
tinyfck = win;
switch (type) {
case "image":
cType = "Image";
break;
case "flash":
cType = "Flash";
break;
case "file":
cType = "File";
break;
}
if (enableAutoTypeSelection && cType) {
connector += "&Type=" + cType;
}
window.open(connector, "tinyfck", "modal,width=600,height=400");
}
Enregistrez le et copiez le dans le dossier 'tiny_mce'
Maintenant, ouvrez le fichier 'glpi\inc\knowbase.function.php' et rendez-vous ligne 134, recherchez le texte 'echo "</script>";' et copiez à la ligne suivante :
// Rajout de la fonction browser_callback
echo "<script type=\"text/javascript\" src=\"".$HTMLRel."lib/tiny_mce/callback.js\"></script>\n";
Cette ligne de code fait la connexion avec l'explorateur de FCKeditor.
Nous allons activer le bouton image dans TinyMCE. A la ligne 133, recherchez le texte ',numlist,outdent,indent' et rajoutez à la ligne
,separator,image
Sauvegardez le fichier et faites un test, cela devrait fonctionner à part pour les textes qui apparaissent en anglais dans le meilleur des cas.
Pour ajouter les textes en français, téléchargez le language pack en français depuis le site de TinyMCE : Language pack, ensuite copiez les fichiers dont vous avez besoin (templates, plugins, ...) dans votre dossier tiny_mce.
Voilà, c'est terminé, j'espère que mes explications sont restées claires et compréhensibles. Si vous avez des questions n'hésitez pas.
Last edited by slanteri (2006-10-13 09:36:17)
Offline
Merci bcp pour ta contribution.
A voir si les devs ne sont pas contre l'idée de l'intégrer..
Xavier Caillaud
Blog GLPI Infotel
Offline
Merci beaucoup.
Dans la base de connaissance je mets beaucoup de procedure et c'est vrai qu'une image vaut mieux que de long discour
Cus Habitat (Strasbourg)
Operating system: Linux 2.6.32-431.3.1.el6.x86_64
Prod : GLPI 0.84.5 / PHP 5.4.23 / MySQL: 5.5.35
Plugin : Behaviors 0.84, fusioninventory 0.84+3.5, Monitoring 0.84+1.0, Webservices 1.4, Timelinticket 0.84+1.2
Offline
Bonjour à tous,
je voulais savoir si cette procédure fonctionne avec la v0.68.2 de GLPI ?
Car je viens d'essayer de la mettre en place mais lorsque je clique sur le bouton image, je ne peux pas lancer l'explorateur de FCKeditor, et j'ai le formulaire habituel de TinyFCK.
Pouvez-vous m'aider ?
merci
Production -> Server OS: RedHat Enterprise Linux v5.5 - GLPI: v0.72.4
Développement -> Server OS: Windows XP - GLPI: v0.83.2
Offline
Cette modification fonctionne (et a été développé) sur la dernière version.
Avez vous chargé tous les plugins de TinyFCK sur le serveur ?
Sulian
Offline
Vous voulez dire les répertoires contenus dans le dossier plugins ?
Si oui, j'ai simplement gardé les dossiers indiqués plus haut : 'advimage', 'cleanup', 'directionality', 'table' et '_template'.
Arnaud
Production -> Server OS: RedHat Enterprise Linux v5.5 - GLPI: v0.72.4
Développement -> Server OS: Windows XP - GLPI: v0.83.2
Offline
J'ai peut être trouvé d'où vient mon problème.
Je n'avais pas fait attention, mais les champs "input" sont trop longs par rapport à la fenêtre (voir image)
Je ne vois donc pas l'icone pour ouvrir l'explorateur.
Avez-vous déjà eu ce problème ?
edit:
Après modification de la taille des champs, le bouton n'est pas présent, je ne comprend pas pourquoi ??
Last edited by Met@lnono (2006-10-23 16:49:55)
Production -> Server OS: RedHat Enterprise Linux v5.5 - GLPI: v0.72.4
Développement -> Server OS: Windows XP - GLPI: v0.83.2
Offline
Une chose que je viens de remarquer c'est que ma fenêtre de Gestionnaire d'images a beaucoup moins d'options que le fenêtre traditionnelle de TinyMCE Est ce normal ?
Last edited by Met@lnono (2006-10-24 11:12:22)
Production -> Server OS: RedHat Enterprise Linux v5.5 - GLPI: v0.72.4
Développement -> Server OS: Windows XP - GLPI: v0.83.2
Offline
Ce "patch" sera-t-il intégré aux sources ?
Y'a-t-il des raisons de ne pas l'appliquer ?
Offline
La version 0.68.3 n'est pas complétement compatible avec mes modifications mais en 5mn, l'affaire est réglée, il suffit de refaire les modifications explliquées ci-dessus et tout marche.
Offline
Ce "patch" sera-t-il intégré aux sources ?
Y'a-t-il des raisons de ne pas l'appliquer ?
A priori non car il mixe plusieurs systèmes si je comprend bien ce qui n'est pas super propre.
Pour la problématique image la question est toujours la meme où sont-elles stockées ?
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline
Pour on les stockerait pas dans un répertoire file/_kb_img ?
Cette fonctionnalité est quand même super intéressante afin de ne pas être obligé de mettre des fichiers joints avec tous les items de la base de connaissance.
Offline
je l'ajoute dans notre todo liste
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline
Par défaut, TinyFCE stocke les images dans un répertoire à part que l'on peut configurer. Je serais ravi de donner un coup de pouce pour valider l'intégration dans GLPI.
Offline
Les contraintes que je vois immédiatement :
1) Les images doivent être stockées dans le repertoire files/img par exemple, c'est le repertoire en écriture.
2) Quid de la sécu TinyFck, laisser un droit d'écriture à un script sur un repertoire qui contient aussi les dumps, les documents etc...
3) Nécessité d'autoriser uniquement certains formats d'image vu que là on bypass le système de gestion des documents avec les autorisations d'extension. Je trouve ça génant.
Bref j'ai jamais été partisan de la transformation de la base de connaissances en CMS. Si un article doit se transformer en mode opératoire illustré, il a plus sa place sous une autre forme (lien vers un wiki, un vrai cms, document PDF etc...).
Par ailleurs et là c'est une remarque personnelle, la culture du cliquo-drome me semble fortement lié à l'usage systèmatique de screenshoots (avec de jolies flèches pour indiquer où cliquer) au détriment de textes explicatifs correctement structurés qui amène le lecteur à comprendre ce qu'il fait.
JMD / Jean-Mathieu Doléans - Glpi-project.org - Association Indepnet
Apportez votre pierre au projet GLPI : Soutenir
Offline
Les contraintes que je vois immédiatement :
1) Les images doivent être stockées dans le repertoire files/img par exemple, c'est le repertoire en écriture.
2) Quid de la sécu TinyFck, laisser un droit d'écriture à un script sur un repertoire qui contient aussi les dumps, les documents etc...
3) Nécessité d'autoriser uniquement certains formats d'image vu que là on bypass le système de gestion des documents avec les autorisations d'extension. Je trouve ça génant.
Bref j'ai jamais été partisan de la transformation de la base de connaissances en CMS. Si un article doit se transformer en mode opératoire illustré, il a plus sa place sous une autre forme (lien vers un wiki, un vrai cms, document PDF etc...).
Par ailleurs et là c'est une remarque personnelle, la culture du cliquo-drome me semble fortement lié à l'usage systèmatique de screenshoots (avec de jolies flèches pour indiquer où cliquer) au détriment de textes explicatifs correctement structurés qui amène le lecteur à comprendre ce qu'il fait.
1. C'est possible via le fichier de configuration de TinyFCK
2. Pour l'aspect sécuritaire, l'équipe qui se charge de TinyFCK (synthèse, donc, de TinyMCE et FCK Editor) assure un suivi des failles.
3. Là encore, il est possible de paramètrer les formats d'image acceptés, j'ai testé, il n'est pas possible de charger des documents ou autres.
C'est vrai par contre que la base de connaissances ne doit pas devenir un CMS mais, dans mon cas par exemple, seuls deux personnes peuvent rédiger une FAQ, ces FAQs ne concernent que l'utilisation de l'outil informatique, la FAQ de GLPI ne doit pas devenir une FAQ utilisable par tous les services (production, assurance-qualité, ...).
C'est encore vrai pour l'usage systématique des captures d'écran mais dans mon cas (encore) où les utilisateurs ne savent pas ce qu'est la touche 'shift' ou 'num lock', je pense que cela peut-être utile, ce qui m'empêche pas de faire des textes explicatifs.
@+
Offline
Bonjour à tous,
Il me semble nécessaire de préciser quelques éléments supplémentaires.
Pour le fichier glpi/inc/knowbase.function.php :
au dessus de la ligne 134, il faut bien rajouter le plugins "advimage" ainsi que le "file_browser_callback" :
echo "tinyMCE.init({
language : \"".$cfg_glpi["languages"][$_SESSION["glpilanguage"]][5]."\",
mode : \"exact\",
elements: \"answer\",
plugins : \"table,advimage\",
file_browser_callback : \"fileBrowserCallBack\",
theme : \"advanced\",
theme_advanced_toolbar_location : \"top\",
theme_advanced_toolbar_align : \"left\",
theme_advanced_buttons1 : \"bold,italic,underline,strikethrough,fontsizeselect,formatselect,separator,justifyleft,justifycenter,justifyright,justifyfull,bullist,numlist,outdent,indent,separator,image\",
theme_advanced_buttons2 : \"forecolor,backcolor,separator,hr,separator,link,unlink,anchor,separator,tablecontrols,undo,redo,cleanup,code,separator\",
theme_advanced_buttons3 : \"\"});";
De plus, il faut configurer le fichier glpi/lib/tiny_mce/filemanager/connectors/php/config.php pour activer le connecteur et indiquer le chemin du répertoire où seront placées les images sur le serveur Web :
// SECURITY: You must explicitelly enable this "connector". (Set it to "true").
$Config['Enabled'] = true ;
// Path to user files relative to the document root.
$Config['UserFilesPath'] = '/mesimages/' ;
Voilà normalement tout devrait fonctionner pour ceux qui avaient le problème d'affichage après avoir cliqué sur le bouton "image".
A+
Thomas
Offline
ne pourra de toute facon pas etre intégré dans la 0.7.
je d'associer le ticket correspondant pour la 0.71.
https://dev.indepnet.net:8080/glpi/ticket/869
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline
Pour la future 0.7
ce code change de place et $CFG_GLPI remplace $Htmlrel
// Rajout de la fonction browser_callback
echo "<script type=\"text/javascript\" src=\"".$CFG_GLPI["root_doc"]."/lib/tiny_mce/callback.js\"></script>\n";
Est à copier dans knowbase.class.php vers ligne 128
Ainsi que
plugins : \"table,advimage\",
file_browser_callback : \"fileBrowserCallBack\",
et
,separator,image
Xavier Caillaud
Blog GLPI Infotel
Offline
Est ce que quelqu'un aurait trouvé comment mettre en place cette astuce sur la v0.70 ?
Merci d'avance
Production -> Server OS: RedHat Enterprise Linux v5.5 - GLPI: v0.72.4
Développement -> Server OS: Windows XP - GLPI: v0.83.2
Offline
je l'ai ecrit dans le post juste au dessus du tien.
Xavier Caillaud
Blog GLPI Infotel
Offline
oui mais je ne comprend pas bien ou l'on doit mettre le 1er code ? car la ligne 128 correspondait à son emplacement dans la version 0.68.3 il me semble ?
Pourrais-tu être plus precis stp ?
EDIT:
ça ne serait pas plutôt dans le fichier knowbase.class.php maintenant ?
Last edited by Met@lnono (2008-01-09 19:26:09)
Production -> Server OS: RedHat Enterprise Linux v5.5 - GLPI: v0.72.4
Développement -> Server OS: Windows XP - GLPI: v0.83.2
Offline
Et pour la version 0.72 ?? ca a beaucoup changé ... on ne retrouve pas les même informations
par exemple :
'advimage', 'cleanup', 'directionality', 'table' et '_template'. n'existe plus,
'glpi\inc\knowbase.function.php' n'est plus identique...
des indices ?
Offline
dans le meme domaine comment mettre en place la fonction coller depuis WORD qui est bien pratique et pas présente dans la version livrée avec glpi 0.70.1
je me perd un peu dans le javascript
DRASS ile de france-450 postes, 10 serveurs
GLPI 0.71.2 sur Linux redhat RHEL4 php 5.05 mysql 5 avec OCS-NG sur XAMPP
Offline
je dois être un peu bigleux
je vire le tiny_mce de glpi
j'y copie un autre tiny_mce qui est utilisé dans un cms (spip 1.91) dans lequel est affiché ce fameux "coller depuis word" et cela ne change rien a l'affichage dans glpi .
j'en conclu que c'est paramètrer autre part mais où ?
merci
DRASS ile de france-450 postes, 10 serveurs
GLPI 0.71.2 sur Linux redhat RHEL4 php 5.05 mysql 5 avec OCS-NG sur XAMPP
Offline