﻿//subject data
var subject = {
"station" : { title : "周辺の駅", comment : "", buttonImg : "img/btn_station.png", buttonWidth : 58, buttonHeight : 55, distance : 3000, src : "/map/json/around.aspx?mode=station&distance=3000&max=10", img : "img/ico_station.gif", overimg : "img/ico_station_ov.gif" },
"ic" : { title : "周辺のインターチェンジ", comment : "", buttonImg : "img/btn_ic.png", buttonWidth : 58, buttonHeight : 55, distance : 10000, dataCount : 42000, src : "/map/json/around.aspx?mode=ic&distance=10000&max=10", img : "img/ico_ic.gif", overimg : "img/ico_ic_ov.gif" },
"coffee" : { title : "周辺のカフェ", comment : "", buttonImg : "img/btn_cafe.png", buttonWidth : 58, buttonHeight : 55, distance : 3000, dataCount : 5000, src : "/map/json/around.aspx?mode=coffee&distance=3000&max=10", img : "img/ico_cafe.gif", overimg : "img/ico_cafe_ov.gif" },
"food" : { title : "周辺のファミレス/ファーストフード", comment : "", buttonImg : "img/btn_fastfood.png", buttonWidth : 58, buttonHeight : 55, distance : 3000, dataCount : 5000, src : "/map/json/around.aspx?mode=food&distance=3000&max=10", img : "img/ico_fastfood.gif", overimg : "img/ico_fastfood_ov.gif" },
"restaurant" : { title : "周辺のレストラン", comment : "", buttonImg : "img/btn_restaurant.png", buttonWidth : 58, buttonHeight : 55, distance : 3000, dataCount : 44000, src : "/map/json/around.aspx?mode=restaurant&distance=3000&max=10", img : "img/ico_restaurant.gif", overimg : "img/ico_restaurant_ov.gif" },
"convenience" : { title : "周辺のコンビニ", comment : "", buttonImg : "img/btn_conveni.png", buttonWidth : 58, buttonHeight : 55, distance : 3000, dataCount : 42000, src : "/map/json/around.aspx?mode=convenience&distance=3000&max=10", img : "img/ico_conveni.gif", overimg : "img/ico_conveni_ov.gif" },
"public": {title: "周辺の公共施設", comment: "", buttonImg: "img/btn_public.png", buttonWidth: 58, buttonHeight: 55, distance: 3000, dataCount: 19000, src: "/map/json/around.aspx?mode=public&distance=3000&max=10", img: "img/ico_public.gif", overimg: "img/ico_public_ov.gif"},
"hotel" : { title : "周辺のホテル", comment : "<img src='img/ico_bizhotel.gif' align='absmiddle' style='width: 13px; height: 13px;'><span style='font-size: 10px;'>:ホテル</span><br/><img src='img/ico_bizhotel_etc.gif' align='absmiddle' style='width: 13px; height: 13px;'><span style='font-size: 10px;'>:旅館・民宿など</span>", buttonImg : "img/btn_hotel.png", buttonWidth : 58, buttonHeight : 55, distance : 5000, dataCount : 12000, src : "/map/json/around.aspx?mode=hotel&distance=5000&max=20", img : "img/ico_bizhotel_etc.gif", overimg : "img/ico_bizhotel_etc.gif", hotelimg : "img/ico_bizhotel.gif", hoteloverimg : "img/ico_bizhotel.gif" },
"golf" : { title : "周辺のゴルフ場", comment : "<img src='img/ico_golfreserve.gif' align='absmiddle' style='width: 20px; height: 20px;'><span style='font-size: 10px; color: #ff0000;'>:予約可能ゴルフ場</span><br/><img src='img/ico_golf.gif' align='absmiddle' style='width: 20px; height: 20px;'><span style='font-size: 10px;'>:ゴルフ場</span>", buttonImg : "img/btn_golf.png", buttonWidth : 58, buttonHeight : 55, distance : 30000, dataCount : 2000, src : "/map/json/around.aspx?mode=golf&distance=30000&max=10", img : "img/ico_golf.gif", overimg : "img/ico_golf_ov.gif", reserveimg : "img/ico_golfreserve.gif", reserveoverimg : "img/ico_golfreserve_ov.gif" }
};
//"town" : { title : "周辺のタウン情報", comment : "", buttonImg : "img/btn_town.png", buttonWidth : 58, buttonHeight : 55, distance : 3000, dataCount : 42000, src : "/map/aroundbell.aspx", img : "img/ico_town.gif", overimg : "img/ico_town_ov.gif" }
//距離基準
var distanceLevel = {
	"100" : [25, 50, 100], "200" : [50, 100, 200], "300" : [100, 200, 300], "500" : [100, 200, 500], "1000" : [250, 500, 1000], "2000" : [500, 1000, 2000], "3000" : [1000, 2000, 3000], "5000" : [1000, 2000, 5000], "10000" : [2000, 5000, 10000], "20000" : [5000, 10000, 20000], "30000" : [10000, 20000, 30000]
};
var map_sizes = {"1":{w:530,h:370},"2":{w:780,h:620}}
var head_sizes = {"1":{w:750},"2":{w:1001}}
var howto_img = {"1":{src:"img/howto_hanni.gif",w:360},"2":{src:"img/howto_hannil.gif",w:630}}
var areaInfo_img = {"1":{src:"img/map_mallpe_small.gif",w:530},"2":{src:"img/map_mallpe_large.gif",w:780}}
var areaInfo_dsp = {"1":{dsp:"none"},"2":{dsp:""}}
var foot_wrapper_sizes = {"1":{w:800},"2":{w:1000}}
var foot_inside_sizes = {"1":{w:784},"2":{w:982}}
var foot_insideL_sizes = {"1":{w:610},"2":{w:780}}
var k1 = "NCZ_NVD";
var k2 = "NewCZ_NVDEn";
var w=530;
var h=370;
var subjectReserveAjax;
var footPointAjax;
var recomendAjax
var recomendData = {};
var map;
var currentSubject=null;
var cov;	// circle overlayVector
var distanceMarker=null;//distanceMarker
var subjectIcons={};
var keepIcons = {};
var fukidashiIcons = {};
var scaleMenu;//ScaleMenu
var hl=null;
var sI; 	//subjectIcon
var DU={};
var DJ=null;
var detailIconLayer;
var pW=[];
var lockOnLayer;
//印刷で追加
var Pn={};
var keepResizable;
var OG = null;
var overPanel;//WindowOverPanel
var searchResizable;
var detailIconOpend = false ;
var buttonLayer;//buttonLayer
var recomendflg = true //おすすめ検索可否
var townResizable;
var setblResizable;

var bannerScript = null;

var iconSrcE = "";
var iconSrcN = "";
var iconOfXE = 0;
var iconOfYE = 0;
var iconOfXN = 0;
var iconOfYN = 0;

var fukidashiLayer;
var fukidashiFlg = false;
var fukidashiNam = "";
var fukidashiXY = "";

var gooMapX = "";
var gooMapY = "";
var gooTimer = null;
var currentMapPref = "";

Event.observe(window, 'load', configureHTMLStyle, false);
Event.observe(window, 'load', init, false);

function init(){
	_expressParam();
	hideAjaxArea()
	// 地図インスタンス作成
	map = new Chizumaru.SingleMap("map", map_sizes[map_size].w, map_sizes[map_size].h, x, y, scl, {k1: k1, k2: k2,parameters: "d=PC&tab=" +tileTab, left: 1, centerMarkVisible:markVisible ,centerMarkColor:markColor, beforeAreaAction: _mapStart, areaEventAction:mapMoved, scaleMarkVisible:scalebar,scaleOperateVisible:slider ,scaleOperateMethod: "slider", url:"http://czmap.chizumaru.com/M", descriptionOptions: {backgroundColor: "#EBF4FD", borderColor: "#27AAF3", closeButton: true, closeButtonMode: "inside", closeButtonImg: "img/mapwin_close.gif", closeButtonWidth: 20, closeButtonHeight: 25, contentWidthLimit: 400}});
	// 同心円/距離表示準備
	initDistanceMarker();
	initIconMenu();
	//準備
	sI = map.createOverlayIcons( {clickAction : subjectIconClick, descriptionTemplate : "##description##", closeDescriptionAction : _clearLockOn});
	detailIconLayer = map.createOverlayIcons( {clickAction : oG, descriptionTemplate : "##description##", closeDescriptionAction : _clearLockOn});
    // キープレイヤ作成
    keepLayer = map.createOverlayIcons({clickAction: _keepIconClick, descriptionTemplate: "##description##", closeDescriptionAction: _clearLockOn});

    // LockOnアイコン作成
    lockOnLayer = map.createOverlay({parentName: "drag2", zIndex: 1000000});
    var _img = document.createElement("img");
    _img.src = "img/hikidashi_lockon.gif";
    var _style = _img.style;
    _style.width = "50px";
    _style.height = "48px";
    var _options = {leftOffset: -24, topOffset: -24, visible: false};
    lockOnLayer.append("lockOn", _img, _options);
    
//	lockOnLayer = map.createOverlay( {parentName : "drag2", zIndex : 1200});
	if(currentSubject){
	  menuSelect(currentSubject._subjectMode);
	}else{
	  changeRecomend();
	}
	mapPlotIcon();
	fukidashiLayer = map.createOverlayIcons( {clickAction : fukidashiIconClick, descriptionTemplate : "##description##", closeDescriptionAction : _clearLockOn});
//		Event.observe($("mailName"), "click", mailTo.bindAsEventListener(this));
//		Event.observe($("linkName"), "click", displayLink.bindAsEventListener(this));
	gooMapX = x;
	gooMapY = y;
	gooTimer = null;
	currentMapPref = bannerPref;
};
function mapPlotIcon(){
	if("" != paraMoyo){
		iconOfXN = -9;
		iconOfYN = -7;
		iconSrcN = "/czm/images/mappin_tri.gif";
		if("sta" == paraMoyo){
			iconOfXE = -7;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_train.gif";
		}
		else if("ic" == paraMoyo){
			iconOfXE = -10;
			iconOfYE = -10;
			iconSrcE = "/czm/images/mappin_car.gif";
		}
		else if("office" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_office.gif";
		}
		else if("depart" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_depart.gif";
		}
		else if("restaurant" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_food.gif";
		}
		else if("conveni" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_convini.gif";
		}
		else if("special" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_senmon.gif";
		}
		else if("playspot" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_yuugi.gif";
		}
		else if("event" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_event.gif";
		}
		else if("spring" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_onsen.gif";
		}
		else if("park" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_kouen.gif";
		}
		else if("camp" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_camp.gif";
		}
		else if("amusement" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_yuenti.gif";
		}
		else if("golfski" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_golf.gif";
		}
		else if("fishing" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_turi.gif";
		}
		else if("sport" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_sports.gif";
		}
		else if("culture" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_bunka.gif";
		}
		else if("stay" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_shukuhaku.gif";
		}
		else if("newopen" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_newopen.gif";
		}
		else if("public" == paraMoyo){
			iconOfXE = -12;
			iconOfYE = -12;
			iconSrcE = "/czm/images/mappin_koukyou.gif";
		}
		else{
			iconOfXE = -9;
			iconOfYE = -9;
			iconSrcE = "/czm/images/mappin_other.gif";
		}
	}
	else{
		iconSrcE = "/czm/images/mappin_red.gif";
		iconOfXE = 0;
		iconOfYE = -20;
		iconSrcN = "/czm/images/shim.gif";
		iconOfXN = 0;
		iconOfYN = 0;
	}

	if(("" != ex) && ("" != ey)){
		//ピンアイコン作成
		var pinLayer = map.createOverlay({parentName:"drag1", zIndex:1000001});
		var _pimg = document.createElement("img");
		_pimg.src = iconSrcE;
	    var _poptions = {x: ex, y: ey, leftOffset: iconOfXE, topOffset: iconOfYE, visible: true};
		pinLayer.append("pin", _pimg, _poptions);
	}

	if("" != paraMoyo){
		if(("" != paraNx) && ("" != paraNy)){
			//ピンアイコン作成
			var pinLayer = map.createOverlay({parentName:"drag1", zIndex:1000002});
			var _pimg = document.createElement("img");
			_pimg.src = iconSrcN;
		    var _poptions = {x: paraNx, y: paraNy, leftOffset: iconOfXN, topOffset: iconOfYN, visible: true};
			pinLayer.append("pin", _pimg, _poptions);
		}
	}
};
/**
 * パラメータ展開
**/
function _expressParam(){
	var _qry = location.search;
	if (0 < _qry.length) {
		_qry = _qry.replace("?", "");
		var _qryArray = _qry.split("&");
		for (var i = 0; i < _qryArray.length; i++) {
			var _param = _qryArray[i].split("=");
			if (2 <= _param.length) {
				switch(_param[0].toLowerCase()) {
					case "submode":
					currentSubject={};
					currentSubject._subjectMode = _param[1].toLowerCase();
					break;
				}
			}
		}
	}
}
/**
 * 周辺検索メニュー scale Menu
**/
function initIconMenu(){
	var menudiv = document.createElement("div");
//	menudiv.style.backgroundColor = "#888888";
//	Element.setOpacity(menudiv, 0.8);
	
	scaleMenu = new Chizumaru.ScaleMenu(menudiv, { menuDirection: "y", selectMode: "select", selectAction: menuSelect, releaseAction: menuRelease, position: "relative"});
	var _buttonAreaWidth = 0;
	var _buttonAreaHeight = 0;
	for (var _mode in subject) {
		var _title = "<div>" +subject[_mode].title + "</div>";
		if (subject[_mode].comment && 0 < subject[_mode].comment.length)
			_title += "<div style='margin-left: 1em; font-size: 12px; color: #990000;'>" + subject[_mode].comment + "</div>";
		scaleMenu.createMenu(_mode, subject[_mode].buttonImg, subject[_mode].buttonWidth, subject[_mode].buttonHeight, _title);
		_buttonAreaWidth = Math.max(_buttonAreaWidth, subject[_mode].buttonWidth / 2);
		_buttonAreaHeight += (subject[_mode].buttonHeight / 2);
	}
	//scaleMenu背景
	var _div = document.createElement("div");
	var _style = _div.style;
	Object.extend(_style,{position:"absolute",left:"0px",top:"0px",width:(_buttonAreaWidth + 3) + "px",
		height:(_buttonAreaHeight + 10) + "px",backgroundColor:"#888888"});
	Element.setOpacity(_div, 0.8);

	buttonLayer = map.createOverlay( {parentName : "static3"});
	buttonLayer.append("button", menudiv, {leftOffset : 2, topOffset : 8, zIndex : 1});
	buttonLayer.append("buttonBackGround", _div, {leftOffset : 2, topOffset : 3, zIndex : 0});
}
/**
 * ScaleMenuのアイコンクリック処理
 **/
