金利0無利息キャッシング – キャッシングできます

 | 

2008-07-15

LDRで重複登録してるフィードの列挙と購読停止するJavaScript

12:06 | LDRで重複登録してるフィードの列挙と購読停止するJavaScript  - 金利0無利息キャッシング – キャッシングできます を含むブックマーク はてなブックマーク - LDRで重複登録してるフィードの列挙と購読停止するJavaScript  - 金利0無利息キャッシング – キャッシングできます

http://d.hatena.ne.jp/mazucon2/20080711/1215776769

http://d.hatena.ne.jp/mazucon2/20080711/1215795272

mazuconに頼まれたので作った。Firebugで使う。結構手抜き。OPMLインポートしたりすると同じURLに対して複数のフィードを登録してるケースが出てきたりするので、そういうのを列挙。ただしクエリが含まれてるのは除く。

  • 既読フィードも表示する設定にしないと全部でないので注意。
  • 読者が少ない方をポチポチ消していけばいいんじゃないでしょうか。
new function(){
 // disable reload
 feed_unsubscribe = function(sid, callback){
  var api = new API("/api/feed/unsubscribe");
  callback = callback || Function.empty;
  api.post({subscribe_id:sid},function(res){
   message("購読停止しました");
   callback(res);
  });
 }

 var seen={};
 list=[];
 subs.model.list.forEach(function(feed){
  if(feed.link&&seen[feed.link]&&feed.feedlink.indexOf("?")==-1){
   list.push([seen[feed.link],feed])
  };
  seen[feed.link]=feed
 });
 console.log(list.length+"件の重複があります");
 buf=[];
 var tmpl = function(f){
  feedlink2id[f.feedlink] = f.subscribe_id;
  return f.feedlink +"("+f.subscribers_count+" users)" + ': <a class="unsub_button" rel="unsubscribe" href="' + f.feedlink + '">解除</a>'
 };
 list.forEach(function(pair){
  buf.push("<dl><dt>"+pair[0].title+"</dt><dd><ul>");
  buf.push("<li>" + tmpl(pair[0]) + "</li>");
  buf.push("<li>" + tmpl(pair[1]) + "</li>");
  buf.push('</ul><dd></dl><br>');
 });
 $("right_body").innerHTML=buf.join("");
}

こんな感じで実行↓

http://gyazo.com/370558e231770fa3ab15bb2b302cc168.png

http://gyazo.com/05cf325dfe529e0ae4dfb1b99dc761ab.png

RinatRinat2012/03/22 06:22Aritecls like this make life so much simpler.

cfpbstcfpbst2012/03/23 02:38oi7uqJ , [url=http://fzkxpqhdimqt.com/]fzkxpqhdimqt[/url], [link=http://kuhuqhxirzsb.com/]kuhuqhxirzsb[/link], http://hlulekvahqhu.com/

qswbnlowztqswbnlowzt2012/03/24 05:42lkoADk , [url=http://wlmnfeoylrwi.com/]wlmnfeoylrwi[/url], [link=http://tvvjksfjmzcy.com/]tvvjksfjmzcy[/link], http://feimnzhhhmev.com/

 |