function show(show){
	document.getElementById(show).style.display = "block";
	return false;
}
function showHide(show,hide){
	document.getElementById(show).className = "";
	document.getElementById(hide).className = "hidden";
}
function hide(hide){
	document.getElementById(hide).style.display = "none";
	return false;
}
function kill(kill){
	document.getElementById(kill).innerHTML = "";
	return false;
}

function imageName(){
	if (document.getElementById("iframe")){
		var iframe = document.getElementById("iframe");
		var value = document.getElementById("inputGallery").value;
		iframe.contentWindow.document.getElementById("imagealbum").value = value;
	}
}

function confirm(){
	var status1 = document.getElementById("status-1-valid").value;
	var status2 = document.getElementById("status-2-valid").value;
	var status3 = document.getElementById("status-3-valid").value;
	if (status1 != "1" || status2 != "1" || status3 != "1"){
		var button = document.getElementById("createAlbumButton");
		button.style.width = "1px";
		button.style.height = "1px";
	} else {
		showCreateAlbumButton();
	}
	return false;
}

function verifyAlbum(value){
	if (value = ""){
		document.getElementById("status-2-valid").value = "";
		document.getElementById("status-2").src = "images/status-red.gif";
	} else {
		document.getElementById("status-2-valid").value = "1";
		document.getElementById("status-2").src = "images/status-green.gif";
	}
}

function hideLookOut(){
	var status2 = document.getElementById("status-2").src;
	var status3 = document.getElementById("status-3").src;
	if (status2 != "http://sharemyalbum.com/images/status-red.gif" && status3 != "http://sharemyalbum.com/images/status-red.gif"){
		document.getElementById("lookout-message").innerHTML = "";
		var button = document.getElementById("lookout");
		button.style.width = "1px";
		button.style.height = "1px";
	}
	return false;
}

function updatePreview(element,value){
	document.getElementById("preview");
}

function updateBackground(value){
	var image = "http://sharemyalbum.com/custom/t"+document.getElementById("inputGallery").value+".jpg";
	document.getElementById("previewBG").style.background = "url("+image+")";
	document.getElementById("previewBG").style.backgroundRepeat = value;
}

function createPreview(){
	var backgroundColor = document.getElementById("backgroundColor").value;
	var contentbgcolor = document.getElementById("contentbgcolor").value;
	var linkcolor = document.getElementById("linkcolor").value;
	var titlecolor = document.getElementById("titlecolor").value;
	var subtitlecolor = document.getElementById("subtitlecolor").value;
	var footertextcolor = document.getElementById("footertextcolor").value;
	var backgroundimage = document.getElementById("inputGallery").value;
	var backgroundimagerepeat = document.getElementById("backgroundimagerepeat").value;
	
	window.open('http://sharemyalbum.com/Preview/Custom&backgroundColor='+backgroundColor+'&contentbgcolor='+contentbgcolor+'&linkcolor='+linkcolor+'&titlecolor='+titlecolor+'&subtitlecolor='+subtitlecolor+'&footertextcolor='+footertextcolor+'&backgroundimage='+backgroundimage+'&backgroundimagerepeat='+backgroundimagerepeat,'width=1000,height=700');
}


function showCreateAlbumButton() {
	var button = document.getElementById("createAlbumButton");
	if (button.style.width!="186px"){
		var height = 12;
		var width = 6;
		button.style.width = width + "px";
		button.style.height = height + "px";	
		width = width + 30;
		height = height + 30;
		function plusTen(){
			width = width + 30;
			height = height + 30;
			button.style.width = width + "px";
			button.style.height = height + "px";		
			if (width<186){
				setTimeout(plusTen,5);
			}
		}
		
		setTimeout(plusTen,5);
	}
}

function showLookOut() {
	var createAlbum = document.getElementById("createAlbumButton");
	createAlbum.style.width = "1px";
	createAlbum.style.height = "1px";	
	
	var button = document.getElementById("lookout");
	var currentwidth = button.style.width;
	if (currentwidth != "212px"){
		var width = 2;
		var height = 10;
		button.style.width = width + "px";
		button.style.height = height + "px";	
		width = width + 70;
		height = height + 50;
		
		function plusTen(){
			width = width + 70;
			height = height + 50;
			button.style.width = width + "px";
			button.style.height = height + "px";		
			if (width<212){
				setTimeout(plusTen,10);
			}
		}
		setTimeout(plusTen,10);
	}
}

