function getHTTPObject() {
	var xhr = false;//set to false, so if it fails, do nothing
	if(window.XMLHttpRequest) {//detect to see if browser allows this method
		var xhr = new XMLHttpRequest();//set var the new request
	} else if(window.ActiveXObject) {//detect to see if browser allows this method
		try {
			var xhr = new ActiveXObject("Msxml2.XMLHTTP");//try this method first
		} catch(e) {//if it fails move onto the next
			try {
				var xhr = new ActiveXObject("Microsoft.XMLHTTP");//try this method next
			} catch(e) {//if that also fails return false.
				xhr = false;
			}
		}
	}
	return xhr;//return the value of xhr
}

function removeAll() {
  var elSel = document.getElementById('days');
  while (elSel.length > 0) {
    elSel.remove(elSel.length - 1);
  }
}

function forDays(num) {	var select = document.getElementById("days");
	for(i=1;i<=num;i++) {
		 select.options[select.options.length] = new Option(i, i);
	}
}
function Replace(val) {
	removeAll()
	if(val == 1 || val == 3 || val == 5 || val == 7 || val == 8 || val == 10 || val == 12)
		forDays(31)
	else if(val == 2)
		forDays(29)
	else if(val == 4 || val == 6 || val == 9 || val == 11)
		forDays(30)
}


function gradient(id, level)
{
	var box = document.getElementById(id);
	box.style.opacity = level;
	box.style.MozOpacity = level;
	box.style.KhtmlOpacity = level;
	box.style.filter = "alpha(opacity=" + level+ ")";
	box.style.display="block";
	return;
}


function fadein(id)
{
	var level = 0;
	while(level <= 1)
	{
		setTimeout( "gradient('" + id + "'," + level + ")", (level* 1000) + 10);
		level += 0.01;
	}
}


// Open the lightbox

function openbox(formtitle, fadin)
{
  var box = document.getElementById('box');
  document.getElementById('filter').style.display='block';

  var btitle = document.getElementById('boxtitle');
  btitle.innerHTML = formtitle;

  if(fadin)
  {
	 gradient("box", 0);
	 fadein("box");
  }
  else
  {
    box.style.display='block';
  }
}

function ClearText(id) {
	t = document.getElementById('title_h')
	if(t.className=="isnt_defined") {
		t.innerHTML = '<input size="60" name="Name" id="title_input" type="text" value="'+t.innerHTML+'">'
		t.innerHTML += '<input onclick="TitleChange(document.getElementById(\'title_input\').value,'+id+')" type="button" value="Save!" />'
		t.className = "defined"
	}
}
function AddText(val) {
	t = document.getElementById('title_h')
	t.innerHTML = val
	t.className="isnt_defined"
}

function TitleChange(title,id){
	httpObject = getHTTPObject();
	if (httpObject != null) {
		httpObject.open("GET", "../sources/ajax.handler.php?action=changetitle&id="+id+"&title="+title, true);
		httpObject.send(null);
		httpObject.onreadystatechange = function() {			if(httpObject.readyState == 4){
				result = httpObject.responseText;
				if (result.substring(0, 3) === "OK:") {
					AddText(result.substring(3));
				} else
					alert(result)
			}
		};
	}
}


function ClearTag(id) {
	t = document.getElementById('title_t')
	if(t.className=="isnt_defined") {		if(document.all){
	    	t.innerHTML = t.innerText;
		} else{
	    	t.innerHTML = t.textContent
		}

		t.innerHTML = '<input size="32" name="Name" id="title_tag" type="text" value="'+t.innerHTML+'">'
		t.innerHTML += '<input onclick="TagChange(document.getElementById(\'title_tag\').value,'+id+')" type="button" value="Save!" />'
		t.className = "defined"
	}
}
function AddTag(val) {
	t = document.getElementById('title_t')
	t.innerHTML = val
	t.className="isnt_defined"
}

