// charset="UTF-8"


function initUser(){
//	window.setTimeout(initUserTab, 10000);
	return false;
}

function initUserFav(){
//	var id = '';
//	if(!document.getElementById("modetab")){
//		j("#map").parent().append(modetab);
//	}
	j.ajax({
		type: "POST",
//		data: "swLat="+southWest.lat()+"&swLng="+southWest.lng()+"&neLat="+northEast.lat()+"&neLng="+northEast.lng(),
		url: root+"users.xml",
		dataType: "xml",
		async: true,
		timeout: 60000,
		beforeSend: function() {
		},
		complete: function() {
//			if(j("#spinwheel")){j("#spinwheel").fadeOut("fast");}else{j("#debug").append("no spinwheel complete<br />");}
//			return false;
		},
		error: function(xml){
//				j("#debug").text(xml);
		}, 
		success: function(xml) {
			var usrs = j(xml).find('user');
			if(usrs){
//				j("#debug").append(j(xml).find('landmark').length+"<br />");
				for(var i = 0;i<usrs.length;i++){
					usrid = usrs.eq(i).find('user_id').text();
					grpid = usrs.eq(i).find('user_group_id').text();
//					usrnickname = usrs.eq(i).find('user_nickname').text();
					j("#debug").prepend('<div>usrid: '+usrid+'</div>');
					j("#debug").prepend('<div>grpid: '+grpid+'</div>');
				}
//				j("#debug").prepend('<div>ClientLocations: '+google.loader.ClientLocation+'</div>');
//				j("#debug").prepend('<div>ClientLocations.address.city: '+google.loader.ClientLocation.address.city+'</div>');
			}
//			if(grpid > 0){
			if(!isNaN(grpid) && !isNaN(usrid) && (grpid > 0) && (grpid < 5)){
//				if(document.getElementById("mapinfo")){
//					j("#mapinfo").prepend(mapXY);
//					j("#mapinfo").append(mapInfoGo);
//				}
				if(!document.getElementById("fav")){
//					j("#modetab").append(modetablst);
					j("#pbtn").append(fav);
				}
				if(!document.getElementById("addbox")){
					j("#map").append(addbox);
					j("#addbox").css({
						width: mW()+"px",
						height: mH()+"px"
					});
					j("#addbox").hide();
				}
				if(!document.getElementById("databox")){
					j("#map").append(databox);
					j("#databox").css({
						width: mW()+"px",
						height: mH()+"px"
					});
					j("#databox").hide();
				}
				j("#map").append(spinwheel);
				j("#spinwheel").css({
					width: mW()+"px",
					height: mH()+"px"
				});
				j("#spinwheel").hide();
			}
//			window.setTimeout(resultUser, 100);
		}
	});
	return false;
}


function resultUser(){
	j("#debug").prepend('<div>user_id: '+usrid+'</div>');
	j("#debug").prepend('<div>user_group_id: '+grpid+'</div>');
	return false;
}
function backToMap(){
	if(j("#goPrint")){
		j("#goPrint").removeAttr('disabled');
	}
	if(j("#addbox")){
		if(j("#addbox").css("display") == 'block'){
			j("#addbox").fadeOut("fast");
		}
	}
	if(j("#databox")){
		if(j("#databox").css("display") == 'block'){
			j("#databox").fadeOut("fast");
		}
	}
	if(j("#showFav")){
		j("#showFav").show();
	}
	if(j("#showMap")){
		j("#showMap").hide();
	}
}

