Valider 3673e6a3 rédigé par cedric@yterium.com's avatar cedric@yterium.com
Parcourir les fichiers

Fun fact : un site etant lui-même oembedable, mettre un lien explicite vers la...

Fun fact : un site etant lui-même oembedable, mettre un lien explicite vers la page courante dans un article provoque une boucle infinie http qui fait un DOS sur le serveur, tranquille.

On securise : si une URL est sur le même domaine que la page courante, on essaye pas de l'oembed. C'est peut-être un peu sévère mais en même temps on a plein d'autres méthodes plus smart pour insérer du contenu de soi même.
parent befc95b6
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+8 −3
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -180,6 +180,7 @@ function oembed_post_edition($flux) {
 * @return mixed
 */
function oembed_pre_propre($texte) {
	static $base = null;
	include_spip('inc/config');
	if (lire_config('oembed/embed_auto','oui')!='non') {
		include_spip('inc/oembed');
@@ -188,12 +189,16 @@ function oembed_pre_propre($texte) {
			# seuls les autoliens beneficient de la detection oembed
			AND preg_match(',\bauto\b,', extraire_attribut($lien, 'class'))
			AND (oembed_verifier_provider($url) OR (lire_config('oembed/detecter_lien','non')=='oui'))) {
				if (is_null($base))
				    $base = url_de_base();
				if (strncmp($url,$base,strlen($base))!=0){
					$fond = recuperer_fond('modeles/oembed',array('url'=>$url,'lien'=>$lien));
					if ($fond = trim($fond))
						$texte = str_replace($lien, echappe_html("<html>$fond</html>"), $texte);
				}
			}
		}
	}
	return $texte;
}

+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
<paquet
	prefix="oembed"
	categorie="multimedia"
	version="0.9.13"
	version="0.9.14"
	etat="test"
	compatibilite="[2.1.0;3.0.*]"
	logo="prive/themes/spip/images/oembed-32.png"
+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -7,7 +7,7 @@
	<br />Licence: [GPL3->http://www.gnu.org/licenses/gpl-3.0.html]
	</auteur>
	<version>
	0.9.13
	0.9.14
	</version>
	<etat>
	test