function menuSelect(id,state) {
	recomendflg = false;
	if (recomendAjax && (recomendAjax.transport.readyState == 1 || recomendAjax.transport.readyState == 2 || recomendAjax.transport.readyState == 3)) {
		recomendAjax.transport.abort();
		recomendAjax = null;
	}
	if(sI)sI.closeDescription();

	if("town" == id){
		_openTownResizable();
	}
	else{
		setupSubject(id, getCenterLocation(), true);
	}
};
function menuRelease(id,state) {
	_menuRelease(id,state);
	changeRecomend();
};
function _menuRelease(id,state) {
	recomendflg = true;
	hideAjaxArea();
	_subjectIconClearAll();
	_hideDistanceMarker();
	currentSubject=null;
};

function setupSubject(_subjectMode, _location, move) {
	if (subjectReserveAjax && (subjectReserveAjax.transport.readyState == 1 || subjectReserveAjax.transport.readyState == 2 || subjectReserveAjax.transport.readyState == 3)) {
		subjectReserveAjax.transport.abort();
		subjectReserveAjax = null;
	}
	_menuRelease();
	recomendflg = false;
	currentSubject = {_subjectMode : _subjectMode, location : {	x : _location.x, y : _location.y}, distanceLevel : null};
	var _options = {
		method : "get",
		parameters : "x=" + _location.x + "&y=" + _location.y + "&t=" + new Date().getTime(),
		onSuccess : function (res) {
			var json = eval("(" + res.responseText + ")");
			_subjectExpress( json, _subjectMode, move);
			subjectReserveAjax = null;
			syncajaxbtmBtn();
		},
		onFailure : function () {}.bind(this)
	};
	subjectReserveAjax = new Ajax.Request(subject[_subjectMode].src, _options);
};
function _subjectIconClearAll() {
	if (!sI)return;
	for (var _id in subjectIcons)
		subjectIcons[_id] = null;
	if(!detailIconOpend)
	sI.closeDescription();
	sI.clearAll();
	subjectIcons = {};
};
/**
 * 周辺検索結果JSONを画面に表示
 * アイコン追加、詳細リスト表示、距離同心円表示
**/
function _subjectExpress(json, _subjectMode, move) {
	var _setUp = subject[_subjectMode];
	if (!json.title || 0 >= json.title.length)json.title = _setUp.title;
	if (!json.placeName)json.placeName = "";
	if (0 >= json.maxDistance)json.maxDistance = _setUp.distance;
	currentSubject.distanceLevel = getDistanceLevel(json.maxDistance);
	showDistanceMarker(json.location, currentSubject.distanceLevel);
	if (move)map.moveMapRadius(json.location.x, json.location.y, json.maxDistance,{offsetRate : 1.2});
	addIcon(json.items, _setUp);
	var _title = json.placeName;
	if(json.title && 3 < json.title.length)
		_title += json.title.substr(0,3) +"<br/>"+ json.title.substr(3,json.title.length-3);
	else _title += json.title;
	var _count = createDetailList(json.items, _setUp, currentSubject.distanceLevel, _title);
	showAjaxArea();
};
/**
 * 周辺検索結果　アイコン追加
**/
function addIcon(json, _setUp) {
	for (var _id in json) {
		//既に表示済みは無視
		if (!subjectIcons[_id]) {
			var _json = json[_id];
			_json.id = _id;
			if (!_json.img) {
				if ("undefined" != typeof _json.hotel && 1 == _json.hotel) {
					_json.img = _setUp.hotelimg;
				}
				else if ("undefined" != typeof _json.gdoid) {
					_json.img = _setUp.reserveimg;
				}
				else {
					_json.img = _setUp.img;
				}
			}
			if (!_json.overimg) {
				if ("undefined" != typeof _json.hotel && 1 == _json.hotel) {
					_json.overimg = _setUp.hoteloverimg;
				}
				else if ("undefined" != typeof _json.gdoid) {
					_json.overimg = _setUp.reserveoverimg;
				}
				else {
					_json.overimg = _setUp.overimg;
				}
			}
			subjectIcons[_id] = _json;
			if ("mrsd" == _json.id.split("-")[0].toLowerCase()) {
				_json.comment = _json.name;
				_json.name = _json.chain;
			};
			var _options = {
				normalSrc : _json.img, highlightSrc : _json.overimg, scaleLevel : null, name : _json.name, zIndex : 300, clickMove : false
			};
			sI.append(_id, _json.x, _json.y, _options);
		}
	}
};
/**
 * 周辺検索結果リスト作成
**/
function createDetailList(json, _setUp, distanceLevel, title) {
	var details = "";
	var outCnt = 0;
	
	for (var _id in json) {
		var detailData = json[_id];
		detailData.id = _id;
		if (detailData.distance)detailData.distanceStr = (1000 <= detailData.distance) ? (Math.round(detailData.distance / 100) / 10) + "km" : detailData.distance + "m";
		var styleClass = "";
		if (detailData.distance <= distanceLevel[0]) {
			styleClass = "first";
		}
		else if (detailData.distance <= distanceLevel[1]) {
			styleClass = "second";
		}
		else if (detailData.distance <= distanceLevel[2]) {
			styleClass = "third";
		}
		var detailsTemp = "<dl class='" + styleClass +"' onclick='subjectIconClick(\"##id##\");return false;' onmouseover='subjectIconOver(\"##id##\");' onmouseout='subjectIconOut(\"##id##\");'>";
		detailsTemp += "<dt><span>■</span><a href='#' style='COLOR: blue'>##name##</a></dt>";
		
		detailsTemp += "<dd style='font-weight:normal; font-size:11px;'>";
		if (-1 != _id.indexOf("MRSD-") ){
			detailsTemp += "##comment##&nbsp;&nbsp;";
		}
		detailsTemp += "##distanceStr##</dd>";
		if ("undefined" != typeof detailData.contentImg)
			detailsTemp += "<dd><img width='84' height='64' alt='Photo' src='http://photo.chizumaru.com/img/img/photo/##contentImg##' /></dd>";
		detailsTemp += "</dl>";
		var dp = {templateDefaultValue : {name : "", comment : "", distanceStr : ""}};
		details += ChizumaruUtil.contentTemplate(detailData, detailsTemp, "json", dp);
		outCnt++;
	}
	if (0 == outCnt) {
		var distance = _setUp.distance;
		distance = (1000 <= _setUp.distance) ? (Math.round(_setUp.distance / 100) / 10) + "km" : _setUp.distance + "m";
		details = "<div>";
		if ("undefined" != typeof _setUp.dataCount)
			details += "全検索対象データ（" + _setUp.dataCount + "件）から";
		details = distance + "範囲で隈なく検索しましたが、該当する結果はございませんでした。</div>";
		//Element.show("listing");
	}else{
		//Element.hide("listing");
	}
	$("ajaxarea").className="osusume3";
	$("ajaxarea").innerHTML="<div id=\"ajaxbtm\" class=\"clearfix\"><a id=\"ajaxbtmbtn\"class=\"btn clearfix\" href=\"#\" onclick=\"ajaxbtmBtnClicked();return false;\">&nbsp;</a><h3 id=\"count\"></h3><div class=\"winbox\" id=\"around\"></div></div>";
	$("count").innerHTML = title + "（" + outCnt + "件）";
	$("around").innerHTML = details;
	return outCnt;
};



function subjectIconOver(id) {
	if ("undefined" == typeof subjectIcons[id])return;
	sI.update(id, {state : "highlight", zIndex : 350});
};
function subjectIconOut(id) {
	if ("undefined" == typeof subjectIcons[id])return;
	sI.update(id, {state : "auto", zIndex : 300});
};
/**
 * 地図上のアイコンクリックアクション
**/
function subjectIconClick(id) {
//	if ("undefined" == typeof subjectIcons[id])return;
	var ce = id.split("-")[0].toLowerCase();
	switch (ce) {
		case "mpdeki" :
			if ("undefined" == typeof subjectIcons[id].rosen) {
				var _url = "http://" + domain +"/map/json/eki2rosen.aspx";
				var _options = {
					method : "get", parameters : "Id=" + id,
					onSuccess : function (res) {
						var ia = eval("(" + res.responseText + ")");
						subjectIcons[id].rosen = ("undefined" != ia.rosen) ? ia.rosen : null;
						setupDescription(subjectIcons[id], {});
						detailIconClick(id);
					}.bind(this),
					onFailure : function () {
						setupDescription(subjectIcons[id], {});
						detailIconClick(id);
					}.bind(this)
				};
				new Ajax.Request(_url, _options);
			}
			else {
				setupDescription(subjectIcons[id], {});
				detailIconClick(id);
			}
			break;
		default :
			setupDescription(subjectIcons[id], {});
			detailIconClick(id);
			break;
	}
};
function fukidashiIconClick(id){
    lockOnLayer.update("lockOn", {visible: true, x: fukidashiIcons[id].x, y: fukidashiIcons[id].y});
    currentLockOn = {id: id, x: fukidashiIcons[id].x, y: fukidashiIcons[id].y, name: fukidashiIcons[id].name};
}
function _openTownResizable(){
	buttonLayer.hide();

	if (!townResizable)townResizable = new Chizumaru.Resizable($("map"), {closeButtonAction : _closeTownResizable, titleOffset : [12, 10]});

	var _loc = map.getCenterLocation();
	var _iframe = document.createElement("iframe");
	var _url = "http://" + domain+"/map/aroundbell.aspx?x=" + _loc.x + "&y=" + _loc.y;
	_iframe.src = _url;//"loadingFrame.htm?url=" + encodeURIComponent(_url);
	townResizable.setContent(_iframe);
	townResizable.setTitleText("周辺情報を探す");
	if ("none" == townResizable.getDisplay()) {
		var _height = map_sizes[map_size].h - 45;
		if (495 < _height)_height = 495;
		townResizable.displayWindow(300, _height, {positionOffset : [0, 0]});
	}
	else {
		var hm = townResizable.getContentSize();
		townResizable.displayWindow(hm.width, hm.height);
	}
};
function _closeTownResizable(){
	buttonLayer.display();
	scaleMenu.releaseAll();
	if(currentSubject && currentSubject._subjectMode)recomendflg = true;
	if(townResizable){
		townResizable.closeWindow();
		fukidashiLayer.removeAll();
		fukidashiFlg = false;
		fukidashiNam = "";
		fukidashiXY = "";
	}
	recomendflg = true;
 	changeRecomend()
 };