function hideAddFav(){
	table = '';
	if(j("#addbox")){
			if(j("#goPrint")){
				j("#goPrint").removeAttr('disabled');
			}
		if(j("#addbox").css("display") == 'block'){
			j("#addbox").fadeOut("fast");
		}
	}
	if(j("#showFav")){
		j("#showFav").show();
	}
	if(j("#showMap")){
		j("#showMap").hide();
	}
}
function showAddFav(){
	table = '';
	if(j("#addbox")){
		if(j("#addbox").css("display") == 'block'){
			if(j("#goPrint")){
				j("#goPrint").removeAttr('disabled');
			}
			j("#addbox").fadeOut("fast");
			if(j("#showFav")){
				j("#showFav").show();
			}
			if(j("#showMap")){
				j("#showMap").hide();
			}
		}else{
			if(j("#addbox-tablebox")){j("#addbox-tablebox").remove();}
			if(j("#spinwheel")){j("#spinwheel").show();j("#spinwheel").fadeTo("fast",0.8);}
			if(j("#goPrint")){
				j("#goPrint").attr('disabled','disabled');
			}
			if(j("#showFav")){
				j("#showFav").hide();
			}
			if(j("#showMap")){
				j("#showMap").show();
			}
//						th += '<th>'+__Number+'</th>';
//						th += '<th>'+__Action+'</th>';
//						th += '<th>'+__Created+'</th>';
						table += '<tr><th>'+__Address+'</th><td>'+decodeURI(address)+'</td></tr>';
						table += '<tr><th>'+__Zoom+'</th><td>'+mapZ+'</td></tr>';
						table += '<tr><th>'+__Latitude+'</th><td>'+mapC.lat()+'</td></tr>';
						table += '<tr><th>'+__Longitude+'</th><td>'+mapC.lng()+'</td></tr>';
						table += '<tr><th>'+__Note+'</th><td><input type="text" class="input-note" value="'+__My_Map+'" /></td></tr>';
			j("#addbox").append(j('<div id="addbox-tablebox"><table id="addbox-table">'+table+'</table><div id="btn-add-fav"><input type="submit" class="submit-add-fav" value="'+__Add+'" onclick="addFav(this);" /> <input type="reset" value="'+__Cancel+'" onclick="hideAddFav();" /> </div></div>'));
			j("#addbox").show();j("#addbox").fadeTo("fast",0.9);
			if(j("#spinwheel")){j("#spinwheel").fadeOut("fast");}
		}
	}
}


