var add = {
	winkRollover:function(){
		$('a.wink img').mouseover(function(){
			$(this).css({
				opacity:0.2
			});
			$(this).fadeTo('slow',1);
		});
	},
	
	currentOpen:function(){
		$('#navi > ul ul').hide();
		$('#navi .current').parents().show();
		$('#navi .current').parent().children().show();
	},
	
	mapAdd:function(field,keyword){
		var inherLink = location.href;
		var address = null;
		if(field.match(/location\/([^A-Za-z0-9_\/]*)\//)){
			address = RegExp.$1;
		}
		
		if(address != null){
			var inherLinkENC;
			inherLink = inherLink.replace(/field.*$/,"");
			if(keyword != ''){
				inherLink = inherLink.replace(/keyword.*$/,"");
				inherLinkENC = encodeURI(inherLink+"shoplist.xml/keyword/"+keyword+"/field/"+field+"/");
			}else{
				inherLinkENC = encodeURI(inherLink+"shoplist.xml/field/"+field+"/");
			}
			
			$.ajax({
				type: "GET",
				url: inherLinkENC,
				dataType : "xml",
				error: function(){
					//alert('よめまへん');
				},
				success: function(xml){
					if($(xml).find('shop').size() > 0){
						initialize(xml);
					}else{
						$('#map').hide();
					}
					
				}
			});
		}else{
			$('#map').hide();
		}
	
			   
		function initialize(xml) {
			var geocoder;
			var map;
			var marker;
			var shops = new Array();
			var infoWindow;
			var zoom;
			
			if(address != '北海道'){
				zoom = 9;
			}else{
				zoom = 6;
			}
			
			
			$(xml).find('shop').each(function(){
				var titleVal = $('title',this).text();
				var counterName = $('counter',this).text();
				var zip = $('zip',this).text();
				var location = $('location',this).text();
				var addressLng = $('address',this).text();
				var tel = $('tel',this).text();
				var latVal = $('lat',this).text();
				var lngVal = $('lng',this).text();
				var missel = $('missel',this).text();
				var misselMio = $('mio',this).text();
				
				var comment = '<p>'+titleVal+'<br />'+counterName+'</p>';
				comment = comment+'<p>〒'+zip+'<br />'+location+addressLng+'<br />'+tel+'</p>';
				shops.push({'lat':latVal,'lng':lngVal,'comment':comment,'missel':missel,'misselMio':misselMio});
			});
			
			//console.log(shops);
			infoWindow = new google.maps.InfoWindow();
			
			geocoder = new google.maps.Geocoder();
			geocoder.geocode( { 'address': address}, function(results, status) {
				if (status == google.maps.GeocoderStatus.OK) {
					var latlng = results[0].geometry.location;
					var myOptions = {
						zoom: zoom,
						center: latlng,
						navigationControl: true,
						navigationControlOptions: {
							style: google.maps.NavigationControlStyle.ZOOM_PAN
						},
						mapTypeControl: true,
						scaleControl: true,
						mapTypeId: google.maps.MapTypeId.ROADMAP
					};
					map = new google.maps.Map(document.getElementById("map_canvas"),myOptions);
					//map.setCenter(results[0].geometry.location);
					/*marker = new google.maps.Marker({
						map: map, 
						position: latlng
					});*/
					
					
					for(var i=0;i < shops.length;i++){
						var shop = shops[i];
			
						var latlng = new google.maps.LatLng(shop.lat,shop.lng);
						var icon;
						
						/*if(shop.missel == 'on' && shop.misselMio == 'on'){
							icon = '/themes/missel/images/mark/icon_common.png';
						}else if(shop.missel == 'on'){
							icon = '/themes/missel/images/mark/icon_missel.png';
						}else{
							icon = '/themes/missel/images/mark/icon_misselMio.png';
						}*/
						
						icon = '/themes/missel/images/mark/icon_missel.png';
						
						var shadow = new google.maps.MarkerImage(
							'/themes/missel/images/mark/icon_shadow.png',
							new google.maps.Size(24,33),
							new google.maps.Point(0,0),
							new google.maps.Point(2,33)
							//scaledSize?:Size
						);
						
						marker = new google.maps.Marker({
							map: map, 
							position: latlng,
							icon: icon,
							shadow: shadow
						});
						
						attachMessage(marker,shop);
						
						
					}
					
	
	
					
				} else {
					alert("Geocode was not successful for the following reason: " + status);
				}
			});
			
			function attachMessage(marker,shop){
				google.maps.event.addListener(marker, 'click', function() {
					infoWindow.setContent(shop.comment);
					infoWindow.setPosition(marker.getPosition());
					infoWindow.open(marker.getMap(), marker);
				});
				
			}
	
			
		}
		
		
	}
	
}

$(function(){
	add.winkRollover();
	add.currentOpen();
});
