/**
 * Calendar Background Color
 */
function changeCalendarBG(date) {

	
	var a=pStartDate.substring(4,6);
	var b=parseInt(a);
	if(a==7)
	{
		var target = "c2date" + date;
	}
	else if(a==8)
	{
		var target = "c2date8" + date;
	}
	else if(a==9)
	{
		var target= "c2date9" + date;
	}
}

function getOnlyDateString(date) {
	var d = "";
	if (date.length == 8) {
		d = date.substr(6,2);
		if (d.substr(0,1) == "0")
			d = d.substr(1);
	}
	return d;
}

function toAPIDateString(pagedate) {
	var str = "";
	if (pagedate.length == 8) {
		str = pagedate.substr(0,4) + "-" + pagedate.substr(4,2) + "-" + pagedate.substr(6,2);
	}
	return str;
}

function toDateObject(pagedate) {
	var d = null;
	if (pagedate.length == 8) {
		var year = pagedate.substr(0,4);
		var month = pagedate.substr(4,2);
		if (month.substr(0,1) == "0")
			month = month.substr(1);
		var date = pagedate.substr(6,2);
		if (date.substr(0,1) == "0")
			date = date.substr(1);
		d = new Date(year, month - 1, date);
	}
	return d;
}

/**
 * 2007-10-10 -> 20071010
 */
function toDateString(pagedate) {
	var d = "";
	var year = pagedate.substr(0,4);
	var month = pagedate.substr(5,2);
	var date = pagedate.substr(8,2);
	d = d + year + month + date;
	return d;
}

/**
 * return array
 * [0] catch
 * [1] genre
 * [2] star
 * [3] descrioption
 * [4] copyright
 * [5] urls (array)
 * [6] texts (array)
 */
function parceDescription(desc) {
	if (desc != null && desc != "") {
		var lines = desc.split("\r\n");
		//console.log(lines.length);
		var catchname = "";
		var genre = "";
		var star = "";
		var description = "";
		var copyright = "";
		var urls = new Array();
		var texts = new Array();
		var blankurls = new Array();
		var descend = false;
		var multiline = false;
		for (var i=0; i<lines.length; i++) {
			var line = lines[i];
			if (i == 0) {
				catchname = line;
			}
			else if (i == 2) {
				genre = line.replace("ジャンル　", "");
				if (genre.indexOf(".") != -1) {
					star = genre.substr(genre.indexOf("."));
					genre = genre.substr(0, genre.indexOf("."));
				} else {
					star = "";
				}
			} else if (i >= 4) {
				if (line.indexOf("写真:") == 0) {
					multiline = false;
					copyright = line.replace("写真:", "");
					descend = true;
				}
				else if (line.indexOf("■") == 0) {
					multiline = false;
					line = line.replace("■", "");
					var urldata = line.split("　");
					urldata.push("");
					urls.push(urldata);
					descend = true;
				}
				else if (line.indexOf("□") == 0) {
					multiline = false;
					line = line.replace("□", "");
					var urldata = line.split("　");
					urldata.push("_blank");
					urls.push(urldata);
					descend = true;
				}
				else if (line.indexOf("▼") == 0) {
					line = line.replace("▼", "");
					texts.push(line);
					descend = true;
					multiline = true;
				}
				else if (line.indexOf("Powered by") == 0) {
					multiline = false;
					descend = true;
				}
				else {
					if (!descend) {
						description += urlToATag(line) + "\r\n";
					} else {
						if (multiline)
							texts.push(line);
					}
				}
			
			}
		}
		var res = new Array(catchname, genre, star, description, copyright, urls, texts, blankurls);
		return res;
	}
	return null;
}

function isTodayStart(today, startdate, allday) {
	var ttoday = today.getTime();
	var ttomorrow = ttoday + (24 * 3600 * 1000);
	var edate = parseEventDate(startdate, allday);
	if (edate != null) {
		var teventstart = edate.getTime();
		if (ttoday <= teventstart && teventstart < ttomorrow) {
			return true;
		}
	}
	return false;
}

function parseEventDate(s, allday) {
	if (!s)
		return null;
	var format;
	if (allday)
		format = "(\\d{1,4})-(\\d{1,2})-(\\d{1,2})";
	else
		format = "(\\d{1,4})-(\\d{1,2})-(\\d{1,2}) (\\d{1,2}):(\\d{1,2}):(\\d{1,2})";
	var reg = new RegExp(format);
	var r = reg.exec(s);
	if (!r)
		return null;
	if (allday) {
		return new Date(parseInt(r[1], 10),
						parseInt(r[2], 10) - 1,
						parseInt(r[3], 10),
						0, 0, 0, 0);
	}
	else {
		return new Date(parseInt(r[1], 10),
						parseInt(r[2], 10) - 1,
						parseInt(r[3], 10),
						parseInt(r[4], 10),
						parseInt(r[5], 10),
						parseInt(r[6], 10),
						0);
	}
}

function getDayString(date) {
	var day = null;
	if (date.length == 8) {
		var day = date.substr(6,2);
		if (day.substr(0,1) == "0")
			day = day.substr(1);
	}
	return day;
}

