﻿/**
 * Konstruktor
 */
var NormGeberControl = new function() {
}

/******************************************************************************
***                              Hauptfunktionen                            ***
******************************************************************************/

/**
 * Gibt alle ausgewählten Norgeber zurück
 * @return string Alle ausgewählten Norgeber mit Komma separiert.
 */
NormGeberControl.getNormgeber = function() {
    var ret = "";
    var inputs = document.getElementsByTagName("input");

    for (i = 0; i < inputs.length; ++i) {
        if (inputs[i].getAttribute("type") == "checkbox" & inputs[i].getAttribute("name") == "chkNormgeber" & inputs[i].checked) {
            if (ret.indexOf(inputs[i].value) != -1) continue;

            if (ret.length == 0) {
                ret += inputs[i].value;
            }
            else {
                ret += ", " + inputs[i].value;
            }
        }
    }
    this.close();

    return ret;
}

/**
* Gibt alle ausgewählten Norgeber zurück
* @return string Alle ausgewählten Norgeber mit Komma separiert.
*/
NormGeberControl.getNormgeberValue = function() {
    var ret = "";

    var inputs = document.getElementsByTagName("input");
    var labels = document.getElementsByTagName("label");

    for (i = 0; i < inputs.length; i++) {
        if (inputs[i].getAttribute("type") == "checkbox" & inputs[i].getAttribute("name") == "chkNormgeber" & inputs[i].checked) {
            if (ret.indexOf(inputs[i].value) != -1) continue;
            for (j = 0; j < labels.length; j++) {
                if (labels[j].htmlFor == inputs[i].id) {
                    if (ret.length == 0) {
                        ret += labels[j].innerHTML;
                    }
                    else {
                        ret += ", " + labels[j].innerHTML;
                    }
                }
            }
        }
    }
    this.close();

    return ret;
}

/******************************************************************************
***                          Funktionen der Buttons                         ***
******************************************************************************/

/**
 * Der Hilfe Button
 */
NormGeberControl.showHelp = function() {
    ShowHelp('NormgeberControl', 'normgebercontrolhelp');
}

/**
* Der Reset Button
*/
NormGeberControl.reset = function() {
    for (i = 0; i < document.getElementsByName("chkNormgeber").length; i++) {
        document.getElementsByName("chkNormgeber")[i].checked = false;
    }
}

/**
 * Der Schließen Button
 */
NormGeberControl.close = function() {
    RemoveElement('normgeber');
}

/******************************************************************************
***                              Hilfsmethoden                              ***
******************************************************************************/

/**
 * Zeigt das Control erstmalig an
 * @param string refid Die JavaScript-Anweisung die mit dem drücken des "Übernehmen"-Buttons ausgeführt werden soll.
 * @param FORM form Das Formular, aus dem evtl. bereits gesetzte Norgeber ausgelesen werden sollen.
 */
NormGeberControl.init = function(refid, form, anchorId) {
    XmlLoader.loadXml('9', (refid != null ? refid : null), null, (form != null ? form : null), null, true, NormGeberControl.onLoadedXml, anchorId);
}


/**
* Wird nach dem fertig ausgeführten Ajax-Request ausgeführt
*/
NormGeberControl.onLoadedXml = function(executor, eventArgs) {
    XmlLoader.onLoadedXml(executor, eventArgs);
}
/**
* Der Übernehmen Button
*/
NormGeberControl.uebernehmen = function() {
    var txtnormgeber = $get("txtnormgeber");
    txtnormgeber.value = '';


    txtnormgeber.value = this.getNormgeber();
}

