//Google Map リフサイン地図【Food】
//Globals
var map;
var point;
var allPoints = new Array();
var x=0;
var isloaded = false;
var marker;
//Our mail marker variable
var lastMarkerId;
//ID of last clicked marker
var hasClicked = false
;//If user has clicked, true
var hasZoomed = false;
//If map has been zoomed, true

//ポインターアイコンの指定
var icon;
icon = new GIcon();
icon.image = "http://refsign.heteml.jp/refsign/ver02/wp-content/uploads/kyotomap/icon_01.png";
//アイコン(1)
//サイトにより要変更
icon.iconSize = new GSize(64, 64);
 icon.iconAnchor = new GPoint(32, 64);
 icon.infoWindowAnchor = new GPoint(32, 1);

//以下ロールオーバー、クリック時のACTION指定
//他のアクションとも連動

var iconActive;
iconActive = new GIcon();
iconActive.image = "http://refsign.heteml.jp/refsign/ver02/wp-content/uploads/kyotomap/icon_01o.png";
//アイコン(1)と同画像
//サイトにより要変更
iconActive.iconSize = new GSize(64, 64);
iconActive.iconAnchor = new GPoint(32, 64);
iconActive.infoWindowAnchor = new GPoint(32, 1);

//読み込ませる地図の表示
//FUNCTION load()

function load(id, issue) {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("gmap"));
        
//拡大縮小のデザインを指定
//map.addControl(new GSmallMapControl());

map.addControl(new GLargeMapControl());

//map.addControl(new customZoomControl());
//map.addControl(new GMapTypeControl());
//map.addControl(new MapTypeControl());

//地図のセンタリング
map.setCenter(new GLatLng(35.007173, 135.769418), 14);

//物理的マップタイプの表記
//map.setMapType(G_PHYSICAL_MAP);

//i=変数、length=？ (refisignShop.js)
for (var i=0; i < indexLookUp.length; i++) {
//≒refsignで指定したid
var cur = indexLookUp[i];
//≒id,issue
var issuenumber = refsignShop[cur].issue;
//ポインタ-アイコンの経度緯度
point = new GLatLng(refsignShop[cur].lat, refsignShop[cur].lng);
//　ポインターマーカーの指定　
map.addOverlay(createMarker(point, cur, icon, issuenumber));
}

}
isloaded = true;
updateSelected(id, issue);
}

//GoogleMapウィンドウの表示
//FUNCTION createMarker(point, number, icon, issue)

function createMarker(point, number, icon, issue) {
//markerの緯度経度及びアイコン
//var marker = new GMarker(point, icon);
var marker = new PdMarker(point, icon);

marker.setId(issue);
//クリック時のツールチップ(マップウィンドウ)
//marker.setTooltip(refsignShop[number].location);
//レイヤーの不透明度　
//marker.setOpacity(100);
var title = refsignShop[number].title;
var sentence = refsignShop[number].sentence;
var img = refsignShop[number].img;
var url = refsignShop[number].url03;

if ( url == ""){
GEvent.addListener(marker, "click", function() { 
updateSelected(number, issue);	
marker.openInfoWindowHtml("<div style='width:220px; height:195px'><p style='color:#E83D83; font-size:10pt;line-height:1.5;margin:10px 0 20px 0;'>"+title+"</p><p style='font-size:8pt;line-height:1.5;'>"+sentence+"</p></div>");
return marker;
}); 			
}else{
GEvent.addListener(marker, "click", function() { 
updateSelected(number, issue);
marker.openInfoWindowHtml("<div style='width:220px; height:195px'><p style='color:#E83D83; font-size:10pt;line-height:1.5;margin:10px 0 20px 0;'>"+title+"</p><p style='font-size:8pt;line-height:1.5;margin:0 0 15px 0;''>"+sentence+"</p><p>[HOMEPAGE]<br /><a href='"+url+"'style='line-height:1.5;'>"+url+"</a></p></div>");
return marker;
});
}

//GEvent.addListener(対象となるオブジェクト,取得するイベントの対象,イベントハンドラを表す関数リテラル)
//マウスオーバーのイベント

GEvent.addListener(marker, "mouseover", function() {
marker.setImage(iconActive.image); 
marker.topMarkerZIndex(); //bring marker to top
}); 

//マウスアウトのイベント

GEvent.addListener(marker, "mouseout", function() {
if (lastMarkerId != issue) {
//marker.setImage(iconActive.image); 
//marker.topMarkerZIndex();

}
marker.restoreImage(icon.image);
marker.restoreMarkerZIndex();
});

return marker;
}

//記事をベースに地図を移動させる(適当翻訳)

function moveMap(x, id) {
var marker = map.getMarkerById(id);

//ツールチップの切り替え

var omarker = map.getFirstMarker();
while (omarker != null)
//while(条件)処理
//while処理の繰り返し
{
if(omarker != marker) {
omarker.setTooltipHiding(true);
omarker.hideTooltip();
}
omarker = map.getNextMarker();
}
//marker.setTooltipHiding(false);
//marker.showTooltip();

//クリック時のツールチップ(マップウィンドウ)
if(hasClicked) {
var lastMarker = map.getMarkerById(lastMarkerId);
lastMarker.restoreMarkerZIndex();
lastMarker.setImage(icon.image);
}

//クリック時の緯度・経度の取得及び拡大縮小
point = new GLatLng(refsignShop[x].lat, refsignShop[x].lng);
if (!hasZoomed) {
//ズームの設定
map.setZoom(14);
hasZoomed = true;
}

//marker.setImage(iconActive.image);
marker.topMarkerZIndex();

//地図の中心を指定された場所へ移動
map.panTo(point);
lastMarkerId = id;
hasClicked = true;
}

