////////////////////////////////////////////////
// WINDOW ONLOAD HANDLERS
////////////////////////////////////////////////
var WindowOnLoadCalls = new Array();

function WindowOnLoadHandler()
{
    if (WindowOnLoadFilled())
    {
        for (var i = 0; i < WindowOnLoadCalls.length; i++)
        {
            eval(WindowOnLoadCalls[i]);
        }
    }
}
function WindowOnLoadAdd(func)
{
    WindowOnLoadCalls[WindowOnLoadCalls.length] = func;
}
function WindowOnLoadFilled()
{
    if (WindowOnLoadCalls.length > 0)
    {
        return true;
    } else
    {
        return false;
    }
}
window.onload = WindowOnLoadHandler;

////////////////////////////////////////////////
// AiSE BLOCK LIBRARY.
////////////////////////////////////////////////

/**********************************************************************/
/**********************************************************************/
/*********************** DRAG DROP LIBRARY ****************************/
/**********************************************************************/
/**********************************************************************/
var Dragger = "var eve=arguments.length?arguments[0]:event;" +
              "Drag.ox=eve.clientX-this.offsetLeft;" +
              "Drag.oy=eve.clientY-this.offsetTop;" +
              "this.fire=Drag.fire;this.fire();false;";
var Drag = {
    ox: 0, oy: 0,
    minx: null, maxx: null, miny: null, maxy: null,
    mode: 0,
    affine: null,
    initer: null,

    init: function(node, mode, minx, miny, maxx, maxy)
    {
        var retstr = "with(Drag) mode=" + mode + ",minx=" + minx + ",maxx=" + maxx
  			+ ",miny=" + miny + ",maxy=" + maxy + ";Drag.initer=1;" + Dragger;
        node.onmousedown = new Function("e", "return eval(\"" + retstr + "\")");
        return (Drag.initer = retstr);
    },
    add: function(node) { node.out = Drag.out; node.out(null); },
    fire: function()
    {
        var that = this;
        that.run = Drag.run;
        that.out = Drag.out;
        that.style.position = "absolute";
        that.onmousedown = null;
        that.onmouseup = function(e) { return that.out(e); };
        document.onmouseup = function(e) { return that.out(e); };
        document.onmousemove = function(e) { return that.run(e); };
        document.onmouseout = function(e)
        {
            var eve = e ? e : event;
            if (!eve.fromElement)
                eve.fromElement = eve.target, eve.toElement = eve.relatedTarget;
            if (!eve.toElement) that.out(e); return false;
        }; return false;
    },
    run: function(e)
    {
        repositionAfterDrag();
        var eve = e ? e : event;
        var nx = eve.clientX - Drag.ox;
        var ny = eve.clientY - Drag.oy;
        with (Drag)
        {
            if (minx) if (nx < minx) nx = minx;
            if (maxx) if (nx > maxx) nx = maxx;
            if (miny) if (ny < miny) ny = miny;
            if (maxy) if (ny > maxy) ny = maxy;
        } if (this.parentNode.style.position == "absolute")
        {
            nx = nx - this.parentNode.offsetLeft;
            ny = ny - this.parentNode.offsetTop;
        }
        if (Drag.mode < 2) this.style.left = nx + "px";
        if (!(Drag.mode % 2)) this.style.top = ny + "px";
        if (Drag.mode == 3 && Drag.affine)
            Drag.affine(this, nx, ny);
        repositionAfterDrag();
        return false;
    },

    out: function(e)
    {
        var invoker = null;
        document.onmousemove = null;
        document.onmouseup = null;
        document.onmouseout = null;
        this.onmouseup = null;
        with (Drag) { invoker = mode + "," + minx + "," + miny + "," + maxx + "," + maxy; }
        this.onmousedown = new Function("e", "return eval("
  			+ (Drag.initer ? "Drag.init(this," + invoker + ")" : "Dragger") + ")");
        with (Drag) { mode = 0, minx = null, maxx = null, miny = null, maxy = null; initer = null }
        return false;
    }
};


/**********************************************************************
**********************************************************************
*********************** START AISE LIBRARY ***************************
**********************************************************************
**********************************************************************/

//var globalStateForDragStorage = 1;
var et_location = window.top.location.href.split('/');
var et_location_subpage = et_location[(et_location.length - 1)];

