function pageLoad() {

// Listen for Search Friends form being submitted

	if (document.getElementById("searchForm")){
	document.getElementById("searchForm").onsubmit = function() {
	var data = "";
	for (var i=0; i<this.elements.length; i++) {
	  data+= this.elements[i].name;
	  data+= "=";
	  data+= escape(this.elements[i].value);
	  data+= "&";
	}
	return !sendDataSearchFriends(data);
	}; 
	}

// Listen for About Me form being submitted

	if (document.getElementById("aboutMeForm")){
	document.getElementById("aboutMeForm").onsubmit = function() {
	var data = "";
	for (var i=0; i<this.elements.length; i++) {
	  data+= this.elements[i].name;
	  data+= "=";
	  data+= escape(this.elements[i].value);
	  data+= "&";
	}
	return !sendDataAboutMe(data);
	}; 
	}


// Listen for Bio form being submitted

	if (document.getElementById("setBioForm")){
	document.getElementById("setBioForm").onsubmit = function() {
	var data = "";
	for (var i=0; i<this.elements.length; i++) {
	  data+= this.elements[i].name;
	  data+= "=";
	  data+= escape(this.elements[i].value);
	  data+= "&";
	}
	return !sendDataBio(data);
	}; 
	}


// Listen for Set Location form being submitted
	if (document.getElementById("setLocationForm")){
	document.getElementById("setLocationForm").onsubmit = function() {
	var data = "";
	for (var i=0; i<this.elements.length; i++) {
	  data+= this.elements[i].name;
	  data+= "=";
	  data+= escape(this.elements[i].value);
	  data+= "&";
	}
	return !sendDataSetLocation(data);
	}; 
	}

// End pageLoad
}


// Listen for Avatar form being submitted
	function updateAvatar() {
	showHide('profileAvatar','profileAvatarEdit');
	var data = "";
	for (var i=0; i<document.setAvatarForm.elements.length; i++) {
	  data+= document.setAvatarForm.elements[i].name;
	  data+= "=";
	  data+= escape(document.setAvatarForm.elements[i].value);
	  data+= "&";
	}
	return !sendDataAvatar(data);
	} 

