From 08c7d38788744d36dd3fec7b25bb0f386377d291 Mon Sep 17 00:00:00 2001
From: Matthieu Marcillaud <marcimat@rezo.net>
Date: Thu, 28 Feb 2008 21:04:15 +0000
Subject: [PATCH] =?UTF-8?q?-=20permettre=20=C3=A0=20des=20sites=20(comme?=
 =?UTF-8?q?=20Contrib)=20qui=20avaient=20activ=C3=A9=20les=20'url=5Flibres?=
 =?UTF-8?q?'=20via=20le=20plugin=20de=20Toggg=20(maintenant=20dans=20le=20?=
 =?UTF-8?q?core)=20d'avoir=20les=20anciennes=20url=20avec=20marqueurs=20(+?=
 =?UTF-8?q?-Titre-+=20par=20exemple)=20redirig=C3=A9s=20sur=20la=20page=20?=
 =?UTF-8?q?correcte=20(et=20non=20sur=20un=20hipoth=C3=A9tique=20objet=20a?=
 =?UTF-8?q?u=20nom=20identique)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On teste d'abord le nom d'url sans modification, et s'il est absent de spip_urls, on teste alors le nom en enlevant les marqueurs.

Comme avant, si une url plus récente existe, une redirection sera faite dessus.
---
 ecrire/urls/propres.php | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/ecrire/urls/propres.php b/ecrire/urls/propres.php
index b3a0f0c5a9..8087885807 100644
--- a/ecrire/urls/propres.php
+++ b/ecrire/urls/propres.php
@@ -401,11 +401,15 @@ function urls_propres_dist(&$fond, $url) {
 
 	// Compatilibite avec propres2
 	$url_propre = preg_replace(',\.html$,i', '', $url_propre);
-
+	
 	// Compatibilite avec les anciens marqueurs d'URL propres
-	$url_propre = retirer_marqueurs_url_propre($url_propre);
+	// Tester l'entree telle quelle (avec 'url_libre' des sites ont pu avoir des entrees avec marqueurs dans la table spip_urls)
+	if (!$row = sql_fetsel('id_objet, type, date', 'spip_urls', 'url='._q($url_propre))) {
+		// Sinon enlever les marqueurs eventuels
+		$url_propre = retirer_marqueurs_url_propre($url_propre);
 
-	$row = sql_fetsel('id_objet, type, date', 'spip_urls', 'url='._q($url_propre));
+		$row = sql_fetsel('id_objet, type, date', 'spip_urls', 'url='._q($url_propre));
+	}
 
 	if ($row) {
 		$type = $row['type'];
-- 
GitLab