function showFav(){
	table = '';
	th = '';
	if(j("#databox")){
		if(j("#databox").css("display") == 'block'){
			if(j("#goPrint")){
				j("#goPrint").removeAttr('disabled');
			}
			if(j("#showFav")){
				j("#showFav").show();
			}
			if(j("#showMap")){
				j("#showMap").hide();
			}
			j("#databox").fadeOut("fast");
		}else{
			if(j("#databox-tablebox")){j("#databox-tablebox").remove();}
			if(j("#spinwheel")){j("#spinwheel").show();j("#spinwheel").fadeTo("fast",0.8);}
			if(j("#goPrint")){
				j("#goPrint").attr('disabled','disabled');
			}
			if(j("#showFav")){
				j("#showFav").hide();
			}
			if(j("#showMap")){
				j("#showMap").show();
			}
			j.ajax({
				type: "POST",
				data: "",
				url: root+"histories/faves.xml",
				dataType: "xml",
				error: function(xml){
				}, 
				success: function(xml) {
					var h = j(xml).find('history');
					if(h){
						var history_id = '';
						var history_user_id = '';
						var history_latitude = '';
						var history_longitude = '';
						var history_address = '';
						var history_zoom = '';
						var history_created = '';
						var history_zoom = '';
						var history_note = '';
						var a = '';
						th += '<tr>';
						th += '<th>'+__Number+'</th>';
						th += '<th>'+__Action+'</th>';
						th += '<th>'+__Created+'</th>';
						th += '<th>'+__Address+'</th>';
						th += '<th>'+__Zoom+'</th>';
						th += '<th>'+__Latitude+'</th>';
						th += '<th>'+__Longitude+'</th>';
//						th += '<th>'+__Note+'</th>';
						th += '</tr>';
						for(var i = 0;i<h.length;i++){
							if(isEven(h.length-i)){
								a = 'alt';
							}else{
								a = '';
							}
							history_id = toNumber(h.eq(i).find('history_id').text());
							history_user_id = toNumber(h.eq(i).find('history_user_id').text());
							history_latitude = h.eq(i).find('history_latitude').text();
							history_longitude = h.eq(i).find('history_longitude').text();
							history_address = h.eq(i).find('history_address').text();
							history_zoom = h.eq(i).find('history_zoom').text();
							history_created = h.eq(i).find('history_created').text();
							history_note = h.eq(i).find('history_note').text();
							table += '<tr id="history-upper-'+history_id+'">';
							table += '<td rowspan="2" class="'+a+' fav-number">'+(h.length-i)+'</td>';
							table += '<td class="'+a+'"><a href="#" class="set" onclick="setMap(new GLatLng(decodeURI('+history_latitude+'),decodeURI('+history_longitude+')),'+history_zoom+'); return false;">'+__Move_To_This_Map+'</a> <a href="#" class="del" onclick="deleteFav('+history_id+');return false;">'+__Delete+'</a></td>';
							table += '<td class="'+a+'">'+history_created+'</td>';
							table += '<td class="'+a+'">'+decodeURI(history_address)+'</td>';
							table += '<td class="'+a+'">'+history_zoom+'</td>';
							table += '<td class="'+a+'">'+history_latitude+'</td>';
							table += '<td class="'+a+'">'+history_longitude+'</td>';
							table += '</tr><tr id="history-lower-'+history_id+'"><td colspan="6" class="'+a+'" style="text-align:left;">'+__Note+': ';
							table += '<span class="display-history-note"><span class="history-note">'+history_note+'</span>';
							table += '<a href="#" class="a-history-note" onclick="editHistoryNote(this);return false;" style="display:none;">'+__Edit+'</a></span>';
							table += '<span class="edit-history-note" style="display:none;"><input type="text" name="history_note['+history_id+']" class="input-history-note" value="'+history_note+'"/> ';
							table += '<input type="submit" class="submit" name="save_history_note['+history_id+']" value="'+__Save+'" onclick="updateHistoryNote(this);" /> ';
							table += '<input type="reset" class="cancel" name="reset_history_note['+history_id+']" value="'+__Cancel+'" onclick="resetHistoryNote(this);" /> ';
							table += '';
							table += '</span><input type="hidden" name="history_id" class="history_id" value="'+history_id+'" style="border:none;" /></td></tr>';
//							j("#debug").prepend('<div>history_id: '+history_id+'</div>');
						}
						j("#databox").append(j('<div id="databox-tablebox"><table id="databox-table">'+th+table+'</table></div>'));
						j(".display-history-note").hover(
							function(){
								j(this).css({background:'#ffd'});
								j(this).find(".a-history-note").show();
							},
							function(){
								j(this).find(".a-history-note").hide();
								j(this).css({background:'#fff'});
							}
						);
					}
				}
			});
			j("#databox").show();j("#databox").fadeTo("fast",0.9);
			if(j("#spinwheel")){j("#spinwheel").fadeOut("fast");}
		}
	}
	return false;
}

function editHistoryNote(t){
	j(t).parent().hide();
	j(t).parent().css({background:'#fff'});	
	j(t).parent().next().show();
	j(t).parent().next().find(".input-history-note").focus();
	j(t).hide();
}

function resetHistoryNote(t){
	j(t).parent().hide();
	j(t).parent().prev().find(".input-history-note").blur();
	j(t).parent().prev().show();
}
function updateHistoryNote(t){
	var history_note = j(t).parent().find(".input-history-note").val();
	var history_id = j(t).parent().next(".history_id").val();
	if(t && !isNaN(usrid) && (grpid > 0)){
		j.ajax({
			type: "POST",
			data: "history_id="+history_id+"&history_note="+history_note+"",
			url: root+"histories/update.xml",
			dataType: "xml",
			error: function(xml){
			}, 
			success: function(xml) {
					var h = j(xml).find('history');
					if(h){
						var history_id = '';
						var history_note = '';
						for(var i = 0;i<h.length;i++){
							history_id = toNumber(h.eq(i).find('id').text());
							history_note = h.eq(i).find('note').text();
							j(t).parent().find(".input-history-note").val(history_note);
							j(t).parent().prev().find(".history-note").text(history_note);
						}
					}
			}
		});
	}
	j(t).parent().hide();
	j(t).parent().find(".input-history-note").blur();
	j(t).parent().prev().show();
	return false;
}
function addFav(t){
	var note = j(t).parent().parent().find(".input-note").val();
//	j("#debug").prepend('<div>note: '+note+'</div>');
//	j("#debug").prepend('<div>#: '+j(t).parent().parent().find(".input-note").val()+'</div>');
//	j("#debug").prepend('<div>#: '+j(t).parent('#addbox-tablebox').find(".input-note").val()+'</div>');
//		if(j("#spinwheel")){j("#spinwheel").fadeOut("fast");}
	var c = j.cookie('CAKEPHP');
	j.ajax({
		type: "POST",
		data: "data[C]="+c+"&status=2&note="+note,
		url: root+"histories/add.xml",
		dataType: "xml",
		error: function(xml){
		}, 
		success: function(xml) {
			j("#debug").prepend('<div>added to faves.</div>');
		}
	});
	if(j("#addbox")){
		if(j("#addbox").css("display") == 'block'){
			if(j("#goPrint")){
				j("#goPrint").removeAttr('disabled');
			}
			j("#addbox").fadeOut("fast");
		}
	}
	if(j("#showFav")){
		j("#showFav").show();
	}
	if(j("#showMap")){
		j("#showMap").hide();
	}
}


