[markdown_editor2 ↪ refonte-formulaire-saisies-mr] 20 commits

technova69/markdown_editor2 | 20 commits

Par GILLES VINCENT, le 15 juin 2026 à 07h41min :

fix: null checks sur SpipModel (raw_params et generateSpipModelAttributes)

Trois corrections défensives dans SpipModel.js :

  • generateSpipModelAttributes() retourne null si options est absent,
    un tableau ou sans propriété name (évite un crash au parsing)
  • raw_params peut être undefined lors du parse : normalisé à ‹  ›
  • Le callback de mise à jour depuis la modalbox vérifie que attrs
    n’est pas null avant dispatch

Rebuild webpack (markdown_editor.dist.js).

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com

Modifié
javascript/markdown_editor.dist.js
javascript/nodes/SpipModel.js
javascript/ui/SpipModelButton.js

Détails : fix: null checks sur SpipModel (raw_params et generateSpipModelAttributes) (9d94044c) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par GILLES VINCENT, le 15 juin 2026 à 07h41min :

feat: page de configuration admin manquante (configurer_markdown_editor)

paquet.xml déclarait un exec configurer_markdown_editor mais ni le
formulaire CVT ni le squelette privé n’existaient. Ajout du formulaire
(Saisies Méthode 1 : _saisies() + HTML vide) avec deux réglages :
ignorer_modeles (cases à cocher) et activer_categories (oui/non).
Ajout de la clé de langue configuration_titre manquante.

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com

Ajouté
formulaires/configurer_markdown_editor.html
formulaires/configurer_markdown_editor.php
prive/squelettes/contenu/configurer_markdown_editor.html
Modifié
lang/markdown_editor_fr.php

Détails : feat: page de configuration admin manquante (configurer_markdown_editor) (3dcb62dd) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par GILLES VINCENT, le 15 juin 2026 à 07h41min :

feat: refonte #FORMULAIRE_INSERER_MODELES avec l’API Saisies

Implémentation de la Méthode 1 Saisies : fonction _saisies() +
fichier HTML vide. L’entête (titre, icône, textarea résultat, script
modalbox) passe par l’option inserer_debut via un mini-squelette ;
les boutons contextuels (Choisir / Insérer + Annuler) passent par
squelette_boutons. Un helper inserer_modeles_etat_formulaire_modele()
centralise la résolution de l’état (liste vs paramètres) pour que
charger() et _saisies() restent synchrones. Affiche un message
« Aucun modèle disponible » et désactive le bouton Choisir si la liste
est vide.

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com

Ajouté
formulaires/inserer_modeles_boutons.html
formulaires/inserer_modeles_entete.html
Modifié
formulaires/inserer_modeles.html
formulaires/inserer_modeles.php
lang/inserer_modeles_fr.php

Détails : feat: refonte #FORMULAIRE_INSERER_MODELES avec l'API Saisies (5d1a302b) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par Gilles, le 14 juin 2026 à 00h07min :

fix: inserer_modeles_definir_defaut ignore les entrées non-tableau

La garde if (!is_array($saisie)) { return $tableau; } retournait une
variable jamais définie (null), faisant perdre toutes les saisies valides
dès qu’un élément de la liste n’était pas un tableau. Remplacé par continue;.

Test ajouté (RED avant correction) : une entrée mal formée est désormais
ignorée sans casser le traitement des saisies valides.

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

Modifié
inc/inserer_modeles.php
tests/unit/DefinirDefautTest.php

Détails : fix: inserer_modeles_definir_defaut ignore les entrées non-tableau (758ca011) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par Gilles, le 14 juin 2026 à 00h07min :

test: mise en place de l’infrastructure de tests PHPUnit

Ajoute les deux tiers de tests calqués sur les autres plugins :

  • unitaires (mocks, sans SPIP) : toolbars, autorisation de prévisualisation,
    génération du JSON éditeur, application des défauts de saisies
  • intégration (SPIP réel + SQLite) : plugin actif, découverte des modèles,
    prévisualisation/safehtml, génération du code modèle par le CVT

Le script install-spip-test.sh installe SPIP 4.4, applique le patch spip-cli
(MR 91, nécessaire au téléchargement des dépendances via SVP) et crée
plugins/auto/. .gitignore corrigé pour versionner composer.json.

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

Ajouté
composer.json
phpunit.xml
scripts/install-spip-test.sh
scripts/spip-cli-mr91.patch
tests/bootstrap.php
tests/bootstrap_integration.php
tests/integration/CvtTraiterTest.php
tests/integration/ListerModelesTest.php
tests/integration/PluginActiveTest.php
tests/integration/PrevisuTest.php
tests/unit/AutoriserPrevisualiserTest.php
tests/unit/DefinirDefautTest.php
tests/unit/JsonEditeurTest.php
tests/unit/ToolbarsTest.php
Modifié
.gitignore

Détails : test: mise en place de l'infrastructure de tests PHPUnit (8f075460) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par erational, le 21 février 2026 à 10h44min :

build: v1.0.1

Modifié
paquet.xml

Détails : build: v1.0.1 (61f0b0c8) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par erational, le 21 février 2026 à 10h42min :