function _clearLockOn() {
	lockOnLayer.update("lockOn", {visible : false});
	OG = null;
};
function _changeMapDesign(tileTab, tileLfg, subTileTab, subTileLfg) {
	var dc = "d=PC";
	if (tileTab)
		dc += "&tab=" + tileTab;
	if (tileLfg)
		dc += "&lfg=" + tileLfg;
	map.updateTile({parameters : dc});

	dc = "d=PC";
	if (subTileTab)
		dc += "&tab=" + subTileTab;
	if (subTileLfg)
		dc += "&lfg=" + subTileLfg;
	map.updateSubTile({parameters : dc});
};
/****/
function setupDescription(json, _styles) {
		_styles.normalSrc = json.img;
		_styles.highlightSrc = json.overimg;
		_styles.scaleLevel = null;
		if ("undefined" != json.clickMove)_styles.clickMove = json.clickMove;
		if (json.name) {
			_styles.name = json.name;
			var xD = createContentTemplate(json);
			_styles.description = ChizumaruUtil.contentTemplate(json, xD.template, "json", xD.templateOptions);
		}
		sI.append(json.id, json.x, json.y, _styles);
}

function OLD_createContentTemplate(json){
	var curent="";
	if(currentSubject && currentSubject._subjectMode ){
		curent=currentSubject._subjectMode;
	}
	switch(curent){
		case "convenience":
		case "coffee":
		case "restaurant":
		case "chicken":
		case "food":
			var xD="<div class='alt_body'><div class='alt_title'> ##name## </div>";
			xD+="<div class='alt_main'><p>##comment##</p><p>TEL：##phone## </p></div>";
			xD+="<div class='alt_menu'>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='moveMap(##x##,##y##,230);return false;'>拡大する</a > ";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'addKeep(\"##name##（##comment##）\",##x##,##y##);return false;' >キープに登録する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'printMapXYName(##x##,##y##,\"##name##\");return false;' >地図を印刷する</a></div></div>";
			var dp={templateDefaultValue:{name:"",phone:"",comment:""}};
			break;
		case "ic":
			var xD="<div class='alt_body'><div class='alt_title'>##name##</div>";
			xD+="<div class='alt_menu'>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'moveMap(##x##,##y##,300);return false;' >拡大する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a>";
			xD+="</div></div>";
			var dp={templateDefaultValue:{name:""}};
			break;
		case "hotel":
			var xD="<div class='alt_body'><div class='alt_title'>##name##</div>";
			xD+="<div class='alt_sub'>##comment##</div><div class='alt_main'>";
			if ("undefined" != typeof json.contentImg)
				xD += "<p><img src='http://photo.chizumaru.com/img/img/photo/##contentImg##' onclick='window.open(\"http://photo.chizumaru.com/img/img/photo/##contentImg##\", \"_blank\", \"width=300,height=300,location=no,menubar=no,scrollbars=no,status=no,titlebar=no,toolbar=no\");' style='height: 60px;'></p>";
			xD+="<p>TEL：##phone##</p><p> 料金：<br>##charge##</p><p class='alt_copy'>情報提供：（株）昭文社</p></div><div class='alt_menu'>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'moveMap(##x##,##y##,300);return false;' >拡大する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a>";
			if("undefined"!=typeof json.gdoid){
				xD+="<br>";
				xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = 'http://ad2.trafficgate.net/t/r/58/145/92129_92129/0/-/http://www.golfdigest.co.jp/gstart/reserve/calendar/plan_calendar_##gdoid##.asp'target = '_blank'>お得なコース予約(GDO)</a>";
				xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = 'http://ad2.trafficgate.net/t/r/58/145/92129_92129/0/-/http://www.golfdigest.co.jp/gstart/reserve/G020_comment.asp?gcid=##gdoid##'target = '_blank'>最新プレーコメント(GDO)</a>";
			}
            if("undefined" != typeof json.rakutenid)
				xD += "<br><img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='http://web.travel.rakuten.co.jp/portal/my/jyouhou_page.main?f_no=##rakutenid##&f_teikei=chizum' target='_blank' >宿泊予約する（楽天トラベル）</a>";
			xD+="</div></div>";
			var dp={templateDefaultValue:{name:"","class":"",phone:"",charge:"",term:"",time:"",holiday:"",comment:""}};
			break;
		case "golf":
			var xD="<div class='alt_body'>";
			xD+="<div class='alt_title'>##name##</div>";
			xD+="<div class='alt_sub'>##comment##</div>";
			xD+="<div class='alt_main'>";
			if ("undefined" != typeof json.contentImg) xD += "<p><img src='http://photo.chizumaru.com/img/img/photo/##contentImg##' onclick='window.open(\"http://photo.chizumaru.com/img/img/photo/##contentImg##\", \"_blank\", \"width=300,height=300,location=no,menubar=no,scrollbars=no,status=no,titlebar=no,toolbar=no\");' style='height: 60px;'></p>";
			xD+=" <p>TEL：##phone##</p>";
			xD+=" <p> 料金：<br>##charge##</p>";
			xD+=" <p class='alt_copy'>情報提供：（株）昭文社</p>";
			xD+="</div>";
			xD+="<div class='alt_menu'>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'moveMap(##x##,##y##,300);return false;' >拡大する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a>";
			if("undefined"!=typeof json.gdoid){
				xD+="<br>";
				xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = 'http://ad2.trafficgate.net/t/r/58/145/92129_92129/0/-/http://www.golfdigest.co.jp/gstart/reserve/calendar/plan_calendar_##gdoid##.asp'target = '_blank'>お得なコース予約(GDO)</a>";
				xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = 'http://ad2.trafficgate.net/t/r/58/145/92129_92129/0/-/http://www.golfdigest.co.jp/gstart/reserve/G020_comment.asp?gcid=##gdoid##'target = '_blank'>最新プレーコメント(GDO)</a>";
			}
            if("undefined" != typeof json.rakutenid)
				xD += "<br><img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='http://web.travel.rakuten.co.jp/portal/my/jyouhou_page.main?f_no=##rakutenid##&f_teikei=chizum' target='_blank' >宿泊予約する（楽天トラベル）</a>";

			xD+="</div></div>";
			var dp={templateDefaultValue:{name:"","class":"",phone:"",charge:"",term:"",time:"",holiday:"",comment:""}};
			break;
		case "station":
			var xD="<div class='alt_body'><div class='alt_title'>##name##";
			if(json.name.length-2!=json.name.indexOf("空港"))
			xD+="駅";
			xD+="</div > ";
			if("undefined"!=typeof json.rosen&&null!=json.rosen){
				xD+="<div class='alt_sub'>［乗り入れ路線］<br>";
				var st=json.rosen.length;
				for(var i=0;i<st;i++)
					xD+="<a href='#' onclick='openRosenStationList(\""+json.rosen[i].id+"\");return false;' title='路線名をクリックすると路線駅一覧と路線の全体地図を表示します'>"+json.rosen[i].name+"</a><br/>";
				xD+="</div> ";
			}
			xD+="<div class='alt_menu'>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'moveMap(##x##,##y##,230);return false;' > 拡大する </a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='addKeep(\"##name##";
			if(json.name.length-2!=json.name.indexOf("空港"))
				xD+="駅";
			xD+="\",##x##,##y##);return false;'>キープに登録する</a > ";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a > ";
			var dp={templateDefaultValue:{name:""}};
			break;
		case "public":
			var xD="<div class='alt_body'><div class='alt_title'> ##name## </div>";
			xD+="<div class='alt_main'><p>分類：##class##</p><p>TEL：##phone## </p></div>";
			xD+="<div class='alt_menu'>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='moveMap(##x##,##y##,230);return false;'>拡大する</a > ";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'addKeep(\"##name##（##comment##）\",##x##,##y##);return false;' >キープに登録する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'printMapXYName(##x##,##y##,\"##name##\");return false;' >地図を印刷する</a></div></div>";
			var dp={templateDefaultValue:{name:"",phone:"",comment:""}};
			break;
		default:
			var xD="<div class='alt_body'><div class='alt_title'>";
			if(json.url) xD+="<a href='##url##' target='_blank'>##name##</a>";
			else xD+="##name##";
			xD+="</div><div class='alt_menu'>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'moveMap(##x##,##y##,300);return false;' >拡大する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a>";
			xD+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a>";
			xD+="</div></div>";
			var dp={templateDefaultValue:{name:""}};
			break;
}
	if("undefined"!=typeof json.comment&&0<json.comment.length)json.tmpComment=(25<json.comment.length)?json.comment.slice(0,25)+"･･･":json.comment;
	return {template:xD,templateOptions:dp};
};