// Update About Me in DB and send response
function sendDataSearchFriends(data) {
  var request = getHTTPObject();
  if (request) {
		var container = document.getElementById("searchTarget");
		displayLoading(container);
    request.onreadystatechange = function() {
      parseResponseSearchFriends(request);
    };
    request.open( "POST", "../ajax/profileSearchFriends.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}

function parseResponseSearchFriends(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
    	var container = document.getElementById("searchTarget");
      container.innerHTML = request.responseText;
      fadeUp(container,230,86,0);
      pageLoad();
    }
  }
}


// Update About Me in DB and send response
function sendDataAboutMe(data) {
  var request = getHTTPObject();
  if (request) {
		var aboutMeButton = document.getElementById("aboutMeButton");
		aboutMeButton.value = "Updating...";
		aboutMeButton.disabled = "disabled";
    request.onreadystatechange = function() {
      parseResponseAboutMe(request);
    };
    request.open( "POST", "../ajax/profileAboutMe.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}

function parseResponseAboutMe(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
    	var container = document.getElementById("aboutMeContainer");
      container.innerHTML = request.responseText;
      fadeUp(container,230,86,0);
      showHide('profileAboutMe','profileAboutMeEdit');
			var aboutMeButton = document.getElementById("aboutMeButton");
			aboutMeButton.value = "Update About Me";
			aboutMeButton.disabled = "";
      pageLoad();
    }
  }
}


// Update Bio in DB and send response
function sendDataBio(data) {
  var request = getHTTPObject();
  if (request) {
		var setBioButton = document.getElementById("setBioButton");
		setBioButton.value = "Updating...";
		setBioButton.disabled = "disabled";
    request.onreadystatechange = function() {
      parseResponseBio(request);
    };
    request.open( "POST", "../ajax/profileBio.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}

function parseResponseBio(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
    	var container = document.getElementById("profileBio");
      container.innerHTML = request.responseText;
      fadeUp(container,230,86,0);
      showHide('profileBio','profileBioEdit');
			var setBioButton = document.getElementById("setBioButton");
			setBioButton.value = "Update Bio";
			setBioButton.disabled = "";
      pageLoad();
    }
  }
}



// Update Location in DB and send response

function sendDataSetLocation(data) {
  var request = getHTTPObject();
  if (request) {
		var setLocationButton = document.getElementById("setLocationButton");
		setLocationButton.value = "Updating...";
		setLocationButton.disabled = "disabled";
    request.onreadystatechange = function() {
      parseResponseSetLocation(request);
    };
    request.open( "POST", "../ajax/profileSetLocation.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}

function parseResponseSetLocation(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
			showHide('profileLocationEditButton','profileLocationEditDiv');
			var setLocationButton = document.getElementById("setLocationButton");
			setLocationButton.value = "Set My Location";
			setLocationButton.disabled = "";
			var lat = document.getElementById('homeLat').value;
			var lon = document.getElementById('homeLon').value;
					
			var mapSidebar = new GMap2(document.getElementById("mapSidebar"));
			
			mapSidebar.setCenter(new GLatLng(lat, lon), 3);
      mapSidebar.clearOverlays();
			var point = new GLatLng(lat,lon);
			var marker = new GMarker(point,user);
			mapSidebar.addOverlay(marker);
      pageLoad();
    }
  }
}



// Update Avatar in DB and send response

function sendDataAvatar(data) {
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseResponseAvatar(request);
    };
    request.open( "POST", "../ajax/profileAvatar.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}

function parseResponseAvatar(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
    	var container = document.getElementById("userPic1");
      container.src = request.responseText;
      var target = document.getElementById("userPic1");
      fadeUp(target,230,86,0);
      pageLoad();
    }
  }
}

		
// Ajax Tools

function getHTTPObject() {
  var xhr = false;
  if (window.XMLHttpRequest) {
    xhr = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    try {
      xhr = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
      try {
        xhr = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e) {
        xhr = false;
      }
    }
  }
  return xhr;
}

function displayLoading(element) {
  var image = document.createElement("img");
  image.setAttribute("src","../images/loading.gif");
  image.setAttribute("class","loading");
  image.setAttribute("alt","Loading...");
  element.appendChild(image);
}

function fadeUp(element,red,green,blue) {
  if (element.fade) {
    clearTimeout(element.fade);
  }
  element.style.backgroundColor = "rgb("+red+","+green+","+blue+")";
  if (red == 255 && green == 255 && blue == 255) {
    return;
  }
  var newred = red + Math.ceil((255 - red)/10);
  var newgreen = green + Math.ceil((255 - green)/10);
  var newblue = blue + Math.ceil((255 - blue)/10);
  var repeat = function() {
    fadeUp(element,newred,newgreen,newblue)
  };
  element.fade = setTimeout(repeat,100);
}

function clearElement(target) {
	var element = document.getElementById(target);
	element.innerHTML = '';
}



function changePic(url,id){
	var avatarID = document.getElementById("avatarID");
	avatarID.value = id;

	var avatarTarget = document.getElementById("avatarTarget");
	avatarTarget.src = url;
}

function changeUsername(){
	var username = document.registerForm.username.value;
	var usernameTarget = document.getElementById("usernameTarget");
	usernameTarget.innerHTML = username;
}

function showAddFriend(){
	var addToFriendsDiv = document.getElementById('addToFriendsDiv');
	addToFriendsDiv.className = "";
	var addToFriendsButton = document.getElementById('addToFriendsButton');
	addToFriendsButton.className = "hidden";
	document.getElementById('FriendMessage').focus();
}

function showHide(show,hide){
	var show = document.getElementById(show);
	show.className = "";
	var hide = document.getElementById(hide);
	hide.className = "hidden";
}

function showHideFocus(show,hide,focus){
	var show = document.getElementById(show);
	show.className = "";
	var hide = document.getElementById(hide);
	hide.className = "hidden";
	document.getElementById(focus).focus();
}

function clearForm(el) {
	if (el.defaultValue==el.value) el.value = "";
	if (el.style) el.style.cssText = "";
}

function showRegistration() {
	var profileRegisterButton = document.getElementById("profileRegisterButton");
	profileRegisterButton.className = "hidden";
	var profileRegisterForm = document.getElementById("profileRegisterForm");
	profileRegisterForm.className = "";

}

function showPics() {
	var profileStuffNavPics = document.getElementById("profileStuffNavPics");
	profileStuffNavPics.className = "active";
	var profileStuffPics = document.getElementById("profileStuffPics");
	profileStuffPics.className = "";
	var profileStuffNavBumps = document.getElementById("profileStuffNavBumps");
	profileStuffNavBumps.className = "";
	var profileStuffBumps = document.getElementById("profileStuffBumps");
	profileStuffBumps.className = "hidden";
	var profileStuffNavNews = document.getElementById("profileStuffNavNews");
	profileStuffNavNews.className = "";
	var profileStuffNews = document.getElementById("profileStuffNews");
	profileStuffNews.className = "hidden";
}

function showBumps() {
	var profileStuffNavPics = document.getElementById("profileStuffNavPics");
	profileStuffNavPics.className = "";
	var profileStuffPics = document.getElementById("profileStuffPics");
	profileStuffPics.className = "hidden";
	var profileStuffNavBumps = document.getElementById("profileStuffNavBumps");
	profileStuffNavBumps.className = "active";
	var profileStuffBumps = document.getElementById("profileStuffBumps");
	profileStuffBumps.className = "";
	var profileStuffNavNews = document.getElementById("profileStuffNavNews");
	profileStuffNavNews.className = "";
	var profileStuffNews = document.getElementById("profileStuffNews");
	profileStuffNews.className = "hidden";
}

function showNews() {
	var profileStuffNavPics = document.getElementById("profileStuffNavPics");
	profileStuffNavPics.className = "";
	var profileStuffPics = document.getElementById("profileStuffPics");
	profileStuffPics.className = "hidden";
	var profileStuffNavBumps = document.getElementById("profileStuffNavBumps");
	profileStuffNavBumps.className = "";
	var profileStuffBumps = document.getElementById("profileStuffBumps");
	profileStuffBumps.className = "hidden";
	var profileStuffNavNews = document.getElementById("profileStuffNavNews");
	profileStuffNavNews.className = "active";
	var profileStuffNews = document.getElementById("profileStuffNews");
	profileStuffNews.className = "";
}

function showPicsPictures() {
	
	var profilePicsAvatars = document.getElementById("profilePicsAvatars");
	profilePicsAvatars.className = "";
	var profileStuffAvatars = document.getElementById("profileStuffAvatars");
	profileStuffAvatars.className = "hidden";
	
	var profilePicsPictures = document.getElementById("profilePicsPictures");
	profilePicsPictures.className = "active";
	var profileStuffPics = document.getElementById("profileStuffPics");
	profileStuffPics.className = "";
}

function showPicsAvatars() {
	
	var profilePicsAvatars = document.getElementById("profilePicsAvatars");
	profilePicsAvatars.className = "active";
	var profileStuffAvatars = document.getElementById("profileStuffAvatars");
	profileStuffAvatars.className = "";
	
	var profilePicsPictures = document.getElementById("profilePicsPictures");
	profilePicsPictures.className = "";
	var profileStuffPics = document.getElementById("profileStuffPics");
	profileStuffPics.className = "hidden";
}


function showFriendsMap() {
	var profileFriendsNavMap = document.getElementById("profileFriendsNavMap");
	profileFriendsNavMap.className = "active";
	var profileFriendsMap = document.getElementById("profileFriendsMap");
	profileFriendsMap.className = "";
	
	var profileFriendsNavList = document.getElementById("profileFriendsNavList");
	profileFriendsNavList.className = "";
	var profileFriendsList = document.getElementById("profileFriendsList");
	profileFriendsList.className = "hidden";
	
	var profileFriendsNavSearch = document.getElementById("profileFriendsNavSearch");
	profileFriendsNavSearch.className = "";
	var profileFriendsSearch = document.getElementById("profileFriendsSearch");
	profileFriendsSearch.className = "hidden";
}

function showFriendsList() {
	var profileFriendsNavMap = document.getElementById("profileFriendsNavMap");
	profileFriendsNavMap.className = "";
	var profileFriendsMap = document.getElementById("profileFriendsMap");
	profileFriendsMap.className = "hidden";
	
	var profileFriendsNavList = document.getElementById("profileFriendsNavList");
	profileFriendsNavList.className = "active";
	var profileFriendsList = document.getElementById("profileFriendsList");
	profileFriendsList.className = "";
	
	var profileFriendsNavSearch = document.getElementById("profileFriendsNavSearch");
	profileFriendsNavSearch.className = "";
	var profileFriendsSearch = document.getElementById("profileFriendsSearch");
	profileFriendsSearch.className = "hidden";
}

function showFriendsSearch() {
	var profileFriendsNavMap = document.getElementById("profileFriendsNavMap");
	profileFriendsNavMap.className = "";
	var profileFriendsMap = document.getElementById("profileFriendsMap");
	profileFriendsMap.className = "hidden";
	
	var profileFriendsNavList = document.getElementById("profileFriendsNavList");
	profileFriendsNavList.className = "";
	var profileFriendsList = document.getElementById("profileFriendsList");
	profileFriendsList.className = "hidden";
	
	var profileFriendsNavSearch = document.getElementById("profileFriendsNavSearch");
	profileFriendsNavSearch.className = "active";
	var profileFriendsSearch = document.getElementById("profileFriendsSearch");
	profileFriendsSearch.className = "";
}





