window.onload = function() {
	var e; // Element

	e = document.createElement('script');
	e.src = 'http://api.atnd.org/events/?keyword_or=' +
		encodeURIComponent('プログラマーズカフェ') +
		'&count=12&format=jsonp';
	document.getElementsByTagName('head')[0].appendChild(e);
}

function callback(d) { // Data
	var a, c, i, l, t; // Array, Child, Index, Listitem, Target
	
	a = d["events"];
	t = document.getElementById('atnd_events');
	for (i = 0; i < a.length; i++) {
		// if (a[i]['owner_nickname'] != 'kuippa')
		if ((a[i]['owner_nickname'] != 'kuippa') &&
		    (a[i]['owner_nickname'] != 'ysakaki'))
			continue;
		if ((new Date()).getTime() > Date.parse(a[i]['ended_at'].replace(
			/-/g, '/').replace('T', ' ').replace(/\+(..):(..)/, ' +$1$2')))
			continue;
		l = document.createElement('li');
		c = document.createElement('a');
		c.href=a[i]['event_url'];
		c.appendChild(document.createTextNode(a[i]['title']));
		l.appendChild(c);
		t.appendChild(l);
	}
}

/*
 * If you can't see this comment properly, see this file as UTF-8 text file.
 *
 * atnd_events.js - ATND API ( http://api.atnd.org/ ) でイベント検索し,
 *                  id で指定した ul ノードに li ノードを追加します.
 *
 *   ATND API, JSONP 版で keyword_or に「プログラマーズカフェ」を指定
 *   して 12件検索.
 *   owner_nickname が「kuippa」で, ended_at が現在時刻よりも後のもの
 *   を利用します.
 *
 *   UTF-8 の HTML ファイルのどこでも (head ノード内でいいですもちろ
 *   ん) いいですが,
 *     <script type="text/javascript" src="atnd_events.js"></script>
 *   のようにして本ファイルを読み込んでください.
 *     <ul id="atnd_events"></ul>
 *   のように id に「atnd_events」を指定した ul ノードに, イベントの
 *   URL にリンクを貼ったイベントタイトルからなる li ノードを追加します.
 *   先に li ノードがあれば, 既にある li ノード達の後に追加します.
 *
 *   ATND API, JSONP 版の仕様上, コールバック関数の名前は callback に
 *   決め打ちなので, 他に読み込んでいる JavaScript コードに callback
 *   という名前の関数があると衝突するかもしれません.
 *
 *   日付の部分のコードの説明:
 *   ATND API が返す 'ended_at' が
 *       2010-04-23T21:00:00+09:00
 *   のような文字列なので, これを
 *       2010/04/23 21:00:00 +0900
 *   のような形式の文字列に変換して Date.parse() に与えます.
 *   Date.parse() は time 値を返すので, 現在時刻 new Date()
 *   から time 値を取得して整数比較しています.
 *
 *   2010/04/06 00:55:21 +9000 Yoshinori Kohyama
 */