function createContentTemplate(json){
	var curent="";
	if(currentSubject && currentSubject._subjectMode ){
		curent=currentSubject._subjectMode;
	}
	switch(curent){
		case "convenience":
		case "coffee":
		case "restaurant":
		case "chicken":
		case "food":
			var xD = "<div id='s_mainPopup'>";
			xD += "<div id='headerPopup'>";
			xD += "<div class='s_headPopup'>" + subject[curent].title + "情報</div>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "<div class='popupAll'>";
			xD += "<p class='txtblue_pop'>##name##</p>";
			xD += "<p>##comment##</p>";
			xD += "<p>TEL：##phone##</p>";
			xD += "<table border='0' cellspacing='0' cellpadding='0'>";
			xD += "<tr>";
			xD += "<td width='11'><img src='images/list_1.gif' alt='' width='11' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick = 'moveMap(##x##,##y##,300);return false;'>拡大する</a></td>";
			xD += "<td width='7'><img src='images/list_2.gif' alt='' width='7' height='14' /></td>";
			xD += "<td align='center'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a></td>";
			xD += "<td width='15'><img src='images/list_3.gif' alt='' width='15' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a></td>";
			xD += "</tr>";
			xD += "</table>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "</div>";
			var dp={templateDefaultValue:{name:"",phone:"",comment:""}};
			break;
		case "ic":
			var xD = "<div id='s_mainPopup'>";
			xD += "<div id='headerPopup'>";
			xD += "<div class='s_headPopup'>" + subject[curent].title + "情報</div>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "<div class='popupAll'>";
			xD += "<p class='txtblue_pop'>##name##</p>";
			xD += "<table border='0' cellspacing='0' cellpadding='0'>";
			xD += "<tr>";
			xD += "<td width='11'><img src='images/list_1.gif' alt='' width='11' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick = 'moveMap(##x##,##y##,300);return false;'>拡大する</a></td>";
			xD += "<td width='7'><img src='images/list_2.gif' alt='' width='7' height='14' /></td>";
			xD += "<td align='center'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a></td>";
			xD += "<td width='15'><img src='images/list_3.gif' alt='' width='15' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a></td>";
			xD += "</tr>";
			xD += "</table>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "</div>";
			var dp={templateDefaultValue:{name:""}};
			break;
		case "hotel":
			var xD = "";
			
			xD += "<div id='mainPopup'>";
			xD += "<div id='headerPopup'>";
			xD += "<div class='headPopup'>宿泊施設の情報</div>";
			xD += "</div>";
			
			//<!-- /popupLeft -->
			xD += "<div class='popupLeft'>";
			xD += "<p class='txtblue_pop'>##name##</p>";
			xD += "<table width='130' border='0' cellspacing='0' cellpadding='0' class='address_tbl'>";
			xD += "<tr>";
			xD += "<td width='40' valign='top'>住所／</td><td width='90'>##address##</td>";
			xD += "</tr>";
			xD += "</table>";
			xD += "<p>TEL／##phone##</p>";
			if ("undefined" != typeof json.contentImg){
				xD += "<div class='img_box'><img src='http://photo.chizumaru.com/img/img/photo/##contentImg##' onclick='window.open(\"http://photo.chizumaru.com/img/img/photo/##contentImg##\", \"_blank\", \"width=300,height=300,location=no,menubar=no,scrollbars=no,status=no,titlebar=no,toolbar=no\");'></div>";
			}
			else{
				xD += "<div class='img_box'><img src='images/no_image.gif'></div>";
			}
			xD += "<div class='txt_pop1'>情報提供：(株)昭文社</div>";
			xD += "</div>";
			//<!-- /popupLeft -->

			//<!-- popupRight -->
			xD += "<div class='popupRight'>";
			if(("undefined" != typeof json.rurubuurl) || ("undefined" != typeof json.rakutenid) || ("undefined" != typeof json.tabiyellid) || ("undefined" != typeof json.travelurl)){
				var rakutenUrl = "";
				var rurubuUrl = "";
				var tabiyellUrl = "";
				xD += "<p class='txt_pop'>この宿のお得なプランや情報は、こちらのサイトから！</p>";
				xD += "<table width='265' border='0' cellpadding='0' cellspacing='0' class='banner'>";
				xD += "<tr>";
				//たびえ～る画像
				if("undefined" != typeof json.tabiyellid){
					tabiyellUrl = "http://travel.mapple.net/yado_" + json.tabiyellid + "/plan/";
	            	tabiyellUrl = "/main/hc.asp?e=CZMtoTABIYELL4&m=0&u=" + encodeURIComponent(tabiyellUrl);
					xD += "<td width='88'><a href=\"" + tabiyellUrl + "\" target=\"_blank\"><img src='images/banner_travel.gif' alt='' width='50' height='50' /></a></td>";
				}else if("undefined" != typeof json.travelurl){
					tabiyellUrl = json.travelurl;
	            	tabiyellUrl = "/main/hc.asp?e=CZMtoTABIYELL4&m=0&u=" + encodeURIComponent(tabiyellUrl);
					xD += "<td width='88'><a href=\"" + tabiyellUrl + "\" target=\"_blank\"><img src='images/banner_travel.gif' alt='' width='50' height='50' /></a></td>";
				}else{
					xD += "<td width='88'><img src='img/shim.gif' alt='' width='50' height='50' /></td>";
				}
				//楽天画像
	            if("undefined" != typeof json.rakutenid){
	            	rakutenUrl = "http://web.travel.rakuten.co.jp/portal/my/jyouhou_page.main?f_no=" + json.rakutenid + "&f_teikei=chizum";
	            	rakutenUrl = "/main/hc.asp?e=CZMtoRAKUTEN4&m=0&u=" + encodeURIComponent(rakutenUrl);
					xD += "<td width=\"88\"><a href=\"" + rakutenUrl + "\" target=\"_blank\"><img src='images/banner_rakuten.gif' alt='' width='50' height='50' /></a></td>";
				}
				else{
					xD += "<td width=\"88\"><img src='img/shim.gif' alt='' width='50' height='50' /></td>";
				}
				//るるぶ画像
				if("undefined" != typeof json.rurubuurl){
					rurubuUrl = "http://ck.jp.ap.valuecommerce.com/servlet/referral?sid=2427518&pid=876423688&vc_url=" + encodeURIComponent(json.rurubuurl);
					rurubuUrl = "/main/hc.asp?e=CZMtoRURUBU4&m=0&u=" + encodeURIComponent(rurubuUrl);
					xD += "<td width=\"88\"><a href=\"" + rurubuUrl + "\" target=\"_blank\"><img src='http://ad.jp.ap.valuecommerce.com/servlet/gifbanner?sid=2427518&pid=876423688' height='1' width='1' border='0'><img src='images/banner_rurubu.gif' alt='' width='50' height='50' /></a></td>";
				}
				else{
					xD += "<td width=\"88\"><img src='img/shim.gif' alt='' width='50' height='50' /></td>";
				}
				xD += "</tr>";
				xD += "<tr>";
				//たびえ～るGo
				if("undefined" != typeof json.tabiyellid){
					xD += "<td><a href=\"" + tabiyellUrl + "\" target=\"_blank\" onmouseout=\"MM_swapImgRestore()\" onmouseover=\"MM_swapImage('Image11','','images/btn_go_over.gif',1)\"><img src=\"images/btn_go.gif\" alt=\"\" name=\"Image11\" width=\"56\" height=\"12\" border=\"0\" id=\"Image11\" /></a></td>";
				}
				else if("undefined" != typeof json.travelurl){
					xD += "<td><a href=\"" + tabiyellUrl + "\" target=\"_blank\" onmouseout=\"MM_swapImgRestore()\" onmouseover=\"MM_swapImage('Image11','','images/btn_go_over.gif',1)\"><img src=\"images/btn_go.gif\" alt=\"\" name=\"Image11\" width=\"56\" height=\"12\" border=\"0\" id=\"Image11\" /></a></td>";
				}
				else{
					xD += "<td>&nbsp;</td>";
				}
				//楽天Go
	            if("undefined" != typeof json.rakutenid){
					xD += "<td><a href=\"" + rakutenUrl + "\" target=\"_blank\" onmouseout=\"MM_swapImgRestore()\" onmouseover=\"MM_swapImage('Image12','','images/btn_go_over.gif',1)\"><img src=\"images/btn_go.gif\" alt=\"\" name=\"Image12\" width=\"56\" height=\"12\" border=\"0\" id=\"Image12\" /></a></td>";
				}
				else{
					xD += "<td>&nbsp;</td>";
				}
				//るるぶGo
				if("undefined" != typeof json.rurubuurl){
					xD += "<td><a href=\"" + rurubuUrl + "\" target=\"_blank\" onmouseout=\"MM_swapImgRestore()\" onmouseover=\"MM_swapImage('Image13','','images/btn_go_over.gif',1)\"><img src=\"http://ad.jp.ap.valuecommerce.com/servlet/gifbanner?sid=2427518&pid=876423688\" height=\"1\" width=\"1\" border=\"0\"><img src=\"images/btn_go.gif\" alt=\"\" name=\"Image13\" width=\"56\" height=\"12\" border=\"0\" id=\"Image13\" /></a></td>";
				}
				else{
					xD += "<td>&nbsp;</td>";
				}
				xD += "</tr>";
				xD += "</table>";
			}
			xD += "<table border='0' cellspacing='0' cellpadding='2' class='border_blue'>";
			xD += "<tr>";
			xD += "<td width='50' align='right'><strong>料   金 :</strong></td>";
			xD += "<td width='80' class='txt-blue-right'>##chargeK0##</td>";
			xD += "<td class='txt-blue-right'>##chargeM0##</td>";
			xD += "</tr>";
			if ("undefined" != typeof json.chargeK1){
				xD += "<tr>";
				xD += "<td width='50' align='right'>&nbsp;</td>";
				xD += "<td width='80' class='txt-blue-right'>##chargeK1##</td>";
				xD += "<td class='txt-blue-right'>##chargeM1##</td>";
				xD += "</tr>";
			}
			if ("undefined" != typeof json.chargeK2){
				xD += "<tr>";
				xD += "<td width='50' align='right'>&nbsp;</td>";
				xD += "<td width='80' class='txt-blue-right'>##chargeK2##</td>";
				xD += "<td class='txt-blue-right'>##chargeM2##</td>";
				xD += "</tr>";
			}
			if ("undefined" != typeof json.parking){
				xD += "<tr>";
				xD += "<td width='50' align='right'><strong>駐車場 :</strong></td>";
				xD += "<td colspan='2'><strong>##parking##</strong></td>";
				xD += "</tr>";
			}
			xD += "</table>";
			xD += "<p class='txt-comment'>##comment##</p>";
			xD += "<table border='0' cellspacing='0' cellpadding='0'>";
			xD += "<tr>";
			xD += "<td width='11'><img src='images/list_1.gif' alt='' width='11' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick = 'moveMap(##x##,##y##,300);return false;'>拡大する</a></td>";
			xD += "<td width='7'><img src='images/list_2.gif' alt='' width='7' height='14' /></td>";
			xD += "<td align='center'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a></td>";
			xD += "<td width='15'><img src='images/list_3.gif' alt='' width='15' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a></td>";
			xD += "</tr>";
			xD += "</table>";
			xD += "</div>";
			//<!-- /popupRight -->

			xD += "</div>";
			var dp={templateDefaultValue:{name:"","class":"",phone:"",charge:"",term:"",time:"",holiday:"",comment:""}};

			break;
		case "golf":
			var xD = "<div id='mainPopup'>";
			xD += "<div id='headerPopup'>";
			xD += "<div class='headPopup'>ゴルフ場の情報</div>";
			xD += "</div>";
			//<!-- popupMid -->
			xD += "<div class='popupMid'>";
			xD += "<p class='txtblue_pop'>##name##</p>";
			xD += "<p>##comment##</p>";
			xD += "</div>";
			//<!-- /popupMid -->

			//<!-- popupLeft -->
			xD += "<div class='popupLeft'>";
			if ("undefined" != typeof json.contentImg){
				xD += "<div class='img_box'><img src='http://photo.chizumaru.com/img/img/photo/##contentImg##' onclick='window.open(\"http://photo.chizumaru.com/img/img/photo/##contentImg##\", \"_blank\", \"width=300,height=300,location=no,menubar=no,scrollbars=no,status=no,titlebar=no,toolbar=no\");'></div>";
			}
			else{
				xD += "<div class='img_box'><img src='images/no_image.gif'></div>";
			}
			xD += "<div class='txt_pop1'>情報提供：(株)昭文社</div>";
			xD += "</div>";
			//<!-- /popupLeft -->

			//<!-- popupRight -->
			xD += "<div class='popupRight'>";
			xD += "<p>TEL：##phone##</p>";
			xD += "<p>料金：##charge##</p>";
			if("undefined" != typeof json.gdoid){
				//xD += "<td><img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='http://ad2.trafficgate.net/t/r/58/145/92129_92129/0/-/http://www.golfdigest.co.jp/gstart/reserve/calendar/plan_calendar_##gdoid##.asp' target='_blank'>お得なコース予約(GDO)</a></td>";
				//xD += "<td><img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='http://ad2.trafficgate.net/t/r/58/145/92129_92129/0/-/http://www.golfdigest.co.jp/gstart/reserve/G020_comment.asp?gcid=##gdoid##' target='_blank'>最新プレーコメント(GDO)</a></td>";

				xD += "<table border='0' cellspacing='0' cellpadding='0'>";
				xD += "<tr>";
				xD += "<td width='120'><img src='images/banner_gdo.gif' alt='' width='120' height='60' /></td>";
				xD += "<td width='145'>";
				xD += "<div><a href=\"http://ad2.trafficgate.net/t/r/58/145/92129_92129/0/-/http://www.golfdigest.co.jp/gstart/reserve/calendar/plan_calendar_##gdoid##.asp\" target=\"_blank\" onmouseout=\"MM_swapImgRestore()\" onmouseover=\"MM_swapImage('Image6','','images/gdo_btn1_ov.gif',1)\"><img src=\"images/gdo_btn1.gif\" alt=\"お得なコース予約\" name=\"Image6\" width=\"121\" height=\"20\" border=\"0\" id=\"Image6\" /></a></div>";
				xD += "<div class=\"gdo_box\"><a href=\"http://ad2.trafficgate.net/t/r/58/145/92129_92129/0/-/http://www.golfdigest.co.jp/gstart/reserve/G020_comment.asp?gcid=##gdoid##\" target=\"_blank\" onmouseout=\"MM_swapImgRestore()\" onmouseover=\"MM_swapImage('Image7','','images/gdo_btn2_ov.gif',1)\"><img src=\"images/gdo_btn2.gif\" alt=\"最新プレーコメント\" name=\"Image7\" width=\"121\" height=\"20\" border=\"0\" id=\"Image7\" /></a></div>";
				xD += "</td>";
				xD += "</tr>";
				xD += "</table>";

			}
			xD += "<table border='0' cellspacing='0' cellpadding='0'>";
			xD += "<tr>";
			xD += "<td width='11'><img src='images/list_1.gif' alt='' width='11' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick = 'moveMap(##x##,##y##,300);return false;'>拡大する</a></td>";
			xD += "<td width='7'><img src='images/list_2.gif' alt='' width='7' height='14' /></td>";
			xD += "<td align='center'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a></td>";
			xD += "<td width='15'><img src='images/list_3.gif' alt='' width='15' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a></td>";
			xD += "</tr>";
			xD += "</table>";
			xD += "</div>";
			//<!-- /popupRight -->
			xD += "</div>";
			var dp={templateDefaultValue:{name:"","class":"",phone:"",charge:"",term:"",time:"",holiday:"",comment:""}};
			break;
		case "station":
			var xD = "<div id='s_mainPopup'>";
			xD += "<div id='headerPopup'>";
			xD += "<div class='s_headPopup'>" + subject[curent].title + "情報</div>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "<div class='popupAll'>";
			xD += "<p class='txtblue_pop'>##name##</p>";
			if("undefined"!=typeof json.rosen&&null!=json.rosen){
				xD += "<p>[乗り入れ路線]</p>";
				var st=json.rosen.length;
				for(var i=0;i<st;i++)
					xD+="<p><a href='#' onclick='openRosenStationList(\""+json.rosen[i].id+"\");return false;' title='路線名をクリックすると路線駅一覧と路線の全体地図を表示します'>"+json.rosen[i].name+"</a></p>";
			}
			xD += "<table border='0' cellspacing='0' cellpadding='0'>";
			xD += "<tr>";
			xD += "<td width='11'><img src='images/list_1.gif' alt='' width='11' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick = 'moveMap(##x##,##y##,300);return false;'>拡大する</a></td>";
			xD += "<td width='7'><img src='images/list_2.gif' alt='' width='7' height='14' /></td>";
			xD += "<td align='center'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a></td>";
			xD += "<td width='15'><img src='images/list_3.gif' alt='' width='15' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a></td>";
			xD += "</tr>";
			xD += "</table>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "</div>";
			var dp={templateDefaultValue:{name:""}};
			break;
		case "public":
			var xD = "<div id='s_mainPopup'>";
			xD += "<div id='headerPopup'>";
			xD += "<div class='s_headPopup'>" + subject[curent].title + "情報</div>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "<div class='popupAll'>";
			xD += "<p class='txtblue_pop'>##name##</p>";
			xD += "<p>分類：##class##</p><p>TEL：##phone##</p>";
			xD += "<table border='0' cellspacing='0' cellpadding='0'>";
			xD += "<tr>";
			xD += "<td width='11'><img src='images/list_1.gif' alt='' width='11' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick = 'moveMap(##x##,##y##,300);return false;'>拡大する</a></td>";
			xD += "<td width='7'><img src='images/list_2.gif' alt='' width='7' height='14' /></td>";
			xD += "<td align='center'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a></td>";
			xD += "<td width='15'><img src='images/list_3.gif' alt='' width='15' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a></td>";
			xD += "</tr>";
			xD += "</table>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "</div>";
			var dp={templateDefaultValue:{name:"",phone:"",comment:""}};
			break;
		default:
			var xD = "<div id='s_mainPopup'>";
			xD += "<div id='headerPopup'>";
			if("" != curent){
				xD += "<div class='s_headPopup'>" + subject[curent].title + "情報</div>";
			}
			else{
				xD += "<div class='s_headPopup'>情報</div>";
			}
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "<div class='popupAll'>";
			if(json.url) xD += "<p class='txtblue_pop'><a href='##url##' target='_blank'>##name##</a></p>";
			else xD += "<p class='txtblue_pop'>##name##</p>";
			xD += "<table border='0' cellspacing='0' cellpadding='0'>";
			xD += "<tr>";
			xD += "<td width='11'><img src='images/list_1.gif' alt='' width='11' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick = 'moveMap(##x##,##y##,300);return false;'>拡大する</a></td>";
			xD += "<td width='7'><img src='images/list_2.gif' alt='' width='7' height='14' /></td>";
			xD += "<td align='center'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a></td>";
			xD += "<td width='15'><img src='images/list_3.gif' alt='' width='15' height='11' /></td>";
			xD += "<td align='center'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a></td>";
			xD += "</tr>";
			xD += "</table>";
			xD += "</div>";
			//<!-- /popupAll -->
			xD += "</div>";
			var dp={templateDefaultValue:{name:""}};
			break;
	}
	if("undefined"!=typeof json.comment&&0<json.comment.length)json.tmpComment=(25<json.comment.length)?json.comment.slice(0,25)+"･･･":json.comment;
	return {template:xD,templateOptions:dp};
};

