<?php
/**
 * Virtual Print Page Plugin
 *
 * Crée une page virtuelle /print pour chaque récit
 * Permet d'accéder à l'éditeur d'impression via /projet/recit/print
 */

use Kirby\Cms\Page;
use Kirby\Uuid\Uuid;

Kirby::plugin('geoproject/virtual-print-page', [
    'routes' => [
        [
            'pattern' => '(:all)/print',
            'action' => function ($parentPath) {
                // Trouver la page parente (le récit)
                $parent = page($parentPath);

                if (!$parent || $parent->intendedTemplate()->name() !== 'recit') {
                    return $this->next();
                }

                // Créer la page virtuelle avec Page::factory()
                return Page::factory([
                    'slug' => 'print',
                    'template' => 'print',
                    'parent' => $parent,
                    'content' => [
                        'title' => 'Impression - ' . $parent->title()->value(),
                        'uuid' => Uuid::generate()
                    ]
                ]);
            }
        ]
    ]
]);
