Dotclear

Vous n'êtes pas identifié(e).

Annonce

13 février 2024 Sortie de Dotclear 2.29

#1 2012-03-11 19:57:37

[SiMON]
Membre
Lieu : France
Inscription : 2006-02-09
Site Web

[Clearbricks] Correction http::concatUrl

Bonjour,

Je suggère la modification de la fonction http::concatUrl();  (/common/lib.http.php:116) comme suit :

	public static function concatURL($url,$path)
	{
		if (substr($url,-1,1) != '/') {
			$url .= '/';
		}

		if (substr($path,0,1) != '/') {
			return $url.$path;
		}
		
		return preg_replace('#^(.+?//.+?)/(.*)$#','$1'.$path,$url);
	}

Sans ça, le traitement de certaines URLs, notamment le lien 'Feuille de style" de la page apparence du blog, est invalide dans le cas où le setting theme_url est une URL absolue.

D'ailleurs, comment ça marche pour proposer des modifs maintenant que Dotclear a ses propres dépôts ? Est-ce qu'on peut toujours passer par le système de proposition de Bitbucket ? Est-ce qu'un système équivalent existe ici ?

EDIT: Voir ici différents cas de figure avec à chaque fois le résultat avant et après ma modification.

Dernière modification par [SiMON] (2012-03-11 20:18:37)

Hors ligne

#2 2012-07-16 16:50:48

illisible
Membre
Inscription : 2009-07-04

Re : [Clearbricks] Correction http::concatUrl

La modif prend en compte les url qui ne se terminent pas par "/" mais quid de celles qui se terminent par "?" pour lesquelles l'ajout de "/" est fatale ?
Je propose

public static function concatURL($url,$path)
	{
		if ((substr($url,-1,1) != '/') &&(substr($url,-1,1) != '?')){
			$url .= '/';
		}

		if (substr($path,0,1) != '/') {
			return $url.$path;
		}
		
		return preg_replace('#^(.+?//.+?)/(.*)$#','$1'.$path,$url);
	}

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map