var wahrFalschUpdater = Class.create({
    initialize: function(refid, num) {
        this.url = '/ajax.php';
        this.aktion = '';
        this.istextowner = 0;
        this.refid = refid;
        this.num = num;
        this.response = null;
    },

    callRequest: function(func, pars) {        
        var sendOptions = {
            id: 'chat',
            jetztclass: 'WahrFalsch',
            jetztfunction: func
        };
        Object.extend(sendOptions, pars);
        new Ajax.Request('/ajax.php',
             {
               method:'post',
               parameters: sendOptions,                  
               onSuccess: this.ajaxUpdate.bind(this)
             }
            );
    },
    
    ajaxUpdate: function(ajaxResponse) {
        this.response = ajaxResponse.responseXML;
        if (this.response.getElementsByTagName("funktion")[0].hasChildNodes()) {
            this.aktion = this.response.getElementsByTagName("funktion")[0].childNodes[0].nodeValue;
        }
        
        switch(this.aktion) {
            case 'addAntwort':  
                this.addAntwort();
                break;
            case 'delAntwort':
                this.removeAntwort();
                break;
        }
        
    },
    
    addAntwort: function() { 
        var antwort = this.response.getElementsByTagName("antwort")[0].childNodes[0].nodeValue;
        var antwortnr = this.response.getElementsByTagName("antwortnr")[0].childNodes[0].nodeValue;
        var richtig = 'falsch';
        if ($('wahrstatus'+this.num).checked == true) { 
            richtig = 'wahr';
        }
        if (antwort.length>0) { 
            new Insertion.Bottom($('antwortbox'+this.num), '<table id="antwort'+antwortnr+'" border="0" cellspacing="0" cellpadding="0" width="420"><tr><td width="20" valign="top"><input type="radio" value="1" name="num'+this.num+'"></td><td width="400" valign="top">'+antwort+' ('+richtig+') <span style="cursor: pointer;" onClick="javascript:wahr'+this.num+'.delAntwort('+antwortnr+');" class="usertxt">>> l&ouml;schen</span></td></tr></table>');
            $('wahrstatus'+this.num).checked = false;
            $('antwort'+this.num).value = '';
        }
    }, 
    
    removeAntwort: function() { 
        var success = this.response.getElementsByTagName("success")[0].childNodes[0].nodeValue;
        var antwortnr = this.response.getElementsByTagName("antwortnr")[0].childNodes[0].nodeValue;
        
        if (success == '1') { 
            $('antwort'+antwortnr).style.display = 'none';
        }
    }, 
    
    setAntwort: function() { 
        var antwort = $('antwort'+this.num).value;
        var wahr = false;
        if ($('wahrstatus'+this.num).checked == true) { 
            wahr = true;
        }
        this.callRequest('addAntwort', { pars0: this.refid, pars1: this.num, pars2: antwort, pars3: wahr });
    },
    
    delAntwort: function(antwortnr) { 
        this.callRequest('delAntwort', { pars0: this.refid, pars1: antwortnr });
    },
    
    setScore: function(antwortnr, wahr) { 
        var refid = this.refid;
        this.callRequest('setScore', { pars0: refid, pars2: this.num, pars3: antwortnr, pars4: wahr });
    }
});