function deleteFav(n){
	if(!isNaN(n) && !isNaN(usrid) && (grpid > 0)){
		j.ajax({
			type: "POST",
			data: "history_id="+n+"",
			url: root+"histories/delete.xml",
			dataType: "xml",
			error: function(xml){
			}, 
			success: function(xml) {
					var h = j(xml).find('history');
					if(h){
						var history_id = '';
						var history_note = '';
						for(var i = 0;i<h.length;i++){
							history_id = toNumber(h.eq(i).find('id').text());
							j("#debug").prepend('<div>removed from faves. ('+history_id+')</div>');
							if(j(document).find("#history-upper-"+history_id)){
								j(document).find("#history-upper-"+history_id).remove();
							}
							if(j(document).find("#history-lower-"+history_id)){
								j(document).find("#history-lower-"+history_id).remove();
							}
							if(j(document).find(".fav-number")){
								j("#debug").prepend('<div>fav-number: ('+j(document).find(".fav-number").length+')</div>');
								var n = j(document).find(".fav-number").length;
								for(var i = 0;i < n;i++){
									j(document).find(".fav-number").eq(i).text(''+(n-i)+'');
									if(isEven(n-i)){
										j(document).find(".fav-number").eq(i).parent().find("td").addClass("alt");
										j(document).find(".fav-number").eq(i).parent().next().find("td").addClass("alt");
									}else{
										j(document).find(".fav-number").eq(i).parent().find("td").removeClass("alt");
										j(document).find(".fav-number").eq(i).parent().next().find("td").removeClass("alt");
									}
								}
							}
//							history_note = h.eq(i).find('note').text();
//							j(t).parent().find(".input-history-note").val(history_note);
//							j(t).parent().prev().find(".history-note").text(history_note);
						}
					}
			}
		});
	}
	return false;
}
function clearUserLandmarks(){
	userLandmarks = [];
	if(document.getElementById("databox-tablebox")){
		if(j("#databox-tablebox")){j("#databox-tablebox").remove();}
	}
	return false;
}
function addHistory(usrLandmarkId) {
	if(!isNaN(grpid) && !isNaN(usrid) && (grpid > 0)){
		j.ajax({
			type: "POST",
	//			data: "data[User][id]="+id+"&data[User][name]="+un,
			data: "landmark_id="+usrLandmarkId+"",
			url: root+"histories/add.xml",
			dataType: "xml",
			error: function(xml){
	//				j("#debug").text(xml);
			}, 
			success: function(xml) {
	//				j("#debug").append(xml);
	//				var username = '';
	//				username = j(xml).find('User_name').text();
	//		j("#debug").append(username+"<br />");
	//			 	if(username != ''){
	//					t.text(username);
	//				}
	//			return false;
			}
		});
	}
	return false;
}

j(window).resize(function(){
	if(GBrowserIsCompatible()){
		j("#map").css({
				width: mW()+"px",
				height: mH()+"px"
		});
		j("#spinwheel").css({
				width: mW()+"px",
				height: mH()+"px"
		});
		j("#addbox").css({
				width: mW()+"px",
				height: mH()+"px"
		});
		j("#databox").css({
				width: mW()+"px",
				height: mH()+"px"
		});
		map.panTo(center);
	}
});