function createGallery(){
	document.creategalleryform.submit();
}

/* AJAX Calls */


// Check for Valid Picasa XML feed
//
function lookupAlbums(){
	var value = document.getElementById("email").value;
	var data = "googleid=" + value;
	if (value !=""){
		return !sendDatalookupAlbums(data);
	}
}
function sendDatalookupAlbums(data) {
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseResponselookupAlbums(request);
    };
		var target = document.getElementById("target");
		target.innerHTML = "<p class=\"aligncenter topmargin\"><strong>Looking up your albums...</strong> <img src=\"images/loader.gif\"></p>";
    request.open("POST", "includes/inc_lookupAlbums.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}
function parseResponselookupAlbums(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
			var target = document.getElementById("targetGetStarted");
			target.innerHTML = request.responseText;
    }
  }
}

function lookupAlbumsLoggedin(){
	var value = document.getElementById("googleid").value;
	var email = document.getElementById("email").value
	var data = "googleid=" + value + "&email=" + email;
	if (value !=""){
		return !sendDatalookupAlbumsLoggedin(data);
	}
}
function sendDatalookupAlbumsLoggedin(data) {
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseResponselookupAlbumsLoggedin(request);
    };
		var target = document.getElementById("target");
		target.innerHTML = "<p class=\"aligncenter topmargin\"><strong>Looking up your albums...</strong> <img src=\"images/loader.gif\"></p>";
    request.open("POST", "includes/inc_lookupAlbumsLoggedin.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}
function parseResponselookupAlbumsLoggedin(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
			var target = document.getElementById("targetGetStarted");
			target.innerHTML = request.responseText;
    }
  }
}




function checkGalleryName(value){
	var value = value.replace(/&/g,'');
	var value = value.replace(/"/g,'');
	var data = "gallery=" + value;
	if (value !=""){
		return !sendDatacheckGalleryName(data);
	}
}
function sendDatacheckGalleryName(data) {
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseResponsecheckGalleryName(request);
    };
		var target = document.getElementById("status-3");
		target.src = "images/loader.gif";
    request.open("POST", "includes/inc_gallerynamecheck.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}
function parseResponsecheckGalleryName(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
			var target = document.getElementById("status-3");
			target.src = request.responseText;
			if (request.responseText == "images/status-red.gif"){
				showLookOut();
				document.getElementById("inputGallery").style.borderColor = "#ff0000";
				galleryName = document.getElementById("inputGallery").value;
				document.getElementById("lookout-message").innerHTML = "Sorry, <strong>" + galleryName + "</strong> is already in use. Please pick another name.";
				document.getElementById("status-3-valid").value = "";
			} else if (request.responseText == "images/status-illegal.gif"){
				showLookOut();
				document.getElementById("inputGallery").style.borderColor = "#ff0000";
				galleryName = document.getElementById("inputGallery").value;
				document.getElementById("lookout-message").innerHTML = "Sorry, letters and numbers only. No symbols.";
				document.getElementById("status-3-valid").value = "";			
			} else {
				document.getElementById("inputGallery").style.borderColor = "#222222";
				document.getElementById("status-3-valid").value = "1";
				document.getElementById("lookout-message").innerHTML = "";
				hideLookOut();
				confirm();
			}
    }
  }
}

