document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. <b:if cond=\'data:blog.url == data:blog.homepageUrl\'>
  2. <b:if cond=\'data:blog.pageType != &quot;item&quot;\'>
  3. <style type=\'text/css\'>
  4. .sticky-post { background-color: #F0F0F0; padding: 8px;}
  5. .stickies-container { background-color: #E4E4E4; padding: 4px; margin-bottom: 2em;}
  6. .stickymore { display: none; }
  7. </style>
  8. <script type=\'text/javascript\'>
  9. //<![CDATA[
  10. // Sticky posts by MS-potilas 2011. See http://yabtb.blogspot.com/
  11. // Configuration:
  12. var stickyLabel = "sticky"
  13. var maxStickies = 2;  // 1-20
  14. var showDate = true;
  15. var showTitle = true;
  16. var showFooter = true;
  17. var showPostedBy = true;
  18. var showCommentLink = true;
  19. var showLabels = true;
  20. var showStickyLabel = false;
  21. var showEmailPost = false;
  22. var showShareButtons = true;
  23. var showShareEmail = true;
  24. var showShareBlog = true;
  25. var showShareTwitter = true;
  26. var showShareFacebook = true;
  27. var showSharePlusone = true;
  28. var widthPlusone = 300;
  29. var txtComment = "comment";
  30. var txtComments = "comments";
  31. var txtPostedBy = "Posted by [user] at [time]";
  32. var txtLabels = "Labels:";
  33. var txtMore = "Read more &raquo;";
  34. var dynamicMore = true;
  35. var txtHideMore = "&laquo; <small>Hide</small>";
  36. // config end
  37. function findQuickEdit() {
  38.   var elements = document.getElementsByTagName("*");
  39.   var expr = /(^| )quickedit( |$)/;
  40.   for(var i=0 ; i<elements.length ; i++)
  41.     if(expr.test(elements[i].className))
  42.       return (elements[i].offsetWidth != 0);
  43.   return false;
  44. }
  45. function toggleStickyMore(id) {
  46.   if(document.getElementById(id)) {
  47.     if(document.getElementById(id+\'-morelink\').style.display != \'none\') {
  48.       document.getElementById(id).style.display = \'block\';
  49.       document.getElementById(id+\'-morelink\').style.display = \'none\';
  50.     } else {
  51.       document.getElementById(id).style.display = \'none\';
  52.       document.getElementById(id+\'-morelink\').style.display = \'inline\';
  53.     }
  54.   }
  55.   var elm=document.getElementById(id+\'-buttons\');
  56.   if(elm) {
  57.     var old=elm.style.display;
  58.     elm.style.display = \'none\';
  59.     elm.style.display = old; // because of IE...
  60.   }
  61. }
  62. function renderStickies(result) {
  63.     if(!result || !result.feed || !result.feed.entry || !result.feed.entry.length) return;
  64.     var divSticky = document.createElement(\'div\');
  65.     divSticky.className = "stickies-container";
  66.     var elm = document.getElementById("Blog1");
  67.     elm.insertBefore(divSticky, elm.firstChild);
  68.     if(!showLabels && !showPostedBy && !showCommentLink)
  69.       showFooter = false;
  70.     var strBuffer="";
  71.     var isQuickEdit = findQuickEdit();
  72.     for(var i = 0 ; i < result.feed.entry.length && i < maxStickies ; i++) {
  73.         if(strBuffer != "")
  74.           strBuffer += "<br />";
  75.         var entry = result.feed.entry[i];
  76.         strBuffer += "<div class=\\"sticky-post\\">";
  77.         var datePart = entry.published.$t.match(/\\d+/g); // assume ISO 8601
  78.         postDate = new Date(datePart[0],datePart[1]-1,datePart[2],datePart[3],datePart[4],datePart[5]);
  79.         if(showDate)
  80.           strBuffer += "<h2 class=\\"date-header\\">" + postDate.toLocaleDateString() + "</h2>";
  81.         var link="";
  82.         for(var k = 0; k < entry.link.length; k++ ) {
  83.           if(entry.link[k].rel == \'alternate\') {
  84.             link = entry.link[k].href;
  85.             break;
  86.           }
  87.         }
  88.         var blogid = entry.id.$t.split(\'-\')[1].split(\'.\')[0];
  89.         var postid = entry.id.$t.split(\'-\')[2];
  90.         if(postid != "") {
  91.           var elepost=document.getElementsByName(postid);
  92.           if(elepost && elepost[0]) {
  93.             elepost = elepost[0].parentNode;
  94.             while(elepost && !/(^| )date-outer( |$)/.test(elepost.className))
  95.               elepost = elepost.parentNode;
  96.             if(elepost && elepost.parentNode) elepost.parentNode.removeChild(elepost);
  97.           }
  98.         }
  99.         if(showTitle)
  100.           strBuffer += "<h3 class=\\"post-title entry-title\\"><a href=\\"" + link + "\\">"+ entry.title.$t + "</a></h3><br />";
  101.         var content = entry.content.$t;
  102.         if(content.indexOf("<a name=\'more\'")!=-1) {
  103.           if(!dynamicMore) {
  104.             content = content.replace(/\\n/g, " ");
  105.             content = content.replace(/<a name=\'more\'.*$/, "<div style=\'clear: both;\'></div><div class=\'jump-link\'><a href=\'"+link+"#more\' title=\'"+entry.title.$t+"\'>"+txtMore+"</a></div>");
  106.           } else {
  107.             var morelink = \'<a href="javascript:void(0);" id="sticky\'+postid+\'-morelink" onclick="toggleStickyMore(\\\'sticky\'+postid+\'\\\');return false;" title="\'+entry.title.$t+\'">\';
  108.             morelink += txtMore+\'</a><div class="stickymore" id="sticky\'+postid+\'">\';
  109.             morelink += \'<a style="float:right;margin-left:1em;" href="javascript:void(0);" onclick="toggleStickyMore(\\\'sticky\'+postid+\'\\\');return false;" title="Hide text">\' + txtHideMore + \'</a>\';
  110.             content = content.replace(/\\n/g, " ").replace(/<a name=\'more\'.*?<\\/a>/, morelink) + "</div>";
  111.           }
  112.         }
  113.         strBuffer += content;
  114.         if(showFooter) {
  115.           var strComments = "";
  116.           if(showCommentLink)
  117.             strComments = "<a class=\\"comment-link\\" href=\\"" + link + "#comments\\">" + entry.thr$total.$t + " " + ((entry.thr$total.$t==1) ? txtComment : txtComments) + "</a>";
  118.           strBuffer += "<div class=\\"post-footer-line post-footer-line-1\\"><div class=\\"post-footer\\">";
  119.           if(showPostedBy) {
  120.             var strPostedBy = txtPostedBy.replace(\'[user]\', entry.author[0].name.$t);
  121.             strPostedBy = strPostedBy.replace(\'[time]\', \'<a class="timestamp-link" href="\'+link+\'">\'+postDate.getHours() + ":" + String("0"+postDate.getMinutes()).slice(-2)+\'</a>\');
  122.             strBuffer += strPostedBy;
  123.             if(showCommentLink)
  124.               strBuffer += " &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ";
  125.           }
  126.           if(showCommentLink && (showShareButtons || showEmailPost)) {
  127.             strBuffer += strComments + " &nbsp; &nbsp; ";
  128.             strComments = "";
  129.           }
  130.           if(isQuickEdit) {
  131.             strBuffer += "<a href=\'http://www.blogger.com/post-edit.g?blogID="+blogid+"&postID="+postid+"&from=pencil\' title=\'Edit Post\'><img class=\'icon-action\' height=\'18\' src=\'http://img2.blogblog.com/img/icon18_edit_allbkg.gif\' width=\'18\'/></a> &nbsp; ";
  132.           }
  133.           if(showEmailPost) {
  134.             emailPostUrl = "http://www.blogger.com/email-post.g?blogID="+blogid+"&postID="+postid;
  135.             strBuffer += \'<span class="item-action"><a href="\'+emailPostUrl+\'" title="Email Post"><img class="icon-action" height="13" src="http://img1.blogblog.com/img/icon18_email.gif" width="18"/></a></span> &nbsp; &nbsp; \';
  136.           }
  137.           if(showShareButtons) {
  138.             strBuffer += "<div id=\'sticky"+postid+"-buttons\' class=\'post-share-buttons goog-inline-block\'>";
  139.             sharePostUrl = "http://www.blogger.com/share-post.g?blogID="+blogid+"&postID="+postid;
  140.             if(showShareEmail)
  141.               strBuffer += \'<a class="goog-inline-block share-button sb-email" href="\'+sharePostUrl+\'&target=email" title="Email This" target="_blank"><span class="share-button-link-text">Email This</span></a>\';
  142.             if(showShareBlog)
  143.               strBuffer += \'<a class="goog-inline-block share-button sb-blog" href="\'+sharePostUrl+\'&target=blog" onclick="\\\'window.open(this.href, \\"_blank\\", \\"height=270,width=475\\"); return false;\\\' title="BlogThis!" target="_blank"><span class="share-button-link-text">BlogThis!</span></a>\';
  144.             if(showShareTwitter)
  145.               strBuffer += \'<a class="goog-inline-block share-button sb-twitter" href="\'+sharePostUrl+\'&target=twitter" title="Share to Twitter" target="_blank"><span class="share-button-link-text">Share to Twitter</span></a>\';
  146.             if(showShareFacebook)
  147.               strBuffer += \'<a class="goog-inline-block share-button sb-facebook" href="\'+sharePostUrl+\'&target=facebook" onclick="\\\'window.open(this.href, \\"_blank\\", \\"height=430,width=640\\"); return false;\\\' title="Share to Facebook" target="_blank"><span class="share-button-link-text">Share to Facebook</span></a>\';
  148.             if(showSharePlusone)
  149.               strBuffer += \'&nbsp;<div class="goog-inline-block dummy-container"><div class="g-plusone" data-size="medium" data-href="\'+link+\'" data-width="\'+widthPlusone+\'" data-annotation="inline"></div></div>\';
  150.             strBuffer += "</div>";
  151.           }
  152.           if(showLabels && (showPostedBy || showShareButtons))
  153.             strBuffer += "<br />";
  154.           if(showLabels) {
  155.             if((entry.category.length > 1 && !showStickyLabel) || (entry.category.length > 0 && showStickyLabel)) {
  156.               strBuffer += txtLabels + " ";
  157.               for(var z = 0 ; z < entry.category.length ; z++) {
  158.                 if(entry.category[z].term == stickyLabel && !showStickyLabel)
  159.                   continue;
  160.                 if(z) strBuffer += ", ";
  161.                 strBuffer += "<a href=\\"/search/label/" + encodeURIComponent(entry.category[z].term) + "\\">" + entry.category[z].term + "</a>";
  162.               }
  163.             }
  164.             if(strComments != "")
  165.               strBuffer += " &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ";
  166.           }
  167.           strBuffer += strComments;
  168.           strBuffer += "</div></div>";
  169.         }
  170.         strBuffer += "</div>";
  171.     }
  172.     strBuffer = strBuffer.replace(/<img width=.1. height=.1. [^>]+>/g, "");
  173.     divSticky.innerHTML = strBuffer;
  174. }
  175. feedURI = "/feeds/posts/default/-/" + stickyLabel + "?max-results=25&redirect=false";
  176. document.write(\'<script type="text/javascript" src="http://\'+window.location.hostname+feedURI+\'&alt=json-in-script&callback=renderStickies"></\'+\'script>\');
  177. //]]>
  178. </script>
  179. </b:if>
  180. </b:if>
');