function oG(id) {
	if (!DU[id])return;
	lockOnLayer.update("lockOn", {visible : true, x : pW[DU[id]].x, y : pW[DU[id]].y});
	OG = {id : id, x : pW[DU[id]].x, y : pW[DU[id]].y, name : pW[DU[id]].name};
};

function detailIconClick(id) {
	sI.openDescription(id);
	detailIconOpend =true;
	oG(id);
};
function getScaleLevel() {
	if (!map)return null;
	return map.getScaleLevel();
};
function getCenterLocation() {
	if (!map)return null;
	return map.getCenterLocation();
};
// ***********************************************************************************************
// * キープレイヤ関連                                                                        *
// ***********************************************************************************************

// キープアイコンプロット
function keepIconPlot(json) {
    for (var _id in json) {
        var _json = json[_id];
        _json.id = _id;
        if (!_json.img) _json.img = "img/ico_keep.gif";
        if (!_json.overimg) _json.overimg = "img/ico_keep_ov.gif";
        keepIcons[_id] = _json;
        var _options = {normalSrc: _json.img, highlightSrc: _json.overimg, scaleLevel: null, name: _json.name};
        var _template = createKeepTemplate(_json);
        _options.description = ChizumaruUtil.contentTemplate(_json, _template.template, "json", _template.templateOptions);
        keepLayer.append(_id, _json.x, _json.y, _options);
    }
};
//キープのDescription Template
function createKeepTemplate(json){
	var _template="<div class='alt_body'><div class='alt_title'>##name##</div>";
				_template+="<div class='alt_main'><p>##comment##</p></div>";
	_template+="<div class='alt_menu'>";
	_template+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href = '#'onclick = 'moveMap(##x##,##y##,300);return false;' >拡大する</a>";
	_template+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='addKeep(\"##name##\",##x##,##y##);return false;'>キープに登録する</a>";
	_template+="<img src='img/alt_mark.gif' alt='' width='11' height='4' align='absmiddle'><a href='#' onclick='printMapXYName(##x##,##y##,\"##name##\");return false;'>地図を印刷する</a>";
	_template+="</div></div>";
	var _templateOptions = {templateDefaultValue: {name: "", comment: ""}};

	if("undefined"!=typeof json.comment&&0<json.comment.length)json.tmpComment=(25<json.comment.length)?json.comment.slice(0,25)+"･･･":json.comment;
	return {template:_template,templateOptions:_templateOptions};
}

// キープアイコンクリア
function keepIconClear(id) {
    keepIcons[id] = null;
    keepLayer.remove(id);
};

// キープアイコン一括クリア
function keepIconClearAll() {
    if (!keepLayer) return;
    for (var _id in keepIcons) {
        keepIcons[_id] = null;
        keepLayer.remove(_id);
    }
};

// キープアイコンクリック
function keepIconClick(id) {
    keepLayer.openDescription(id);
    _keepIconClick(id);
};
function _keepIconClick(id) {
    lockOnLayer.update("lockOn", {visible: true, x: keepIcons[id].x, y: keepIcons[id].y});
    currentLockOn = {id: id, x: keepIcons[id].x, y: keepIcons[id].y, name: keepIcons[id].name};
}

function addKeep(name, x, y) {
		recomendflg = false;
		if (true == qlogin) {
			//minimizeFeeling();
			if (!keepResizable)keepResizable = new Chizumaru.Resizable($("map"), {closeButtonAction : _closeKeepResizable, titleOffset : [12, 10]});
			var _iframe = document.createElement("iframe");
			var _url = "http://" + domain+"/map/keep_edit_save.aspx?edit=1&x=" + x + "&y=" + y + "&poname=" + encodeURIComponent(name);
			_iframe.src = _url;//"loadingFrame.htm?url=" + encodeURIComponent(_url);
			keepResizable.setContent(_iframe);
			keepResizable.setTitleText("キープ");
			if ("none" == keepResizable.getDisplay()) {
				var _height = map_sizes[map_size].h - 45;
				if (440 < _height)_height = 440;
				keepResizable.displayWindow(400, _height, {positionOffset : [0, 0]});
			}
			else {
				var hm = keepResizable.getContentSize();
				keepResizable.displayWindow(hm.width, hm.height);
			}
		}
		else {
			displayLoginMessage();return;
		}
};

function toKeeplist(name, x, y) {
	//カウント用shim.gif読み込み
    var _img = document.createElement("img");
    _img.src = "img/shim.gif?count=maptokeep";

		recomendflg = false;
		if (true == qlogin) {
			//minimizeFeeling();
			if (!keepResizable)keepResizable = new Chizumaru.Resizable($("map"), {closeButtonAction : _closeKeepResizable, titleOffset : [12, 10]});
			var _iframe = document.createElement("iframe");
			var _url = "http://" + domain+"/map/keep_list.aspx?edit=1&x=" + x + "&y=" + y + "&poname=" + encodeURIComponent(name);
			_iframe.src = _url;//"loadingFrame.htm?url=" + encodeURIComponent(_url);
			keepResizable.setContent(_iframe);
			keepResizable.setTitleText("キープ");
			if ("none" == keepResizable.getDisplay()) {
				var _height = map_sizes[map_size].h - 45;
				if (440 < _height)_height = 440;
				keepResizable.displayWindow(400, _height, {positionOffset : [0, 0]});
			}
			else {
				var hm = keepResizable.getContentSize();
				keepResizable.displayWindow(hm.width, hm.height);
			}
		}
		else {
			displayLoginMessage();return;
		}
};

// キープWindowクローズ
function closeKeepWindow(){
	if (keepResizable)keepResizable.closeWindow();
}
function _closeKeepResizable() {
	if(currentSubject && currentSubject._subjectMode)recomendflg = true;
	keepIconClearAll("keep");
};
function displayLoginMessage(){
	if(!overPanel)
		overPanel=new Chizumaru.WindowOverPanel({backgroundColor:"",windowBackgroundOpacity:0.3,
			scrollLink:false,afterCloseAction:VY});
	overPanel.removeContent();
	var _iframe=document.createElement("iframe");
	_iframe.style.width="470px";
	_iframe.style.height="320px";
	_iframe.style.borderWidth="0px";
	_iframe.frameBorder=0;
	_iframe.src="pleaselogin.htm";
	overPanel.setContent(_iframe);
	overPanel.setContentSize(450,300);
/*
	$("corporatePage_frame").style.display="none";
	$("norikaePage_frame").style.display="none";
	$("timeTablePage_frame").style.display="none";
*/
	overPanel.displayPanel({panelTopOffset:150});
};
function VY(){
/*
	$("corporatePage_frame").style.display="";
	$("norikaePage_frame").style.display="";
	$("timeTablePage_frame").style.display="";
*/
};
function moveMap(x, y, scaleLevel, options) {
	var _options = (options) ? options : {};
	var _scaleLevel = (scaleLevel) ? scaleLevel :map.getScaleLevel();
	map.moveMap(x, y, _scaleLevel, _options);
};
function _closeSearchResizable() {
}

function openRosenStationList(rosenID) {
	var url = "/czm/stalist-" + rosenID + ".htm";
	parent.location.href = url;
};

function moveMapMinMax(minX, minY, maxX, maxY) {
    // 戻り値 スケールレベル
    //   ※他の操作実行中などにより変更できなかった場合はnullが返る
    var _options = Object.extend({
        offsetRate: 1.2
    }, arguments[4] || {});
    
    if (searchResizable && "block" == searchResizable.getDisplay()) _options.leftSideOffset = 230;
    map.moveMapMinMax(minX, minY, maxX, maxY, _options);
};
function mapCleaning() {
	_changeMapDesign(Al.base, null, Al.sub, null);
	if (currentSubject) {
		kL.releaseAll();
		_subjectClose();
	}
};

