// YUI required

function getCookie(key) {
	var value = new RegExp("(\;|^)[^;]*" + key + "=([^;]*)(;|$)").exec(document.cookie);
	return value ? decodeURIComponent(value[2]) : "";
}

function setCookie(key, value, nDays) {
	var d = new Date(), expires = "";
	d.setTime( d.getTime() + nDays * 24 * 60 * 60 * 1000 );

	document.cookie = key + "=" + encodeURIComponent(value) + ";"
		+ " domain=irons.jp; path=/; " + "expires=" + d.toGMTString();
}

var colors = ['gray', 'red', 'yellow', 'green', 'blue', 'purple', 'pink'];

var ua = new detectBrowser();

function detectBrowser() {
	var ua = navigator.userAgent.toLowerCase();
	this.is_opera = (ua.indexOf("opera") != -1);
	this.is_ie = !this.is_opera && (ua.indexOf("msie") != -1);
	this.is_ie6 = this.is_ie && (ua.indexOf("msie 6") != -1);
	this.is_ie7 = this.is_ie && (ua.indexOf("msie 7") != -1);
	this.is_firefox = (ua.indexOf("firefox") != -1);
	this.is_safari = (ua.indexOf("safari") != -1);
	this.version = parseFloat(navigator.appVersion); 
	if (this.is_ie) {
		this.version = parseFloat(ua.substring(ua.indexOf('msie ') + 5));
	}
}



