
function addOption(theSel, theText, theValue)
{
    var newOpt = new Option(theText, theValue);
    var selLength = theSel.length;
    theSel.options[selLength] = newOpt;
}

function deleteOption(theSel, theIndex)
{
    var selLength = theSel.length;
    if (selLength > 0) {
	theSel.options[theIndex] = null;
    }
}

function deleteOptions(theSel)
{
    var i;

    for (i = theSel.length - 1; i >= 0; i--) {
	if (theSel.options[i].selected)
	    deleteOption(theSel, i);
    }
}

function copyOptions(theSelFrom, theSelTo)
{

    var selLength = theSelFrom.length;
    var selectedText = new Array();
    var selectedValues = new Array();
    var selectedCount = 0;

    var i;

    // Find the selected Options in reverse order
    // and delete them from the 'from' Select.
    for (i = selLength - 1; i >= 0; i--) {
	if (theSelFrom.options[i].selected)
	    {
		selectedText[selectedCount] = theSelFrom.options[i].text;
		selectedValues[selectedCount] = theSelFrom.options[i].value;
		theSelFrom.options[i].selected = false;
		selectedCount++;
	    }
    }

    // Add the selected text/values in reverse order.
    // This will add the Options to the 'to' Select
    // in the same order as they were in the 'from' Select.
    for (i = selectedCount - 1; i >= 0; i--) {
	addOption(theSelTo, selectedText[i], selectedValues[i]);
    }

}

function placeInHidden(delim, selStr, hidStr)
{
    var selObj = document.getElementsByName(selStr)[0];
    var hideObj = document.getElementsByName(hidStr)[0];
    hideObj.value = '';
    for (var i=0; i<selObj.options.length; i++) {
	hideObj.value = hideObj.value == '' ?
	    selObj.options[i].value :
	    hideObj.value + delim + selObj.options[i].value;
    }
}

//------------------------------------------------------------------

function loadProject(id)
{
    //window.location = /(\S*\?)/.exec(window.location.toString())[0] + "newsletter_send%5Bemail_list_project%5D=" + id;
    placeInHidden(';', 'newsletter_send[email_dest]', 'newsletter_send[emails]');
    document.getElementsByName('newsletter_sendform')[0].submit();
}