//距離表示同心円 init
function initDistanceMarker(){
	//同心円準備
	cov = map.createOverlayVector();
	//距離表示
	distanceMarker = map.createOverlay( {parentName : "drag1"});
	distanceMarker.circleDistance = [];
	var fontcolor =["#FF0000","#FF9F41","#019DFF"];
	var color2=["#FF80FF","#FFFE83","#83E0FF"];
	for(var i = 0;i<fontcolor.length;i++){
		var _span = document.createElement("span");
		var _style = _span.style;
		Object.extend(_style,{whiteSpace :"nowrap",fontSize :"24px",fontFamily :"Times New Roman, Times",fontWeight :"bold",color :fontcolor[i]});
		distanceMarker.append("circleDistance" +i, _span, {leftOffset :-25, topOffset :-7, zIndex : 10, visible : false});
		distanceMarker.circleDistance[i] = _span;
		cov.setCircleStyle("circleDistance"+i, {strokeColor : "", strokeWidth : 0, fillColor : color2[i], opacity : 0.30});   
	}
}
//距離表示同心円 表示
function showDistanceMarker(location, len_ary) {
	cov.circle(location, len_ary[0], {styleId : "circleDistance0"});
	cov.circle(location, len_ary[1], {styleId : "circleDistance1"});
	cov.circle(location, len_ary[2], {styleId : "circleDistance2"});
	var _options = {x : location.x, y : ChizumaruUtil.getCoordFromDistance(location.x, location.y, 0, len_ary[0]/2).y,visible:true};
	distanceMarker.circleDistance[0].innerHTML=len_ary[0]+"m";
	distanceMarker.update("circleDistance0",_options);
	var _options={x:location.x,y:ChizumaruUtil.getCoordFromDistance(location.x,location.y,0,len_ary[0]+((len_ary[1]-len_ary[0])/2)).y, visible : true};
	distanceMarker.circleDistance[1].innerHTML = len_ary[1] + "m";
	distanceMarker.update("circleDistance1", _options);
	var _options = {x : location.x, y : ChizumaruUtil.getCoordFromDistance(location.x, location.y, 0, len_ary[1] + ((len_ary[2] - len_ary[1]) / 2)).y, visible : true};
	distanceMarker.circleDistance[2].innerHTML = len_ary[2] + "m";
	distanceMarker.update("circleDistance2", _options);
};
//距離表示同心円 非表示
function _hideDistanceMarker(){
	cov.removeAll();
	distanceMarker.update("circleDistance0", {visible : false});
	distanceMarker.update("circleDistance1", {visible : false});
	distanceMarker.update("circleDistance2", {visible : false});
}
//距離レベル取得
function getDistanceLevel(distance) {
	var gw;
	if (100 >= distance)gw = distanceLevel["100"];
	else if (200 >= distance)gw = distanceLevel["200"];
	else if (300 >= distance)gw = distanceLevel["300"];
	else if (500 >= distance)gw = distanceLevel["500"];
	else if (1000 >= distance)gw = distanceLevel["1000"];
	else if (2000 >= distance)gw = distanceLevel["2000"];
	else if (3000 >= distance)gw = distanceLevel["3000"];
	else if (5000 >= distance)gw = distanceLevel["5000"];
	else if (10000 >= distance)gw = distanceLevel["10000"];
	else if (20000 >= distance)gw = distanceLevel["20000"];
	else gw = distanceLevel["30000"];
	return gw;
};
//地図描画前の処理
function _mapStart(){
	//同心円を一旦削除
	if (currentSubject && currentSubject.distanceLevel && (document.implementation.hasFeature("org.w3c.dom.svg", null) || (window.opera && 9 <= window.opera.version()))) _hideDistanceMarker();
}
//地図移動後の処理
function mapMoved(mode){
	//同心円を描画
	if (currentSubject && currentSubject.distanceLevel && (document.implementation.hasFeature("org.w3c.dom.svg", null) || (window.opera && 9 <= window.opera.version()))) {
		_hideDistanceMarker();
		//半径の50倍以上に拡大したら、円を表示しない
		if (currentSubject.distanceLevel[currentSubject.distanceLevel.length - 1] / 50 < getScaleLevel()) showDistanceMarker(currentSubject.location, currentSubject.distanceLevel);
	}
	var prefCd = "";
	var jloc = map.getCenterLocation();
	//パンくず、住所、郵便番号変更
	if (footPointAjax && (footPointAjax.transport.readyState == 1 || footPointAjax.transport.readyState == 2 || footPointAjax.transport.readyState == 3)) {
		footPointAjax.transport.abort();
		footPointAjax = null;
	}
	var pars = 'x=' + jloc.x + '&y=' + jloc.y +'&scl=' +map.getScaleLevel() + '&coord=' + coord;
	var _url = "/map/json/footpoint.aspx";
	var _options = {
		method : "get",
		parameters :pars,
		onSuccess : function (res) {
			var restext = eval("(" + res.responseText + ")");
			$("footpoint_link").innerHTML = restext.footpoint_link;
			$("address").innerHTML = restext.address;
			$("weather_link").innerHTML = restext.weather_link;
			document.title = restext.nowadr;
			if("" != restext.nowadr) document.title += "の";
			document.title += "周辺地図";
			document.title += " - MAPPLE 地図 「ちず丸」";
			if("undefined" != typeof restext.code) prefCd = restext.code;
			currentMapPref = prefCd;
			//バナー表示
			bannerCount++;
			if(1 == (bannerCount % 3)) _getBanner(prefCd);
		}.bind(this),
		onFailure : function () {}.bind(this)
	};
	footPointAjax = new Ajax.Request(_url, _options);
	
	//おすすめ変更
	if (recomendAjax && (recomendAjax.transport.readyState == 1 || recomendAjax.transport.readyState == 2 || recomendAjax.transport.readyState == 3)) {
		recomendAjax.transport.abort();
		recomendAjax = null;
	}
	changeRecomend();
	var curGen="";
	if(currentSubject && currentSubject._subjectMode ){
		curGen=currentSubject._subjectMode;
	}
	if((gooMapX != jloc.x) || (gooMapY != jloc.y)){
		gooMapX = jloc.x;
		gooMapY = jloc.y;
		if(gooTimer){
			clearTimeout(gooTimer);
			gooTimer = null;
		}
		gooTimer = setTimeout(setGooArea, 3000);
		//$("gooarea").src = "/goo_areamatch/main.aspx?x=" + jloc.x + "&y=" + jloc.y + "&gen=" + curGen;
		//$("listing").src = "/goo_areamatch/main.aspx?x=" + jloc.x + "&y=" + jloc.y + "&gen=" + curGen + "&newbanner=on&oldbanner=off";
	}
}
function setGooArea(){
	if(gooTimer){
		var curGen="";
		if(currentSubject && currentSubject._subjectMode ){
			curGen=currentSubject._subjectMode;
		}
		$("gooarea").src = "/goo_areamatch/main.aspx?x=" + gooMapX + "&y=" + gooMapY + "&gen=" + curGen;
		$("listing").src = "/goo_areamatch/main.aspx?x=" + gooMapX + "&y=" + gooMapY + "&gen=" + curGen + "&newbanner=on&oldbanner=off";
		clearTimeout(gooTimer);
		gooTimer = null;
	}
}
//バナー取得
function _getBanner(prefCd) {
	if("" == prefCd) prefCd = "99";
	var banner = null;
	bannerScript = document.createElement("script");
	bannerScript.type    = "text/javascript";
	document.body.appendChild(bannerScript);
	var _time = new Date().getTime();
	//bannerScript.src = "http://ac.chizumaru.com/czmbanner/main.aspx?bmode=32&size=1&resmode=998&atagon=1&alton=0&confv1=" + prefCd + "&callback=_setBanner&t=" + _time;
	$("mapbanner").src = "http://ac.chizumaru.com/czmbanner/main.aspx?bmode=32&size=1&resmode=1&atagon=1&alton=0&dvuse=yes&dvbgcol=eaf0f4&dvwidth=728&dvheight=90&dvalign=center&confv1=" + prefCd + "&t=" + _time;
	$("textbanner").src = "./adjust.aspx?pref=" + prefCd + "&t=" + _time;
}
//バナー表示
function _setBanner(banner) {
    if (null != banner) {
        $("bannar").innerHTML = banner;
        if (bannerScript) document.body.removeChild(bannerScript);
        bannerScript = null;

        $("textbanner").src = "./adjust.aspx";

    }
};
//まちのちから
function toTownPow(){
	var jloc = map.getCenterLocation();
	location.href="/main/hc.asp?e=CZMtoMACHI3&m=0&u=http%3a%2f%2fmachi%2echizumaru%2ecom%2fmachi%2easpx%3fx%3d" + jloc.x + "%26y%3d" + jloc.y;
}
//ビジネスへリンク
function toBusiness(){
	var _location = map.getCenterLocation();
	location.href="/main/hc.asp?e=CZMtoBUSINESS3&m=0&u=%2fbusiness%2fmap%2f%3fx%3d" + _location.x + "%26y%3d" + _location.y;
}
//不動産へリンク
function toFudo(){
	var _location = map.getCenterLocation();
	location.href="/main/hc.asp?e=CZMtoFUDO3&m=0&u=%2fczmFudo%2fRoomList%2easpx%3fmode%3d1%26x%3d" + _location.x + "%26y%3d" + _location.y + "%26level%3d3";
}
//宿泊予約へリンク
function toHotel(){
	var _location = getCenterLocation();
	var strUriLink = "http%3a%2f%2fweb.travel.rakuten.co.jp%2fportal%2fmy%2ffun_yoyaku.re_kensaku" +
					 "%3ff_ido%3d" + _location.y +
					 "%26f_kdo%3d" + _location.x +
					 "%26f_teikei%3dchizum";
	var strUri = "/main/hc.asp?e=CZMtoRAKUTEN3&m=0&u=" + strUriLink;
	var win_tabimado = window.open(strUri, 'tabimado', 'menubar=yes,scrollbars=yes,resizable=yes,status=yes,toolbar=yes,width=800,height=600,left=10,top=0,screenX=10,screenY=0');
	win_tabimado.focus();
}
//おすすめ検索
function changeRecomend(){
	if (recomendAjax && (recomendAjax.transport.readyState == 1 || recomendAjax.transport.readyState == 2 || recomendAjax.transport.readyState == 3)) {
		recomendAjax.transport.abort();
		recomendAjax = null;
	}
	if(!recomendflg )return;
	if(map.getScaleLevel() > 1000){
		_menuRelease();
		sI.closeDescription();
		//Element.show("listing");
		return;
	}
//	var jloc = map.getCenterLocation();
//	var pars = 'x=' + jloc.x + '&y=' + jloc.y +'&scl=' +map.getScaleLevel();
	var minmax = map.getMinMaxLocation();
	var pars = "xmin=" + minmax.xmin + "&ymin=" + minmax.ymin + "&xmax=" + minmax.xmax + "&ymax=" + minmax.ymax;
	var _url = "/map/json/recomend.aspx";
	var _options = {
		method : "get",
		parameters :pars,
		onSuccess : function (res) {
		  _menuRelease();
		  if("osusume3" ==$("ajaxarea").className ) $("ajaxarea").className="osusume2";
		  if("osusume4" ==$("ajaxarea").className ) $("ajaxarea").className="osusume1";
		  $("ajaxarea").innerHTML="<div id=\"ajaxbtm\" class=\"clearfix\"><a id=\"ajaxbtmbtn\"class=\"btn clearfix\" href=\"#\" onclick=\"ajaxbtmBtnClicked();return false;\">&nbsp;</a><h3 id=\"count\"></h3><div class=\"winbox\" id=\"recomend\"></div></div>";
		  var details ="";
			recomendData = eval("(" + res.responseText + ")");
			var dat = null;
			var outCnt = 0;
			for(var _id in recomendData.data){
			  dat = recomendData.data[_id];
			  var _options = {
				  normalSrc : "/map/img/iconcolor/" + dat[2] + ".gif", scaleLevel : null, name : dat[3], zIndex : 300, clickMove : false
			  };
			  subjectIcons[_id]= {id : _id ,img : "/map/img/iconcolor/" + dat[2] + ".gif", overimg:"/map/img/iconcolor/" + dat[2] + ".gif", name : dat[3], url :dat[4], x:dat[9], y:dat[10],clickMove : false};
			  sI.append(_id, dat[9], dat[10], _options);
			  var detailsTemp = "<dl><dt><span>■</span><a target=\"_blank\" href=\"##url##\">##name##</a></dt>";
			  detailsTemp += "<dd>##kind##<br />TEL ##tel##<br />##opentime##</dd>";
			  detailsTemp += "</dl>";
			  detailData = {url : dat[4], kind: dat[5], name : dat[3], tel : dat[6], opentime : dat[7]};
			  var defaultval = {templateDefaultValue : {name : "", comment : "", distanceStr : ""}};
			  details += ChizumaruUtil.contentTemplate(detailData, detailsTemp, "json", defaultval);
			  outCnt++;
			}
			if(0 < outCnt){
			  //Element.hide("listing");
			  $("count").innerHTML =  recomendData.area_name + "周辺の<br/>おすすめ （" + outCnt + "件）";
			  $("recomend").innerHTML = details;
	  		  //Element.hide("recomend");
			  showAjaxArea();
			}else{
			//Element.show("listing");
			}
			syncajaxbtmBtn();
//			if(dat)map.zoomMap(1000,{effect:true});
		}.bind(this),
		onFailure : function () {}.bind(this)
	};
	recomendAjax = new Ajax.Request(_url, _options);
}

