ガジェット

iGoogleのガジェット


#googlegadgets
.tablib_table {
font-size: __UP_tabFontSize__;
}
.tablib_main_container{
font-size:13px;
}
.news_entry{
clear: both;
margin-bottom: 3px;
border-bottom:solid 1px #DCDCDC;
}
.news_title{
padding:3px;
}
.hatena{
float: right;
}
.news_date{
text-align:right;
padding:3px;
font-style:italic;
font-size:12px;
color:#666666;
}
img{ border:none; }
</style>

<script type="text/javascript">
var prefs = new gadgets.Prefs();
var tabs = new gadgets.TabSet(__MODULE_ID__);

var news = new Object();

news = {
 list : [],
 num  : 10,

 init : function(){
   var num = _trim(prefs.getString('result_num'));
   news.num = (num.match(/^\d+$/)) ? num: 10;

   //Tab
   tabs.addTab('ロブ速', {callback: news.blog.robu});
   tabs.addTab('蟹速報', {callback: news.blog.kani});
   tabs.addTab('けんもう', {callback: news.blog.kenmou});
   tabs.addTab('働ニュ(嫌儲)', {callback: news.blog.hatanyu});
   tabs.addTab('ハム速', {callback: news.blog.hamuiti});
   tabs.addTab('VIPER速報', {callback: news.blog.viper});
   tabs.addTab('VIP俺', {callback: news.blog.ore});
   tabs.addTab('やらおん', {callback: news.blog.yarao});
   tabs.addTab('痛ニュ', {callback: news.blog.itanyu});
 },

 blog: {
   robu: function (tabId) { news.callbackTab(tabId, 'ロブスター速報@VIP', 'http://blog.livedoor.jp/notaffiliate/index.rdf'); },
   kani: function (tabId) { news.callbackTab(tabId, '蟹速報', 'http://kanisokuhou.doorblog.jp/index.rdf'); },
   kenmou: function (tabId) { news.callbackTab(tabId, 'けんもう速報', 'http://kenmounews.blog.fc2.com/?xml'); },
   hatanyu: function (tabId) { news.callbackTab(tabId, '働くニュース(嫌儲)', 'http://blog.livedoor.jp/workingnews/index.rdf'); },
   hamuiti: function (tabId) { news.callbackTab(tabId, 'ハムスタ一速報', 'http://hamusokuhou.blogspot.com/feeds/posts/default?alt=rss'); },
   viper: function (tabId) { news.callbackTab(tabId, 'VIPER速報', 'http://vippersnews.blogspot.com/feeds/posts/default?alt=rss'); },
   ore: function (tabId) { news.callbackTab(tabId, 'VIPPERの俺', 'http://news24vip.blog.fc2.com/?xml'); }
   yarao: function (tabId) { news.callbackTab(tabId, 'やらおん', 'http://yron.anime-life.com/RSS/200/'); }
   itanyu: function (tabId) { news.callbackTab(tabId, '痛いニュ一ス(ヽ´ω`)', 'http://blog.livedoor.jp/dqnplusminus/index.rdf'); }
 },

 callbackTab : function(tabId, name, feedUrl){
   var showSummary = prefs.getBool("showSummary");
   var showTimestamp = prefs.getBool("showTimestamp");
   var showHatena = prefs.getBool("showHatena");
   var container = _gel(tabId);
   container.innerHTML = '<p>読み込んでいます...</p>';

   //fetch feed
   var opts = {};
   opts[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.FEED;
   opts[gadgets.io.RequestParameters.NUM_ENTRIES] = news.num;
   opts[gadgets.io.RequestParameters.GET_SUMMARIES] = false; 

   var html = '<p>' + name + '</p>';

   gadgets.io.makeRequest(feedUrl, function (obj) {
     if (typeof obj == "undefined" || typeof obj.data.Entry == "undefined") {
       container.innerHTML = '<div class="statusLabel">Invalid feed URL:<br>' + feedUrl + '</div>';
     } else {
       var feed = obj.data;

       for(var i=0; i<feed.Entry.length; i++) {
         var entry = feed.Entry[i];

         html += '<div class="news_entry">';
         if (showHatena) {
           html +=
             '<a href="http://b.hatena.ne.jp/entry/' + entry.Link + '" target="_blank" class="hatena"><img src="http://b.hatena.ne.jp/entry/image/' + entry.Link + '" alt=""/></a>';
         }
         html +=
           '<div class="news_title">'+
           ' &#187; <a href="'+entry.Link+'" target="_blank">' + entry.Title + '</a>&nbsp;&nbsp;'+
           '</div>';
         if(showSummary){
           html += '<div class="news_summary">' + entry.Summary + '</div>';
         }
         if(showTimestamp){
           html += '<div class="news_date">' + new Date(entry.Date * 1000).toLocaleString() + '</div>';
         }
         html += '</div>';
       }
     }
     container.innerHTML = html;
     setTimeout(function () {
       gadgets.window.adjustHeight();
     }, 1000);
   }, opts);
 }
};


function _gel(n) {
 return document.getElementById(n);
}

function _esc(v) {
 return encodeURIComponent(v);
}

gadgets.util.registerOnLoadHandler(news.init);
var ga = new _IG_GA('UA-785809-14');
ga.reportPageview('/2ch');

</script>

]]></Content>
</Module>}

タグ:

OdnunHSaYI
+ タグ編集
  • タグ:
  • OdnunHSaYI

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2013年02月24日 13:18
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。
添付ファイル