function showLayer(id) {
	$(id).style.display = "block";	
}

function hideLayer(id) {
	$(id).style.display = "none";
}

function confirmDelete(url) {
	if (confirm("Are you sure you'd like to do this?")){
		location.replace(url);
	}
}

var divRegistered = null;

function showCalendar(field) {
	if (divRegistered != null) {
		$(divRegistered).style.display = "none";
		divRegistered = null;
	}
	divRegistered = 'div_' + field;
	
	getCalendar('', '', field);
}

function getCalendar(m, y, field) {
	new Ajax.Request('index.php?ajaxReq=calendar&m=' + m + '&y=' + y + '&field=' + field,
	{
		method:'get',
		onSuccess: function(t){
			var r = t.responseText || "";
			$('div_' + field).innerHTML = r;
			$('div_' + field).style.display = "block";
		}
	});
}

function changeCalendar(field) {
	getCalendar($(field + '_month').value, $(field + '_year').value, field);
}

function selectDate(date, field) {
	if (divRegistered != null) {
		$(divRegistered).style.display = "none";
		divRegistered = null;
	}
	
	$(field).value = date;
}

function getStates(c) {
	new Ajax.Request('index.php?ajaxReq=getStates&c=' + c,
	{
		method:'get',
		onSuccess: function(t){
			var r = t.responseText || "";
			$('states').innerHTML = r;
		}
	});
}

function saveField(table, type, id) {	
	value = document.getElementsByName(type + "_field").item(0).value;

	if ($(type)) {
		$(type).innerHTML = unescape(nl2br(value));
	}
	
	new Ajax.Request('index.php?ajaxReq=saveField&table=' + table + '&type=' + type + '&value=' + escape(value) + '&id=' + id, { method:'get' });
}

function nl2br(text){
	text = escape(text);
	
	if (text.indexOf('%0D%0A') > -1) {
		re_nlchar = /%0D%0A/g ;
	} else if(text.indexOf('%0A') > -1) {
		re_nlchar = /%0A/g ;
	} else if(text.indexOf('%0D') > -1) {
		re_nlchar = /%0D/g ;
	}
	
	if (typeof(re_nlchar) != "undefined") {
		return unescape(text.replace(re_nlchar,'<br />'));
	} else {
		return text;
	}
}

function updateContactDiv(id) {
	var first_name = document.getElementsByName('first_name').item(0).value;
	var last_name = document.getElementsByName('last_name').item(0).value;
	var address = document.getElementsByName('address').item(0).value;
	var phone = document.getElementsByName('phone').item(0).value;
	var email = document.getElementsByName('email').item(0).value;
	var website = document.getElementsByName('website').item(0).value;
	
	new Ajax.Request('index.php?ajaxReq=saveField&table=profiles&type=first_name&value=' + escape(first_name) + '&id=' + id, { method:'get' });
	new Ajax.Request('index.php?ajaxReq=saveField&table=profiles&type=last_name&value=' + escape(last_name) + '&id=' + id, { method:'get' });
	new Ajax.Request('index.php?ajaxReq=saveField&table=profiles&type=address&value=' + escape(address) + '&id=' + id, { method:'get' });
	new Ajax.Request('index.php?ajaxReq=saveField&table=profiles&type=phone&value=' + escape(phone) + '&id=' + id, { method:'get' });
	new Ajax.Request('index.php?ajaxReq=saveField&table=profiles&type=email&value=' + escape(email) + '&id=' + id, { method:'get' });
	new Ajax.Request('index.php?ajaxReq=saveField&table=profiles&type=website&value=' + escape(website) + '&id=' + id, { method:'get' });
	
	$('contact').innerHTML = "&raquo; " + first_name + " " + last_name + "<br />";
	if (address) {
		$('contact').innerHTML += unescape(nl2br(address)) + "<br />";
	}
	if (phone) {
		$('contact').innerHTML += "&raquo; " + phone + "<br />";
	}
	if (email) {
		$('contact').innerHTML += "&raquo; <a href='mailto:" + email + "'>" + email + "</a><br />";
	}
	if (website) {
		$('contact').innerHTML += "&raquo; <a href='" + website + "' target='_blank'>Website</a>";
	}
}

// New Link
function newLink(id) {
	new Ajax.Request('index.php?ajaxReq=newLink&id=' + id, {
		method:'get',
		onSuccess: function(t){
			var r = t.responseText || "";
			var row = $('links_edit_table').insertRow(-1);
			var c1 = row.insertCell(0);
			var c2 = row.insertCell(1);
			var c3 = row.insertCell(2);
			c1.innerHTML = "<input type='text' name='link_title' id='" + r + "' style='width:85px;' />";
			c2.innerHTML = "<input type='text' name='link_url' style='width:85px;' />";
			c3.innerHTML = "<a href='javascript:deleteLink(" + r + ");' title='Delete' style='color:red;'>[x]</a>";
			row.id = "link_edit_" + r;
			row2 = $('links_table').insertRow($('links_table').rows.length - 1);
			row2.innerHTML = "<td></td><td></td>";
			row2.id = "link_" + r;

		}
	});
}

// Save Links
function saveLinks(j) {
	var titles = document.getElementsByName('link_title');
	var urls = document.getElementsByName('link_url');
	
	for (var i = 0; i < titles.length; i++) {
		new Ajax.Request('index.php?ajaxReq=saveField&table=profiles_links&type=title&value=' + escape(titles.item(i).value) + '&id=' + titles.item(i).id, { method:'get' });
		new Ajax.Request('index.php?ajaxReq=saveField&table=profiles_links&type=url&value=' + escape(urls.item(i).value) + '&id=' + titles.item(i).id, { method:'get' });
		$('link_' + titles.item(i).id).deleteCell(0);
		var c = $('link_' + titles.item(i).id).insertCell(0);
		c.innerHTML = "&raquo; <a href='" + urls.item(i).value + "'>" + titles.item(i).value;
	}
	
	hideLayer("links_edit");
}

