var added = 0;
var refresh = 0;

function remoteid(url, x, y, criteria) {
	var nt = document.NavEdit.NavType.value;
	if ((criteria == "content.asp") || (criteria ==  "survey.asp") || (criteria ==  "page.asp")) {
		win=window.open(url+"?type="+criteria, '','width='+x+',height='+y);
		win.creator=self;}
}
function remoteid2(url, x, y, criteria) {

	win=window.open(url+criteria, '','width='+x+',height='+y+',left=200,top=50,toolbar=no,status=no,scrollbars=yes,location=no,menubar=no,directories=no');
	
	win.creator=self;
}

function remoteparent(criteria) {
		
		win=window.open("remoteparent.asp?id="+criteria, '','width=400,height=250');
		win.creator=self;
}

function setRefresh(){
    refresh = 1;
}

function checkRefresh(){
    if (refresh==1)
	history.go(0);
}

function setNavLink(nlval) {
	if (nlval == "ftp") {
		document.NavEdit.NavLink.options[4].selected=true;
		}
	if (nlval == "mailto") {
		document.NavEdit.NavLink.options[3].selected=true;
		}
}

function passValue(str, box) {
	var new_file = str;
	var frmctrl = 'document.NavEdit.' + box
	var box = new_file.substring(0,new_file.lastIndexOf("\\")+1);
	var ext = new_file.substring(box.length,new_file.length+1);
	eval(frmctrl).value = ext;
	if (box=="NavParent"); {
		setRefresh();
	}
	
	document.NavEdit.NavAdmin.focus();
}

function multiMoveDown(selectb) {
	var max;
	var selected = new Array();
	var j = 0;
	if (! isDataItem(selectb.options[selectb.length - 1].value))
		max = selectb.length - 1;
	else 
		max = selectb.length;
	for (i=0; i<max; i++) {
		if ((selectb.options[i].selected == true) && (isDataItem(selectb.options[i].value)) ){
			selected[j] = i;
			j++;
		}
	}
	if (selected[j-1] < max-1) {
		for (j=selected.length-1; j>=0 ; j--) {
			moveItemDown(selectb, selected[j])
		}
	}
}

function moveItemDown(selectb, index) {
	if (! isDataItem(selectb.options[selectb.length - 1].value))
		max = selectb.length - 1;
	else
		max = selectb.length;
	if (index == null)
		index = selectb.selectedIndex;
	if ( (max <= 1) || (index < 0) || (index >= (max-1)) )
	return;
	// set new index
	var switchindex = index+1;
	while (! isDataItem(selectb.options[switchindex].value)) {
			switchindex++;
		if (switchindex >= (selectb.length-1))
			break;
		}
	
	var tmp=selectb.options[switchindex].text;
	var val=selectb.options[switchindex].value;
	selectb.options[switchindex].text=selectb.options[index].text;
	selectb.options[switchindex].value=selectb.options[index].value;
	selectb.options[index].text=tmp;
	selectb.options[index].value=val;
	selectb.options[index].selected=false;
	selectb.options[switchindex].selected=true;
}
	
function multiMoveUp(selectb) {
	var selected = new Array();
	var j = 0;
	var selectedValue;
	for (i=0; i<selectb.length; i++) {
		if ( (selectb.options[i].selected == true) && (isDataItem(selectb.options[i].value)) ) {
			if (i==0)
				break;
			if (i > 0) {
				selected[j] = i;
				j++;
			}
		}
	}
	for (j=0 ; j<selected.length ; j++) {
		moveItemUp(selectb, selected[j])
	}
}

