function fadeIn(id) {
	Effect.Appear(id,{ duration: .3 });
}

function fadeOut(id) {
	Effect.Fade(id,{ duration: .1 });
}

function swapLargeGalleryImage(galleryID,galleryImageID) {
	baseSRC = '/images/gallery_images/';
	src = baseSRC+galleryID+'_'+galleryImageID+'_large.jpg';
	var bigImageSlot = document.getElementById('big_image');
	if(bigImageSlot) {
		bigImageSlot.src = src;
	}
}
var currentListX = 0;
var movementX = 218;
function pageRight(targetID,max) {
	moved = document.getElementById(targetID);
	if(moved && currentListX < ((max - 4) * movementX)) {
		new Effect.Move(moved,{ x: -movementX, y: 0, mode: 'relative' })
		currentListX = currentListX+movementX;
	}
}

function pageLeft(targetID) {
	moved = document.getElementById(targetID);
	if(moved && currentListX > 0) {
		new Effect.Move(moved,{ x: movementX, y: 0, mode: 'relative' })
		currentListX = currentListX-movementX;
	}
}

var currentBioX = 0;
var movementBioX = 337;

function pageBiosLeft(targetID) {
	moved = document.getElementById(targetID);
	if(moved && currentBioX > 0) {
		new Effect.Move(moved,{ x: movementBioX, y: 0, mode: 'relative' })
		currentBioX = currentBioX-movementBioX;
	}
}

function pageBiosRight(targetID,max) {
	moved = document.getElementById(targetID);
	if(moved && currentBioX < ((max) * movementBioX)) {
		new Effect.Move(moved,{ x: -movementBioX, y: 0, mode: 'relative' })
		currentBioX = currentBioX+movementBioX;
	}
}

function surroundText(text1, text2, textarea) {
    if (typeof textarea.caretPos != "undefined" && textarea.createTextRange) {
        var caretPos = textarea.caretPos, temp_length = caretPos.text.length;
        caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == " " ? text1 + caretPos.text + text2 + " " : text1 + caretPos.text + text2;
        if (temp_length == 0) {
            caretPos.moveStart("character", - text2.length);
            caretPos.moveEnd("character", - text2.length);
            caretPos.select();
        } else {
            textarea.focus(caretPos);
        }
    } else if (typeof textarea.selectionStart != "undefined") {
        var begin = textarea.value.substr(0, textarea.selectionStart);
        var selection = textarea.value.substr(textarea.selectionStart, textarea.selectionEnd - textarea.selectionStart);
        var end = textarea.value.substr(textarea.selectionEnd);
        var newCursorPos = textarea.selectionStart;
        var scrollPos = textarea.scrollTop;
        textarea.value = begin + text1 + selection + text2 + end;
        if (textarea.setSelectionRange) {
            if (selection.length == 0) {
                textarea.setSelectionRange(newCursorPos + text1.length, newCursorPos + text1.length);
            } else {
                textarea.setSelectionRange(newCursorPos, newCursorPos + text1.length + selection.length + text2.length);
            }
            textarea.focus();
        }
        textarea.scrollTop = scrollPos;
    } else {
        textarea.value += text1 + text2;
        textarea.focus(textarea.value.length - 1);
    }
}

function insertLink(targetID) {
	var linkTarget = document.getElementById('link_url').value;
	var targetText = document.getElementById(targetID);
	var internal = document.getElementById('internal');
	var targetFrame = '';
	if(!internal || !internal.checked) {
		targetFrame = ' target="_blank"';
	}
	linkOpen = '<a href="'+linkTarget+'"'+targetFrame+'>';
	linkClose = '</a>';
	surroundText(linkOpen,linkClose,targetText);
	new Effect.Fade('add_link');
}

function insertEmail(targetID) {
	var linkTarget = document.getElementById('email_address').value;
	var targetText = document.getElementById(targetID);
	linkOpen = '<a href="mailto:'+linkTarget+'">';
	linkClose = '</a>';
	surroundText(linkOpen,linkClose,targetText);
	new Effect.Fade('add_email');
}

function insertInternal(targetID) {
	var linkTarget = document.getElementById('new_page_key_id').value;
	var targetText = document.getElementById(targetID);
	linkOpen = '<a href="/index.php?page_trigger_key='+linkTarget+'">';
	linkClose = '</a>';
	surroundText(linkOpen,linkClose,targetText);
	new Effect.Fade('add_internal');
}

function insertGallery(targetID) {
	var linkTarget = document.getElementById('new_gallery_id').value;
	var targetText = document.getElementById(targetID);
	linkOpen = '<a href="/index.php?page=ViewGalleryDetail&gallery_id='+linkTarget+'">';
	linkClose = '</a>';
	surroundText(linkOpen,linkClose,targetText);
	new Effect.Fade('add_internal');
}

function insertBulletPoint(targetID) {
	var targetText = document.getElementById(targetID);
	bulletPointOpen = '<li>';
	bulletPointClose = '</li>';
	surroundText(bulletPointOpen,bulletPointClose,targetText);
}

function insertBold(targetID) {
	var targetText = document.getElementById(targetID);
	bulletPointOpen = '<b>';
	bulletPointClose = '</b>';
	surroundText(bulletPointOpen,bulletPointClose,targetText);
}

function insertItalic(targetID) {
	var targetText = document.getElementById(targetID);
	bulletPointOpen = '<i>';
	bulletPointClose = '</i>';
	surroundText(bulletPointOpen,bulletPointClose,targetText);
}

function insertUnderline(targetID) {
	var targetText = document.getElementById(targetID);
	bulletPointOpen = '<u>';
	bulletPointClose = '</u>';
	surroundText(bulletPointOpen,bulletPointClose,targetText);
}

function changeOpac(opacity, id) {
	var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

var currentLocked;

function lockTestChangeOpac(targetID) {
	if(currentLocked != targetID) {
		changeOpac(60,'thumb'+targetID);
	}
}

function lockOpacity(targetID) {
	changeOpac(100,'thumb'+targetID);
	if(document.getElementById('thumb'+currentLocked)) {
		changeOpac(60,'thumb'+currentLocked);
	}
	currentLocked = targetID;
}

var currentImageCount;

function addImageRow() {
	var toCopy = document.getElementById('new_gallery_image');
	var copyTo = document.getElementById('next_image_row');
	if(toCopy && copyTo) {
		copyTo.insert(toCopy.innerHTML);
		currentImageCount++;
	}
}

currentPageImage = 0;

function pageImageCarousel() {
	pageImageDivs = $$('.page_image');
	if(pageImageDivs.length > 1) {
		if(currentPageImage == (pageImageDivs.length - 1)) {
			newPageImage = 0;
		}
		else {
			newPageImage = currentPageImage + 1;
		}
		
		pageImageDivs[currentPageImage].fade({
				duration: .5,
				afterSetup: function () {
					pageImageDivs[newPageImage].appear({duration: .5});
				}
				});
		currentPageImage = newPageImage;
		setTimeout('pageImageCarousel()',3000);
	}
}