var elitechAise = function()
{
    this.klantcode = "EON";    /* Probeer hier een unieke afkorting te gebruiken voor een klant */
    this.subject = "MAIN";      /* Geef hier met een korte code aan voor welke taal deze AiSE is (bijv. NL, EN, ...) */
    this.state = 1;           /* default status */
    this.frame1 = "";          /* default waarde frame 1 */
    this.frame2 = "";          /* default waarde frame 2 */
    this.frame3 = "";          /* default waarde frame 3 */
    this.useIframeIEfix = false;       /* in IE liggen selectboxen en flash etc. altijd met de hoogste z-index. als deze optie op true wordt gezet, wordt achter de divs een iframe geplaatst. Dit iframe kan wel over deze controls heen worden gelegd. */
    this.loadingHTML = "... ..."    /* Tekst wordt getoond tijdens het laden */
    this.showDivSources = false;       /* voor debug/design true zetten */
    this.doPagePush = true;        /* aanzetten pagepush optie. Handig om uit te zetten tijdens ontwikkelfase */
    this.beoordeling = '0';            /* beoordeling goed is de defaultwaarde */
    this.handigeVragen = true;        /* maak gebruik van handige vragen */
    this.toonvraag = true;        /* De vraag herhalen in aise responsediv */
    this.pagepushiframe = false;       /* De pagepush uitvoeren naar een achtergrond frame (in geval van demo|testen) */
    this.testing = false;
    this.RecNr1 = 'leeg';
    this.RecNr2 = 'leeg';
    this.RecNr3 = 'leeg';
    this.DoorverwijzingContact = true;

    this.lastReceived_uid = "";
    this.lastReceived_antwoord = "";
    this.lastReceived_recnr = "";
    this.lastReceived_html = "";
    this.lastReceived_category = "";
    this.lastReceived_character = "";
    this.lastReceived_largeimg = "";
    this.lastQuestion = "";
    this.testing = false;
    this.feedbacktestfase = false;
    this.effectURL = "";

    this.defaultvraag = new Array();
    this.callback = "me.putXMLhere();";
    this.oScript = "";
    var me = this;
    //	this.Unanswered			=	"";

    this.convertTo = function()
    {
        me.lastReceived_antwoord = me.lastReceived_antwoord.replace(/&#/gi, "SPECIAL_SIGN");
        me.lastReceived_antwoord = me.lastReceived_antwoord.replace(/;/gi, "PUNT_KOMMA");
        //		me.Unanswered = me.Unanswered.replace(/&#/gi, "SPECIAL_SIGN");
        // 	me.Unanswered = me.Unanswered.replace(/;/gi, "PUNT_KOMMA");
    }
    this.convertFrom = function(value)
    {
        value = value.replace(/SPECIAL_SIGN/gi, "&#");
        value = value.replace(/PUNT_KOMMA/gi, ";");
        return value;
    }
    this.storeAllData = function()
    {
        me.convertTo();
        var aise = document.getElementById('status1div');
        top.window.name = "AISE -!-" + me.klantcode + ";" + me.subject + ";" + me.lastReceived_uid + ";" + aise.style.top + ";" + aise.style.left + ";" + me.state + ";" + me.lastReceived_character + ";" + me.lastReceived_largeimg + ";" + me.lastQuestion + ";" + me.lastReceived_antwoord // + ";" + me.Unanswered;
    }
    this.repositionFromStorage = function()
    {
        /*
        Zet aise op de juiste top en left.
        Zet status van de aise (1, 2 of 3)
        Zet vraag en antwoord
        */
        var aise = document.getElementById('status1div');
        var wname = top.window.name.split("-!-");
        if (wname[1])
        {
            var storage = wname[1].split(";");
            if (storage[0] == this.klantcode && storage[1] == this.subject)
            {
                this.lastReceived_uid = storage[2];
                aise.style.top = storage[3]; //0
                aise.style.left = storage[4]; //1
                this.state = storage[5]; //2
                this.lastReceived_character = this.convertFrom(storage[6]);
                this.lastReceived_largeimg = this.convertFrom(storage[7]);
                this.lastQuestion = this.convertFrom(storage[8]);
                this.lastReceived_antwoord = this.convertFrom(storage[9]);
                //this.Unanswered            = this.convertFrom(storage[5]);

                //if (this.Unanswered != "") {
                //	document.getElementById('et_question').value = this.Unanswered;
                //	this.sendQuestion();
                //	return;
                //} else {
                document.getElementById('et_question').value = this.lastQuestion;
                document.getElementById('et_aiseResponseDiv').innerHTML = this.lastReceived_antwoord;
                //}
                //document.getElementById('et_aiseResponseDiv').innerHTML = this.lastReceived_antwoord;
                //me.setInitialImage(this.lastReceived_largeimg);
                me.setInitialImage(et_location_subpage.toLowerCase());
            }
        }
        else
        {
            aise.style.top = this.defaultFromtop;
            aise.style.left = this.defaultFromLeft;
            me.setInitialImage(et_location_subpage.toLowerCase());
        }
        this.changeState();
        return true
    }
    this.changeState = function()
    {
        if (this.state == 1)
        {
            //document.getElementById('headerImageA').style.display='inline';
            //document.getElementById('headerImageB').style.display='none';
            document.getElementById('status1div').style.display = 'block';
            document.getElementById('status2div').style.display = 'none';
            document.getElementById('status3div').style.display = 'none';
            if (this.useIframeIEfix)
            {
                document.getElementById('status1frame').style.display = 'block';
                document.getElementById('status2frame').style.display = 'none';
                document.getElementById('status3frame').style.display = 'none';
            }
        }
        if (this.state == 2)
        {
            //document.getElementById('headerImageA').style.display='inline';
            //document.getElementById('headerImageB').style.display='inline';
            document.getElementById('status1div').style.display = 'block';
            document.getElementById('status2div').style.display = 'none';
            document.getElementById('status3div').style.display = 'none';
            if (this.useIframeIEfix)
            {
                document.getElementById('status1frame').style.display = 'block';
                document.getElementById('status2frame').style.display = 'none';
                document.getElementById('status3frame').style.display = 'none';
            }
            if (document.getElementById('et_aiseResponseDiv').innerHTML == '')
            {
                this.sendQuestionInit();
                return;
            }
            document.getElementById('et_question').focus();
        }
        if (this.state == 3)
        {
            //document.getElementById('headerImageA').style.display='inline';
            //document.getElementById('headerImageB').style.display='inline';
            document.getElementById('status1div').style.display = 'block';
            document.getElementById('status2div').style.display = 'block';
            document.getElementById('status3div').style.display = 'block'; // TONEN VOOR TEST_DIALOOG wordt dan display='';   verbergen =>  display='none';
            if (this.useIframeIEfix)
            {
                document.getElementById('status1frame').style.display = 'block';
                document.getElementById('status2frame').style.display = 'block';
                document.getElementById('status3frame').style.display = 'block';
            }
        }
    }
    this.changeStateFromTopDiv = function()
    {
        if ((this.state == 2) || (this.state == 3))
        {
            this.state = 1;
        } else
        {
            this.state = 2;
        }
        this.changeState();
    }
    this.parse = function()
    {
        document.write('<link rel="stylesheet" type="text/css" media="screen,projection" href="' + this.css + '">');
        document.write('<script type="text/javascript" src="' + this.effectUrl + '"></script>');
        if (this.showDivSources)
        {
            document.write('<textarea style="font-family: Verdana; font-size:11px;width:100%;height:33%;">' + this.frame1 + "</textarea>");
            document.write('<textarea style="font-family: Verdana; font-size:11px;width:100%;height:33%;">' + this.frame2 + "</textarea>");
            document.write('<textarea style="font-family: Verdana; font-size:11px;width:100%;height:33%;">' + this.frame3 + "</textarea>");
        }
        document.write(this.frame1);
        document.write(this.frame2);
        document.write(this.frame3);
        var BROWSER_IS_IE = document.all && window.ActiveXObject && navigator.userAgent.toLowerCase().indexOf("msie") > -1 && navigator.userAgent.toLowerCase().indexOf("opera") == -1;
        if (!BROWSER_IS_IE) { this.useIframeIEfix = false; }
        if (this.useIframeIEfix)
        {
            var status1div = document.getElementById('status1div');
            document.write("<iframe name='status1frame' id='status1frame' frameborder='0' style='display:none;z-index:900;position:absolute;background-color:#ff0000;' width='" + status1div.style.width + "' height='" + status1div.style.height + "'></iframe>");
            var status2div = document.getElementById('status2div');
            document.write("<iframe name='status2frame' id='status2frame' frameborder='0' style='display:none;z-index:900;position:absolute;background-color:#00ff00;' width='" + status2div.style.width + "' height='" + status2div.style.height + "'></iframe>");
            var status3div = document.getElementById('status3div');
            document.write("<iframe name='status3frame' id='status3frame' frameborder='0' style='display:none;z-index:900;position:absolute;background-color:#0000ff;' width='" + status3div.style.width + "' height='" + status3div.style.height + "'></iframe>");
        }
        if (WindowOnLoadHandler)
        {
            WindowOnLoadAdd('aise.positionAiseOnLoadHandler()');
        } else
        {
            window.onload = this.positionAiseOnLoadHandler;  // Na het laden aise initialiseren
        }
        window.onunload = this.storeAllData;              /* Opslaan positie, vraag en antwoord */
        //window.onresize = repositionAfterDrag;
    }
    this.positionAiseOnLoadHandler = function()
    {
        /* initialiseer AISE onload */
        if (me.repositionFromStorage())
        {
            //repositionAfterDrag();
            if (me.handigeVragen) { me.setDefaultVragen(); }
        }
    }
    this.setInitialImage = function(wat)
    {
        //var varx; if (wat!='') { varx = wat; } else { varx = et_location_subpage.toLowerCase(); }
        var notKnown = false;
        if (wat.substring(0, 9) == "producten") { wat = "producten"; }
        if (wat.substring(0, 12) == "veelgestelde") { wat = "veelgestelde"; }
        switch (wat)
        {
            case "producten": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_producten.src + ")"; me.lastReceived_largeimg = "producten"; break;
            case "tarieven": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_tarieven.src + ")"; me.lastReceived_largeimg = "tarieven"; break;
            case "betalen": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_betalen.src + ")"; me.lastReceived_largeimg = "betalen"; break;
            case "verhuizen": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_verhuizen.src + ")"; me.lastReceived_largeimg = "verhuizen"; break;
            case "klantworden_2": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_klantworden.src + ")"; me.lastReceived_largeimg = "klantworden_2"; break;
            case "zelf_regelen": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_snelreageren.src + ")"; me.lastReceived_largeimg = "zelf_regelen"; break;
            case "over_energie": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_overenergie.src + ")"; me.lastReceived_largeimg = "over_energie"; break;
            case "veelgestelde": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_veelgesteldevragen.src + ")"; me.lastReceived_largeimg = "veelgestelde"; break;
            case "contact_consumenten": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_contact.src + ")"; me.lastReceived_largeimg = "contact_consumenten"; break;
            default: notKnown = true; break;
        }
        if (notKnown)
        {
            switch (me.lastReceived_largeimg)
            {
                case "producten": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_producten.src + ")"; me.lastReceived_largeimg = "producten"; break;
                case "tarieven": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_tarieven.src + ")"; me.lastReceived_largeimg = "tarieven"; break;
                case "betalen": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_betalen.src + ")"; me.lastReceived_largeimg = "betalen"; break;
                case "verhuizen": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_verhuizen.src + ")"; me.lastReceived_largeimg = "verhuizen"; break;
                case "klantworden_2": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_klantworden.src + ")"; me.lastReceived_largeimg = "klantworden_2"; break;
                case "zelf_regelen": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_snelreageren.src + ")"; me.lastReceived_largeimg = "zelf_regelen"; break;
                case "over_energie": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_overenergie.src + ")"; me.lastReceived_largeimg = "over_energie"; break;
                case "veelgestelde": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_veelgesteldevragen.src + ")"; me.lastReceived_largeimg = "veelgestelde"; break;
                case "contact_consumenten": document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_contact.src + ")"; me.lastReceived_largeimg = "contact_consumenten"; break;
                default: document.getElementById('et_answer_content').style.backgroundImage = "url(" + char_veelgesteldevragen.src + ")"; me.lastReceived_largeimg = "veelgestelde"; break;
            }
        }
    }
    this.setDefaultVragen = function()
    {
        var faqDiv = document.getElementById('faq');
        faqDiv.innerHTML = "";
        var iLen = this.defaultvraag.length;
        if (iLen > 2) { iLen = 2; }
        for (var loop = 0; loop < iLen; loop++)
        {
            faqDiv.innerHTML = faqDiv.innerHTML + "<a href='#' onClick=\"" + this.instanceName + ".vraagHandigeVraag('" + this.defaultvraag[loop] + "')\">" + this.defaultvraag[loop] + '</a><br />'
        }
    }
    this.vraagHandigeVraag = function(vraag)
    {
        document.getElementById('et_question').value = vraag;
        this.sendQuestion();
    }
    this.verwerkHandigeVragen = function(hvragen)
    {
        var faqDiv = document.getElementById('faq');
        faqDiv.innerHTML = "";
        var iLen = hvragen.length;
        if (iLen > 2) { iLen = 2; }
        for (var loop = 0; loop < iLen; loop++)
        {
            faqDiv.innerHTML = faqDiv.innerHTML + "<a href='#' onClick=\"" + this.instanceName + ".vraagHandigeVraag('" + hvragen[loop] + "')\">" + hvragen[loop] + '</a><br />'
        }
        if (hvragen.length == 0)
        {
            iLen = this.defaultvraag.length;
            if (iLen > 2) { iLen = 2; }
            for (var loop = 0; loop < iLen; loop++)
            {
                faqDiv.innerHTML = faqDiv.innerHTML + "<a href='#' onClick=\"" + this.instanceName + ".vraagHandigeVraag('" + this.defaultvraag[loop] + "')\">" + this.defaultvraag[loop] + '</a><br />'
            }
        }
    }
    this.getDataFromServer = function(id, url, vraag)
    {
        this.oScript = document.getElementById(id);
        var head = document.getElementsByTagName("head").item(0);
        if (this.oScript)
        {
            // Destory object
            head.removeChild(this.oScript);
        }
        // Create object 
        this.oScript = document.createElement("script");
        var callURL = url + '?projectCode=' + this.projectCode + '&projectID=' + this.projectID + '&uid=' + this.lastReceived_uid + '&vraag=' + vraag;
        //alert("Laatst ontvangen UID: [" + this.lastReceived_uid + "]");
        this.oScript.setAttribute("src", callURL);

        head.appendChild(this.oScript);
        var antwoord = '';
        var BROWSER_IS_IE = document.all && window.ActiveXObject && navigator.userAgent.toLowerCase().indexOf("msie") > -1 && navigator.userAgent.toLowerCase().indexOf("opera") == -1;
        if (BROWSER_IS_IE)
        {
            if (this.oScript.readyState == "loaded")
            {
                eval(this.callback);
                this.oScript.onreadystatechange = null;
            } else
            {
                this.oScript.onreadystatechange = this.CheckAgain;
            }
        } else
        {
            //eval(this.callback); // <= zou moeten werken maar de waarden zijn dan toch nog niet geladen. timeout ingebouwd die iedere seconde opnieuw kijkt of het antwoord binnen is..
            aise.mozCheckAgain();
        }
    }
    this.mozCheckAgain = function()
    {
        var chk = typeof (antwoord);
        if (typeof (antwoord) == "string")
        {
            if (antwoord == "")
            {
                // Als antwoorden verwerkt zijn word deze variabele weer leeggemaakt t.b.v. deze controle.
                window.setTimeout("aise.mozCheckAgain()", 1000);
            } else
            {
                aise.putXMLhere()
            }
        } else
        {
            window.setTimeout("aise.mozCheckAgain()", 1000);
        }
    }
    this.CheckAgain = function()
    {
        if (me.oScript.readyState == "loaded")
        {
            eval(me.callback);
            me.oScript.onreadystatechange = null;
        }
    }
    var custom_welcome_ask = false;
    this.sendQuestion = function()
    {
        document.getElementById('et_aiseResponseDiv').innerHTML = this.loadingHTML;
        custom_welcome_ask = false;
        this.getDataFromServer("ScriptTagID", this.proxyServer, RemoveXSS(document.getElementById('et_question').value));
        et_GoEonSlide();
    }
    this.sendQuestionDirect = function(vraag) {
        document.getElementById('et_aiseResponseDiv').innerHTML = this.loadingHTML;
        custom_welcome_ask = true;
        this.getDataFromServer("ScriptTagID", this.proxyServer, RemoveXSS(vraag));
    }
    this.sendQuestionInit = function()
    {
        document.getElementById('et_aiseResponseDiv').innerHTML = this.loadingHTML;
        custom_welcome_ask = true;
        this.getDataFromServer("ScriptTagID", this.proxyServer, 'custom_welcome');
    }
    this.putXMLhere = function()
    {
        //this.Unanswered 		= 	"";
        this.lastReceived_uid = uid;
        this.lastReceived_antwoord = antwoord;
        this.lastReceived_recnr = recnr;
        this.lastReceived_html = html;
        this.lastReceived_category = category;
        this.lastReceived_character = et_character;
        this.lastQuestion = RemoveXSS(document.getElementById('et_question').value);

        //character aanpassingen
        //   LET OP: background-image in stylesheet uitzetten want moet in code
        if (typeof (et_character) == "string")
        {
            if (et_character == "")
            {
                document.getElementById('et_stelvraag_box').style.backgroundImage = "url(" + basicurl + "/img/ellen_kl_start.jpg)";
            } else
            {
                document.getElementById('et_stelvraag_box').style.backgroundImage = "url(" + eval("char_" + et_character.toLowerCase() + ".src") + ")";
            }
        }

        var tmpinhoud = "";
        if (this.RecNr1 == 'leeg')
        { // nog geen vraag gesteld
            this.RecNr1 = recnr;
        } else if (this.RecNr2 == 'leeg')
        { // pas 1 vraag gesteld
            this.RecNr2 = recnr;
        } else if (this.RecNr3 == 'leeg')
        { // pas 2 vragen gesteld
            this.RecNr3 = recnr;
        } else
        { //alles gevuld; dus meer dan 3 vragen gesteld
            this.RecNr1 = this.RecNr2;
            this.RecNr2 = this.RecNr3;
            this.RecNr3 = recnr;
        }
        if (this.DoorverwijzingContact)
        {
            if ((this.RecNr1 != 'leeg' && this.RecNr2 != 'leeg' && this.RecNr3 != 'leeg') && (this.RecNr1 == this.RecNr2 && this.RecNr2 == this.RecNr3))
            { //afgelopen 3 vragen zijn gelijk.
                html = 'http://www.eon-benelux.com/eonwww/publishing.nsf/Content/ContactForm'; //Contactpagina
                this.lastReceived_html = html;
                antwoord = 'Wellicht kan &#233;&#233;n van mijn collega&rsquo;s u verder helpen. <a href="http://www.eon-benelux.com/eonwww/publishing.nsf/Content/ContactForm" target="_blank">Neem contact op met Eon</a>.';
                this.lastReceived_antwoord = antwoord;
            }
        }

        if (this.toonvraag == true)
        {
            document.getElementById('et_aiseResponseDiv').innerHTML = "<strong>" + this.lastQuestion + "</strong><br /><div id='ruimtegesteldevraag'></div>" + antwoord;
        } else
        {
            document.getElementById('et_aiseResponseDiv').innerHTML = antwoord;
        }
        if (this.handigeVragen)
        {
            this.verwerkHandigeVragen(hvragen);
        }
        if (html != "")
        {
            if (this.doPagePush)
            {
                if (this.pagepushiframe == true)
                {
                    if (document.getElementById("frame"))
                    {
                        document.getElementById("frame").src = html;
                    }
                } else
                {
                    document.location.href = html;
                }
            } else
            {
                document.getElementById('et_aiseResponseDiv').innerHTML += '<br /><br /><a href=' + html + '>Meer info</a>'
            }
        }
        if (this.testing) { this.state = 3; }
        this.changeState();
        if (this.state > 1)
        {
            if (this.toonvraag == true)
            {
                document.getElementById('et_question').value = "";
                document.getElementById('et_question').focus();
            } else
            {
                document.getElementById('et_question').focus();
                document.getElementById('et_question').select();
            }
        }
        antwoord = ""; // Leegmaken ivm firefox wait <- Deze controlleerd of antwoord gezet is.
    }
    this.SendOpmerking = function()
    {
        var rsIframe = document.getElementById("RSIFrameOpmerking");
        var beoordeling = document.getElementsByName('beoordeling');

        var tmpuid = this.lastReceived_uid; tmpuid = tmpuid.replace(/\'/g, "`");
        var tmpant = this.lastReceived_antwoord; tmpant = tmpant.replace(/\'/g, "`"); tmpant = tmpant.replace(/\&\#/g, "|"); tmpant = tmpant.replace(/\&/g, " en ");
        var tmprec = this.lastReceived_recnr; tmprec = tmprec.replace(/\'/g, "`");
        var tmphtm = this.lastReceived_html; tmphtm = tmphtm.replace(/\'/g, "`");
        var tmpcat = this.lastReceived_category; tmpcat = tmpcat.replace(/\'/g, "`");
        var tmpque = this.lastQuestion; tmpque = tmpque.replace(/\'/g, "`"); tmpque = tmpque.replace(/\&\#/g, "|"); tmpque = tmpque.replace(/\&/g, " en ");
        var tmpopm = document.getElementById("invoerOpmerking").value; tmpopm = tmpopm.replace(/\'/g, "`"); tmpopm = tmpopm.replace(/\&/g, " en ");
        var tmptestfase = (me.feedbacktestfase == true) ? '1' : '0';

        //var url = this.opmerkingUrl + '?uid=' + tmpuid + '&vraag=' + tmpque + '&antwoord=' + tmpant + '&commentaar=' + tmpopm + '&score=' + this.beoordeling;
        //BERT REC en CAT TOEGEVOEGEN
        //var url = this.opmerkingUrl + '?uid=' + tmpuid + '&vraag=' + tmpque + '&antwoord=' + tmpant + '&commentaar=' + tmpopm + '&score=' + this.beoordeling + '&rec=' + tmprec + '&cat=' + tmpcat + '&pro=' + this.projectID;
        var url = this.opmerkingUrl +
			'?pro=' + this.projectID +
			'&uid=' + tmpuid +
			'&vraag=' + tmpque +
			'&antwoord=' + tmpant +
			'&rec=' + tmprec +
			'&cat=' + tmpcat +
			'&commentaar=' + tmpopm +
			'&score=' + this.beoordeling +
			'&testfase=' + tmptestfase;
        url = url.replace(/</g, "<_");

        if (rsIframe == null)
        {
            var iframe = document.createElement("iframe");
            iframe.setAttribute("src", url);
            iframe.setAttribute("id", "RSIFrameOpmerking");
            iframe.setAttribute("scrolling", "no");
            iframe.setAttribute("frameBorder", "5");
            iframe.setAttribute("width", "0");
            iframe.setAttribute("height", "0");
            document.body.appendChild(iframe);
        } else
        {
            rsIframe.src = url;
        }
        document.getElementById('divInvoerOpmerking').style.display = 'none';
        document.getElementById('opmerkingtitel').style.display = 'none';
        this.state = 2;
        this.changeState();
        document.getElementsByName('beoordeling')[0].checked = false;
        document.getElementsByName('beoordeling')[1].checked = false;
        document.getElementsByName('beoordeling')[2].checked = false;
        document.getElementById('invoerOpmerking').value = "";
    }
    this.changeBeoordeling = function(newValue)
    {
        this.beoordeling = newValue;
        if (this.beoordeling == '0')
        {
            document.getElementById('divInvoerOpmerking').style.display = 'none';
            document.getElementById('opmerkingtitel').style.display = 'none';
        } else
        {
            document.getElementById('divInvoerOpmerking').style.display = '';
            document.getElementById('opmerkingtitel').style.display = '';
            if (newValue == 1)
            {
                document.getElementById('opmerkingtitel').innerHTML = 'Voeg hier het antwoord voor deze vraag toe:';
            }
            if (newValue == 2)
            {
                document.getElementById('opmerkingtitel').innerHTML = 'Verduidelijk de fout in het antwoord:';
            }
        }
    }
}

/**********************************************************************/
/**********************************************************************/
/*********************** EINDE AISE LIBRARY ***************************/
/**********************************************************************/
/**********************************************************************/

function repositionAfterDrag()
{
    /* Positioneren van alle DIV's en IFRAMES relatief aan de div "status1div" */
    var MainDiv = document.getElementById('status1div');
    if (true == true)
    {
        if (isIE7())
        {
            //alert(document.documentElement.clientWidth);
            MainDiv.style.left = ((document.body.clientWidth / 2) - 242) + "px";
            MainDiv.style.top = "138px";
        } else if (isIE())
        {
            MainDiv.style.left = ((document.body.clientWidth / 2) - 235) + "px";
            MainDiv.style.top = "141px";
        } else
        {
            MainDiv.style.left = ((document.body.clientWidth / 2) - 243) + "px";
            MainDiv.style.top = "138px";
        }
    }
    var MainPosLeft = MainDiv.style.left.replace('px', '');
    var MainPosTop = MainDiv.style.top.replace('px', '');
    var MainHeight = MainDiv.style.height.replace('px', '') * 1;
    var MainWidth = MainDiv.style.width.replace('px', '') * 1;

    var status2div = document.getElementById('status2div');
    status2div.style.left = MainPosLeft + "px";
    status2div.style.top = (MainPosTop * 1) + MainHeight + 1 + "px";

    var status3div = document.getElementById('status3div');
    status3div.style.left = (MainPosLeft - status3div.style.width.replace('px', '') * 1 + 319) + "px";
    status3div.style.top = (MainPosTop * 1) + MainHeight + "px";

    if (aise.useIframeIEfix)
    {
        document.getElementById('status1frame').style.top = MainDiv.style.top;
        document.getElementById('status1frame').style.left = MainDiv.style.left;
        document.getElementById('status2frame').style.top = status2div.style.top;
        document.getElementById('status2frame').style.left = status2div.style.left;
        document.getElementById('status3frame').style.top = status3div.style.top;
        document.getElementById('status3frame').style.left = status3div.style.left;
    }
    if (aise.state > 1)
    {
        document.getElementById('et_question').focus();
        document.getElementById('et_question').select();
    }
}

/*********************************************************************
*********************************************************************
*********************************************************************
**********************************************************************/
//var basicurl		= "http://192.168.1.65";
var serverPath = "http://projecten.elitech.nl";
var basicurl = serverPath + "/eon/js";

var aise = new elitechAise();
aise.projectID       = "EONGUP;"; //44  /* encrypted projectname */
aise.instanceName = 'aise';     /* deze variabele niet veranderen */
aise.defaultFromtop = "0px";    /* startwaarde top van aise 150 */
aise.defaultFromLeft = "0px";    /*307 startwaarde left van aise 172 */
aise.defaultvraag[0] = "Wat is duurzaam opgewekt gas?";
aise.defaultvraag[1] = "Welke energietarieven zijn er?";
aise.handigeVragen = true;  	   /* Maak gebruik van handige vragen */
aise.state = 2;     	   /* initiële status op klein blokje. */
aise.doPagePush = true; 	   /* indien false verschijnt onder het antwoord een link naar de page push pagina */
aise.proxyServer = basicurl + "/proxy.asp";
aise.css = basicurl + "/ellen.css";
aise.opmerkingUrl = serverPath + "/receiveopmerkingen.aspx";
aise.effectUrl = basicurl + "/conf/et_effecten.js";
aise.loadingHTML = "<img src='http://projecten.elitech.nl/eon/js/img/ajax-loader.gif' border='0' />"
aise.showDivSources = false;      /* Debug only => laat content van de divs in textarea's zien. Handig tijdens opmaak van div's */
aise.useIframeIEfix = false;  	   /* aan uitzetten IE fix => wel of geen achterliggende iframes bij de divs. Div kan anders niet over selectboxen en flash heen liggen. */
aise.testing = false;      /* Wel of niet weergeven van de beoordelingsdiv na het krijgen van een antwoord; als niet aan, dan dus geen status3div */
aise.feedbacktestfase = false;
aise.pagepushiframe = true;
aise.toonvraag = true;
// !! in verband met de javascript code moeten de style-width/height/top/left voor de te repositioneren blokken in onderstaande code gezet worden en niet in de stylesheet.

aise.frame1 += '<div id="status1div" class="status1DivStyle" style="border:0px;display:none;position:relative;z-index:1000;top:' + aise.defaultFromtop + ';left:' + aise.defaultFromLeft + ';width:190px;height:auto;">';
aise.frame1 += '	<div id="et_alles">';
aise.frame1 += '		<div id="et_stelvraag_box">';
aise.frame1 += '			<div id="et_stelvraag_input"><div class="stelvraagaanellen">Stel uw vraag aan Ellen:</div><div id="info"><img src="' + basicurl + '/img/info.gif" border="0" onmouseover="javascript:et_ShowInfo();return false;" onmouseout="javascript:et_HideInfo();return false;" /></div>';
aise.frame1 += '				<textarea cols="10" rows="2" type="text" id="et_question" name="et_question" value="" class="tekstinput" onKeyPress="return checkEnter(event)"/></textarea><div id="stelvraag"><a href="javascript:void(0);" class="stelvraag" onClick="javascript:aise.sendQuestion();return false;"><img src="' + basicurl + '/img/stelvraag_ellen.gif" border="0" alt="Stel uw vraag aan Ellen" /></a></div>';
aise.frame1 += '			</div>';
aise.frame1 += '		</div>';
aise.frame1 += '		<div id="et_answer_box">';
aise.frame1 += '			<div id="et_answer_content">';
aise.frame1 += '				<div id="bgvak"><img src="' + basicurl + '/img/tkstvak_klein.gif" border="0" /></div>';
aise.frame1 += '				<div id="stretch">';
aise.frame1 += '					<div id="color"><div id="et_aiseResponseDiv"></div></div>';
aise.frame1 += '					<div id="interessant">Ook interessant voor u:</div>';
aise.frame1 += '					<div id="faq"></div>';
aise.frame1 += '				</div>';
aise.frame1 += '			</div>';
aise.frame1 += '		</div>';
aise.frame1 += '		<div id="et_info">';
aise.frame1 += '			<div id="itop"><img src="' + basicurl + '/img/itop.png" border="0" /></div>';
aise.frame1 += '			<div id="imiddle"><div id="itekst">Ik ben Ellen, ik beantwoord vragen over producten en diensten van E.ON. Stel uw vraag a.u.b. als korte zin of met een kernwoord.</div></div>';
aise.frame1 += '			<div id="ibottom"><img src="' + basicurl + '/img/ibottom.png" border="0" /></div>';
aise.frame1 += '		</div>';
aise.frame1 += '	</div>';
aise.frame1 += '</div>';

aise.frame2 += '<div id="status2div" class="status2DivStyle" style="border:0px;display:none;position:relative;z-index:1000;top:0px;left:0px;width:0px;height:0px;">';
aise.frame2 += '</div>';

aise.frame3 += '<div id="status3div" style="position:relative;z-index:1000;top:10px;left:172px;width:275px;height:200px;display:none;">';
aise.frame3 += '	<div class="beoordeling">Geef hier per vraag aan wat u van het antwoord van Ellen vindt: <br /><br />';
aise.frame3 += '		<input type="radio" name="beoordeling" id="beoordelingGoed" value="Goed" onClick="aise.changeBeoordeling(0);aise.SendOpmerking();" />De vraag is goed beantwoord.<br />';
aise.frame3 += '		<input type="radio" name="beoordeling" id="beoordelingVerkeerdHerkend" value="Verkeerd herkend" onClick="aise.changeBeoordeling(1)" />De vraag wordt niet goed herkend.<br />';
aise.frame3 += '		<input type="radio" name="beoordeling" id="beoordelingFout" value="Fout" onClick="aise.changeBeoordeling(2)" />Het antwoord is inhoudelijk niet goed.<br /><br />';
aise.frame3 += '		<div id="divInvoerOpmerking" style="display:none;">';
aise.frame3 += '				<div id="opmerkingtitel"></div>';
aise.frame3 += '				<textarea id="invoerOpmerking" name="invoer" cols="20" rows="4" value=""></textarea><br /><br />';
aise.frame3 += '				<button class="button" onClick="aise.SendOpmerking();">Opmerking opslaan</button><br /><br />';
aise.frame3 += '		</div>';
aise.frame3 += '	</div>';
aise.frame3 += '</div>';

aise.parse(); /* Start aise */



/**********************************************************************/
/**********************************************************************/
/************** zie ook aise.frame1/2/3 variabelen ********************/
/**********************************************************************/
function isIE50()
{
    return isIE5() && !isIE55();
}
function isFF()
{
    return navigator.userAgent.indexOf("Firefox") > -1;
}
function isFF15()
{
    return navigator.userAgent.indexOf("Firefox/1.5") > -1;
}
function isFF20()
{
    return navigator.userAgent.indexOf("Firefox/2.0") > -1;
}
function isIE55()
{
    return navigator.userAgent.indexOf("MSIE 5.5") > -1;
}
function isIE()
{
    return navigator.userAgent.indexOf("MSIE") > -1;
}
function isIE5()
{
    return navigator.userAgent.indexOf("MSIE 5") > -1;
}
function isIE6()
{
    return navigator.userAgent.indexOf("MSIE 6") > -1 && navigator.userAgent.indexOf("Opera") == -1;
}
function isIE7()
{
    return navigator.userAgent.indexOf("MSIE 7") > -1;
}
function isGeldigeIE()
{
    return isIE55() || isIE6() || isIE7();
}
function isSAFARI()
{
    return navigator.userAgent.indexOf("Safari") > -1;
}
function isWinXP()
{
    if (navigator.userAgent.indexOf('NT 5.1') > 0)
    {
        return true;
    }
    else
    {
        return false;
    }
}

function checkEnter(e)
{
    /*versturen van de vraag indien op enter toets wordt gedrukt*/
    var key;

    if (window.event)
    {
        key = window.event.keyCode; //IE
    } else
    {
        key = e.which;              //firefox
    }
    if (key == 13)
    {
        aise.sendQuestion();
        return false;
    }

}
function move_up()
{
    /* omhoog scrollen in de Faq div */
    document.getElementById('faq').scrollTop = document.getElementById('faq').scrollTop - 15;
}
function move_down()
{
    /* omlaag scrollen in de Faq div */
    document.getElementById('faq').scrollTop = document.getElementById('faq').scrollTop + 15;
}

imgpreload = new Image(); imgpreload.src = basicurl + "/img/ajax-loader.gif";
//verzendon = new Image(); verzendon.src = basicurl + "/img/verzenden_on.jpg";
//verzendoff = new Image(); verzendoff.src = basicurl + "/img/verzenden_off.jpg";
//inklapon = new Image(); inklapon.src = basicurl + "/img/inklap_on.jpg";
//inklapoff = new Image(); inklapoff.src = basicurl + "/img/inklap_off.jpg";
//uitklapon = new Image(); uitklapon.src = basicurl + "/img/uitklap_on.jpg";
//uitklapoff = new Image(); uitklapoff.src = basicurl + "/img/uitklap_off.jpg";
//heleen1 = new Image(); heleen1.src = basicurl + "/img/heleen_grootbottom.gif";
//heleen2 = new Image(); heleen2.src = basicurl + "/img/heleen_kleinbottom.jpg";

// character aanpassingen
char_start = new Image(); char_start.src = basicurl + "/img/ellen_kl_start.jpg";
char_onzekerheid = new Image(); char_onzekerheid.src = basicurl + "/img/ellen_kl_onzekerheid.jpg";
char_zekerheid = new Image(); char_zekerheid.src = basicurl + "/img/ellen_kl_zekerheid.jpg";
char_nietwenselijk = new Image(); char_nietwenselijk.src = basicurl + "/img/ellen_kl_nietwenselijk.jpg";
char_neutraal = new Image(); char_neutraal.src = basicurl + "/img/ellen_kl_neutraal.jpg";
//groot
char_veelgesteldevragen = new Image(); char_veelgesteldevragen.src = basicurl + "/img/ellen_veelgesteldevragen.jpg";
char_producten = new Image(); char_producten.src = basicurl + "/img/ellen_producten.jpg";
char_overenergie = new Image(); char_overenergie.src = basicurl + "/img/ellen_overenergie.jpg";
char_contact = new Image(); char_contact.src = basicurl + "/img/ellen_contact.jpg";
char_tarieven = new Image(); char_tarieven.src = basicurl + "/img/ellen_tarieven.jpg";
char_betalen = new Image(); char_betalen.src = basicurl + "/img/ellen_betalen.jpg";
char_klantworden = new Image(); char_klantworden.src = basicurl + "/img/ellen_klantworden.jpg";
char_verhuizen = new Image(); char_verhuizen.src = basicurl + "/img/ellen_verhuizen.jpg";
char_snelreageren = new Image(); char_snelreageren.src = basicurl + "/img/ellen_snelreageren.jpg";

function swap()
{
    if (document.images)
    {
        for (var x = 0; x < swap.arguments.length; x += 2)
        {
            document[swap.arguments[x]].src = eval(swap.arguments[x + 1] + ".src");
        }
    }
}
function RemoveXSS(str) {
    str = str.replace(/>/gi, " ").replace(/</gi, " ");          // '<' en '>'.
    str = str.replace(/%3e/gi, " ").replace(/%3c/gi, " ");      // url-encodering '<' en '>'.
    str = str.replace(/&#60;/gi, " ").replace(/&#62;/gi, " ");  // html-encodering '<' en '>'.
    str = str.replace(/javascript\:/gi, " ");                   // javascript-startstring.
    str = str.replace(/document\.\S/g, " ");                    // document-startstring.
    return str;
}