function moveItemUp(selectb, index) {
	var max;
	if (! isDataItem(selectb.options[selectb.length - 1].value))
		max = selectb.length - 1;
	else
		max = selectb.length;
	if (index == null)
		index = selectb.selectedIndex;
	if ( (max <= 1) || (index <= 0) || (index >= max) )
		return;
		// set new index
	var switchindex = index-1;
	while (! isDataItem(selectb.options[switchindex].value)) {
		switchindex--;
		if (switchindex < 0)
			break;
	}
	var tmp=selectb.options[switchindex].text;
	var val=selectb.options[switchindex].value;
	selectb.options[switchindex].text=selectb.options[index].text;
	selectb.options[switchindex].value=selectb.options[index].value;
	selectb.options[index].text=tmp;
	selectb.options[index].value=val;
	selectb.options[index].selected=false;
	selectb.options[switchindex].selected=true;
}

function isDataItem(optionValue) {
	if (optionValue.indexOf("^separator^") == 0)
		return false;
	else
		return true;
}

function addValue(start, dest) {
	if (added!=1){ 
	var destination = dest;
	var newIndex=dest.options.length;
	var newValue = start.value;
	if (newValue.length !=0) {
		destination[newIndex-1].text=newValue;
		destination[newIndex-1].value= newValue;
		destination.selectedIndex=newIndex;
		added = 1
		}
	}
}


function saveSelectData(form) {
	var orderlist = "";
	var navorderbox = form.NavOrder;
	for (i=1; i<navorderbox.length+1; i++) {
		orderlist = orderlist + navorderbox[i-1].value + ",";
		}
	form.Order.value = orderlist;
}

	function NotBlank(fld) {
		var inputStr = fld.value;
		while(inputStr.charAt(0)==' ')inputStr=inputStr.substring(1,inputStr.length);
		if (inputStr != "") {return "True"}
		else {return "False"}
	}	
	
	function inRange(targ, lo, hi){
		var num = targ;
		if (num < lo || num > hi){
			return false;
		}
		return true;
	}

	function valDate(dt) {
		var ok = "yes";
		var digits = dt.value.split("/");
		
		if (!dt.value == ""){
			if (!(digits.length == 3))
				ok = "no";
			if (!inRange(parseInt(digits[0],10),1,12))
				ok = "no";
			if (!inRange(parseInt(digits[1],10),1,31))
				ok = "no";
			if (!inRange(parseInt(digits[2],10),0,2100))
				ok = "no";
			if (ok == "no")
				return false;
			else
				return true;
		}
	}

	function checkreqd(){
		var ok = "True";
		var msg = "";

		if (!valDate(document.target.EndDate)){
			ok = "False";
			msg = "Invalid end date format. Please enter a date as mm/dd/yy";
		}
		if (!valDate(document.target.StartDate)){
			ok = "False";
			msg = "Invalid start date format. Please enter a date as mm/dd/yy";
		}
		if (NotBlank(document.target.EndDate) == "False"){
			ok = "False";
			msg = "You must enter a ending date";
		}
		if (NotBlank(document.target.StartDate) == "False"){
			ok = "False";
			msg = "You must enter a starting date";
		}
		
		if (ok == "True")
			document.target.submit();
		else
			alert(msg);
	}

	function changePastDate(fldStartDate, fldEndDate, fldStartMonth, fldStartDay, fldStartYear, fldEndMonth, fldEndDay, fldEndYear) {

		var datStart = new Date(document.getElementById(fldStartYear).value, document.getElementById(fldStartMonth).value - 1, document.getElementById(fldStartDay).value, 12, 0, 0);
		var datEnd = new Date(document.getElementById(fldEndYear).value, document.getElementById(fldEndMonth).value - 1, document.getElementById(fldEndDay).value, 12, 0, 0);
			
		if (fldStartDate!=null)
			document.getElementById(fldStartDate).value = document.getElementById(fldStartMonth).value + '/' + document.getElementById(fldStartDay).value + '/' + document.getElementById(fldStartYear).value;
		if (fldEndDate!=null)
			document.getElementById(fldEndDate).value = document.getElementById(fldEndMonth).value + '/' + document.getElementById(fldEndDay).value + '/' + document.getElementById(fldEndYear).value;
	}
	
