function newtag (tagformname, listname, url, formname, csrf) {
	var form = document.getElementById(tagformname);
	var value = form.value;
	form.value = '';
	var data = {};
	data[formname+'[_csrf_token]'] = csrf;
	data[formname+'[tag_name]'] = value;
	$.get(url, data, function(res){
		var list = document.getElementById(listname);
		var o = document.createElement('option');
		o.value = res;
		o.appendChild(document.createTextNode(value));
		list.appendChild(o);
	});
}
function dialogOnLoad () {
	var click_btn_name;
	$('#dialog-cancel').click(function() {
		$('#dialog-form').dialog('close');
		return false;
	});
	$("#dialog-form input[type='submit']").click(function() {
		click_btn_name = $(this).attr('name');
	});
	$('#dialog-form form').submit(function (e) {
		$("#dialog-form input[type='submit']").attr('disabled','disabled');
		e.preventDefault();
		var $_ = $(this);
		var postData = $_.serializeArray();
		if(click_btn_name){
			var obj = new Object();
			obj['name'] = click_btn_name;
			obj['value'] = 1;
			postData.push(obj);
		}
		var method = new Object();
		method['name'] = 'cm_method';
		method['value'] = 'dialog';
		postData.push(method);
		$("#dialog-form").load($_.attr('action')+" #dialog",postData,dialogOnLoad);
		return false;
	});
	if($("#dialog-close").size() > 0){
		if($("#dialog-close").attr('href')){
			location.href = $("#dialog-close").attr('href');
		}
		$('#dialog-form').dialog('close');
	}
}

function insertOnLoad () {
	$("#insert-pos").css("margin", "10px")
	                .css("padding-bottom", "10px")
	                .css("border-bottom", "1px dotted #CCCCCC");
}

banners = new Array();

$(function() {
	$(".showjavascript").show();
	$(".hidejavascript").hide();

//	$("body").append('<div id="dialog-form"></div>');
	$("#dialog-form").dialog({
		autoOpen: false,
		width: 500,
		modal: true,
		resizable: false,
		close: function(event, ui) {
			$('#dialog-form').children().remove();
		}
	});
	$('.dialog_link')
		.click(function() {
			$('#dialog-form').dialog("option","title",$(this).attr('title'));
			$("#dialog-form").load($(this).attr('href')+" #dialog","cm_method=dialog",dialogOnLoad);
			$('#dialog-form').dialog('open');
			return false;
		});
	$('.insert_link')
		.click(function() {
			if($(this).attr("into")){
				$("#"+$(this).attr("into")).load($(this).attr('href')+" #dialog","cm_method=dialog");
			}else{
				$("#insert-pos").load($(this).attr('href')+" #dialog","cm_method=dialog",insertOnLoad);
			}
			return false;
		});
	if(banners.length > 0){
		$.get('/banner.php?id='+banners.join(','));
	}
});
infowindow = 0;
markers = new Array();
// マップをクリックしたときの処理
function mapclick (event, message, do_message, url) {
    if(infowindow) infowindow.close();
	if (url.match('\\?')) {
		url = url+"&lat="+event.latLng.lat()+"&lng="+event.latLng.lng()+"&zoom="+map.getZoom();
	}else{
		url = url+"?lat="+event.latLng.lat()+"&lng="+event.latLng.lng()+"&zoom="+map.getZoom();
	}
    var contentString = "<div><dl class='mapcreate_infowindow'><dt>"+message+"</dt><dd><span class='mapbtn'><a href='"+url+"'>"+do_message+"</a></span></dd></dl></div>";
    infowindow = new google.maps.InfoWindow();
    infowindow.setContent(contentString);
    infowindow.setPosition(event.latLng);
    infowindow.open(map);
}
function markerclick (event, url) {
	// Ajax取得未実装
}
function markercontent (event, marker, content) {
    if(infowindow) infowindow.close();
    infowindow = new google.maps.InfoWindow();
    infowindow.setContent(content);
    infowindow.setPosition(marker.getPosition());
    infowindow.open(map);
}

function resetMapMarker (url) {
	var center =  map.getCenter();
	$.getJSON(url,
		{
		"lat": center.lat(),
		"lng": center.lng(),
		"zoom": map.getZoom(),
		"sf_format": "json"
		},
		function(mapdata) {
			var area = map.getBounds();
			for (var i in markers) {
				if (!area.contains(markers[i].getPosition())) {
					markers[i].setMap(null);
					delete markers[i];
				}
			}
			for (var i in mapdata) {
				if(markers[i] != undefined) continue;
				markers[i] = new google.maps.Marker({
					position: new google.maps.LatLng(mapdata[i].lat, mapdata[i].lng),
					clickable: true,
					map: map
				});
				(function(i) {
					google.maps.event.addListener(markers[i], "click", function(event) {
						markercontent (event,markers[i],mapdata[i].content);
					});
				})(i);
			}
		}
	);	
}

editmarker = 0;
// エディター用マップをクリックしたときの処理
function editmapclick (event, pre_id) {
	if(editmarker){
		editmarker.setMap(null);
		delete editmarker;
	}
	$("#"+pre_id+"_map_lat").val(event.latLng.lat());
	$("#"+pre_id+"_map_lng").val(event.latLng.lng());
	$("#"+pre_id+"_map_zoom").val(map.getZoom());
	editmarker = new google.maps.Marker({
		position: new google.maps.LatLng(event.latLng.lat(), event.latLng.lng()),
		map: map
	});
}
function editmapzoom (pre_id) {
	if(editmarker){
		$("#"+pre_id+"_map_zoom").val(map.getZoom());
	}
}
function editmapreset (pre_id) {
	if(editmarker){
		editmarker.setMap(null);
		delete editmarker;
		editmarker = 0;
	}
	$("#"+pre_id+"_map_lat").val('');
	$("#"+pre_id+"_map_lng").val('');
	$("#"+pre_id+"_map_zoom").val('');
}

function setNowDateTime (id, minute) {
	var now = new Date();
	var year = now.getYear();
	if(year < 2000) { year += 1900; }
	$("#"+id+"_year").val(year);
	$("#"+id+"_month").val(now.getMonth()+1);
	$("#"+id+"_day").val(now.getDate());
	$("#"+id+"_hour").val(now.getHours());
	if(minute){
		$("#"+id+"_minute").val(now.getMinutes());
		$("#"+id+"_second").val(now.getSeconds());
	}else{
		$("#"+id+"_minute").val(0);
		$("#"+id+"_second").val(0);
	}
	return false;
}

