function findItemSeq(groupSeqArray, itemID) {
	for (var i=0; i<groupSeqArray.length; i++) {
		if (groupSeqArray[i] == itemID) { 
			return i; 
		}
	}
}

function showBio(objectId) {
	$(objectId).className = 'bio';
	$(objectId+'-show').className = 'hiddenObj';
}

function hideBio(objectId) {
	$(objectId).className = 'hiddenObj';
	$(objectId+'-show').className = '';
}

function swapNodeValues(sourceDivObject, targetDivObject) {
	var tmpDiv = sourceDivObject.childNodes[0].nodeValue;
	sourceDivObject.childNodes[0].nodeValue = targetDivObject.childNodes[0].nodeValue;
	targetDivObject.childNodes[0].nodeValue = tmpDiv;	
}

function swapHTML(sourceDivObject, targetDivObject) {
	var tmpDiv = sourceDivObject.innerHTML
	sourceDivObject.innerHTML = targetDivObject.innerHTML
	targetDivObject.innerHTML = tmpDiv;	
}

function swapArrayElements(arrayToSwap, positionOne, positionTwo) {
	var tmpItem = arrayToSwap[positionOne];
	arrayToSwap[positionOne] = arrayToSwap[positionTwo];
	arrayToSwap[positionTwo] = tmpItem;
}

function moveRPUp(groupID, sourcePosition) {
	var sourceDivPosition = parseInt(sourcePosition);
	
	//get the input field that has the rp order info
	var seqArrayInputObject = getObject(groupID+'seqArray');	
	
	//convert the info into a javascript array variable
	var groupSeqArray = seqArrayInputObject.value.split(',');
	
	if (sourceDivPosition>0) {
		var sourceDivObject = getObject(sourcePosition+groupID+'Div');	
		var targetDivPosition = sourceDivPosition-1;
		var targetDivObject = getObject(targetDivPosition+groupID+'Div');
		
		//swap text
		swapHTML(sourceDivObject, targetDivObject);
		
		//reorder groupSeqArray variable
		swapArrayElements(groupSeqArray, sourceDivPosition, targetDivPosition);
		
		//set input field.
		seqArrayInputObject.value = groupSeqArray.join(',');
	}
}


function moveRPDown(groupID, sourcePosition) {
	var sourceDivPosition = parseInt(sourcePosition);
	
	//get the input field that has the rp order info
	var seqArrayInputObject = getObject(groupID+'seqArray');	
	
	//convert the info into a javascript array variable
	var groupSeqArray = seqArrayInputObject.value.split(',');
	
	if (sourceDivPosition< groupSeqArray.length-1) {
		var sourceDivObject = getObject(sourcePosition+groupID+'Div');	
		var targetDivPosition = sourceDivPosition+1;
		var targetDivObject = getObject(targetDivPosition+groupID+'Div');
		
		//swap text
		swapHTML(sourceDivObject, targetDivObject);
		
		//reorder groupSeqArray variable
		swapArrayElements(groupSeqArray, sourceDivPosition, targetDivPosition);
		
		//set input field.
		seqArrayInputObject.value = groupSeqArray.join(',');
	}
}

function getObject(objectID) {
	if (document.all) {
		return document.all[objectID];
	}
	else if (document.getElementById) {
		return document.getElementById(objectID);
	}
	else if (document.layers) {
		var found=0;
		for (var i=0; i<document.forms[0].elements.length; i++) {
			if (document.forms[0].elements[i].name==objectID) { found=1; return document.forms[0].elements[i]; }
		}
	}
	alert ('Your browser is not supported. Please use a more modern browser.');
}


function handleCheck (callingObjectID, grpId) {
	var callingObject = $(callingObjectID);
	var cntObj = $('gCnt'+grpId);
	var limObj = $('gLim'+grpId);
	var cnt = parseInt(cntObj.value);
	var lim = parseInt(limObj.value);
	
	if (callingObject.checked) {
		cnt++;
		if (cnt > lim) {
			alert ('You may only pick ' + lim + ' in this group');
			callingObject.checked = false;
			cnt--;
		}
	}
	else {
		cnt--;
	}
	cntObj.value = cnt;
}