function checkGalleryNameLoggedin(value){
	var value = value.replace(/&/g,'');
	var value = value.replace(/"/g,'');
	var data = "gallery=" + value;
	if (value !=""){
		return !sendDatacheckGalleryNameLoggedin(data);
	}
}
function sendDatacheckGalleryNameLoggedin(data) {
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseResponsecheckGalleryNameLoggedin(request);
    };
		var target = document.getElementById("status-3");
		target.src = "images/loader.gif";
    request.open("POST", "includes/inc_gallerynamecheck.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}
function parseResponsecheckGalleryNameLoggedin(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
			var target = document.getElementById("status-3");
			target.src = request.responseText;
			if (request.responseText == "images/status-red.gif"){
				document.getElementById("inputGallery").style.borderColor = "#ff0000";
				galleryName = document.getElementById("inputGallery").value;
				document.getElementById("lookout-message").innerHTML = "Sorry, <strong>" + galleryName + "</strong> is already in use. Please pick another name.";
				document.getElementById("status-3-valid").value = "";
			} else if (request.responseText == "images/status-illegal.gif"){
				document.getElementById("inputGallery").style.borderColor = "#ff0000";
				galleryName = document.getElementById("inputGallery").value;
				document.getElementById("lookout-message").innerHTML = "Sorry, letters and numbers only. No symbols.";
				document.getElementById("status-3-valid").value = "";			
			} else {
				document.getElementById("inputGallery").style.borderColor = "#222222";
				document.getElementById("status-3-valid").value = "1";
				document.getElementById("lookout-message").innerHTML = "";
				confirm();
			}
    }
  }
}

// Check for Valid Picasa XML feed
//
function checkPicasaFeed(value){
	var data = "feed=" + value;
	if (value !=""){
		return !sendDatacheckPicasaFeed(data);
	}
}
function sendDatacheckPicasaFeed(data) {
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseResponsecheckPicasaFeed(request);
    };
		var target = document.getElementById("status-2");
		target.src = "images/loader.gif";
    request.open("POST", "includes/inc_picasafeedcheck.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}
function parseResponsecheckPicasaFeed(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
			var target = document.getElementById("status-2");
			target.src = request.responseText;
			if (request.responseText == "images/status-red.gif"){
				showLookOut();
				document.getElementById("inputRSS").style.borderColor = "#ff0000";
				document.getElementById("lookout-message").innerHTML = "Something is wrong with that RSS feed. <a href='howto.html' rel='howto'>Need Help?</a>";
				document.getElementById("status-2-valid").value = "";
			} else {
				hideLookOut();
				document.getElementById("inputRSS").style.borderColor = "#222222";
				document.getElementById("status-2-valid").value = "1";
				document.getElementById("lookout-message").innerHTML = "";
				confirm();
			}
    }
  }
}

// Check for Valid Email address
//
function checkValidEmail(value){
	var data = "email=" + value;
	if (value !=""){
		return !sendDatacheckValidEmail(data);
	}
}
function sendDatacheckValidEmail(data) {
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseResponsecheckValidEmail(request);
    };
		var target = document.getElementById("status-1");
		target.src = "images/loader.gif";
    request.open("POST", "includes/inc_validemailcheck.php", true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}
function parseResponsecheckValidEmail(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
			var target = document.getElementById("status-1");
			target.src = request.responseText;
			if (request.responseText == "images/status-red.gif"){
				showLookOut();
				document.getElementById("email").style.borderColor = "#ff0000";
				document.getElementById("lookout-message").innerHTML = "That email address doesn't look right.";
				document.getElementById("status-1-valid").value = "";
			} else {
				hideLookOut();
				document.getElementById("email").style.borderColor = "#222222";
				document.getElementById("status-1-valid").value = "1";
				document.getElementById("lookout-message").innerHTML = "";
				confirm();
			}
    }
  }
}

/* Tools */
document.onclick = function(e)
{
  var target = e ? e.target : window.event.srcElement;

  while (target && !/^(a|body)$/i.test(target.nodeName))
  {
    target = target.parentNode;
  }

  if (target && target.getAttribute('rel')
      && target.rel == 'external')
  {
    var external = window.open(target.href);

    return external.closed;
  }
  if (target && target.getAttribute('rel')
      && target.rel == 'howto')
  {
    var external = window.open(target.href,"HowTo","menubar=1,resizable=1,width=820,height=620");

    return external.closed;
  }
}

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) {
  document.getElementById(element).innerHTML = "<img src='images/loading.gif' alt='Loading...'>";
}
function clearLoading(element) {
	document.getElementById(element).innerHTML = "";
}
