diff --git a/arbre-prive.php b/arbre-prive.php index 124ada3..bc6b0bf 100644 --- a/arbre-prive.php +++ b/arbre-prive.php @@ -7,6 +7,37 @@ if (!isset($_SESSION['admin_id'])) { exit; } +// Gérer la génération de lien de partage +if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['action']) && $_POST['action'] === 'generate_link') { + $albumPath = $_POST['path'] ?? ''; + $duration = intval($_POST['duration'] ?? 24); + $comment = $_POST['comment'] ?? ''; + + if ($albumPath && isSecurePrivatePath($albumPath)) { + // Récupérer ou créer l'identifiant unique de l'album + $albumIdentifier = ensureAlbumIdentifier($albumPath); + + if ($albumIdentifier) { + // Créer la clé de partage + $shareKey = createShareKey($albumIdentifier, $duration, $comment); + + if ($shareKey) { + $shareUrl = getBaseUrl() . '/galeries-privees.php?key=' . urlencode($shareKey); + $_SESSION['success_message'] = "Lien de partage généré avec succès. URL : " . $shareUrl; + } else { + $_SESSION['error_message'] = "Erreur lors de la génération du lien de partage."; + } + } else { + $_SESSION['error_message'] = "Erreur lors de la création de l'identifiant de l'album."; + } + } else { + $_SESSION['error_message'] = "Chemin d'album invalide."; + } + + header('Location: arbre-prive.php'); + exit; +} + if ($_SERVER['REQUEST_METHOD'] === 'POST') { $action = $_POST['action'] ?? ''; $path = $_POST['path'] ?? ''; @@ -116,6 +147,7 @@ function generatePrivateTree($path, $currentPath) { $info = getAlbumInfo($fullPath); $isCurrentPath = realpath($fullPath) === $currentPath; $hasSubfolders = hasSubfolders($fullPath); + $hasImages = hasImages($fullPath); $output .= '