
CWL.ViewerPage = function(tour_id){
    CWL.inherit(CWL.Page,CWL.ViewerPage);

    this.requestParams.tid = tour_id;
};

CWL.ViewerPage.prototype = {
    requestUrl : '/CWL/json/GetTourPoints.cgi',
    requestParams : {ln:'points'},

    requestCallback : function(obj){
	var mm = new CWL.gmap.MarkerManager(this.gmap);
	this.mm = mm;
	var tm = new CWL.dd.TargetManager('.cwl_dd_target');

	var data = eval('(' + obj.responseText + ')');

	for(var i=0;i<data.points.length;i++){
	    data.points[i].anchor = {tag:'a',href:'javascript:void(0)',onclick:'CWL.obj.mm.getMarker(\''+data.points[i].id+'\').openInfoWindow();'};

	    var body = new CWL.data.Body(data.points[i]);

	    var a = {tag:'a',href:'javascript:void(0)',onclick:'CWL.obj.mm.getMarker(\''+data.points[i].id+'\').showMapBlowup();',html:'地図'};
	    var button = {tag:'div',children:['[',a,']']};
	    body.addButton(button);

	    data.points[i].body = body.getHtml();

	    var m = new CWL.gmap.Marker(data.points[i]);
	    m.setInfoWindow(new CWL.gmap.InfoWindow(data.points[i]));
	    mm.addMarker(m);

	    var g = new CWL.dd.Gadget(data.points[i]);
	    g.lock = true;
	    g.collapse = false;
	    tm.point_list.addGadget(g);
	}

	tm.point_list.refresh();

	var zoom = this.gmap.getBoundsZoomLevel(mm.getBounds()) - 1;
	this.gmap.setCenter(mm.getCenter(),zoom);
    }


};

// ====================================================================================================

Ext.onReady(function(){
    if(GBrowserIsCompatible()){
	var tid;

	var s = window.location.search;
	var p = s.substr(1,s.length-1);
	var params = p.split('&');

	for(var i=0;i<params.length;i++){
	    var kv = params[i].split('=');
	    if(kv[0] == 'tid'){
		tid = kv[1];
		break;
	    }
	}

	var p = new CWL.ViewerPage(tid);
	p.showGMap('map');
	p.ajaxRequest();

	CWL.obj = p;
    }
});


