﻿
var map;
var points;
var markers=[];

window.onload=function(){
    map=openMap();
    points=Data();
    for(var i in points) showPoint(i,points[i]);
    if(location.hash=="") return;
    points[location.hash.replace("#","")].marker.showName();
};

function openMap(){
    var map=new GMap(document.getElementById("map"));
    map.addControl(new GSmallMapControl());
    map.centerAndZoom(new GPoint(140.865573,38.265554),2);
    //map.addOverlay(new GPolyline(makePoly(),"#ff0000",10,0.6));
    return map;
}


function moveToPoint(pointName){
    map.recenterOrPanToLatLng(new GPoint(points[pointName].x,points[pointName].y));
    points[pointName].marker.showName();
}



function makeDesc(obj){
    return obj.name+"<br/>"
          +"<!--(<a href=\"map.html#"+obj.id+"\">施設詳細ページへ</a>)<br/>-->"
          +obj.address+"<br/>"
          +"配布場所："+obj.corner
}

function makeDesc2(obj){
    return obj.name+"<br/>"
          +obj.address+"<br/>"
          +"配布場所："+obj.corner
}

function makeDetail(obj){
    var images=obj.image.split(",");
    var temp="";
    for(var i=0;i<images.length;i++){
        temp+="<img src=\"img/facilities/"+images[i]+"\"/>"
    }
    return "<!--<a href=\""+obj.id+".html\">-->"+obj.name+"<!--</a>--><br/>"
          +temp+"<br/>"
          +obj.address+"<br/>"
          +"配布場所："+obj.corner+"<br/>"
          +"<a href=\""+obj.url+"\">施設の公式サイト</a>";
}



function showPoint(id,obj){
    obj.id=id;
    obj.point=new GPoint(obj.x,obj.y);
    obj.detail=makeDetail(obj);
    obj.description=makeDesc(obj);
    obj.marker=makeMarker(obj);
    GEvent.addListener(obj.marker,"click",obj.marker.showName);
    map.addOverlay(obj.marker);
}

function makeMarker(obj){
    var marker=new GMarker(obj.point,makeIcon());
    marker.detail=obj.detail;
    marker.description=obj.description;
    marker.showName=showName;
    return marker;
}


function showName(){
    this.openInfoWindowHtml("<div style=\"white-space:nowrap;\">"+this.description+"</div>");
    if(!document.getElementById("detail")) return;
    document.getElementById("detail").innerHTML=this.detail;
}



function makeIcon(){
    var icon=new GIcon();
    icon.image="/honepro/img/smalllogo.gif";
    icon.shadow="/honepro/img/smallshadow.gif";
    icon.iconSize=new GSize(32,32);
    icon.shadowSize=new GSize(34,34);
    icon.iconAnchor=new GPoint(16,16);
    icon.infoWindowAnchor=new GPoint(16,16);
    return icon;
}



function makePoly(){
    return [
        new GPoint(140.86551904678345,38.26546132328748),
        new GPoint(140.884348154068,38.29668984943302),
        new GPoint(140.8872127532959,38.25924433426363),
        new GPoint(140.88016390800476,38.25065087201002),
        new GPoint(140.86551904678345,38.26546132328748)
    ];
}


