mirror of
https://github.com/aureliendavid/rsspreview.git
synced 2025-08-22 19:28:39 +00:00
fix descriptions conversion to html+xml
This commit is contained in:
parent
3acccca403
commit
6d2b0627fe
10
preview.css
10
preview.css
@ -120,4 +120,12 @@ a[href] img {
|
||||
height: 25px;
|
||||
width: 25px;
|
||||
margin-right: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.feedRawContent {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#feedSubtitleRaw {
|
||||
display: none;
|
||||
}
|
||||
|
4
rss.xsl
4
rss.xsl
@ -23,7 +23,7 @@
|
||||
<xsl:value-of select="title | atom:title | rss1:title" />
|
||||
</a>
|
||||
</h1>
|
||||
<h2 id="feedSubtitleText" ><xsl:value-of select="description | atom:subtitle | rss1:description" /></h2>
|
||||
<h2 id="feedSubtitleRaw" ><xsl:value-of select="description | atom:subtitle | rss1:description" /></h2>
|
||||
<!--div class="lastUpdated">Last updated: <xsl:value-of select="lastBuildDate | atom:updated" /></div-->
|
||||
</div>
|
||||
</div>
|
||||
@ -53,7 +53,7 @@
|
||||
|
||||
<div class="lastUpdated"><xsl:value-of select="pubDate | atom:updated | rss1:pubDate" /></div>
|
||||
</h3>
|
||||
<div class="feedEntryContent">
|
||||
<div class="feedRawContent">
|
||||
<xsl:value-of select="description | atom:summary | rss1:description" />
|
||||
</div>
|
||||
<div class="enclosures">
|
||||
|
@ -47,15 +47,35 @@
|
||||
|
||||
function formatdescriptions() {
|
||||
|
||||
// unescapes descriptions to html
|
||||
// unescapes descriptions to html then to xml
|
||||
|
||||
var tohtml = document.getElementsByClassName("feedEntryContent");
|
||||
var xml_parser = new XMLSerializer();
|
||||
var html_parser = new DOMParser();
|
||||
|
||||
var tohtml = document.getElementsByClassName("feedRawContent");
|
||||
for (var i = 0; i<tohtml.length; i++) {
|
||||
tohtml[i].innerHTML = tohtml[i].innerText;
|
||||
|
||||
var html_desc = html_parser.parseFromString('<div class="feedEntryContent">'+tohtml[i].innerText+'</div>', "text/html");
|
||||
var xml_desc = xml_parser.serializeToString(html_desc.body.firstChild);
|
||||
|
||||
tohtml[i].insertAdjacentHTML('afterend', xml_desc);
|
||||
|
||||
}
|
||||
|
||||
var feed_desc = document.getElementById("feedSubtitleText");
|
||||
feed_desc.innerHTML = feed_desc.innerText;
|
||||
document.querySelectorAll('.feedRawContent').forEach(function(a){
|
||||
a.remove()
|
||||
})
|
||||
|
||||
|
||||
var feed_desc = document.getElementById("feedSubtitleRaw");
|
||||
|
||||
var html_desc = html_parser.parseFromString('<h2 id="feedSubtitleText">'+feed_desc.innerText+'</h2>', "text/html");
|
||||
var xml_desc = xml_parser.serializeToString(html_desc.body.firstChild);
|
||||
|
||||
feed_desc.insertAdjacentHTML('afterend', xml_desc);
|
||||
|
||||
feed_desc.parentNode.removeChild(feed_desc);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -115,6 +135,7 @@
|
||||
h1.innerHTML += ' :: <a href="'+url+'"><img src="'+chrome.extension.getURL("icons/rss-32.png")+'" class="headerIcon" />Feed URL</a>';
|
||||
}
|
||||
|
||||
|
||||
function detect() {
|
||||
|
||||
var rootNode = document.getRootNode().documentElement;
|
||||
@ -195,7 +216,7 @@
|
||||
console.log(document);
|
||||
|
||||
removeemptyenclosures();
|
||||
//formatdescriptions();
|
||||
formatdescriptions();
|
||||
formatfilenames();
|
||||
formatfilesizes();
|
||||
extensionimages();
|
||||
|
Loading…
Reference in New Issue
Block a user