//おすすめ、周辺検索リスト非表示
function hideAjaxArea(){
	Element.hide("ajaxarea");
	Element.hide("ajaxarea_imghack");
}
//おすすめ、周辺検索リスト表示
function showAjaxArea(){
	Element.show("ajaxarea");
	Element.show("ajaxarea_imghack");
}
//おすすめ、周辺検索リスト表示・非表示ボタン
function ajaxbtmBtnClicked(){
	var classname =$("ajaxarea").className;
	if("osusume1" == classname){
		$("ajaxarea").className = "osusume2";
		Element.show("recomend");
		sI.display();
	}else if("osusume2" == classname){
		$("ajaxarea").className = "osusume1";
		Element.hide("recomend");
		sI.hide();
	}else if("osusume3" == classname){
		$("ajaxarea").className = "osusume4";
		Element.hide("around");
		sI.hide();
	}else if("osusume4" == classname){
		$("ajaxarea").className = "osusume3";
		Element.show("around");
		sI.display();
	}
}
function syncajaxbtmBtn(){
	var classname =$("ajaxarea").className;
	if("osusume1" == classname){
		Element.hide("recomend");
		sI.hide();
	}else if("osusume2" == classname){
		Element.show("recomend");
		sI.display();
	}else if("osusume3" == classname){
		Element.show("around");
		sI.display();
	}else if("osusume4" == classname){
		Element.hide("around");
		sI.hide();
	}
}

//印刷呼び出し
function printMap(pinX, pinY){
	//カウント用shim.gif読み込み
    var _img = document.createElement("img");
    _img.src = "img/shim.gif?count=maptoprint";

	var jloc = map.getCenterLocation();
	var strUri = "./print/" +
					"?x=" + jloc.x +
					"&y=" + jloc.y +
					"&scl=" + map.getScaleLevel() +
					"&qr=map";
    if(tileTab)
		strUri += "&tab=" + tileTab;

	if(("" != ex) && ("" != ey)){
		strUri += "&point=" + ex + "," + ey + ",40,40,img/mappin_red_center.gif";
		//strUri += "&point=" + ex + "," + ey + ",40,40,/map/img/mappin_new.gif";
	}
	var _pageText = "";
	var _count = 0;
	var _numbers = "";
    if (currentSubject && "weather" != currentSubject._subjectMode) {
        _pageText += "【" + subject[currentSubject._subjectMode].title + "】\n";
        for (var _id in subjectIcons) {
            if (-1 != subjectIcons[_id].img.indexOf("feeling")) continue;
            _pageText += ++_count + "." + subjectIcons[_id].name;
            var _type = _id.split("-")[0].toLowerCase();
            switch(_type) {
                case "ekitan":
                    if (subjectIcons[_id].name.length - 2 != subjectIcons[_id].name.indexOf("空港")) _pageText += "駅";
                    break;
                case "mpdeki":
                    _pageText += "駅";
                    break;
            }
            _pageText += "\n";
            if (0 < _numbers.length) _numbers += ",";
            _numbers += subjectIcons[_id].x + "," + subjectIcons[_id].y;
        }
    }
    //if (0 < _numbers.length) strUri += "&numbers=" + _numbers;
    //if (0 < _text.length) strUri += "&text=" + encodeURIComponent(_text);
    //if (0 < _pageText.length) strUri += "&pagetext=" + encodeURIComponent(_pageText);

	if((true == fukidashiFlg) && ("" != fukidashiNam) && ("" != fukidashiXY)){
		strUri += "&numbers=" + fukidashiXY + "&text=1." + fukidashiNam;
	}

    window.open(strUri, "print_out", "directories=no,location=no,menubar=yes,resizable=yes,scrollbars=yes,status=yes,toolbar=yes,titlebar=no,top=0,left=0");
}
function printMapXYName(numX, numY, name){
	fukidashiFlg = true;
	fukidashiNam = name;
	fukidashiXY = numX + "," + numY;
	printMap();
	fukidashiFlg = false;
	fukidashiNam = "";
	fukidashiXY = "";
}
//旧印刷イメージ
function printMapLight(){
	var jloc = map.getCenterLocation();
	var strUri = "/ch/P_pop.asp" +
					"?x=" + jloc.x +
					"&y=" + jloc.y +
					"&scl=" + map.getScaleLevel();
    if(tileTab)
		strUri += "&tab=" + tileTab;

	if(("" != ex) && ("" != ey)){
		strUri += "&ex=" + ex + "&ey=" + ey;
	}
    window.open(strUri, "print_out", "directories=no,location=no,menubar=yes,resizable=yes,scrollbars=yes,status=yes,toolbar=yes,titlebar=no,top=0,left=0");
}
//地図をメールする
function mailTo() {
	//カウント用shim.gif読み込み
    var _img = document.createElement("img");
    _img.src = "img/shim.gif?count=maptomail";

	var _location = getCenterLocation();
	var YM = toMapLinkScale(530, getScaleLevel());
	return location.href = "mailto:?subject=MAPPLE%20%92n%90%7d%81u%82%bf%82%b8%8a%db%81v&body=http://" + document.domain + "/maplink.asp%3fSER=all%26D=all%26X=" + _location.x + "%26Y=" + _location.y + "%26SCL=" + YM;
};
//NAVIをメールする
function naviTo() {
	//カウント用shim.gif読み込み
    var _img = document.createElement("img");
    _img.src = "img/shim.gif?count=maptonavi";

	var _location = getCenterLocation();
	var YM = toMapLinkScale(530, getScaleLevel());
	return location.href = "mailto:?subject=%83P%81%5b%83%5e%83C%82%c5%82%b1%82%b1%82%dc%82%c5%83i%83r&body=http://" + document.domain + "/navilink.asp%3fSER=all%26D=all%26X=" + _location.x + "%26Y=" + _location.y + "%26SCL=" + YM + "%0d%0a%81%a6%89%b9%90%ba%83i%83r%82%cd%91%ce%89%9e%92%5b%96%96%82%cc%82%dd%82%c6%82%c8%82%e8%82%dc%82%b7%81B";
};

function linkchizumaru(){
	//カウント用shim.gif読み込み
    var _img = document.createElement("img");
    _img.src = "img/shim.gif?count=maptolink";

	var _location = getCenterLocation();
	var strUri, win_linkchizumaru;
	strUri = "/menu/support/link.asp" +
				"?x=" + _location.x+
				"&y=" + _location.y +
				"&scl=" + toMapLinkScale(530, getScaleLevel());
	win_linkchizumaru = window.open(strUri, 'linkchizumaru', 'menubar=yes,scrollbars=yes,resizable=yes,status=yes,toolbar=yes,width=700,height=600,left=10,top=0,screenX=10,screenY=0');
	win_linkchizumaru.focus();
}

//新地図→MAPLINKへのパラメータ時の縮尺変換
function toMapLinkScale(mapW, scl){
	return parseInt(scl * mapW / 250);
}

//地図をリンクする
function displayLink(){
	if(!overPanel)overPanel=new Chizumaru.WindowOverPanel({backgroundColor:"",windowBackgroundOpacity:0.5,scrollLink:false,afterCloseAction:function(){}});
	overPanel.removeContent();
	var _iframe=document.createElement("iframe");
	_iframe.style.width="470px";
	_iframe.style.height="320px";
	_iframe.style.borderWidth="0px";
	_iframe.frameBorder=0;

    var _location = getCenterLocation();
    var _scaleLevel = getScaleLevel();
    var _src = "maplink.asp?x=" + _location.x + "&y=" + _location.y + "&scl=" + _scaleLevel;
    if (currentSubject) _src += "&submode=" + currentSubject._subjectMode + "&subx=" + currentSubject.location.x + "&suby=" + currentSubject.location.y;
    _iframe.src = _src;
	overPanel.setContent(_iframe);
	overPanel.setContentSize(450,220);
	overPanel.displayPanel({panelTopOffset:150});
};
//地図をリンクする（close）
function closePanel() {
    overPanel.closePanel();
};
//地図を選択する
function configDesign(){
	if(!overPanel)overPanel=new Chizumaru.WindowOverPanel({backgroundColor:"",windowBackgroundOpacity:0.5,scrollLink:false,afterCloseAction:function(){}});
	overPanel.removeContent();
	var _iframe=document.createElement("iframe");
	_iframe.style.width="460px";
	_iframe.style.height="322px";
	_iframe.style.borderWidth="0px";
	_iframe.frameBorder=0;

    var _location = getCenterLocation();
    var _scaleLevel = getScaleLevel();
    var _src = "mapdesign.aspx?x=" + _location.x + "&y=" + _location.y + "&scl=" + _scaleLevel + "&tab=" + tileTab + "&msz=" + map_size;
    if (currentSubject) _src += "&submode=" + currentSubject._subjectMode + "&subx=" + currentSubject.location.x + "&suby=" + currentSubject.location.y;
    _iframe.src = _src;
	overPanel.setContent(_iframe);
	overPanel.setContentSize(460,300);
	overPanel.displayPanel({panelTopOffset:250});
};
//らくがきメールする
function membersSsm(){
	//カウント用shim.gif読み込み
    var _img = document.createElement("img");
    _img.src = "img/shim.gif?count=maptossm";
	
	var loc = map.getCenterLocation();
	var strUri = "https://" + domain +
					"/ssm/ssm.aspx" +
					"?x=" + loc.x +
					"&y=" + loc.y +
					"&tab=" + tileTab +
					"&scl=" + map.getScaleLevel() +
					"&loop=new";
	//location.href = strUri;
	window.open(strUri, 'ssm_win', 'menubar=yes,scrollbars=yes,toolbar=yes,status=yes,resizable=yes,width=800,height=600,left=10,top=0,screenX=10,screenY=0');
}
function configureDesign(_tab, _size){
	closePanel();
	var loc = map.getCenterLocation();
	tileTab = _tab;
	map_size =_size;
//	{k1: k1, k2: k2, tileParameters: "d=PC&tab=" + mapDesign.base, subTileParameters: "d=PC&tab=" + mapDesign.sub, beforeAreaAction: _mapStart, areaEventAction: _mapAreaEvent, borderColor: "#c8c8ca", scaleOperateTopOffset: 15, descriptionMethod: "hikidashibox", descriptionOptions: {backgroundColor: "#EBF4FD", borderColor: "#6FA2E0", closeButton: true, closeButtonMode: "inside", closeButtonImg: "img/hikidashi_close.gif", closeButtonWidth: 18, closeButtonHeight: 18, contentWidthLimit: 400}});

}
//地図のリロード
function reLoad(_tab, _size, from){
	var loc = map.getCenterLocation();
	var _src = "http://" + domain +
					"/map/map.aspx" +
					"?x=" + loc.x +
					"&y=" + loc.y +
					"&tab=" + _tab +
					"&scl=" + map.getScaleLevel() +
					"&msz=" + _size;
    if (currentSubject) _src += "&submode=" + currentSubject._subjectMode + "&subx=" + currentSubject.location.x + "&suby=" + currentSubject.location.y;
	if (from) _src += "&from=" + from; 
	location.href = _src;
}
//******************************************
// 地図検索
//******************************************
var escapeflag = 0;
function convescape1(str) {
	if( CheckKeyword(str) ){
		if( navigator.userAgent.toLowerCase().indexOf('safari')!=-1 ){
			document.escapeform.action = "/czm/convescape.aspx";
			document.escapeform.t1.value = str;
			document.escapeform.submit();
			escapeflag = 1;
			convescape2();
		}
		else{
			var strUri = "/czm/search.aspx" +
							"?func=3" +
//							"&cat=" + paraCat +
							"&name=" + escape(str) ;
//							"&psz=" + CZM_cookSrpsz +
//							"&srscl=" + CZM_cookSrscl;
			//CZM_win_search_map = window.open(strUri, 'search', 'menubar=yes,scrollbars=yes,resizable=yes,width=700,height=600,left=10,top=0,screenX=10,screenY=0');
			CZM_win_search_near = null;
			//CZM_win_search_map.focus();
			location.href = strUri;		
		}
	}
}
function convescape2() {
	if (escapeflag == 1) {
		var n = escapeframe.location.href.indexOf("t1=");
		if (n != -1) {
			escapeflag = 0;
            var strName = escapeframe.location.href.substr(n + 3);
            escapeframe.location.href = "/czm/convescape.aspx?count=no";
			var strUri = "/czm/search.aspx" +
							"?func=3" +
							"&name=" + strName +
							"&cset=4";
			//CZM_win_search_map = window.open(strUri, 'search', 'menubar=yes,scrollbars=yes,resizable=yes,width=700,height=600,left=10,top=0,screenX=10,screenY=0');
			//CZM_win_search_near = null;
			//CZM_win_search_map.focus();
			location.href = strUri;
		} else {
		    setTimeout("convescape2()", 10);
		}
	}
}
/* 地図サイズによるHTML styleの切り替え */
function configureHTMLStyle(){
	if("2" == map_size)	$("container").style.width="1001px";
	else				$("container").style.width="";
	$("primary").style.width=map_sizes[map_size].w +"px";
	$("maparea").style.height=map_sizes[map_size].h +"px";
	$("AreaInfo_s").style.width=map_sizes[map_size].w +"px";

	$("footpoint").style.width=head_sizes[map_size].w +"px";
	$("information").style.width=head_sizes[map_size].w +"px";

	var cCls = "";
	var sWid = "55";
	var dWid = "70";
	var sAlt = "サイズ";
	var dAlt = "デザイン";
	if("2" == map_size){
		cCls = "_l";
		sWid = "94";
		dWid = "111";
		sAlt = "地図サイズ";
		dAlt = "地図デザイン";
	}
	$("chgul").className = "mapBtn" + cCls + " clearfix";
	$("chgst").src = "img/map_title_chgs" + cCls + ".jpg";
	$("chgst").width = sWid;
	$("chgst").alt = sAlt;
	$("chgst").title = sAlt;
	$("chgs1").className = "chgs1" + cCls;
	$("chgs2").className = "chgs2" + cCls;
	$("chgdt").src = "img/map_title_chgd" + cCls + ".jpg";
	$("chgdt").width = dWid;
	$("chgdt").alt = dAlt;
	$("chgdt").title = dAlt;
	$("chgd1").className = "chgd1" + cCls;
	$("chgd2").className = "chgd2" + cCls;
	$("chgd3").className = "chgd3" + cCls;
	$("chgd4").className = "chgd4" + cCls;
	$("chgd5").className = "chgd5" + cCls;
	$("chgd6").className = "chgd6" + cCls;
	$("chgd7").className = "chgd7" + cCls;

	$("AreaInfo_s").style.backgroundImage = 'url("' + areaInfo_img[map_size].src + '")';
	$("areaInfo_hidden_contents1").style.display = areaInfo_dsp[map_size].dsp;
	$("areaInfo_hidden_contents2").style.display = areaInfo_dsp[map_size].dsp;
	
	if("2" == map_size){
		$("map_footer_wrapper").style.backgroundImage = 'url("/img/footer_long_03.gif")';
$("gooarea").width = "782px";
	}
	else{
		$("map_footer_wrapper").style.backgroundImage = 'url("/img/footer_long_02.gif")';
$("gooarea").width = "532px";
	}
	$("map_footer_wrapper").style.width = foot_wrapper_sizes[map_size].w +"px";
	$("map_footer_first").style.width = foot_inside_sizes[map_size].w +"px";;
	$("map_footer_second").style.width = foot_inside_sizes[map_size].w +"px";;
	$("map_footer_third").style.width = foot_inside_sizes[map_size].w +"px";;
	$("map_footer_third_left").style.width = foot_insideL_sizes[map_size].w +"px";;

}
// 入力されたキーワードチェック
function CheckKeyword(keyword)	{
	var key = '%';
	if (keyword.length == 0) {
		alert('探したいキーワードを入力してね！');
		return false;
	} else if (keyword.length >99 ) {
		alert('キーワードが長すぎるよ～。100文字以下にしてね。');
		return false;
	} else if (keyword.indexOf(key) != -1 ) {
		alert('「' + keyword + '」の意味がわからないよ～');
		return false;
	} else {
		return true;
	}
}
function bgcoloron(){
}
function bgcoloroff(){
}
function mapResize(){
	if(!map) return;
	map.resizeMap(map_sizes[map_size].w, map_sizes[map_size].h, "");
}
function changeTab(tabName){
	if(!map) return;
	var _parameters = "d=PC&tab=" + tabName;
	var _options = {parameters: _parameters, visible: true};
	map.updateSingleMap(_options);
}