function urlToATag(text) {
	if (text != null && text != "")
		return changeURL(text);
	return text;
}
function changeURL(text) {
	var data = text;
	var urls = new Array();
	var url = /(\w+):\/\/([-_a-zA-Z0-9\.:\/=\?&%@!#$~\*\+;,\(\)\[\]']*)/;
	var result = data.match(url);
	var i=0;
	while (result != null) {
		if (result != null) {
		var fullurl = result[0];
		}
		var dd = new Date();
		var urlstr = "[URL" + dd.getTime() + "]";
		data = data.replace(url, urlstr);
		urls.push([urlstr,fullurl]);
		result = data.match(url);
		i++;
		if (i>10) {
			break;
		}
	}
	for (var i=0; i<urls.length; i++) {
		var urldata = urls[i];
		var urlstr = urldata[0];
		var fullurl = urldata[1];
		var fullurlstr = fullurl;
		if (fullurl.length > 50)
			fullurlstr = fullurl.substr(0, 50) + " ...";
		var fullurltext = '<a href="' + fullurl + '">' + fullurlstr + '</a>';
		data = data.replace(urlstr, fullurltext);
	}
	return data;
}

//added
var UA = navigator.userAgent.toLowerCase();
var B = {
//	version: (UA.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1],
//	safari: /webkit/.test(UA),
//	opera: /opera/.test(UA),
	msie: /msie/.test(UA) && !/opera/.test(UA),
	mozilla: /mozilla/.test(UA) && !/(compatible|webkit)/.test(UA)
};

var DAY = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"];
var DAY2 = ["日", "月", "火", "水", "木", "金", "土"];
var POPUP = "width=750,height=500,status=yes,toolbar=yes,menubar=yes,location=yes,scrollbars=yes,resizable=yes";
var firsts = {7:new Date(2008, 6, 1), 8:new Date(2008, 7, 1), 9:new Date(2008, 8, 1)};
var lasts = {7:new Date(2008, 6, 31), 8:new Date(2008, 7, 31), 9:new Date(2008, 8, 30)};
var now = new Date(), ny = now.getFullYear(), nm = now.getMonth() + 1, nd = now.getDate(), nday = now.getDay(),
	nn = 10000 * ny + 100 * nm + nd, diff = nd - (nday ? nday : 7) + 1, begin = new Date(ny, nm - 1, diff);
now = new Date(ny, nm - 1, nd);

function getURL() {
	return sAPIUrl + "?type=jsonp&page=endless&un=" + sUserName + "&etype=owner&kv=" + sKey;
}

function jsonp(url) {
	var script = document.createElement("script");
	script.setAttribute("type", "text/javascript");
	script.setAttribute("src", url);
	script.setAttribute("charset", "utf-8");
	document.getElementsByTagName("head").item(0).appendChild(script);
}

var descReg = new RegExp('^ジャンル[　 ]+.+?(\\.*)\\r*$', "m");

var priorSort = function(d1, d2) {
	if (d1.monthpriority > d2.monthpriority) return -1;
	else if (d1.monthpriority < d2.monthpriority) return 1;
	else return 0;
};

function adjust_summary(s, max) {
	if (!s || !s.length || !(max > 0)) return '';
	for(var i = 0, len = 0; i < s.length; i++) {
		if (len > max) return s.slice(0, i - 1) + "...";
		if (s.charCodeAt(i) < 256) len++;
		else len += 2;
	}
	return s;
}

function parseURL(symbol) {
	var s = location.href, sb = symbol ? symbol : '?';
	s = s.substr(s.indexOf(sb) + 1);
	if (!s) return;
	var ps = s.split('&'), ret = {};
	for (var i = 0, l = ps.length; i < l; ++i) {
		var j = ps[i].　indexOf('=');
		if (j > 0) ret[ps[i].substr(0, j)] = ps[i].substr(j + 1);
	}
	return ret;
}

function getDays(year, month) {
	return new Date(year, month, 0).getDate();
}

var mNames = {7:"july", 8:"august", 9:"september"};
function enable(month) {
	var m = document.getElementById('m' + month);
	if (!m) return;
	m.src = "images/" + mNames[month] + "_2.gif";
	swapImage(m, "images/" + mNames[month] + "_1.gif");
	m.style.cursor = "pointer";
	m.onclick = function(event) { swapImage(this, "images/" + mNames[month] + "_1.gif"); showCal(month); }
}

function disable(month) {
	var m = document.getElementById('m' + month);
	if (!m) return;
	m.src = "images/" + mNames[month] + "_3.gif";
	m.style.cursor = '';
	m.onclick = null;
}

var info = "検索語句が短すぎます";
function search() {
	var s = location.href, w = document.getElementById("words").value;
	if (w.length < 2) alert(info);
	//else window.open( "search.html?words=" + encodeURI(w));
	else location = "search.html?words=" + encodeURI(w);
}
function keydown(event) {
	var e = event || window.event;
	if (e.keyCode == 13) search();
}