X-Git-Url: https://git.wh0rd.org/?a=blobdiff_plain;f=include%2Ffunctions.php;h=d88e96dd600ce75b3f32a6fcbb4d4099cd05ce2d;hb=ec5687a62b706f3ee91eb21aaeea278fcaa994bc;hp=453f329b4bc3b3b2f47feb50dec95b8543d5cb1c;hpb=1da0818188722cb21ccc2cbccac8d9ceeb470187;p=tt-rss.git diff --git a/include/functions.php b/include/functions.php index 453f329b..d88e96dd 100755 --- a/include/functions.php +++ b/include/functions.php @@ -811,10 +811,11 @@ } function logout_user() { - session_destroy(); + @session_destroy(); if (isset($_COOKIE[session_name()])) { setcookie(session_name(), '', time()-42000, '/'); } + session_commit(); } function validate_csrf($csrf_token) { @@ -856,8 +857,7 @@ } if (!$_SESSION["uid"]) { - @session_destroy(); - setcookie(session_name(), '', time()-42000, '/'); + logout_user(); render_login_form(); exit; @@ -1682,22 +1682,32 @@ } } } + } + + if ($entry->hasAttribute('src') && + ($owner && get_pref("STRIP_IMAGES", $owner)) || $force_remove_images || $_SESSION["bw_limit"]) { + + $p = $doc->createElement('p'); + + $a = $doc->createElement('a'); + $a->setAttribute('href', $entry->getAttribute('src')); + + $a->appendChild(new DOMText($entry->getAttribute('src'))); + $a->setAttribute('target', '_blank'); + $a->setAttribute('rel', 'noopener noreferrer'); - if (($owner && get_pref("STRIP_IMAGES", $owner)) || - $force_remove_images || $_SESSION["bw_limit"]) { + $p->appendChild($a); - $p = $doc->createElement('p'); + if ($entry->nodeName == 'source') { - $a = $doc->createElement('a'); - $a->setAttribute('href', $entry->getAttribute('src')); + if ($entry->parentNode && $entry->parentNode->parentNode) + $entry->parentNode->parentNode->replaceChild($p, $entry->parentNode); - $a->appendChild(new DOMText($entry->getAttribute('src'))); - $a->setAttribute('target', '_blank'); - $a->setAttribute('rel', 'noopener noreferrer'); + } else if ($entry->nodeName == 'img') { - $p->appendChild($a); + if ($entry->parentNode) + $entry->parentNode->replaceChild($p, $entry); - $entry->parentNode->replaceChild($p, $entry); } }