// Delete Link
function deleteLink(id) {
	new Ajax.Request('index.php?ajaxReq=deleteLink&id=' + id, {method:'get'});
	$('links_edit_table').deleteRow(document.getElementById("link_edit_" + id).rowIndex);
	$('links_table').deleteRow(document.getElementById("link_" + id).rowIndex);
}

// Add Album
function addAlbum() {
	var objBody = document.getElementsByTagName("body").item(0);
	objBody.insertBefore($('album_edit_overlay'), objBody.firstChild);
	objBody.insertBefore($('album_edit'), objBody.firstChild);
	$('album_edit_overlay').style.height = getPageSize()[1] + 'px';
	showLayer('album_edit');
	showLayer('album_edit_overlay');
}

// Save New Album
function saveNewAlbum(id) {
	hideLayer('album_edit');
	hideLayer('album_edit_overlay');
	new Ajax.Request('index.php?ajaxReq=newAlbum&title=' + escape(document.getElementsByName('title').item(0).value) + '&description=' + escape(document.getElementsByName('description').item(0).value) + '&tags=' + escape(document.getElementsByName('tags').item(0).value) + '&id=' + id, {
		method:'get',
		onSuccess: function(t){
			var r = t.responseText || "";
			window.location.assign('http://www.fencecheck.com/profiles.php?id=' + id + "&album=" + r);
		}
	});
}

// Save Album
function saveAlbum(id) {
	hideLayer('album_edit');
	hideLayer('album_edit_overlay');
	new Ajax.Request('index.php?ajaxReq=saveAlbum&title=' + escape(document.getElementsByName('title').item(0).value) + '&description=' + escape(document.getElementsByName('description').item(0).value) + '&tags=' + escape(document.getElementsByName('tags').item(0).value) + '&id=' + id, {method:'get'});
	$('album_title').innerHTML = document.getElementsByName('title').item(0).value;
	$('album_description').innerHTML = unescape(nl2br(document.getElementsByName('description').item(0).value));
}

// Add Photo
function addPhoto(id) {
	var objBody = document.getElementsByTagName("body").item(0);
	objBody.insertBefore($('photo_edit_overlay'), objBody.firstChild);
	objBody.insertBefore($('photo_edit'), objBody.firstChild);
	$('photo_edit_overlay').style.height = getPageSize()[1] + 'px';
	showLayer('photo_edit');
	showLayer('photo_edit_overlay');
	
	if (typeof(id) != "undefined") {
		document.getElementsByName("album_id").item(0).value = id;
	}
}

function confirmDelete(url) {
	if (confirm("Are you sure you'd like to do this?")){
		location.replace(url);
	}
}

function sortableChangeAlbums() {
	var clear = document.getElementsByClassName('clear');
	for (i = 0; i < clear.length; i++) {
		$('sort_albums').removeChild(clear[i]);
	}
	var spacer = document.getElementsByClassName('album_spacer');
	for (i = 0; i < spacer.length; i++) {
		$('sort_albums').removeChild(spacer[i]);
	}
			
	var album = document.getElementsByClassName('album');
	for (i = 0; i < album.length; i++) {
		if (i != 0 && i % 4 == 0) {
			var clear = document.createElement('div');
			clear.className = 'clear';
			$('sort_albums').insertBefore(clear, album[i]);
		} else if (i != 0){
			var spacer = document.createElement('div');
			spacer.className = 'album_spacer';
			spacer.innerHTML = "<img src='/img/spacer.gif' width='1' height='108' />";
			$('sort_albums').insertBefore(spacer, album[i]);
		}
	}
	var clear = document.createElement('div');
	clear.className = 'clear';
	$('sort_albums').appendChild(clear);
}

function sortableUpdateAlbums() {
	var album = document.getElementsByClassName('album');
	for (i = 0; i < album.length; i++) {
		new Ajax.Request('index.php?ajaxReq=saveAlbumOrder&profile=' + MEMBER_ID + '&album=' + album[i].id + '&order=' + i, {method:'get'});
	}
}

function sortableChangePhotos() {
	var clear = document.getElementsByClassName('clear');
	for (i = 0; i < clear.length; i++) {
		$('sort_photos').removeChild(clear[i]);
	}
	var spacer = document.getElementsByClassName('album_spacer');
	for (i = 0; i < spacer.length; i++) {
		$('sort_photos').removeChild(spacer[i]);
	}
			
	var photo = document.getElementsByClassName('image_thumbnail');
	for (i = 0; i < photo.length; i++) {
		if (i != 0 && i % 4 == 0) {
			var clear = document.createElement('div');
			clear.className = 'clear';
			$('sort_photos').insertBefore(clear, photo[i]);
		} else if (i != 0){
			var spacer = document.createElement('div');
			spacer.className = 'album_spacer';
			spacer.innerHTML = "<img src='/img/spacer.gif' width='1' height='108' />";
			$('sort_photos').insertBefore(spacer, photo[i]);
		}
	}
	var clear = document.createElement('div');
	clear.className = 'clear';
	$('sort_photos').appendChild(clear);
}

function sortableUpdatePhotos() {
	var photo = document.getElementsByClassName('image_thumbnail');
	for (i = 0; i < photo.length; i++) {
		new Ajax.Request('index.php?ajaxReq=savePhotoOrder&profile=' + MEMBER_ID + '&album=' + ALBUM_ID + '&photo=' + photo[i].id + '&order=' + i, {method:'get'});
	}
}