function TagChange(tag,id){
	httpObject = getHTTPObject();
	if (httpObject != null) {
		httpObject.open("GET", "../sources/ajax.handler.php?action=changetag&id="+id+"&tag="+tag, true);
		httpObject.send(null);
		httpObject.onreadystatechange = function() {
			if(httpObject.readyState == 4){
				result = httpObject.responseText;
				if (result.substring(0, 3) === "OK:") {
					AddTag(result.substring(3));
				} else
					alert(result)
			}
		};
	}
}

function nl2br (str, is_xhtml) {
	//var breakTag = (is_xhtml || typeof is_xhtml === 'undefined') ? '' : '<br>';
    //return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1'+ breakTag +'$2');
    return str.replace("/<br />/gm","gfd");
}

function ClearCmnt(id) {
	t = document.getElementById('title_c')
	if(t.className=="isnt_defined") {		t.innerHTML = t.innerHTML.replace("<br>","\n");
		t.innerHTML = t.innerHTML.replace("<br />","\n");
		if(document.all){
	    	t.innerHTML = t.innerText;
		} else{
	    	t.innerHTML = t.textContent;
		}

		t.innerHTML = '<textarea name="Name" id="title_cmnt" rows=3 cols=38 wrap="off">'+t.innerHTML+'</textarea><br />'
		t.innerHTML += '<input onclick="CmntChange(document.getElementById(\'title_cmnt\').value,'+id+')" type="button" value="Save!" />'
		t.className = "defined"
	}
}
function AddCmnt(val) {
	t = document.getElementById('title_c')
	t.innerHTML = val
	t.className="isnt_defined"
}

function DelPhoto(id) {	var r = confirm("Are you sure you want to PERMANENTLY DELETE this photo?")
	if(r) {
		httpObject = new XMLHttpRequest();
		if (httpObject != null) {
			httpObject.open("GET", "../sources/ajax.handler.php?action=deletephoto&id="+id, true);
			httpObject.send(null);
			httpObject.onreadystatechange = function() {
				if(httpObject.readyState == 4){
					result = httpObject.responseText;
					if (result.substring(0, 3) === "OK:") {
						location.href=result.substring(3);
					} else
						alert(result)
				}
			};
		}
	}
}

function Fav(id,t) {
	httpObject = getHTTPObject();
	if (httpObject != null) {
		httpObject.open("GET", "../sources/ajax.handler.php?action=fav&id="+id, true);
		httpObject.send(null);
		httpObject.onreadystatechange = function() {
			if(httpObject.readyState == 4){
				result = httpObject.responseText;
				if (result.substring(0, 3) === "OK:") {
					t.innerHTML = result.substring(3);
				} else
					alert(result)
			}
		};
	}
}

function xDocSize() {  var b=document.body, e=document.documentElement;
  var esw=0, eow=0, bsw=0, bow=0, esh=0, eoh=0, bsh=0, boh=0;
  if (e) {
    esw = e.scrollWidth;
    eow = e.offsetWidth;
    esh = e.scrollHeight;
    eoh = e.offsetHeight;
  }
  if (b) {
    bsw = b.scrollWidth;
    bow = b.offsetWidth;
    bsh = b.scrollHeight;
    boh = b.offsetHeight;
  }
//  alert('compatMode: ' + document.compatMode + '\n\ndocumentElement.scrollHeight: ' + esh + '\ndocumentElement.offsetHeight: ' + eoh + '\nbody.scrollHeight: ' + bsh + '\nbody.offsetHeight: ' + boh + '\n\ndocumentElement.scrollWidth: ' + esw + '\ndocumentElement.offsetWidth: ' + eow + '\nbody.scrollWidth: ' + bsw + '\nbody.offsetWidth: ' + bow);
  return {w:Math.max(esw,eow,bsw,bow),h:Math.max(esh,eoh,bsh,boh)};
}

// Close the lightbox

function closebox()
{
   document.getElementById('box').style.display='none';
   document.getElementById('filter').style.display='none';
}


