if (is_shorten_url_page != undefined &&  is_shorten_url_page) {
	sns_link_observer = new SNSLinkObserver();
}

function ShortenUrl(url){
	var shorten_base = "http://nhk.jp/gatten/?";
	var match = url.match(/([A-Z])20(\d*)\.html#?(\d*)/);
	if(match){
		var str = match[1] + match[2];
		if(match[3] && match[3].length > 0){
			str += match[3];
		}
		else{
			str += "0";
		}
		return shorten_base + str;
	}
	return undefined;
}


function RenewMetaShorturl(url){
	var meta_tags = document.getElementsByTagName("meta");//.namedItem("shorturl");
	var meta_shorturl;
　  var info = document.getElementById('shorten_url_text');
　  info.setAttribute("value", url);
	for(var i = meta_tags.length-1; i >= 0; --i){
		if(meta_tags[i].getAttribute("name") == "shorturl"){
			meta_tags[i].setAttribute("content", url);
			return;
		}
	}
}

var now_id = 0;

function OpenGattenPoint(open_id,init){
	if(init && window.location.hash.length > 1){
		var open_id = parseInt(window.location.hash.substr(1));
	}
	var shortened_url = ShortenUrl(window.location.pathname + "#" + open_id);
	now_id = open_id;
	RenewMetaShorturl(shortened_url);
	sns_link_observer.notice(shortened_url);
	showSNSAll();
	for(var i=0; i<=20; i++){
		if(document.getElementById("gatten_p" + i)){
			if(open_id == i){
				document.getElementById("gatten_p" + i).style.display = "block";
				document.getElementById("gatten_p_li" + i).parentNode.className = "program_menu_left active";
			}else{
				document.getElementById("gatten_p" + i).style.display = "none";
				document.getElementById("gatten_p_li" + i).parentNode.className = "program_menu_left";
			}
		}
	}

	return false;
}

function OpenNowGattenPoint() {
	OpenGattenPoint(now_id, false);
}

function backToTop() {
	  var x1 = x2 = x3 = 0;
	  var y1 = y2 = y3 = 0;
	  if (document.documentElement) {
	      x1 = document.documentElement.scrollLeft || 0;
	      y1 = document.documentElement.scrollTop || 0;
	  }
	  if (document.body) {
	      x2 = document.body.scrollLeft || 0;
	      y2 = document.body.scrollTop || 0;
	  }
	  x3 = window.scrollX || 0;
	  y3 = window.scrollY || 0;
	  var x = Math.max(x1, Math.max(x2, x3));
	  var y = Math.max(y1, Math.max(y2, y3));
	  window.scrollTo(Math.floor(x / 2), Math.floor(y / 2));
	  if (x > 0 || y > 0) {
	      window.setTimeout("backToTop()", 25);
	  }
}

function ScrollToPoint(scr_x,scr_y){
	if(scr_x == null){
		var scr_x = 0;
	}
	if(scr_y == null){
		var scr_y = 0;
	}

	var x1 = x2 = x3 = 0;
	var y1 = y2 = y3 = 0;
	if (document.documentElement) {
alert("x1="+document.documentElement.scrollLeft+",y1="+document.documentElement.scrollTop);
		x1 = document.documentElement.scrollLeft || 0;
		y1 = document.documentElement.scrollTop || 0;
alert("x1="+x1+",y1="+y1);
	}
	if (document.body) {
alert("x2="+document.body.scrollLeft+",y2="+document.body.scrollTop);
		x2 = document.body.scrollLeft || 0;
		y2 = document.body.scrollTop || 0;
alert("x2="+x2+",y2="+y1);
	}
	x3 = window.scrollX || 0;
	y3 = window.scrollY || 0;
	var x = Math.max(x1, Math.max(x2, x3));
	var y = Math.max(y1, Math.max(y2, y3));
	window.scrollTo(Math.floor(x / 2), Math.floor(y / 2));
	alert(x+">"+scr_x+", "+y+" > "+scr_y)
	if (x > scr_x || y > scr_y) {
		window.setTimeout("ScrollToPoint("+scr_x+","+scr_y+")", 25);
	}

}

