tinyeditor 1 - XOOPS Module

Transcription

tinyeditor 1 - XOOPS Module
Documentation
tinyeditor 1.0
1. Comment installer tinyeditor ? ................2
2. Paramétrer tinyeditor ..............................3
3. Les barres d'outils...................................7
4. Les permissions......................................9
5. Utiliser tinyeditor dans vos modules .....11
6. Extensions (plugins) .............................14
7. Fonctionnalités FTP..............................20
8. Upload d'extensions (plugins)...............22
9. Crédits ..................................................23
Page 1 sur 23
Documentation TinyEditor version 1.0
1. Installation
Décompresser le contenu de l'archive à la racine de votre site Xoops.
Un premier dossier xoopseditor/tinyeditor sera alors copié dans le répertoire class et un
autre dossier tinyeditor sera copié dans votre répertoire modules comme tous les autres
modules Xoops.
Installer ensuite ce module comme d'habitude en passant par admin system, modules.
Puis générer les templates associés avec le gestionnaire de templates de Xoops (admin
system, templates).
Les répertoires suivants (si disponibles) nécessitent des autorisations particulières :
CHMOD 777
• tinyeditor / editor / plugins / ibrowser / temp /
• tinyeditor / editor / plugins / ibrowser / scripts / phpThumb / cache /
• tinyeditor / editor / plugins / imanager / temp /
• tinyeditor / editor / plugins / imanager / scripts / phpThumb / cache /
CHMOD 444
• tinyeditor / editor / plugins / ibrowser / config / config.inc.php
• tinyeditor / editor / plugins / ibrowser / scripts / phpThumb /
phpThumb.config.php
• tinyeditor / editor / plugins / imanager / config / config.inc.php
• tinyeditor / editor / plugins / imanager / scripts / phpThumb /
phpThumb.config.php
• tinyeditor / editor / plugins / spellchecker / config.php
• tinyeditor / include / config.inc.php
• tinyeditor / include / ftpconfig.php
• tinyeditor / include / ftpconfigchmod.php
• tinyeditor / include / ftpconfigplugin.php
Page 2 sur 23
Documentation TinyEditor version 1.0
2. Paramétrage
Commencer par aller dans le menu Préférences du module pour y effectuer une
personnalisation de son paramétrage.
Langue de l’éditeur : Définissez ici la langue de l’interface. Cette option doit être l’un
des codes langue standard iso639-1
Exemple : en pour l’anglais, de pour l’allemand ou fr pour le français.
Editeur css : Indiquer le chemin du fichier css qui sera utilisé pour votre contenu dans
l'interface de l'éditeur. Si vous laissez vide, normalement le fichier css de votre thème
courant sera utilisé. Il est préférable de réaliser votre propre fichier CSS pour les styles
les plus importants. Toutes les instructions CSS de votre thème par défaut, ne sont pas
nécessaires pour écrire vos articles.
Forcer les éléments BR : Cette option force les éléments retour chariot (<br />) au lieu
des balises paragraphes (<p>) dans Internet Explorer.
Forcer les éléments P : Si cette option est activée les navigateurs Mozilla/Firefox
génèreront des éléments paragraphes (<p>) sur activation de la touche Entrée et des
éléments retour-chariot (<br />) avec Shift+Enter/Return. Cette option est activée par
défaut.
Forcer les URLs relatives : En activant cette option cela convertira les urls absolues en
urls relatives. Seulement il subsiste un gros bug qui ne provient pas de tinyeditor. Si le
contenu du bloc réalisé en mode wysiwyg est prévu pour s’afficher sur la page d’accueil
et qu'il n’est pas associé à un module, une erreur se produira.
Remove script host : si cette option est activée, la partie de l'url identique à celle du
script dans lequel s'exécute la page, sera retirée. Cette option est opérationnelle par
défaut si l'option de forcer les urls relatives n'est pas activée.
Emplacement de la barre d’outils : cette option vous permet de choisir l’emplacement
d’affichage de la barre d’outils (haut ou bas)
Emplacement de l'élément path : ici vous déterminez l'emplacement de l'élément path
(top, bottom or none)..
Formats date et heure : paramètre le format d'insertion des extensions date/heure en
fonction des variables de remplacement :
• %y – année sous forme de nombre décimal sans le siècle (00 à 99)
• %Y - année sous forme de nombre décimal avec le siècle
• %d – jour du mois sous forme de nombre décimal (01 à 31)
• %m – mois sous forme de nombre décimal (01 à 12)
Page 3 sur 23
Documentation TinyEditor version 1.0
•
•
•
•
•
•
•
•
%D – identique à %m/%d/%y
%r – heure en notation a.m/p.m.
%H – heure sous forme de nombre décimal en format 24 heures (00 à 23)
%I - heure sous forme de nombre décimal en format 12 heures (01 à 12)
%M - minute sous forme de nombre décimal (00 à 59)
%S - seconde sous forme de nombre décimal (00 à 59)
%p - soit ‘am‘ ou ‘pm‘ selon la valeur
%% - un caractère littéral ‘%‘
Répertoire d’uploads :
préciser le répertoire de destination des images uploadées
sur le serveur.
Note: ce répertoire doit être créé manuellement et sur un système Unix, chmodé en 777
(lecture-écriture).
Assurez-vous que le dossier d'upload est bien créé sur le serveur, il sera utilisé pour les
extensions suivantes : ibrowser, imanager et xrmanager.
Activer un répertoire par utilisateur :
si activé chaque utilisateur pourra gérer son
propre dossier d'uploads. Les dossiers seront intitulés ainsi user_userid.
Compression Gzip : ceci permet à l'éditeur un gain de performance de 70%. La totalité
des fichiers de commandes javascript sera sauvegardée dans un fichier cache de
xoops.
Un recul mineur : si vous activez des extensions et ajoutez des boutons à l'éditeur après
que le fichier cache ait été écrit vous devrez supprimer les fichiers compressés du
dossier cache, ceux-ci seront recréés automatiquement.
Chaque groupe d'utilisateurs dispose de son propre fichier cache.
Tinyeditor et gzip-compression semblent provoquer une erreur avec quelques scans
antivirus (GDATA Internet Security), dans ce cas il est préférable de désactiver la
compression gzip.
Cette option doit être complétée quand votre site xoops est installé
Sous-répertoire :
dans un sous répertoire de la racine de votre site.
Exemple.: si votre page d'accueil ne pointe pas sur http://localhost/ mais sur
http://localhost/site1 saisir /site1 sans slash de fin.
Librairie d'images pour la création des vignettes : indiquer quelle librairie graphique
vous souhaitez utiliser pour la création des vignettes. Utiliser GD si votre environnement
php est en safe_mode=On. Cette information est affichée sur la page index du module
tinyeditor.
indiquer au serveur le chemin vers Image magick ou
Chemin de la librairie :
NetPBM, laisser vide si vous utiliser la librairie GD.
Largeur des vignettes (px) : ici vous pouvez définir la largeur maximum en pixels des
vignettes dans xrmanager.
Page 4 sur 23
Documentation TinyEditor version 1.0
Hauteur des vignettes (px): ici vous pouvez définir la hauteur maximum en pixels des
vignettes dans xrmanager.
Préfixe des fichiers de vignettes : paramètre optionnel, vous n'avez pas besoin de le
modifier. NE RIEN CHANGER si votre serveur fonctionne avec l'option safe_mode = on.
Le point avant le nom de fichier signifie que les fichiers ne seront pas visibles quand
vous afficherez le contenu des dossiers.
Répertoire de stockage des fichiers vignettes :
paramètre optionnel. Vous n'avez
pas besoin de le modifier. Lorsque votre serveur est en safe_mode = on la vignette sera
sauvegardée dans le même dossier que l'image. Le point avant le nom de fichier signifie
que les fichiers ne seront pas visibles quand vous afficherez le contenu des dossiers.
Vignette par défaut : si les vignettes ne peuvent être créées suite à une erreur ou un
mauvais fichier image, c'est ce qui sera affiché. L'image doit résider quelque part dans
la structure de tinyeditor.
Préfixe des fichiers temporaires de l'éditeur d'image : paramètre optionnel que vous
n'avez pas besoin de modifier. Le point avant le nom de fichier rendra le fichier invisible.
Nombre de colonnes pour les vignettes : entrer le nombre de colonnes souhaité pour
l'affichage des vignettes.
Organiser l'espace d'uploads par : sélectionner un critère dans la liste comme ordre
de tri.
Répertoire des fichiers HTML- et CSS :
Saisir l'emplacement des fichiers HTML et
CSS que vous voudriez éditer avec le tinyeditor (l'extension templates doit être
installée). Ex.: modules/content/html
Vous pouvez entrer plus d'un dossier, mais ils doivent être séparés par un espace. Les
variables smarty ne sont pas supportées dans cette version. Les répertoires ont besoin
d'être accessibles en lecture-écriture.
Utiliser FTP : Vous pouvez utiliser des commandes PHP-FTP au lieu des commandes
habituelles. Si votre PHP est configuré avec safe_mode = on vous ne pourrez pas
utiliser toutes les fonctions de l'extension xrmanager. Une autre conséquence c'est que
vous n'êtes plus lié aux limites d'uploads.
Il semble raisonnable de n'autoriser seulement aux groupes de confiance l'accès FTP.
Le ftp fonctionne seulement quand les groupes sont autorisés d'utiliser l'extension
xrmanager (voir les permissions).
Priorité des barres d'outils : Cela semble rusé mais c'est très simple. Si les utilisateurs
sont affectés dans plusieurs groupes, sans cet arrangement seule la première
Page 5 sur 23
Documentation TinyEditor version 1.0
identification de groupe sera prise en compte pour les barres d'outils, avec cette option
vous pouvez donc établir une priorité.
Vous devez écrire comme ceci : 2|3|4|5|2 ce qui signifie que les groupes avec les
numéros 2 à 5 utiliseront la barre d'outils du groupe 2. C'est toujours la dernière valeur
qui déterminera le groupe final !
Faire attention qu'une identification de groupe n'apparaisse seulement qu'une fois dans
cette liste. Séparer avec un blanc pour faire plus de combinaisons.
Pour connaître les numéros de groupe, consulter la table xoops_groups dans la base de
données (avec phpMyadmin par exemple), ou encore en repérant le dernier chiffre dans
l'url quand vous modifier un groupe
(modules/system/admin.php?fct=groups&op=modify&g_id=1)
Décompression des fichiers ZIPs avec xrmanager : ceci décompressera les fichiers
zip que vous uploaderez dans le répertoire sélectionné. Les chemins (sous répertoires)
contenus dans les fichiers zip seront préservés.
ATTENTION : il n'existe pas de méthode FIABLE pour détecter ce que contiennent les
fichiers compressés, aussi soyez prudent dans les autorisations que vous attribuez à
ceux qui seront autorisés à effectuer ces opérations (vous pouvez filtrer les types de
fichiers dans la gestion des types MIME dans tinyeditor).
Maintenant que vous avez paramétré les préférences du module, vous pouvez passer
aux barres d'outils que vous allez définir individuellement pour chaque groupe
d'utilisateurs.
Page 6 sur 23
Documentation TinyEditor version 1.0
3. Les barres d'outils
Commencez par sélectionner le groupe d'utilisateurs pour lequel vous voulez configurer
la barre d'outils.
Vous noterez que les barres d'outils sont seulement définies pour les 3 groupes
d'utilisateurs par défaut de Xoops. Pour les autres groupes (ceux qui vous auriez vousmême créés) la liste déroulante de choix des groupes se rafraichira automatiquement au
fur et à mesure de leur création.
Voir également en haut pour des identifications pour les groupes.
.
Lignes barre d'outils : vous disposez de trois lignes pour disposer les icones
représentant les différentes fonctionnalités. Il suffit de cliquer sur les icones représentant
les extensions installées pour que celui soit placé sur la ligne
L'ordre des icones dans le textarea est l'ordre dans lequel les outils apparaissent dans
l'éditeur. Vous pouvez déplacer les outils sur la ligne avec un clic gauche de la souris.
Ne pas s'inquiéter des blancs qui sont à l'intérieur du textarea, cela sera corrigé après la
soumission
Largeur maximum des images : La largeur maximum des images s'applique aux
extensions iBrowser et iManager. Si vous ne les utilisez pas, laissez les valeurs comme
elles sont.
Hauteur maximum des images : La hauteur maximum des images s'applique aux
extensions iBrowser et iManager. Si vous ne les utilisez pas, laissez les valeurs comme
elles sont.
Quota disque : ici vous pouvez définir combien d'espace disque sera alloué à chaque
utilisateur pour ses images. Cela s'applique seulement pour les extensions iBrowser et
iManager et xrmanager. Si vous ne les utilisez pas, laissez les valeurs comme elles
sont.
Pour implémenter cette restriction allez lire le chapitre sur les permissions
Page 7 sur 23
Documentation TinyEditor version 1.0
Eléments valides, éléments valides étendus et éléments invalides: avec ces trois
champs vous avez la possibilité de définir quelles balises html seront autorisées à
l'intérieur de l'éditeur.
L'exemple suivant est tiré du manuel original tinyMCe. C'est une explication complète
sur la méthode de validation d'éléments, d'éléments étendus et d'éléments invalides.
Cet exemple indique à l'éditeur de retirer tous les éléments qui ne sont pas un
a[href|target=_blank],strong/b,div[align],br
Mettez vos définitions dans le textarea et valider pour les sauvegarder dans la base de
données. Si vous n'avez pas le temps d'investir un peu de temps laissez les champs
comme ils sont, une instruction basique sera alors utilisée. Si vous constatez l'absence
de quelques balises html dans votre contenu, revenez ici pour les ajouter.
Pour vous faciliter les choses, la liste déroulante command-sets pourra insérer un jeu
d'instructions réduit comme pour l'éditeur DHTML de Xoops.
Une fois que les barres d'outils ont été définies pour chaque groupe, on peut maintenant
passer aux permissions!
Page 8 sur 23
Documentation TinyEditor version 1.0
4. Les permissions
Pour chaque groupe d'utilisateurs, il convient de cocher les cases correspondant aux
fonctionnalités que l'on souhaite autoriser.
Uploader des fichiers : vous pouvez définir ici quels sont les groupes d'utilisateurs qui
sont autorisés à transférer des images sur le serveur
.
Supprimer des fichiers : ici vous pouvez définir quel(s) groupe(s) est autorisé à
supprimer des fichiers images.
WYSIWYG: indiquer quels sont les groupes d'utilisateurs qui sont autorisés à utiliser les
fonctions WYSIWYG. Si décoché, les utilisateurs n'auront que le standard textareaDHTML Ce paramétrage ne s'aplique pas au groupe webmestres parce qu'il aura
toujours l'interface WYSIWYG!!
Créer des dossiers :
à créer des dossiers.
indiquer quels sont les groupes d'utilisateurs qui sont autorisés
Quota utilisateur :
il vous est possible de définir quels groupes d'utilisateurs
disposeront d'un espace disque limité pour stocker les images qu'ils auront uploadées.
Veuillez noter que le groupe des webmestres n'est pas automatiquement inclus.
Si vous souhaitez que le groupe webmestres soit limité en espace disque il faudra
cocher la case.
Override user-dirs for images:
si l'utilisateur dispose d'un espace disque limité il
pourra seulement naviguer dans son répertoire. Avec cette permission vous pourrez
l'autoriser à dépasser cette limite pour voir TOUS les répertoires d'uploads. Cette
permission fonctionne seulement quand le quota disque est opérationnel.
Changer les attributs des images : déterminer quels groupes d'utilisateurs sont
autorisés à changer les attributs des images.
Renommer les images : ici vous pouvez indiquer quels groupes d'utilisateurs sont
autorisés à renommer les images.
Veuillez noter que ceci pourrait générer des résultats inattendus si des images
sont retirées une fois déjà utilisées pour des articles écrits
.
Suppression des dossiers non vides :
il est possible de paramétrer les groupes
d'utilisateurs qui sont autorisés à supprimer définitivement des répertoires qui
contiendraient encore des fichiers.
Page 9 sur 23
Documentation TinyEditor version 1.0
Renommer les répertoires :
précisez quels groupes d'utilisateurs sont autorisés à
renommer les répertoires. Notez que ceci pourrait produire des résultats inattendus en
cas de pluralité du même nom de répertoire.
Copie des répertoires :
précisez quels groupes d'utilisateurs sont autorisés à copier
des répertoires. Le contenu des répertoires sera aussi copié.
Déplacer des répertoires :
précisez quels groupes d'utilisateurs sont autorisés à
déplacer des répertoires. Le contenu des répertoires sera aussi déplacé.
Copier un fichier : quels groupes d'utilisateurs sont autorisés à copier de simples
fichiers.
Déplacer un fichier : quels groupes d'utilisateurs sont autorisés à déplacer de simples
fichiers.
Editer un fichier : quels groupes d'utilisateurs sont autorisés à éditer des fichiers. Pour
l'instant cela ne s'applique qu'à des fichiers images.
Utiliser xrmanager : quels groupes d'utilisateurs sont autorisés à utiliser l'extension
xrmanager. C'est une permission spéciale compte tenu qu'elle sous entend l'utilisation
de la fonction php-ftp.
Utiliser FTP Debug : cette permission s'applique seulement aux groupes qui possèdent
des droits d'administration sur le module tinyedior pour détecter des problèmes
potentiels
Soyez PRUDENT avec les chemins, nom d'utilisateur et mot de passe qui seront
affichés. Assurez-vous que les membres du groupe webmasters sont bien des
personnes de confiance quand FTP debug est sur ON;
Un dernier conseil : Si les commandes du système PHP comme la copie sont
désactivées sur votre serveur vous ne verrez pas toutes les permissions ci-dessus.
Vous pouvez les récupérer si vous employez le ftp avec le module (si vous faites
confiance à mes capacités de développeur).
Maintenant vous êtes prêt à travailler avec tinyeditor dès que les modules que vous
souhaitez utiliser avec seront aussi prêts à fonctionner avec. Voici quelques instructions
pour utiliser tinyeditor avec les modules:
Page 10 sur 23
Documentation TinyEditor version 1.0
5. Tinyeditor dans vos modules
Si vous utilisez une version de xoops antérieure à Xoops 2.2 vous pouvez utiliser
tinyeditor avec vos modules. Dans ce cas quelques changements sont nécessaires
dans les fichiers de ceux-ci. Voici une intégration simple avec une ancienne version du
module News.
Depuis la version 1.51 du module News ceci n'est plus nécessaire, il suffit de choisir
TinyEditor dans les préférences du module comme éditeur wysiwyg.
Avec votre éditeur de texte favori ouvrez le fichier
XOOPS_ROOT_PATH/modules/news/include/storyform.inc.php
Vers la ligne 35 ajouter la ligne suivante
include_once XOOPS_ROOT_PATH
."/class/xoopseditor/tinyeditor/formtinyeditortextarea.php“;
Assurez vous que c'est le dernier fichier à être inséré.
Continuer et remplacer les lignes pour l'affichage du textarea pour la partie Scoop
$sform->addElement(new XoopsFormTinyeditorTextArea
(array(‘caption‘=> _NW_THESCOOP, ‘name‘=>‘hometext‘,
‘value‘=>$hometext,
‘width‘=>‘100%‘, ‘height‘=>‘400px‘),true));
et
$sform->addElement(new XoopsFormTinyeditorTextArea
(array(‘caption‘=> _AM_EXTEXT, ‘name‘=>‘bodytext‘,
‘value‘=>$bodytext,
‘width‘=>‘100%‘, ‘height‘=>‘400px‘, ‘xEditor‘=>‘1‘),false));
Pour la suite du texte. C'est tout
Voici une courte description sur la façon de faire fonctionner de nouveaux
modules, qui ont été conçus pour le cadre de xoopseditor, avec tinyeditor.
Nous venons de prendre le module News comme exemple. Koivi était le premier éditeur
utilisé pour le cadre de xoopseditor. Aussi nous allons rechercher les occurrences de
Koivi pour les reproduire et faire fonctionnere tinyeditor
Ouvrez le fichier xoops_version.php du module dans lequel vous souhaitez intégrer
tinyeditor et regarder ce tableau (cela peut varier!) :
Page 11 sur 23
Documentation TinyEditor version 1.0
array(_MI_NEWS_FORM_DHTML=>‘dhtml‘, _MI_NEWS_FORM_COMPACT=>‘textarea‘,
_MI_NEWS_FORM_SPAW=>‘spaw‘, _MI_NEWS_FORM_HTMLAREA=>‘htmlarea‘,
_MI_NEWS_FORM_KOIVI=>‘koivi‘, _MI_NEWS_FORM_FCK=>‘fck‘);
Et modifier le ainsi :
array(_MI_NEWS_FORM_DHTML=>‘dhtml‘, _MI_NEWS_FORM_COMPACT=>‘textarea‘,
_MI_NEWS_FORM_SPAW=>‘spaw‘, _MI_NEWS_FORM_HTMLAREA=>‘htmlarea‘,
_MI_NEWS_FORM_KOIVI=>‘koivi‘, _MI_NEWS_FORM_FCK=>‘fck‘,
‘tinyeditor‘=>‘tinyeditor‘);
Maintenant ouvrez le fichier include/functions.php et observez :
case „koivi“:
if(!$x22) {
if
(is_readable(XOOPS_ROOT_PATH.„/class/wysiwyg/formwysiwygtextarea.php“))
{
include_once(XOOPS_ROOT_PATH .
„/class/wysiwyg/formwysiwygtextarea.php“);
$editor = new XoopsFormWysiwygTextArea($caption, $name, $value, ‘100%‘,
‘400px‘, ‘‘);
}
} else {
$editor = new XoopsFormEditor($caption, „koivi“, $editor_configs);
}
break;
Après ceci insérez les lignes suivantes :
case „tinyeditor“:
if ( is_readable(XOOPS_ROOT_PATH . „/class/xoopseditor/tinyeditor/
formtinyeditortextarea.php“)) {
include_once(XOOPS_ROOT_PATH . „/class/xoopseditor/tinyeditor/
formtinyeditortextarea.php“);
$editor = new XoopsFormTinyeditorTextArea(array(‘caption‘=>$caption,
‘name‘=>$name, ‘value‘=>$value, ‘width‘=>‘100%‘, ‘height‘=>‘400px‘,
‘xEditor‘=>‘1‘));
}
break;
Effectuez une mise à jour du module, et c'est tout. Vous avez maintenant un bon
exemple pour implémenter tinyeditor dans d'autres modules.
Faire de tinyeditor l'éditeur par défaut pour XOOPS : Si vous utilisez Xoops 2.0.15
ou
une
version
plus
récente,
vous
pouvez
éditer
le
fichier
/class/xoopsform/formdhtmltexteditor.php et modifier cette ligne
var $htmlEditor = array();
en
Page 12 sur 23
Documentation TinyEditor version 1.0
var $htmlEditor = array(‚XoopsFormTinyeditorTextArea‘,
‚/class/xoopseditor/
tinyeditor/formtinyeditortextarea.php‘);
Nouveau : un nouveau paramètre a été ajouté à la version actuelle de tinyeditor
(depuis la version 1.0 BETA ): xEditor. Vous pouvez utiliser ce nouveau paramètre
pour imiter l'éditeur XOOPS DHTML. Quand la valeur est paramétrée à 0 un jeu
d'instructions réduit sera utilisé. Ceci pourrait être utile si vous voulez
transformer d'autres textareas de dhtml en WYSIWYG
.
Page 13 sur 23
Documentation TinyEditor version 1.0
6. Extensions (plugins)
Toutes les extensions disponibles (pas les commandes basiques) sont expliquées
rapidement ci-dessous.
Advanced horizontal rule : cette extension vous permet de définir des attributs
supplémentaires comme la largeur, hauteur, un effet ombré pour une ligne horizontale.
Advanced Image: c'est une version améliorée du bouton standard image vous
offrant des options supplémentaires. Veuillez noter qu'en l'installant les uploads
d'extensions ne seront plus possible. Pour se servir de ce plugin le bouton standard doit
être placé aussi.
Advanced link : c'est une version améliorée du bouton standard lien. Vous pouvez
placer beaucoup d'options supplémentaires ici. Comme extra j'ai inclus la possibilité
d'ajouter des liens des modules de XOOPS. Actuellement les liens pour mylinks, newbb,
news et wfdownloads sont possibles. Vous trouverez le code nécessaire pour ajouter
ces liens dans l'extension advlink du dossier plugins. Peut-être que certains d'entre
VOUS souhaiterez augmenter cette liste pour un meilleur usage ?
Emotions: cette extension récupère les smileys de la base de données Xoops pour
les insérer dans l'éditeur.
Flash: insérer des présentations flash. Saisir l'url, hauteur et largeur du film et
valider.
Insert date : permet d'insérer la date courante selon le format défini dans les
préférences.
Insert time : insère l'heure courante selon le format défini dans les préférences.
Preview : avec ce bouton vous obtenez une prévisualisation de votre contenu dans
une fenêtre popup.
Print : ce bouton vous permet d'imprimer le contenu actuellement dans votre éditeur
Search: faîtes des recherches de mots spécifiques dans le contenu de l'éditeur.
Replace : fonction de recherche/remplace pour des mots spécifiques dans le
contenu de l'éditeur.
Page 14 sur 23
Documentation TinyEditor version 1.0
Table : avec cette extension vous disposez de toutes les fonctions nécessaires pour
créer des tableaux. Une fois activé ce sont 11 boutons qui seront affichés pour dessiner
ou éditer des tableaux.
Zoom : avec cette extension vous pouvez zoomer le contenu de l'éditeur jusqu'à
250% (Internet Explorer seulement).
Spellchecker : avec cette extension vous pourrez vérifier l'orthographe du contenu
de l'éditeur avec Internet Explorer seulement. Vous aurez besoin d'installer IESPELL.
XOOPS-Quote : permet de mettre du texte en surbrillance dans votre éditeur et lui
donner une apparence comme une citation xoops.
Block properties : cette extension permet de placer quelques options supplémentaires
pour des éléments bloc comme des titres et des paragraphes. Vous devez cliquer à
l'intérieur d'un bloc pour pour éditer ses propriétés.
XOOPS-Code : mise en valeur du texte pour qu'il apparaîsse comme un code
XOOPS
ML-Content : cette extension vous permet de collez votre texte et de choisir le code
langue. Ce plugin ne doit être employé que si votre site dispose d'un hack multilingues
XOOPS
Paste Word: copie votre texte issu d'un document Microsoft Word dans l'éditeur.
Les codes Word sont nettoyés. Cette extension dispose de beaucoup d'options
Selon votre navigateur il peut y avoir quelques différences à l'utilisation de cette
extension entre Internet Explorer et les navigateur Gecko(Mozilla/Firefox,etc..). Avec
Internet Explorer copier juste le texte à partir de Word et clic sur le bouton dans l'éditeur,
avec les navigateurs Gecko vous devrez insérer le texte dans une fenêtre popup puis
cliquer sur le bouton insérer pour retourner à l'éditeur.
Paste Text:.cette extension retourne un simple texte à l'éditeur. Le formatage
existant sera supprimer mais vous pouvez préserver les retours chariot si vous le
souhaitez.
Select All: avec ce plugin vous avez la possibilité de sélectionner le contenu
complet de l'éditeur.
LTR / RTL: ceci vous permet de changer le sens de l'écriture d'un paragraphe (de
gauche à droite, de droite à gauche)
Page 15 sur 23
Documentation TinyEditor version 1.0
Full Screen: permet d'afficher l'éditeur en plein écran, et en cliquant à nouveau
vous retrouvez une taille normale.
iManager: c'est un gestionnaire complet d'images. Vous pouvez télécharger des
dossiers, les éditez, ajoutez quelques effets spéciaux etc… Bien que presque parfait, il
est possible de rencontrer quelques anomalies:
Dans certains cas il y aura des problèmes avec la bibliothèque GD. Ceci se produit
quand celle-ci n'est pas installée sur le serveur ou que la version de GD n'est pas
correct.
Cette extension ne peut éviter ces problèmes, si vous avez des soucis avec la librairie
GD utiliser le gestionnaire d'images de Xoops en tant qu'extension.
iBrowser: similaire à iManager, mais avec moins de fonctionnalités. Il peut
rencontrer les mêmes problèmes qu'iManager avec la librairie GD.
Char counter: compte le nombre de mots et caractères dans l'éditeur.
Insert Code: ouvre une fenêtre popup où vous pouvez coller votre code.
Sélectionner le language de programmation, ensuite votre code source apparaitra
joliment formaté dans l'éditeur en utilisant la syntaxe geshi de mise en valeur.
Si vous souhaitez utiliser cette extension vous devez ajouter les classes ci-dessous au
fichier css de l'éditeur.
pre {
border-top: 1px solid #ddd;
border-left: 5px solid #ddd;
border-right: 1px solid #ddd;
border-bottom: 1px solid #ddd;
background-color: #eee;
padding: 2px;
margin: 0;
color: #000066;
}
.css .de1, .css .de2, .html4strict .de1, .html4strict .de2, javascript
.de1, .javascript .de2, .mysql .de1, .mysql .de2, .php .de1, .php
.de2,.smarty .de1, .smarty .de2, .sql .de1, .sql .de2, .xml .de1, .xml
.de2{
font-family: ‘Courier New‘, Courier, monospace; font-weight:
normal;color: #000020;
}
.css .imp, .html4strict .imp, .javascript .imp, .mysql .imp, .php
.imp, smarty .imp, .sql .imp, .xml .imp{font-weight: bold; color:
red;}
.css .kw1, .html4strict .kw1, .javascript .kw1, .mysql .kw1, .php
.kw1,.smarty .kw1, .sql .kw1, .xml .kw1{color: #b1b100;}
.css .kw2, .html4strict .kw2, .javascript .kw2, .mysql .kw2, .php
.kw2,.smarty .kw2, .sql .kw2, .xml .kw2{color: #000000; font-weight:
Page 16 sur 23
Documentation TinyEditor version 1.0
bold;}
.css .kw3, .html4strict .kw3, .javascript .kw3, .mysql .kw3, .php
.kw3,.smarty .kw3, .sql .kw3, .xml .kw3{color: #000066;}
.css .kw4, .html4strict .kw4, .javascript .kw4, .mysql .kw4, .php
.kw4,.smarty .kw4, .sql .kw4, .xml .kw4{color: #f63333;}
.css .co1, .css .co2, .css .coMULTI, .html4strict .co1, .html4strict
.co2,.html4strict .coMULTI, .javascript .co1, .javascript .co2,
.javascript.coMULTI, .mysql .co1, .mysql .co2, .mysql .coMULTI, .php
.co1, .php .co2,.php .coMULTI, .smarty .co1, .smarty .co2, .smarty
.coMULTI, .sql .co1,.sql .co2, .sql .coMULTI, .xml .co1, .xml .co2,
.xml .coMULTI{color: #808080; font-style: italic;}
.css .es0, .html4strict .es0, .javascript .es0, .mysql .es0, .php
.es0,.smarty .es0, .sql .es0, .xml .es0{color: #000099; font-weight:
bold;}
.css .br0, .html4strict .br0, .javascript .br0, .mysql .br0, .php
.br0,.smarty .br0, .sql .br0, .xml .br0{color: #66cc66;}
.css .st0, .html4strict .st0, .javascript .st0, .mysql .st0, .php
.st0,.smarty .st0, .sql .st0, .xml .st0{color: #ff0000;}
.css .nu0, .html4strict .nu0, .javascript .nu0, .mysql .nu0, .php
.nu0,.smarty .nu0, .sql .nu0, .xml .nu0{color: #cc66cc;}
.php .me1 {color: #006600;}
.php .me2 {color: #006600;}
.php .re0 {color: #0000ff;}
pre ol{margin-left: 0;padding-left: 30px;}
pre .head {font-family: Verdana, Arial, sans-serif;color:
#333333;font-weight: bold;background-color: #f0f0ff;border-bottom: 1px
solid#d0d0d0;padding: 2px;font-size: 12px;}
pre li, pre li {font-family: ‘Courier New‘, Courier, monospace; color:
black; font-weight: normal; font-style: normal;font: normal normal
95% ‘Courier New‘, Courier, monospace; color: #003030;}
pre li.li2 {font-weight: bold;font-weight: bold; color: #006060;}
pre .foot {display: none;}
pre a:link {color: #000060;}
pre a:hover {background-color: #f0f000;}
Page 17 sur 23
Documentation TinyEditor version 1.0
Insert DIV: insère le texte sélectionné dans une balise DIV. Cette extension est
accompagnée d'une tonne de fonctions et options.
Custom Bullet: utiliser cette extension pour faire vos propres listes de définition.
Non editable: une fois activé, vous pouvez protéger des éléments de l'édition.
XOOPS Image Manager: le gestionnaire d'images de Xoops converti en extension.
Conseillé pour ceux qui ont des problèmes avec iBrower ou iManager.
Context Menu: fournit quelques commandes à utiliser dans l'éditeur à partir d'un clic
droit dans l'éditeur ou sur des éléments.
Veuillez noter que bien que ce plugin apparaisse à l'intérieur du textarea dans les barres
d'outils, il n'y a aucune icône pour le représenter dans l'éditeur.
xrmanager: cette extension réalise une connexion avec les plugins advlink,
advimage et flash. Une fois activée vous pourrez visualiser des fichiers ou des liens sur
le serveur et si vous visualiser des images vous pourrez les éditer.
Keyboard: c'est un clavier Unicode pour des languages variés.
Equation: retourne quelques équations définies à l'éditeur
Layer: insère le texte sélectionné dans des calques DIV, mais dispose de moins
d'options que l'extension insertdiv.
Style: ajoute quelques options au texte sélectionné.
Templates: avec cette extension vous pouvez uploader/télécharger/éditer des
fichiers html ou css. Les répertoires pour l'upload et l'édition sont définis dans les
préférences du module.
Veuillez noter que vous ne pouvez pas éditer des fichiers contenant des variables
smarty. J'espère que cela sera possible dans une prochaine version.
Spellchecker: cette extension est un navigateur indépendant. Vous pouvez l'utiliser
avec différents modes pspell ou Google-services.
Nonbreaking: cette extension permet d'ajouter le caractère html espace &nbsp;
Pagebreak: cette extension ajoute la balise [pagebreak] au contenu, ce qui permet à
certains modules de diviser le contenu en plusieurs pages. En mode WYSIWYG une
ligne horizontale sera affichée.
Page 18 sur 23
Documentation TinyEditor version 1.0
Media: cette extension permet d'insérer différents médias comme QuickTime, Flash,
ShockWave, RealPlayer et Windows Media Player.
Visual chars: permet de rendre visible des caractères comme &nbsp;.
Xhtmlxtras: cette extension ajoute le support de quelques éléments xhtml comme : cite,
ins, del, abbr abd acronym.
Youtube: avec cette extension vous pouvez ajouter des films Youtube. Il suffit de
saisir le numéro du film. Cette extension peut être incompatible avec le plugin flash.
Devkit: utiliser cette extension si vous voulez débugger ou développer des plugins
tinyMCE. Une fois activé une petite iframe s'affichera en haut de chaque page. Clic et
une fenêtre d'information avec divers onglets s'affichera..
Page 19 sur 23
Documentation TinyEditor version 1.0
7. Fonctionnalités FTP
Voici quelques informations supplémentaires sur ce qui a changé depuis les dernières
versions (beta, RC1).
À mon avis le tinyeditor fonctionnait tout à fait bien, mais pas lorsque le serveur php était
configuré avec safe_mode = on. Ce paramétrage a empêché beaucoup d'actions
comme créer des plugins intégrés dans d'autres plugins. C'est pourquoi j'ai dû ajouter
la fonction ftp au module.
Si vous vous sentez mal à l'aise en utilisant le ftp pour tous les groupes ne l'utilisez pas.
Mais si vous voulez l'employer, faites un accès de ftp qui pointe seulement vers votre
répertoire uploads et JAMAIS à la racine de votre site. J'ai ESSAYÉ de faire aussi
sécurisé que possible, mais on ne sait jamais…
Si le ftp ne fonctionne pas comme prévu activez ftp-debug dans les permissions. Ces
permissions sont seulement pour le groupe qui a des droits d'admin sur le tinyeditor, il
affiche chaque transaction de ftp comprenant des noms d'utilisateur et des mots de
passe, aussi soyez vigilant qui composent ce groupe quand le mode debug est activé.
Avec un menu supplémentaire dans l'administration ftp CHMOD vous pouvez attribuer
des CHMODs à chaque dossier ou simple fichier dans votre espace ftp. Chaque
changement de CHMOD à 777 sera inséré dans la base de données de sorte que vous
puissiez suivre les changements.
Pour faire fonctionner le ftp vous devez éditer quelques dossiers manuellement :
include/ftpconfig.php pour le ftp général à l'intérieur des extensions,
include/ftpconfigchmod.php pour le chmod des fichiers et répertoires
et
include/ftpconfigplugin.php pour l'upload des extensions et fichiers langages.
Vous devez fournir les 3 à 4 informations :
a) le nom de votre serveur ftp
b) un chemin facultatif si votre ftp-accès commence quelque part au-dessous de
votre installation de XOOPS. S'il n'y a pas un tel chemin facultatif, laisser un slash
(/)
c) le nom du user ftp
d) le mot de passe pour le ftp-accès.
Sauvegarder les fichiers et protéger les en écriture immédiatement ! !
Un bon conseil avant de décider d'employer le ftp ou pas :
Pour éviter des problèmes graves commencez par décider d'employer le ftp ou pas.
Commencer par l'utiliser sans cette option n'est pas, à mon avis, une bonne idée si
vous l'activez un peu plus tard. En procédant ainsi vous rencontrerez des problèmes
Page 20 sur 23
Documentation TinyEditor version 1.0
sur la suppression de fichier par exemple parce que les permissions sur des dossiers et
les fichiers sont différentes avant et après utilisation de ftp.
Petit exemple : vous avez décidié de ne pas employer tinyeditor avec le ftp et vous
uploader des fichiers, vous les copiez, créer des répertoires, etc.. Puis vous décidez
d'utiliser ftp, cela aura pour conséquence que les fichiers et dossiers déjà créés auront
un propriétaire différent et que leur suppression vous sera refusée..
Page 21 sur 23
Documentation TinyEditor version 1.0
8. Upload d'extensions (plugins)
Cette partie de l'administration peut être utilisée pour uploader de nouvelles extensions
ou fichiers langues.
Si votre serveur dispose de l'option safe_mode = on il faut activer l'option FTP dans les
préférences du modules.
Si vous n'utilisez pas FTP il vous faudra paramétrer tinyeditor/admin/images et
tinyeditor/editor/plugins en CHMOD 777 pour que cela fonctionne.
Il suffit juste de sélectionner les fichiers de votre disque dur et de les uploader Vérifier
bien que la dénomination des fichiers qui doit ressembler à plugin_nomduplugin.zip ou
fr_langfile_nomduplugin.zip
Les fichiers zips qui sont uploadés passent à travers 4 étapes de contrôles, sont
décompressés puis copiés dans le répertoire prévu. Si un échec se produit pour quelque
raison que ce soit, vous devrez manuellement transférer les fichiers décompressés sur
le serveur.
Page 22 sur 23
Documentation TinyEditor version 1.0
9 Crédits
J'aimerai remercier tous les gens listés ici dans un ordre non-spécifique :
• http://tinymce.moxiecode.com/ Moxiecode‘s crew pour avoir réalisé un outil
si grand et pratique
• http://www.zhuo.org/htmlarea/docs/index.html Wei Zhuo pour le
gestionnaire avancé d'imagesr
• Phppp pour avoir assuré une compatibilité de tinyeditor avec les versions
Xoops < 2.2 et pleins d'autres choses
• ralf57 pour avoir écrit tinyeditor.
• paketep pour avoir fourni du code et des idées.
• irmtfan pour le debug et les idées.
• http://www.frxoops.org pour être mes plus grands supporters et me fournir
un lot de bugs et problèmes, une grande documentation et des traductions.
• silver74 pour m'avoir fourni l'inspiration dans les priorités des groupes.
• satanas pour m'avoir donné un espace web
• searche pour m'avoir donné un domaine temporaire de test et développé
debaser (désolé si c'est pas la bonne place)
• terrion d'ultranetdomains.com pour m'avoir offert un espace web et être
toujours utile.
• http://www.phpconcept.net pour le grand script pclzip
• Ryan Demmer de qui j'ai emprunté le code pour xrmanager et ses templates
que j'ai un peu modifié et le plugin charcoun
• TOMO de Mambo pour avoir écrit une class FTP excellente
• Andrew Tetlaw pour son plugin blockproperties
• Nephesh Studios pour son plugin custombullet
• CDL pour son plugin equation
• mmjaeger pour ses plugins ibrowser et imanager
• Maxime Lardenois pour son plugin insertcode
• kristofik pour son plugin insertdiv
• Misc. pour son plugin keyboard. Voir le fichier keyboard.html pour plus de
détails.
• Adrian Hope-Bailie pour le plugin youtube
• McDonald pour avoir fait mon travail et fourni du support à tinyeditor.
• Et tout les autres qui ont contribué avec leurs plugins et aide.
Page 23 sur 23