JSFiddle - React, Tailwind, and code Playground
by peterbenoit
HTML
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.7.0/moment.min.js"></script>
<div class="cdc-podcast"
data-href="http://www2c.cdc.gov/podcasts/createrss.asp?t=r&c=442"
data-maxcount="2"
data-showpubdate="false"
>CDC RSS Feed</div>
<hr />
<div class="cdc-podcast"
data-href="http://www2c.cdc.gov/podcasts/createrss.asp?c=4"
data-maxcount="5"
data-showpubdate="true"
>CDC RSS Feed</div>
<hr />
<div class="cdc-podcast"
data-href="http://www2c.cdc.gov/podcasts/feed.asp?feedid=279&format=json&callback=?"
data-maxcount="5"
data-showpubdate="true"
>CDC RSS Feed</div>
JavaScript
(function ($) {
var podcasts = $('.cdc-podcast');
$.fn.CDCRSS = function (obj, opt) {
console.log(opt);
var def = $.extend({
href: "http://www2c.cdc.gov/podcasts/createrss.asp?t=r&c=1",
maxcount: 5,
showdesc: true,
showpubdate: true,
characterlimit: 0,
titlelinktarget: "_blank",
dateformat: "",
dateformatlang:"en"
}, opt);
var id = obj,
i,
s = "",
dt,
crossdomain = def.href.indexOf('createrss.asp') > -1 ? true : false, // hack to allow for XML only (podcast) feeds cross domain
url = crossdomain ? "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=" + def.maxcount + "&output=json&q=" + encodeURIComponent(def.href) + "&hl=en&callback=?" : def.href;
console.log(url);
obj.empty().append('<img src="http://preloaders.net/preloaders/45/4%20Segments.gif" />');
$.ajax({
url: url,
dataType: "jsonp",
success: function (data) {
console.log(data.responseData.feed.entries);
obj.empty();
$.each(data.responseData.feed.entries, function (e, item) {
s += '<li><div class="title"><a href="' + item.link + '" target="' + def.titlelinktarget + '" >' + item.title + "</a></div>";
if (def.showpubdate){
dt= new Date(item.publishedDate);
if ($.trim(def.dateformat).length > 0) {
try {
moment.lang(def.dateformatlang);
s += '<div class="date">' + moment(dt).format(def.dateformat) + "</div>";
}
catch (e){s += '<div class="date">' +...