/* vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker: */

function dropUploadRow(btn) 
{
    if(document.getElementById) {
        tr = btn;
        while (tr.tagName != 'TR') tr = tr.parentNode;
        tr.parentNode.removeChild(tr);
        _checkForLast();
    }
} 

function addUploadRow(btn, elements)
{
    if(document.getElementById) {
        tr = btn;
        while (tr.tagName != 'TR') tr = tr.parentNode;
        var newTr = tr.parentNode.insertBefore(
                tr.cloneNode(true),tr.nextSibling);

        var now = new Date();
        var suffix = now.getTime();

        var elements = explode(';',elements);
		
        for(var j=0; j < elements.length; j++) {
            var elm = explode(':',elements[j]);
            var thisChilds = newTr.getElementsByTagName(elm[0]);
			for (var i = 0; i < thisChilds.length; i++){
				if (thisChilds[i]) {
					var name = thisChilds[i].name;
					if (name && name.indexOf(elm[1]+'_') == 0) {
						thisChilds[i].name=elm[1]+"_"+suffix;
						thisChilds[i].id=elm[1]+"_"+suffix;
					}
				}
			}
        }
		_checkForLast();
    }
}

function _checkForLast() 
{
    var btns = window.document.getElementsByName('drop');
	if (btns) {
		for (i = 0; i < btns.length; i++){
			btns[i].disabled = (btns.length == 1) ? true : false;
		}
	}
}

_checkForLast();


function explode(sep, str) 
{
    var dim = new Array();
    var len = str.length;
    var len_sep = sep.length;
    var key = 0;
    var element = '';
    while (len > key) {
    if (str.substring(key, key+len_sep) == sep) {
        dim[dim.length] = element;
        element = '';
    } else {
        element += str.charAt(key);
    }
    key ++;
    }
    dim[dim.length] = element;
    return dim;
} 
