support media:description for media: enclosures
This commit is contained in:
parent
6bf61bdc63
commit
5c54e68388
|
@ -3,5 +3,6 @@ class FeedEnclosure {
|
|||
public $link;
|
||||
public $type;
|
||||
public $length;
|
||||
public $title;
|
||||
}
|
||||
?>
|
||||
|
|
|
@ -146,6 +146,9 @@ class FeedItem_Atom extends FeedItem_Common {
|
|||
$enc->link = $enclosure->getAttribute("url");
|
||||
$enc->length = $enclosure->getAttribute("length");
|
||||
|
||||
$desc = $this->xpath->query("media:description", $enclosure)->item(0);
|
||||
if ($desc) $enc->title = strip_tags($desc->nodeValue);
|
||||
|
||||
array_push($encs, $enc);
|
||||
}
|
||||
|
||||
|
|
|
@ -121,6 +121,9 @@ class FeedItem_RSS extends FeedItem_Common {
|
|||
$enc->link = $enclosure->getAttribute("url");
|
||||
$enc->length = $enclosure->getAttribute("length");
|
||||
|
||||
$desc = $this->xpath->query("media:description", $enclosure)->item(0);
|
||||
if ($desc) $enc->title = strip_tags($desc->nodeValue);
|
||||
|
||||
array_push($encs, $enc);
|
||||
}
|
||||
|
||||
|
|
|
@ -1177,3 +1177,8 @@ span.highlight {
|
|||
background-color : #ffff00;
|
||||
color : #cc90cc;
|
||||
}
|
||||
|
||||
div.enclosure_title {
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -3776,6 +3776,7 @@
|
|||
|
||||
$url = $line["content_url"];
|
||||
$ctype = $line["content_type"];
|
||||
$title = $line["title"];
|
||||
|
||||
if (!$ctype) $ctype = __("unknown type");
|
||||
|
||||
|
@ -3798,6 +3799,7 @@
|
|||
$entry["type"] = $ctype;
|
||||
$entry["filename"] = $filename;
|
||||
$entry["url"] = $url;
|
||||
$entry["title"] = $title;
|
||||
|
||||
array_push($entries, $entry);
|
||||
}
|
||||
|
@ -3819,7 +3821,10 @@
|
|||
$rv .= "<p><a target=\"_blank\"
|
||||
href=\"".htmlspecialchars($entry["url"])."\"
|
||||
>" .htmlspecialchars($entry["url"]) . "</a></p>";
|
||||
}
|
||||
|
||||
if ($entry['title']) {
|
||||
$rv.= "<div class=\"enclosure_title\">${entry['title']}</div>";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3836,7 +3841,12 @@
|
|||
"<option value=''>" . __('Attachments')."</option>";
|
||||
|
||||
foreach ($entries as $entry) {
|
||||
$rv .= "<option value=\"".htmlspecialchars($entry["url"])."\">" . htmlspecialchars($entry["filename"]) . "</option>";
|
||||
if ($entry["title"])
|
||||
$title = "— " . truncate_string($entry["title"], 30);
|
||||
else
|
||||
$title = "";
|
||||
|
||||
$rv .= "<option value=\"".htmlspecialchars($entry["url"])."\">" . htmlspecialchars($entry["filename"]) . "$title</option>";
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -954,7 +954,7 @@
|
|||
if (is_array($encs)) {
|
||||
foreach ($encs as $e) {
|
||||
$e_item = array(
|
||||
$e->link, $e->type, $e->length);
|
||||
$e->link, $e->type, $e->length, $e->title);
|
||||
array_push($enclosures, $e_item);
|
||||
}
|
||||
}
|
||||
|
@ -966,10 +966,14 @@
|
|||
|
||||
db_query("BEGIN");
|
||||
|
||||
// debugging
|
||||
// db_query("DELETE FROM ttrss_enclosures WHERE post_id = '$entry_ref_id'");
|
||||
|
||||
foreach ($enclosures as $enc) {
|
||||
$enc_url = db_escape_string($enc[0]);
|
||||
$enc_type = db_escape_string($enc[1]);
|
||||
$enc_dur = db_escape_string($enc[2]);
|
||||
$enc_title = db_escape_string($enc[3]);
|
||||
|
||||
$result = db_query("SELECT id FROM ttrss_enclosures
|
||||
WHERE content_url = '$enc_url' AND post_id = '$entry_ref_id'");
|
||||
|
@ -977,7 +981,7 @@
|
|||
if (db_num_rows($result) == 0) {
|
||||
db_query("INSERT INTO ttrss_enclosures
|
||||
(content_url, content_type, title, duration, post_id) VALUES
|
||||
('$enc_url', '$enc_type', '', '$enc_dur', '$entry_ref_id')");
|
||||
('$enc_url', '$enc_type', '$enc_title', '$enc_dur', '$entry_ref_id')");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue