/*
Sflaczers
version 1.0
http://www.kminek.pl/sflaczers/
Copyright (c) Grzegorz Wojcik
Code licensed under the BSD License:
http://www.kminek.pl/bsdlicense.txt

strip_tags js implementation by Kevin van Zonneveld and others: http://phpjs.org/functions/strip_tags

*/
function Sflaczers(n){var o=$.extend({id:'flaker',limit:2,avatars:false,cssavatars:false},n);var p=this;var q=$('#'+o.id);this.currentpage=0;this.flakerEntries=null;this.stripTags=function(d,e){var f='',allowed=false;var g=[];var h=[];var j='';var i=0;var k='';var l='';var m=function(a,b,c){return c.split(a).join(b)};if(e){h=e.match(/([a-zA-Z]+)/gi)}d+='';g=d.match(/(<\/?[\S][^>]*>)/gi);for(f in g){if(isNaN(f)){continue}l=g[f].toString();allowed=false;for(k in h){j=h[k];i=-1;if(i!=0){i=l.toLowerCase().indexOf('<'+j+'>')}if(i!=0){i=l.toLowerCase().indexOf('<'+j+' ')}if(i!=0){i=l.toLowerCase().indexOf('</'+j)}if(i==0){allowed=true;break}}if(!allowed){d=m(l,"",d)}}return d};this.drawNav=function(){var a=$('<div></div>').addClass('sflaczers-nav');var b=$('<a></a>').addClass('sflaczers-nav-newest').attr('href','#').html('&laquo; Nowsze wpisy');var c=$('<a></a>').addClass('sflaczers-nav-oldest').attr('href','#').html('Starsze wpisy &raquo;');a.append(b).append(c);q.prepend(a);if(p.currentpage==0)b.remove();else{b.click(function(){b.unbind();p.currentpage=p.currentpage-o.limit;p.doRequest({'limit':o.limit+1,'from':p.currentpage});return false})}if(p.flakerEntries.length>o.limit){c.click(function(){c.unbind();p.currentpage=p.currentpage+o.limit;p.doRequest({'limit':o.limit+1,'from':p.currentpage});return false})}else c.remove()};this.drawEntries=function(l){q.empty();var m=$('<ul></ul>').addClass('sflaczers-entries');q.append(m);$.each(l,function(e,f){if(e==o.limit)return;var g=$('<li></li>').addClass('sflaczers-entries-li');if(o.cssavatars)g.css('background-image','url('+f.user.avatar+')').css('background-repeat','no-repeat').css('background-position','0 0');if(o.avatars){var h=$('<img>').addClass('sflaczers-author-avatar').attr('src',f.user.avatar);g.append(h)}g.append('<a class="sflaczers-author-link" href="'+f.user.url+'">'+f.user.login+'</a> <a href="'+f.permalink+'" class="sflaczers-source">(#'+f.source+')</a>'+': '+p.cleanEntry(f.text));m.append(g);if(f.comments.length){var i='#'+o.id+'-sflaczers-comments-'+e;var j=$('<a></a>').addClass('sflaczers-comments-link').attr('href','#').html('komentarze&nbsp;('+f.comments.length+')').click(function(){$(i).toggle();return false});g.append(j);var k=$('<ol></ol>').addClass('sflaczers-comments').attr('id',o.id+'-sflaczers-comments-'+e).css('display','none');g.append(k);$.each(f.comments,function(a,b){var c=$('<li></li>').addClass('sflaczers-comments-li');if(o.cssavatars)c.css('background-image','url('+b.user.avatar+')').css('background-repeat','no-repeat').css('background-position','0 0');if(o.avatars){var d=$('<img>').addClass('sflaczers-commenter-avatar').attr('src',b.user.avatar);c.append(d)}c.append('<a class="sflaczers-commenter-link" href="'+b.user.url+'">'+b.user.login+'</a>: '+b.text);k.append(c)})}})};this.cleanEntry=function(a){var b=$('<div></div>').attr('id','sflaczers-hidden').css('display','none').html(a);q.append(b);$('#sflaczers-hidden .ad',q).remove();$('#sflaczers-hidden .reactions',q).remove();$('#sflaczers-hidden .original-link',q).remove();var c=this.stripTags($('#sflaczers-hidden').html(),'<a>');b.remove();return c};this.doRequest=function(c){var d='';$.each(c,function(a,b){d+=a+':'+b+'/'});$.ajax({type:'GET',url:'http://api.flaker.pl/api/login:'+o.login+'/avatars:small/comments:true/type:user/mode:flaker/'+d,success:function(a){p.flakerEntries=flaker.entries;p.drawEntries(flaker.entries);p.drawNav()},dataType:'script',cache:true})};this.doRequest({'limit':o.limit+1})};