Skip to content
Extraits de code Groupes Projets
Valider 43eb57cd rédigé par esj's avatar esj
Parcourir les fichiers

Incrustation de documents HTML même très invalides. Et correction du retour...

Incrustation de documents HTML même très invalides. Et correction du retour Ajax d'iconifier (Gilles).
parent ccfed030
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -87,16 +87,18 @@ function filtre_text_csv_dist($t) ...@@ -87,16 +87,18 @@ function filtre_text_csv_dist($t)
// http://doc.spip.org/@filtre_text_html_dist // http://doc.spip.org/@filtre_text_html_dist
function filtre_text_html_dist($t) function filtre_text_html_dist($t)
{ {
if (!preg_match(',<head>(.*?)</head>.*<body[^>]*>(.*)</body>,is', $t, $r)) if (!preg_match(',^(.*?)<body[^>]*>(.*)</body>,is', $t, $r))
return filtre_text_txt_dist($t); return filtre_text_txt_dist($t);
list(,$h,$t) = $r; list(,$h,$t) = $r;
$style = ''; $style = '';
// recuperer les styles internes // recuperer les styles internes
if (preg_match_all(',<style>([^>]*)</style>,is', $h, $r, PREG_PATTERN_ORDER)) if (preg_match_all(',<style>(.*?)</style>,is', $h, $r, PREG_PATTERN_ORDER))
$style = join("\n",$r[1]); $style = join("\n",$r[1]);
// ... et externes // ... et externes
if (preg_match_all(',<link[^>]*text/css[^>]*>,is', $h, $r, PREG_PATTERN_ORDER))
if (preg_match_all(',<link[^>]+type=.text/css[^>]*>,is', $h, $r, PREG_PATTERN_ORDER))
foreach($r[0] as $l) { foreach($r[0] as $l) {
preg_match("/href='([^']*)'/", str_replace('"',"'",$l), $m); preg_match("/href='([^']*)'/", str_replace('"',"'",$l), $m);
$style .= "\n/* $l */\n" $style .= "\n/* $l */\n"
......
...@@ -64,7 +64,7 @@ function inc_iconifier_dist($id_objet, $id, $script, $visible=false, $flag_modi ...@@ -64,7 +64,7 @@ function inc_iconifier_dist($id_objet, $id, $script, $visible=false, $flag_modi
. fin_cadre_relief(true); . fin_cadre_relief(true);
if(_request("exec")!="iconifier") { if(_request("exec")!="iconifier") {
$js .= http_script(_DIR_JAVASCRIPT . 'async_upload.js') $js .= http_script('', _DIR_JAVASCRIPT . 'async_upload.js')
. http_script('$("form.form_upload_icon").async_upload(async_upload_icon)'); . http_script('$("form.form_upload_icon").async_upload(async_upload_icon)');
} else $js = ""; } else $js = "";
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter