
function deleteselect(fieldtochange,listField) {
    /* selection loeschen */
    fieldtochange.remove(fieldtochange.selectedIndex);
    fieldtochange.selectedIndex=0;
    var idArr=new Array();
    for (var i = 0; i < fieldtochange.length; ++i) {
        idArr.push(fieldtochange.options[i].value);
    }
    listField.value=idArr.join(',');
    return false;
}

function emptycharhelp(fieldtochange) {
    /* Den Inhalt des Textfeldes loeschen */
    fieldtochange.value="";
    strname=fieldtochange.id+"_str_";
    strfield=document.getElementById(strname);
    strfield.value="";
}

function viewcharhelp(fieldtoview,source) {
    /* Den aktuellen Inhalt anzeigen */
    var href=source+fieldtoview.name+"/update/"+String(fieldtoview.value); 
    strname=fieldtoview.id+"_str_";
    strfield=document.getElementById(strname);
    popwin=window.open(href,strfield.value,width=1024,height=768);
    popwin.referrer=self.document;
    popwin.focus();
    return false;
}

function viewselecthelp(fieldtoview,source) {
    /* Den aktuellen Inhalt anzeigen */
    var href=source+fieldtoview.name+"/update/"+String(fieldtoview.options[fieldtoview.selectedIndex].value);
    popwin=window.open(href,fieldtoview.name,width=1024,height=768);
    popwin.referrer=self.document;
    popwin.focus();
    return false;
}

function norefpopup(url) {
    popwin=window.open(url,name,width=800,height=400);
    popwin.focus();
}

function simplepopup(prefix,suffix) {
    var name="t_b_p" ; /* to be popped */
    var href;
    href = prefix +"popped/"+ name +suffix;
    popwin=window.open(href,name,width=800,height=400);
    popwin.referrer=self.document;
    popwin.focus();
}

function dopopup(poppedurl,fieldtochange) {
    /* popup aufrufen. name von Popup ist Referenz auf zu änderndes Feld
        Das Ergebnis ist immer eine Objectid und ein __str__ (bzw. Name des Objektes human readable)
        Der backlink wird im window-namen gespeichert 
    */
    var nel=document.getElementById(fieldtochange.id);
    var name=nel.id;
    /* IE will keine dots */
    name = name.replace(/\./g, '___');
    /* name = name+"____"+self; */
    var href;
    /* href = poppedurl + "/"+ name;  */
    href=poppedurl
    /* href = poppedurl + "?_popup=" + name; */
    popwin=window.open(href,name,width=1024,height=768);
    popwin.referrer=self.document;
    popwin.focus();
    return false;
}

function submitpopup(selectedid,selectedstr) {
    /* Objekt ist ausgewaehlt, dann ist selectedid die ID des Objekts, selectedstr der '__str__' des Objekts */
    var name = window.name.replace(/___/g, '.');
    var idField=opener.document.getElementById(name);
    strname = name+"_str_"; 
    var strField= opener.document.getElementById(strname);
    idField.value =selectedid;
    /* Extra Feld zum display .. */
    if (strField) {
        strField.value=selectedstr;
    }
    if (strField.type.indexOf('select')>=0) {
        listname=name;  /* nur bei select */
        var listField=opener.document.getElementById(listname);
        /* dann ist es ein select, also wird eine Option zugefügt und
            im hidden field die ids gespeichert und ob sie 'selected' sind.
        */
        NeuerEintrag = new Option(selectedstr, selectedid, false, true);
        strField.options[strField.length] = NeuerEintrag;
        var idArr=new Array();
        for (var i = 0; i < strField.length; ++i) {
            var idState=new Array(2);
            idState[0]=strField.options[i].value;
            idState[1]=strField.options[i].selected;
            idArr.push(idState);
        }
        listField.value=idArr.join(',');
    }
    window.close();
    return false;
}