YAHOO.util.Event.onDOMReady(function () {
	var ckColor = getCookie('color');
	if (!ckColor) {
		ckColor = 'gray';
	} else if (ckColor == 'random') {
		ckColor = colors[Math.floor(Math.random() * colors.length)];
	}

	document.body.id = ckColor;

	// 色切り替えボタン
	//if (/(index\.html|\/)$/.test(location.pathname)) {
		var menu = document.getElementById('site_menu');
		if (menu) {

			// タブ追加
			var menu_ul = document.getElementById('site_menu_list');
			var li = document.createElement('li');
			li.id  = 'ptabli';
			var ckTabName = getCookie('tabName');
			if (!ckTabName) {
				var span = document.createElement('span');
				span.innerHTML = 'タブを追加';
				span.onclick = changeTabName;
				span.style.textDecoration = 'underline';
				span.style.cursor = 'pointer';
				li.appendChild(span);
			} else {
				var a = tab_a(ckTabName);
				li.appendChild(a);
			}
			menu_ul.appendChild(li);

			// 色切り替え
			var div = document.createElement('div');
			div.id = 'color_selectr';
			for (var i in colors) {
				var span = document.createElement('span');
				span.onclick = function() {
					var before = document.getElementById('btn_' + document.body.id) || this;
					before.innerHTML = '&#x25A1;';
					before.style.cursor = 'pointer';
					document.body.id = this.color;
					setCookie('color', this.color, 30);
					this.innerHTML = '&#x25A0;';
					this.style.cursor = 'default';
				}
				span.id = 'btn_' + colors[i];
				span.color = colors[i];
				span.title = colors[i];
				if (ckColor == colors[i]) {
					span.innerHTML = '&#x25A0;';
					span.style.cursor = 'default';
				} else {
					span.innerHTML = '&#x25A1;';
					span.style.cursor = 'pointer';
				}
				div.appendChild(span);
				//div.appendChild(document.createTextNode(' '));
			}
			var span = document.createElement('span');
			span.onclick = function() {
				var before = document.getElementById('btn_' + document.body.id) || this;
				before.innerHTML = '&#x25A1;';
				before.style.cursor = 'pointer';
				var randomColor = colors[Math.floor(Math.random() * colors.length)]
				document.body.id = randomColor;
				setCookie('color', 'random', 30);
				var randomColorBtn = document.getElementById('btn_' + randomColor);
				randomColorBtn.innerHTML = '&#x25A0;';
				randomColorBtn.style.cursor = 'default';
			}
			span.id = 'btn_random';
			span.title = 'random';
			span.innerHTML = '!';
			span.style.cursor = 'pointer';
			div.appendChild(span);
			menu.appendChild(div);
		}
	//}
	
	// パンくずリスト

	//if (/sugiyama\/[^\/]+\//.test(location.pathname)) {
	//	var site_main = document.getElementById('site_main');
	//	if (site_main) {
	//		var path_menu = [],
	//			path = location.href.replace(/(\/\/[^\/]+\/).*/, '$1'),
	//			paths = location.pathname.split('/');
	//		if (/(index\.html|\/)$/.test(location.pathname)) {
	//			paths = paths.slice(1, paths.length-2);
	//		} else {
	//			paths = paths.slice(1, paths.length-1);
	//		}
	//   
	//		for (var i in paths) {
	//			path += paths[i] + '/';
	//			path_menu.push('<a href="' + path + '">' + paths[i] + '</a> / ' );
	//		} 
	//		var span = document.createElement('span');
	//		span.innerHTML = path_menu.join('');
	//		site_main.insertBefore(span, site_main.firstChild);	
	//	}
	//}


	function tab_a(ckTabName) {
		var a = document.createElement('a');
		a.innerHTML = ckTabName;
		a.style.cursor = 'pointer';
		a.onclick = function () {
//alert(1);
			var site_main = document.getElementById('site_main');
			if (!site_main) {
				// tDiaryページ用処理
				var site_wrapper = document.getElementById('site_wrapper');
				site_wrapper.innerHTML = '';
				var site_main = document.createElement('div');
				site_main.id = 'site_main';
				site_wrapper.appendChild(site_main);
				// tDiaryのフッターを消す
				var divs = document.getElementsByTagName('div');
				for (var i = 0; i < divs.length; i++) {
					if (divs[i].className == 'footer') {
						divs[i].innerHTML = '';
						break;
					}
				}
			}
			// ページ
			var contents = '<p>今日の運勢: ' + omikuji() + '</p>';
			contents += '<p>コンテンツ追加機能は準備中</p>';
			site_main.innerHTML = contents;
			var a = document.createElement('a');
			a.innerHTML = ' タブを削除';
			a.href = location.href;
			a.onclick = function () {
				setCookie('tabName', '', 0);
			}
			site_main.appendChild(a);

			// タブを選択状態にする
			var ptabli = document.getElementById('ptabli');
			//var ptabli = this.parentNode;
			ptabli.innerHTML = '';
			var strong = document.createElement('strong');
			var span = document.createElement('span');
			span.innerHTML = ckTabName;
			span.title = 'クリックして名前を変更できます';
			span.style.cursor = 'pointer';
			span.style.width = '100%';
			span.style.height = '1em';
			span.style.display = 'block';
			span.onclick = changeTabName;
			strong.appendChild(span);
			ptabli.appendChild(strong);

			// 選択していたタブを非選択にする
			var strong_tab = document.getElementById('site_menu_list').getElementsByTagName('strong')[0];
			if (strong_tab && strong_tab.parentNode.id != 'ptabli') {
				var tabname = strong_tab.innerHTML;
				var st_li = strong_tab.parentNode;
				st_li.innerHTML = '';
				var a = document.createElement('a');
				a.innerHTML = tabname;
				a.href = location.href; // リンク先を現在のページに設定
				st_li.appendChild(a);
			}
		}
		return a;
	}

	function omikuji () {
		var unsei = '';
		var ua = navigator.userAgent;
		var dd = new Date();
		var y = dd.getYear();
		var m = dd.getMonth();
		var d = dd.getDate();
		var x = y + m + d + screen.height + screen.width;
		for (var i = 0; i < d; i++) {
			x += ua.charCodeAt(i%ua.length)%d;
		}
		x %= 16;
		if (0 <= x && x < 4) {
			unsei = '大吉';
		} else if (4 <= x && x < 12) {
			unsei = '吉';
		} else {
			unsei = '凶';
		}
		return unsei;
	}


	function changeTabName() {
		var before = this;
		var ptabli = this.parentNode;
		var beforeTabName = this.innerHTML;
		var input = document.createElement('input');
		input.type = 'text';
		input.value = (beforeTabName == 'タブを追加') ? '' : beforeTabName;
		input.onblur = function () {
			var tab_name = this.value;
			if (tab_name && tab_name != beforeTabName) {
				// 名前変更
				setCookie('tabName', tab_name, 365*2);
				var a = tab_a(tab_name);
				ptabli.innerHTML = '';
				ptabli.appendChild(a);
				a.onclick();
			} else {
				// キャンセル
				ptabli.removeChild(this);
				ptabli.appendChild(before);
			}
		}
		input.onkeydown = function (e) {
			if (!e) var e = window.event;
			//alert(e.keyCode);
			if (e.keyCode == 13 || e.keyCode == 9) {
				// Enter or Tab
				this.onblur();
			}
		}
		input.style.margin = '0px 0 -1px 0';
		input.style.width = '60px';
		input.style.height = '20px';
		input.style.fontSize = '15px';
		ptabli.removeChild(this);
		ptabli.appendChild(input);
		input.focus();
		input.select();
	}

	if (location.href=="http://irons.jp/" && !(ua.is_opera && ua.version >= 9.52)) {
		var div = document.createElement('div');
		div.innerHTML = '<a href="http://jp.opera.com/">Opera</a> おすすめ';
		document.body.appendChild(div);
	}
});

