Blogger Json · Top Commentators - Dewa Blogger

Halaman

    Social Items

Buy Now

Blogger Json · Top Commentators

<!DOCTYPE html> <html> <head> <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/> <title>Top Commentators</title> <style> .top-commenter-line {   margin:3px 0px; } .top-commenter-avatar {   display:inline-block;   vertical-align:middle; } </style> </head> <body>  <script> // Top Commentators gadget with avatars, by MS-potilas 2012. // Gets a list of top commentators from all comments, or specified number of days in the past. // See    // CONFIG: var homepage           = 'http://latitudu.blogspot.com',  // Homepage     maxTopCommenters   = 17,  // How much?     minComments        = 1,  // How many comments must top commentator have at least     numDays            = 0,  // From how many days (ex. 30), or 0 from "all the time"     excludeMe          = true,  // true: exclude my own comments     excludeUsers       = ["Anonymous", "Another Name"],  // Exclude these usernames     maxUserNameLength  = 42,  // 0: don't cut, >4: cut usernames     txtTopLine         = '<b>[#].</b> [image] [user] ([count])',  // List number     txtNoTopCommenters = 'No top commentators at this time.',     txtAnonymous       = '',  // Empty, or Anonymous user name localized if you want to localize     sizeAvatar         = 16,  // Avatar size     cropAvatar         = true,     urlNoAvatar        = 'https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjePd5-QURMrrlilvavRDz74nJxIckrvoBnxDp0Z6CKnyUk5dwZolm1IeGhAQawvEK0OT3yZeqLeSTo9zaV5-azxd_SaEnW-0KeZEWsozkQO_VxLYchf9L7HA0DLo6BqMogU1_rAs_qvmk/' + sizeAvatar + '/avatar_blue_m_96.png',  // http://www.blogger.com/img/avatar_blue_m_96.png resizeable     urlAnoAvatar       = 'http://www.gravatar.com/avatar/00000000000000000000000000000000?d=mm&s=' + sizeAvatar,     urlMyProfile       = '',  // Set if you have no profile gadget on page     urlMyAvatar        = '';  // Can be empty (then it is fetched) or url to image // END CONFIG // for old IEs & IE modes: if (!Array.indexOf) {     Array.prototype.indexOf = function(obj) {         for (var i = 0; i < this.length; i++) if (this[i] == obj) return i;         return -1;     }; }  function replaceTopCmtVars(text, item, position) {     if (!item || !item.author) return text;     var author = item.author;      var authorUri = "";     if (author.uri && author.uri.$t !== "") authorUri = author.uri.$t;      var avaimg = urlAnoAvatar;     var bloggerprofile = "//www.blogger.com/profile/";     if (author.gd$image && author.gd$image.src && authorUri.substr(0, bloggerprofile.length) == bloggerprofile) {         avaimg = author.gd$image.src;     } else {         var parseurl = document.createElement('a');         if (authorUri !== "") {             parseurl.href = authorUri;             avaimg = 'http://www.google.com/s2/favicons?domain=' + parseurl.hostname;         }     }     if (urlMyProfile !== "" && authorUri == urlMyProfile && urlMyAvatar !== "") avaimg = urlMyAvatar;     if (avaimg == "//img2.blogblog.com/img/b16-rounded.gif" && urlNoAvatar !== "") avaimg = urlNoAvatar;     var newsize = "s" + sizeAvatar;     avaimg = avaimg.replace(/\/s\d\d+-c\//, "/" + newsize + "-c/");     if (cropAvatar) newsize += "-c";     avaimg = avaimg.replace(/\/s\d\d+(-c){0,1}\//, "/" + newsize + "/");      var authorName = author.name.$t;     if (authorName == 'Anonymous' && txtAnonymous !== "" && avaimg == urlAnoAvatar) authorName = txtAnonymous;     var imgcode = '<img class="top-commenter-avatar" height="' + sizeAvatar + '" width="' + sizeAvatar + '" title="Blogger JSON · Top Commentators" src="' + avaimg + '" />';     if (authorUri !== "") imgcode = '<a href="' + authorUri + '">' + imgcode + '</a>';      if (maxUserNameLength > 3 && authorName.length > maxUserNameLength) authorName = authorName.substr(0, maxUserNameLength - 3) + "...";     var authorcode = authorName;     if (authorUri !== "") authorcode = '<a class="profile-name-link" href="' + authorUri + '">' + authorcode + '</a>';      text = text.replace('[user]', authorcode);     text = text.replace('[image]', imgcode);     text = text.replace('[#]', position);     text = text.replace('[count]', item.count);     return text; }  var topcommenters = {}; var ndxbase = 1;  function showTopCommenters(json) {     var one_day = 1000 * 60 * 60 * 24;     var today = new Date();      if (urlMyProfile === "") {         var elements = document.getElementsByTagName("*");         var expr = /(^| )profile-link( |$)/;         for (var i = 0; i < elements.length; i++) {             if (expr.test(elements[i].className)) urlMyProfile = elements[i].href;             break;         }     }      for (var j = 0; j < json.feed.entry.length; j++) {         var entry = json.feed.entry[j];         if (numDays > 0) {             var datePart = entry.published.$t.match(/\d+/g); // Assume ISO 8601             var cmtDate = new Date(datePart[0], datePart[1] - 1, datePart[2], datePart[3], datePart[4], datePart[5]);              // Calculate difference btw the two dates, and convert to days             var days = Math.ceil((today.getTime() - cmtDate.getTime()) / (one_day));             if (days > numDays) break;         }         var authorUri = "";         if (entry.author[0].uri && entry.author[0].uri.$t !== "") authorUri = entry.author[0].uri.$t;          if (excludeMe && authorUri !== "" && authorUri == urlMyProfile) continue;         var authorName = entry.author[0].name.$t;         if (excludeUsers.indexOf(authorName) != -1) continue;          var hash = entry.author[0].name.$t + "-" + authorUri;         if (topcommenters[hash]) topcommenters[hash].count++;         else {             var commenter = {};             commenter.author = entry.author[0];             commenter.count = 1;             topcommenters[hash] = commenter;         }     }     if (json.feed.entry.length == 200) {         ndxbase += 200;         document.write('<scr' + 'ipt src="' + homepage + '/feeds/comments/default?redirect=false&max-results=200&start-index=' + ndxbase + '&alt=json-in-script&callback=showTopCommenters"></' + 'script>');         return;     }      // Convert object to array of tuples     var tuplear = [];     for (var key in topcommenters) tuplear.push([key, topcommenters[key]]);      tuplear.sort(function(a, b) {         if (b[1].count - a[1].count) return b[1].count - a[1].count;         return (a[1].author.name.$t.toLowerCase() < b[1].author.name.$t.toLowerCase()) ? -1 : 1;     });      // List top commenters:     var realcount = 0;     for (var k = 0; k < maxTopCommenters && k < tuplear.length; k++) {         var item = tuplear[k][1];         if (item.count < minComments) break;         document.write('<di' + 'v class="top-commenter-line">');         document.write(replaceTopCmtVars(txtTopLine, item, realcount + 1));         document.write('</d' + 'iv>');         realcount++;     }     if (!realcount) document.write(txtNoTopCommenters); } document.write('<scr' + 'ipt src="' + homepage + '/feeds/comments/default?redirect=false&max-results=200&alt=json-in-script&callback=showTopCommenters"></' + 'script>'); </script>  </body> </html>

Sumber https://www.dte.web.id/