function ontouch(el, color)
{
	if (typeof color == 'undefined') {
		color = '#FFE7D7';
	}
	var off_color = el.style.background;
	el.onmouseover = function() {
		this.style.background = color;
	};
	el.onmouseout = function() {
		this.style.background = off_color;
	};
	el.onmouseover();
}
function openwin(url, width, height)
{
	var left = (window.screen.width - width) / 2;
	var top = 0;
	var option =
		'width='      + width  + ', ' +
		'height='     + height + ', ' +
		'left='       + left   + ', ' +
		'top='        + top    + ', ' +
		'menubar='    + 'no'   + ', ' +
		'toolbar='    + 'no'   + ', ' +
		'scrollbars=' + 'no'   + ', ' +
		'status='     + 'yes'  + ', ' +
		'resizable='  + 'yes';

	var jswin = window.open(url, 'jswin', option);

	window.onunload = function() {
		if (!jswin.closed) {
			jswin.close();
		}
		this.onunload = null;
	};
}
function paste(textarea, begin_str, close_str)
{
	if ('selection' in document) {
		textarea.focus();

		var range = document.selection.createRange();
		var str = begin_str + range.text + close_str;
		range.text = str;

		if (typeof document.documentMode == 'number' && document.documentMode == 8) {
			// IE8 createTextRange()の失敗対策
			return;
		}

		var t_range = textarea.createTextRange();
		t_range.moveToPoint(range.offsetLeft, range.offsetTop);
		// IEが改行を1文字と認識する対策
		var count = str.split('\n').length - 1;
		t_range.moveStart('character', count - str.length);
		t_range.select();
	} else if ('selectionStart' in textarea) {
		var scrl_y = textarea.scrollTop;
		var input = textarea.value;
		var s_pos = textarea.selectionStart;
		var e_pos = textarea.selectionEnd;

		textarea.selectionStart += close_str.length;
		textarea.value =
			input.substr(0, s_pos) +
			begin_str +
			input.substr(s_pos, e_pos - s_pos) +
			close_str +
			input.substr(e_pos);

		e_pos += begin_str.length + close_str.length;
		textarea.setSelectionRange(s_pos, e_pos);
		textarea.scrollTop = scrl_y;
	} else {
		textarea.value += begin_str + close_str;
	}
	textarea.focus();
}
function pasteTag(id, tagname)
{
	var textarea = document.getElementById(id);
	var begin_tag = '<'  + tagname + '>';
	var close_tag = '</' + tagname + '>';
	paste(textarea, begin_tag, close_tag);
}
function focusFirstElement(form)
{
	var elems = form.elements;
	for (var i = 0, l = elems.length; i < l; ++i) {
		var el = elems[i];
		var name = el.tagName;
		if (name == 'INPUT' && el.value == '') {
			if (el.type == 'text' || el.type == 'password') {
				el.focus();
				return el;
			}
		} else if (name == 'SELECT' && el.value == '') {
			el.focus();
			return el;
		} else if (name == 'TEXTAREA') {
			el.focus();
			return el;
		}
	}
	return null;
}
function clearInput(id)
{
	var el = document.getElementById(id);
	el.value = '';
	el.focus();
}
function addFavorite(a)
{
	var url = location.href;
	var title = document.title;
	if ('opera' in window) {
		a.rel = 'sidebar';
		a.title = title;
	} else if ('all' in document) {
		window.external.AddFavorite(url, title);
		return false;
	} else if ('sidebar' in window) {
		window.sidebar.addPanel(title, url, '');
		return false;
	}
	return true;
}
function basename(path)
{
	return path.replace(/^.+[\\\/]/, '');
}
function mkpwd(min, max)
{
	if (typeof min == 'undefined') min = 8;
	if (typeof max == 'undefined') max = 18;
	var key = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_.+-*@/';
	var len = key.length;
	var pwd = '';
	var l = max - min + 1;
	l = max - Math.floor(Math.random() * l);
	for (var i = 0, r; i < l; ++i) {
		r = Math.floor(Math.random() * len);
		pwd += key.substr(r, 1);
	}
	return pwd;
}
function switchcss(title, loading)
{
	var manager = new CookieManager();
	manager.cookieShelfLife = 30;
	var list = document.getElementsByTagName('link');
	for(var i = 0, l = list.length; i < l; i++) {
		var css = list[i];
		var css_rel = css.getAttribute('rel');
		var css_title = css.getAttribute('title');
		if (css_rel != 'stylesheet') continue;
		if (css_title != title) continue;

		if (typeof loading == 'undefined') {
			var disabled = ((typeof css.disabled == 'undefined') || css.disabled == false);
			manager.setCookie('css', Number(disabled));
		} else {
			var disabled = manager.getCookie('css');
			disabled = Boolean(Number(disabled));
		}
		css.disabled = disabled;
	}
}
if (typeof CookieManager != 'undefined') {
	switchcss('text_hide', true);
}

