//*===============================================================
//□初期化
//*===============================================================
$( document ).ready( function() {
	Zg.prototype.init();
});
//================================================================
//□Zg
//================================================================
var Zg = function() {
};
//================================================================
//□共通定数
//================================================================
Zg.c = {
	ID_GMAP			: '#Map'			, //
	DEFAULT_ZOOM	: 9					, //
	PNG_CLEAR		: '/common/images/pc/blank.gif',
	DUMMY_END		: 0					 //
};
//================================================================
//□共通オブジェクト
//================================================================
Zg.p = {
	gMap			: null				, //GoogleMapオブジェクト
	gEventsOld		: []				, //イベント：削除用
	gIcon			: []				, //アイコンオブジェクト
	gMarker			: null				, //マーカー
	gWindow			: null				, //別ウィンドウ
	DUMMY_END		: 0					 //
};
//*===============================================================
//□初期処理
//*===============================================================
Zg.prototype.init = function() {
	// GoogleMap
	if ( $( Zg.c.ID_GMAP ).get(0) != null ) {
		//◆Google Mapsが利用できるブラウザかどうか判断
		if ( GBrowserIsCompatible() ) {
			//◇利用可能
			//□地図のインスタンスを作成
			Zg.p.gMap = new GMap2( $( Zg.c.ID_GMAP ).get(0) , G_NORMAL_MAP );
			//□キーボードで操作
			new GKeyboardHandler( Zg.p.gMap );
			//□移動/縮尺ボタンをつける
			Zg.p.gMap.addControl( new GSmallMapControl() , new GControlPosition( G_ANCHOR_TOP_LEFT , new GSize( 5 , 32 ) ) );
			//□地図/衛星写真 切り替え
			Zg.p.gMap.addControl(
				new GMenuMapTypeControl( true , false ) ,
				new GControlPosition( G_ANCHOR_TOP_LEFT , new GSize( 5 , 5  ) )
			);
			Zg.p.gMap.addMapType( G_PHYSICAL_MAP );
			//□初期表示位置を設定
			Zg.p.gMap.setCenter(
				new GLatLng( parseFloat( CONST_DEFAULT_LAT ) , parseFloat( CONST_DEFAULT_LNG ) ) , parseInt( Zg.c.DEFAULT_ZOOM + 5 )
			);
			//□ズームイン時にスムーズ
			Zg.p.gMap.enableContinuousZoom();
			//□ダブルクリック時にズームイン
			Zg.p.gMap.enableDoubleClickZoom();
			//□初期化
			Zg.prototype.clearAllParameter();
			//□ポイント
			Zg.p.gMarker = new GMarker(
				new GLatLng( parseFloat( CONST_DEFAULT_LAT ) , parseFloat( CONST_DEFAULT_LNG ) ) , {draggable:false}
			);
			Zg.p.gMap.addOverlay( Zg.p.gMarker );
		}
	}
};
//*===============================================================
//○初期化
//*===============================================================
Zg.prototype.clearAllParameter = function() {
//GLog.write('clearAllParameter');
	Zg.p.gMap.clearOverlays();
	for ( idx=0; idx < Zg.p.gEventsOld.length; idx++ ) {
		if ( Zg.p.gEventsOld[idx] != '______array' && Zg.p.gEventsOld[idx] != '' ) {
			GEvent.removeListener( Zg.p.gEventsOld[idx] );
		}
	}
	Zg.p.gEventsOld  = new Array();
};
