X-Git-Url: https://git.wh0rd.org/?a=blobdiff_plain;f=classes%2Farticle.php;h=09bd6d7dc4e843afaaa84ff911d9968aa1c0b13c;hb=add558e7e53fb9ab2e0e3186573bdb90d0e910ff;hp=c8ee5b93171976572e91316dd4b04f65d080198c;hpb=f5302247c6eecba217f35173b3f038cc828a7402;p=tt-rss.git diff --git a/classes/article.php b/classes/article.php index c8ee5b93..09bd6d7d 100755 --- a/classes/article.php +++ b/classes/article.php @@ -126,7 +126,7 @@ class Article extends Handler_Protected { if (filter_var($url, FILTER_VALIDATE_URL) === FALSE) return false; $pdo = Db::pdo(); - + $pdo->beginTransaction(); // only check for our user data here, others might have shared this with different content etc @@ -309,7 +309,7 @@ class Article extends Handler_Protected { if ($tag != '') { $sth = $this->pdo->prepare("INSERT INTO ttrss_tags - (post_int_id, owner_uid, tag_name) + (post_int_id, owner_uid, tag_name) VALUES (?, ?, ?)"); $sth->execute([$int_id, $_SESSION['uid'], $tag]); @@ -372,8 +372,7 @@ class Article extends Handler_Protected { $ids = explode(",", clean($_REQUEST["ids"])); $label_id = clean($_REQUEST["lid"]); - $label = db_escape_string(Labels::find_caption($label_id, - $_SESSION["uid"])); + $label = Labels::find_caption($label_id, $_SESSION["uid"]); $reply["info-for-headlines"] = array(); @@ -610,6 +609,8 @@ class Article extends Handler_Protected { $line = $p->hook_render_article($line); } + $line['content'] = rewrite_cached_urls($line['content']); + $num_comments = (int) $line["num_comments"]; $entry_comments = ""; @@ -640,7 +641,7 @@ class Article extends Handler_Protected { stylesheet_tag("css/default.css")." "; - + $rv['content'] .= "\n"; $rv['content'] .= "\n"; $rv['content'] .= ""; } - $rv['content'] .= "
"; + $rv['content'] .= "
"; - $rv['content'] .= "
"; + $rv['content'] .= "
"; $entry_author = $line["author"]; @@ -691,25 +692,25 @@ class Article extends Handler_Protected { $owner_uid, true); if (!$zoom_mode) - $rv['content'] .= "
$parsed_updated
"; + $rv['content'] .= "
$parsed_updated
"; if ($line["link"]) { - $rv['content'] .= "
" . $line["title"] . "" . "$entry_author
"; } else { - $rv['content'] .= "
" . $line["title"] . "$entry_author
"; + $rv['content'] .= "
" . $line["title"] . "$entry_author
"; } if ($zoom_mode) { $feed_title = htmlspecialchars($line["feed_title"]); - $rv['content'] .= "
$feed_title
"; + $rv['content'] .= "
$feed_title
"; - $rv['content'] .= "
$parsed_updated
"; + $rv['content'] .= "
$parsed_updated
"; } $tags_str = Article::format_tags_string($line["tags"], $id); @@ -785,7 +786,7 @@ class Article extends Handler_Protected { if (!$line['lang']) $line['lang'] = 'en'; - $rv['content'] .= "
"; + $rv['content'] .= "
"; $rv['content'] .= $line["content"]; @@ -827,7 +828,7 @@ class Article extends Handler_Protected { $pdo = Db::pdo(); $sth = $pdo->prepare("SELECT DISTINCT tag_name, - owner_uid as owner FROM ttrss_tags + owner_uid as owner FROM ttrss_tags WHERE post_int_id = (SELECT int_id FROM ttrss_user_entries WHERE ref_id = ? AND owner_uid = ? LIMIT 1) ORDER BY tag_name"); @@ -935,24 +936,24 @@ class Article extends Handler_Protected { return $rv; } - static function purge_orphans($do_output = false) { + static function purge_orphans() { - // purge orphaned posts in main content table + // purge orphaned posts in main content table - if (DB_TYPE == "mysql") - $limit_qpart = "LIMIT 5000"; - else - $limit_qpart = ""; + if (DB_TYPE == "mysql") + $limit_qpart = "LIMIT 5000"; + else + $limit_qpart = ""; - $pdo = Db::pdo(); - $res = $pdo->query("DELETE FROM ttrss_entries WHERE + $pdo = Db::pdo(); + $res = $pdo->query("DELETE FROM ttrss_entries WHERE NOT EXISTS (SELECT ref_id FROM ttrss_user_entries WHERE ref_id = id) $limit_qpart"); - if ($do_output) { - $rows = $res->rowCount(); - _debug("Purged $rows orphaned posts."); - } - } + if (Debug::enabled()) { + $rows = $res->rowCount(); + Debug::log("Purged $rows orphaned posts."); + } + } static function catchupArticlesById($ids, $cmode, $owner_uid = false) {