Pour CKEditor : KCFinder libre au lieu de CKFinder

Il y a un gros problème avec CKEditor : son explorateur de fichiers CKFinder n'est pas libre (seulement en démo, pas d'utilisation sur un site sans licence). Pour founir un site à un client, CKEditor est nécessaire, pxlEditor est trop limité. Mais CKFinder avec la mention DEMO et sans licence, ça ne passe pas !
En gros, personne n'a le droit de l'utiliser sans avoir payé 59$ par site, même si quelques-uns trouvent nécessaire de regarder la démo dans la durée...(lol)

J'ai trouvé KCFinder, version libre de CKFinder : http://kcfinder.sunhater.com
Démo de KCFinder dans CKEditor : http://kcfinder.sunhater.com/demos/ckeditor
Il existe un article en français pour son intégration dans CKEditor ici.

J'ai réussi l'intégrer KCFinder à CKEditor dans PluXML, je l'ai un peu modifié (bulles title pour avoir les noms entiers de fichiers, affichage par défaut de la date et de la taille des images).

Ca marche, mais on pourrait améliorer plusieurs choses :

- Les adresses sont en absolu dans les pages (avec ces paramètres, il m'a fallu désactiver le changement en adresses relatives dans ckeditor.php)

- Toutes les vignettes sont créées en jpg, même si les extensions gif ou png sont conservées, donc les fonds transparents deviennent noirs sur les vignettes
Il se peut que ça se passe dans le fichier kcfinder/lib/class_gd.php - Peut-être pourrait-on utiliser la fonction PluXML plxUtils::makeThumb qui marche très bien ?
Ce problème existe aussi dans CKFinder, mais pour les vignettes gif seulement, pas pour les png.

- Pour l'insertion de fichiers Flash, il utilise un dossier "flash" qui n'est pas accessible par la gestion des médias dans PluXML : faudrait-il modifier le fichier ckeditor/ckeditor/config.js ?

La version adaptée de KCFinder et l'explication détaillée de toutes les modifications sont dans ce fichier zip.

Ce serait génial de vraiment pouvoir intégrer KCFinder, soit pour remplacer CKFinder, soit en proposant les deux versions. Est-ce que quelqu'un pourrait donner un coup de main pour finir cette intégration ?

Merci d'avance, pour que PluXML reste vraiment un logiciel libre, même avec CKEditor !

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour Francis

    Très bonne initiative. Effectivement vu les contraintes de CKFinder, si on peut le remplacer par KCFinder (sans toucher à CKEditor pour pouvoir faire les montées de versions) ça sera tip top !
    A suivre donc....

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Merci Stéphane, je suis heureux que cette idée t'intéresse !

    J'avais fait une petite erreur dans mon fichier zip, pour la description des améliorations de KCFinder : l'ajout par défaut de la date et de la taille des images concerne le fichier kcfinder/js/browser/settings.js et non config.js qui n'existe pas dans ce dossier.
    Les fichiers étaient bons, c'est seulement l'explication qui contenait l'erreur, c'est corrigé dans le zip.
  • Pour les vignettes en jpg, il est possible à la lecture du code que cela se passe dans le fichier kcfinder/core/uploader.php dans les méthodes imageResize et makeThumb qui n'utilisent que gd->imagejpeg quelle que soit l'extension du fichier d'origine.

    Je n'ai pas pu tester mais c'est une piste à creuser.
  • bonjour,
    je viens de tester ... effectivement ça fonctionne
    MAIS la fenêtre d'édition est complètement décallée vers la droite rendant son usage bien difficile ...
    normal ou ?
  • S'il s'agit de la fenêtre de CKEditor, ce n'est pas dû à KCFinder.
    J'ai eu aussi ce problème et je l'ai réglé en désactivant plxToolbar.
  • sur qu'avec les 2 plugins actifs ... ça coince, mais là ?
    peut-être encore un problème de cache ?
  • Un progrès avec KCFinder : j'ai réussi à modifier le fichier plugins/ckeditor/ckeditor.php pour avoir des adresses d'images relatives dans les fichiers.


    Le fichier zip contient le plugin CKEditor modifié avec KCFinder, y compris cette dernière mise à jour, avec la doc expliquant toutes les adaptations depuis le début.
Connectez-vous ou Inscrivez-vous pour répondre.