var trafficID = null;
var trafficTimeout = 1000;
var trafficScript = null;
var trafficLoopRect = {xmin: 0, ymin: 0, xmax: 0, ymax: 0};
var trafficLoopTimer = null;

function _startTrafficTest() {
    if (!trafficID) {
        trafficScript = document.createElement("script");
        trafficScript.setAttribute('type', 'text/javascript');
        trafficScript.setAttribute('src', "http://live.chizumaru.com/where/GetUniqeID.aspx?t=" + new Date().getTime());
        document.body.appendChild(trafficScript);
    } else {
        _trafficLoop();
    }
}

function _trafficLoop() {
    if (trafficLoopTimer) {clearTimeout(trafficLoopTimer);trafficLoopTimer = null;}
    
    var _minmax = map.getMinMaxLocation();
    if (trafficLoopRect.xmin != _minmax.xmin || trafficLoopRect.ymin != _minmax.ymin || trafficLoopRect.xmax != _minmax.xmax || trafficLoopRect.ymax != _minmax.ymax) {
        trafficScript = document.createElement("script");
        trafficScript.setAttribute('type', 'text/javascript');
        trafficScript.setAttribute('src', "http://live.chizumaru.com/where/SetPlace.aspx?ID=" + trafficID + "&message=qweqwe&xmin=" + _minmax.xmin + "&ymin=" + _minmax.ymin + "&xmax=" + _minmax.xmax + "&ymax=" + _minmax.ymax + "&t=" + new Date().getTime());
        document.body.appendChild(trafficScript);
        
        trafficLoopRect = _minmax;
    } else {
        trafficLoopTimer = setTimeout(_trafficLoop, trafficTimeout);
    }
}
function _stopTrafficTest() {
    if (trafficLoopTimer) {clearTimeout(trafficLoopTimer);trafficLoopTimer = null;}
    if (trafficScript) {
        document.body.removeChild(trafficScript);
        trafficScript = null;
    }
}

function setTrafficID(id) {
    _stopTrafficTest();
    
    trafficID = id;
    _trafficLoop();
}

function trafficTest(count, time, users, timeout) {
    _stopTrafficTest();
    if (null == count || null == time) return;
    
    trafficTimeout = timeout;
    trafficLoopTimer = setTimeout(_trafficLoop, trafficTimeout);
}
function mapFukidashi(x,y,ex,ey,nx,ny,scl,_name,_id,_moyo,_title){
	fukidashiFlg = true;
	fukidashiNam = _name;
	fukidashiXY = ex + "," + ey;

	//ウィンドウ最小化
	townResizable.minimizeWindow();

	//登録済みフキダシの削除
	fukidashiLayer.removeAll();

	// 元の位置
	//var _descriptionN = "<div style='margin-top: 15px;'>元の位置</div>";
	var _descriptionN = "<div id='s_mainPopup'>";
	_descriptionN += "<div id='headerPopup'>";
	_descriptionN += "<div class='s_headPopup'>元の位置</div>";
	_descriptionN += "</div>";
	_descriptionN += "</div>";
	var _optionsN = {visible: true,
					normalSrc: "/czm/images/mappin_cross.gif",
					highlightSrc: "/czm/images/mappin_cross.gif",
					highlight: {leftOffset: 0.5, leftOffsetUnit: "fraction", topOffset: 0.5, topOffsetUnit: "fraction", scale: 1.2},
					name: "元の位置",
					scaleLevel: null,
					description: _descriptionN};
	fukidashiLayer.append("org", nx, ny, _optionsN);
	
	// 選択位置
	//var _descriptionE = "<div style='margin-top: 15px;'>" + _name + "</div>";


	var _descriptionE = "<div id='s_mainPopup'>";
	_descriptionE += "<div id='headerPopup'>";
	_descriptionE += "<div class='s_headPopup'>周辺の" + _title + "情報</div>";
	_descriptionE += "</div>";
	//<!-- /popupAll -->
	_descriptionE += "<div class='popupAll'>";
	_descriptionE += "<p class='txtblue_pop'>" + _name + "</p>";
	_descriptionE += "</div>";
	//<!-- /popupAll -->
	_descriptionE += "</div>";


	var _optionsE = {visible: true,
					normalSrc: "/czm/images/mappin_tri.gif",
					highlightSrc: "/czm/images/mappin_tri.gif",
					highlight: {leftOffset: 0.5, leftOffsetUnit: "fraction", topOffset: 0.5, topOffsetUnit: "fraction", scale: 1.2},
					name: _name,
					scaleLevel: null,
					description: _descriptionE};
	fukidashiLayer.append(_id, ex, ey, _optionsE);

	var _optionsD = {move:false};
	fukidashiLayer.openDescription(_id, _optionsD);
	
	var _options = {visible: true};
	map.moveMap(x, y, scl, _options);

	var _json0 = {id: "org", x: nx, y: ny, name: "元の位置"};
	fukidashiIcons[_json0.id] = _json0;
	var _json1 = {id: _id, x: ex, y: ey, name: _name};
	fukidashiIcons[_json1.id] = _json1;
}
function searchAroundInfo(){
	//カウント用shim.gif読み込み
    var _img = document.createElement("img");
    _img.src = "img/shim.gif?count=maptoaround";

	_menuRelease();
	menuSelect("town");
}
function _openSetBLResizable(){
	if (!setblResizable)setblResizable = new Chizumaru.Resizable($("map"), {closeButtonAction : _closeSetBLResizable, titleOffset : [12, 10]});

	var _iframe = document.createElement("iframe");
	var _url = "http://" + domain+"/map/setbl.aspx";
	_iframe.src = _url;//"loadingFrame.htm?url=" + encodeURIComponent(_url);
	setblResizable.setContent(_iframe);
	setblResizable.setTitleText("緯度経度を指定して地図移動");
	if ("none" == setblResizable.getDisplay()) {
		setblResizable.displayWindow(430, 130, {positionOffset : [0, 0]});
	}
	else {
		var hm = setblResizable.getContentSize();
		setblResizable.displayWindow(hm.width, hm.height);
	}
}
function _closeSetBLResizable(){
	if(setblResizable){
		setblResizable.closeWindow();
	}
}
function moveBL(x, y){
	moveMap(x, y);
	_closeSetBLResizable();
}
function ToMappleTravel(){
	var uri = "http://travel.mapple.net/";
	if("" != currentMapPref){
		uri += currentMapPref + "/";
	}
	//location.href = uri;
	window.open(uri);
}
function ToHigaeriOnsen(){
	var uri = "http://www.mapple.net/higaeri_spa/";
	if("" != currentMapPref){
		uri += currentMapPref.replace(/^0/,'') + ".htm";
	}
	//location.href = uri;
	window.open(uri);
}
function ToFudosan(){
	var _location = map.getCenterLocation();
	var uri = "/czmFudo/RoomList.aspx?mode=1&x=" + _location.x + "&y=" + _location.y + "&level=3";
	//location.href = uri;
	window.open(uri);
}
function ToMappleCamp(){
	var uri = "http://www.mapple.net/camp/";
	if("" != currentMapPref){
		uri += currentMapPref.replace(/^0/,'') + ".htm";
	}
	//location.href = uri;
	window.open(uri);
}
function ToMappleNews(){
	var uri = "http://www.mapple.net/news/list.asp";
	if("" != currentMapPref){
		uri += "?PREF=" + currentMapPref.replace(/^0/,'');
	}
	//location.href = uri;
	window.open(uri);
}
function ToMappleGuide(){
	var _location = map.getCenterLocation();
	var _lon = _location.x / 3600;
	var _lat = _location.y / 3600;
	var uri = "http://map.mapple.net/_sc20000_lon" + _lon + "_lat" + _lat + ".htm";
	//location.href = uri;
	window.open(uri);
}
function ToGift(){
	var uri = "http://www.gift-land.com/partner/chizumaru/";
	if("" != currentMapPref){
		var cid = "80,77,75,73,76,74,72,67,155,154,66,68,70,69,61,53,52,54,153,146,57,59,58,56,48,50,47,46,49,45,42,39,41,43,40,34,37,36,35,32,27,29,26,31,30,28,25";
		var idary = cid.split(",");
		var prefNo = parseInt(currentMapPref.replace(/^0/,'')) - 1;
		uri += "products/list.php?category_id=" + idary[prefNo];
	}
	window.open(uri);
}