Merge branch ‹ issue_14_flux_bug › into ‹ master ›

fix: flux attend les bons paramètres

Closes #14

See merge request spip-contrib-extensions/markdown_editor!6

Modifié
markdown_editor_pipelines.php

Détails : Merge branch 'issue_14_flux_bug' into 'master' (c6a3d4e7) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par erational, le 21 février 2026 à 10h42min :

fix: flux attend les bons paramètres

Modifié
markdown_editor_pipelines.php

Détails : fix: flux attend les bons paramètres (3d57c403) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 1er septembre 2025 à 19h10min :

build: webpack

Modifié
javascript/markdown_editor.dist.js

Détails : build: webpack (0dbb98b3) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 1er septembre 2025 à 19h10min :

feat: ajouter l’extension pour voir les caractères invisibles, mais configurée seulement pour les BR (#6)

Modifié
javascript/markdown_editor.js
package.json

Détails : feat: ajouter l'extension pour voir les caractères invisibles, mais configurée... (087382f3) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 29 août 2025 à 23h17min :

build: webpack

Modifié
javascript/markdown_editor.dist.js
javascript/markdown_editor.js

Détails : build: webpack (1a3f4eca) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 29 août 2025 à 23h17min :

feat: l’interface d’édition des liens ouvrent maintenant aussi les liens internes de SPIP avec la bonne URL finale transformée !

Modifié
action/markdown_editor_analyser_lien.php
javascript/ui/LinkPopover.js

Détails : feat: l'interface d'édition des liens ouvrent maintenant aussi les liens... (91aa6316) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 29 août 2025 à 23h17min :

feat: gérer les liens magiques sans titre de SPIP, qui vont chercher le titre de l’objet automatiquement (#5)

Ajouté
action/markdown_editor_analyser_lien.php
javascript/marks/SpipLink.js
Modifié
markdown_editor_pipelines.php
prive/style_prive_plugin_markdown_editor.css.html
readme.md

Détails : feat: gérer les liens magiques sans titre de SPIP, qui vont chercher le titre... (a7290421) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 29 août 2025 à 23h17min :

feat: les modèles sont draggable directement en entier

Modifié
javascript/nodes/SpipModel.js

Détails : feat: les modèles sont draggable directement en entier (c66d4aad) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par Ricardo Porto, le 17 juin 2025 à 01h30min :

i18n: [Salvatore] [source:lang/ inserer_modeles] Export depuis https://trad.spip.net de la langue pt_br
i18n: [Salvatore] [source:lang/ inserer_modeles] Mise a jour du bilan depuis https://trad.spip.net

Modifié
lang/inserer_modeles.xml
lang/inserer_modeles_pt_br.php

Détails : i18n: [Salvatore] [source:lang/ inserer_modeles] Export depuis... (a739b58b) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par Salvatore, le 9 juin 2025 à 01h30min :

i18n: [Salvatore] [source:lang/ paquet-markdown_editor] Export depuis https://trad.spip.net de la langue fr
i18n: [Salvatore] [source:lang/ paquet-markdown_editor] Mise a jour du bilan depuis https://trad.spip.net

Ajouté
lang/paquet-markdown_editor.xml
Modifié
lang/paquet-markdown_editor_fr.php

Détails : i18n: [Salvatore] [source:lang/ paquet-markdown_editor] Export depuis... (d10a8206) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par Salvatore, le 9 juin 2025 à 01h30min :

i18n: [Salvatore] [source:lang/ inserer_modeles] Export depuis https://trad.spip.net de la langue fr
i18n: [Salvatore] [source:lang/ inserer_modeles] Mise a jour du bilan depuis https://trad.spip.net

Modifié
lang/inserer_modeles.xml
lang/inserer_modeles_fr.php

Détails : i18n: [Salvatore] [source:lang/ inserer_modeles] Export depuis... (06a62a5e) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 9 juin 2025 à 00h35min :

feat: avancement sur le fait d’ouvrir la boite de lien dès qu’on focus mais échec pour l’instant, j’envoie le code augmenté quand même mais je laisse la fonctionnalité désactivée…

Modifié
javascript/markdown_editor.dist.js
javascript/nodes/SpipModel.js
javascript/ui/LinkPopover.js
markdown_editor_pipelines.php

Détails : feat: avancement sur le fait d'ouvrir la boite de lien dès qu'on focus mais... (cfb92fed) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 8 juin 2025 à 10h42min :

fix: nécessite plugins yaml et saisies et verifier depuis qu’il y a insérer modèles inclus (realET)

Modifié
paquet.xml

Détails : fix: nécessite plugins yaml et saisies et verifier depuis qu'il y a insérer modèles inclus (realET) (0e51bec7) · Validations · GILLES VINCENT / markdown_editor2 · GitLab

==============================
Par RastaPopoulos, le 7 juin 2025 à 10h36min :

feat: fichier de langue pour le paquet

Ajouté
lang/paquet-markdown_editor_fr.php

Détails : feat: fichier de langue pour le paquet (6265159d) · Validations · GILLES VINCENT / markdown_editor2 · GitLab