/* 
 * 「entriesZ」 - 最近の記事一覧を javascript によるページ切替で
 *                さかのぼれる MovableType テンプレート
 *                http://www.towofu.net/mt/
 * 
 * 最近の記事一覧だけでなく、少し前の記事一覧が見たい。
 * そんな要求から生まれた。
 * 
 * 転載・改造・配布などすべて自由です。
 * エントリーがものすごく多くて、しかも延々とさかのぼりたければ、
 * ajax 化するとか。
 *                                                 2005/05/24
 */

var itemsPerPage = 10; //1 ページに表示するアイテム数。
var currentPage = 0; //現在表示中のページ。最新のページが 0。古いほど数字が大きくなる。
var items = [
		//エントリーURL, エントリータイトル, コメント数, トラックバック数
			["http://www.towofu.net/wolf/archives/2007/01/04_01_46.html", "Wolfen Never Dies", 2, 0],
			["http://www.towofu.net/wolf/archives/2005/10/18_23_19.html", "うるふぇん次回作、Nerve がマルチプレイを担当", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/10/17_23_51.html", "藤岡弘、", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/10/06_23_55.html", "F.E.A.R. 怖", 4, 0],
			["http://www.towofu.net/wolf/archives/2005/09/18_01_19.html", "人いなｽ", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/07/01_23_53.html", "Sensitivity 100 メソッド", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/06/28_23_49.html", "文明発展ゲーム、C-evo", 0, 1],
			["http://www.towofu.net/wolf/archives/2005/06/24_23_50.html", "korin 作者さんのチュートリアルに期待", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/06/22_01_07.html", "ドクロった間違い探し", 2, 0],
			["http://www.towofu.net/wolf/archives/2005/06/14_20_26.html", "やるべきか、やらざるべきか、BF2", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/06/05_13_34.html", "IE を切り捨ててみた", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/05/27_23_20.html", "裸族レンダリング", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/05/27_00_24.html", "うずうず", 2, 0],
			["http://www.towofu.net/wolf/archives/2005/05/26_00_20.html", "悪いことを考えてみた", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/05/23_23_02.html", "XSI と Source エンジンの座標系の違い", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/05/22_21_43.html", "Half-Life 2 モデリングに挑戦", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/05/07_00_20.html", "三年", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/05/03_00_48.html", "酒盛り大逆転", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/04/27_23_43.html", "酒盛り盛り返し", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/04/23_01_30.html", "復興委員会", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/03/17_23_53.html", "DG1.0は3月20日(日)にリリース", 4, 0],
			["http://www.towofu.net/wolf/archives/2005/03/10_00_29.html", "DGドキュメント＆マップ作成キットをリリース", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/03/05_01_11.html", "TKも捨てがたかった", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/02/26_15_40.html", "DGスクリーンショット4枚", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/02/21_23_14.html", "DeGeneration 1.0 もうすぐリリース", 2, 0],
			["http://www.towofu.net/wolf/archives/2005/02/19_00_47.html", "FritzBotがリリースされました・・・が", 2, 1],
			["http://www.towofu.net/wolf/archives/2005/02/10_01_18.html", "RtCW用BOT、FritzBotの新バージョンがもうすぐリリース", 0, 1],
			["http://www.towofu.net/wolf/archives/2005/02/07_00_05.html", "運送", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/01/27_00_54.html", "不条理ゾンビゲー BrainBread", 0, 0],
			["http://www.towofu.net/wolf/archives/2005/01/25_00_22.html", "ヌマヌマ", 0, 1],
			["http://www.towofu.net/wolf/archives/2005/01/19_00_13.html", "そういえばDGはどうなった", 2, 0],
			["http://www.towofu.net/wolf/archives/2005/01/15_04_08.html", "廃人週末", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/12/30_20_36.html", "HL2Radiant 待ち", 4, 0],
			["http://www.towofu.net/wolf/archives/2004/12/25_01_02.html", "うるふぇん速杉", 2, 0],
			["http://www.towofu.net/wolf/archives/2004/12/22_22_19.html", "Yahoo! が ASE を買収？", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/12/06_23_41.html", "VC++6.0 STD で HL2 をコンパイルしてみた", 1, 0],
			["http://www.towofu.net/wolf/archives/2004/11/29_23_06.html", "Chapter 10 タレットｘ３で色々試してみた(＊ネタバレ注意＊)", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/28_03_01.html", "HL2妄想画像", 3, 0],
			["http://www.towofu.net/wolf/archives/2004/11/25_22_18.html", "HL2はワイドスクリーン設定がいい", 3, 0],
			["http://www.towofu.net/wolf/archives/2004/11/24_23_03.html", "CZ テクスチャ張り替え方法を学ぶ", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/24_20_19.html", "Half-Life 2 設定で字幕だけ日本語に", 2, 0],
			["http://www.towofu.net/wolf/archives/2004/11/24_00_22.html", "CZ和風マップで遊ぶ", 2, 0],
			["http://www.towofu.net/wolf/archives/2004/11/23_22_45.html", "無償で提供されているHL2用モデリングツール「Softimage|XSI EXP for Half-Life 2」", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/22_23_20.html", "Steam言語選んDEランチャ", 0, 1],
			["http://www.towofu.net/wolf/archives/2004/11/20_02_07.html", "やっぱりマウスパッドは必要なのか", 2, 0],
			["http://www.towofu.net/wolf/archives/2004/11/17_23_26.html", "初めての光学式マウス Logitech MX-310", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/16_23_42.html", "マップデバッグの必須コマンド３ r_clear", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/16_23_06.html", "Half Life2 おあずけ日記", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/16_01_05.html", "ダメ電波日記", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/13_22_05.html", "CZにもクルクル回る人がいた　しかしその実態は・・・", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/13_16_13.html", "マップデバッグの必須コマンド２ r_speeds", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/13_02_01.html", "Source、Zero、ノーマル(1.6?)どれに入ればいいんだばー", 0, 0],
			["http://www.towofu.net/wolf/archives/2004/11/12_23_21.html", "etproではヘッドショットの距離ダメージだけが修正されていた", 0, 1],
			["http://www.towofu.net/wolf/archives/2004/11/11_23_07.html", "気づいたらHL2シルバーを購入していた", 2, 0],
			["http://www.towofu.net/wolf/archives/2004/11/10_22_41.html", "マップデバッグの必須コマンド１ r_showtris", 4, 1],
	
		/* 最後のアイテムの後ろのコロンがあると、
		 * IE では実際のアイテム数+1、Fx では実際のアイテム数になるので、
		 * 以下にダミーを置いて、強制的に実際のアイテム数+1とする。
		 */
		["", "", 0, 0]
	];
var lastPage = Math.floor((items.length-1 + (itemsPerPage-1)) / itemsPerPage) - 1;

/* ページを inc 進めてから再表示する */
function incPage(inc) {
	currentPage += inc;
	printCurrentPage();
}

/* 現在のページを表示する */
function printCurrentPage() {
	/* 表示ブロックをクリアする */
	var disp = document.getElementById("entriesz");
	while (disp.hasChildNodes()) {
		disp.removeChild(disp.lastChild);
	}

	/* ページの切替ボタンを表示する */
	var btns = document.createElement("div");
	btns.id = "entriesz_btns";
	var prevBtn, nextBtn;
	//「前へ」ボタンを作る
	if (currentPage < lastPage) {
		prevBtn = document.createElement("a");
		prevBtn.href = "javascript:incPage(+1)";
	} else {
		prevBtn = document.createElement("span");
	}
	prevBtn.appendChild(document.createTextNode("<<前へ"));
	//「次へ」ボタンを作る
	if (currentPage > 0) {
		nextBtn = document.createElement("a");
		nextBtn.href = "javascript:incPage(-1)";
	} else {
		nextBtn = document.createElement("span");
	}
	nextBtn.appendChild(document.createTextNode("次へ>>"));
	//書き出す
	btns.appendChild(prevBtn);
	btns.appendChild(document.createTextNode(" | "));
	btns.appendChild(nextBtn);
	disp.appendChild(btns);

	/* エントリー一覧を表示する */
	var start = itemsPerPage * currentPage;
	var end = Math.min(start + itemsPerPage, items.length-1);
	var list = document.createElement("ul");
	for (i = start; i < end; i++) {
		var item = document.createElement("li");
		//エントリーへのリンクを作る
		var link = document.createElement("a");
		link.href = items[i][0];
		//コメントとトラックバックの数
		var str = "";
		if (items[i][2] + items[i][3]) {
			str = " (";
			if (items[i][2])
				str += "C:" + items[i][2];
			if (items[i][3]) {
				items[i][2] ? str += " " : str;
				str += "T:" + items[i][3];
			}
			str += ")";
		}
		//書き出す
		link.appendChild(document.createTextNode(items[i][1]));
		item.appendChild(link);
		if (str != undefined)
			item.appendChild(document.createTextNode(str));
		list.appendChild(item);
	}
	disp.appendChild(list);
}

printCurrentPage();