
/**********************************************************************/
/**********************************************************************/
/*********************** 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 uid = "";
var antwoord = "";
var recnr = "";
var html = "";
var category = "";

var elitechAise = function() {
    this.klantcode = "TSM";       /* Probeer hier een unieke afkorting te gebruiken voor een klant */
    this.langCode = "NL";        /* 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.lastReceived_uid = "";
    this.lastReceived_antwoord = "";
    this.lastReceived_recnr = "";
    this.lastReceived_html = "";
    this.lastReceived_category = "";
    this.lastQuestion = "";

    this.testing = false; // when feedback on, set feedback to isTestFase
    this.feedbacktestfase = false; // show feedback block

    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 -!-" + this.klantcode + ";" + this.taalcode + ";" + aise.style.top + ";" + aise.style.left + ";" + me.state + ";" + 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.taalcode) {
                aise.style.top = storage[2]; //0
                aise.style.left = storage[3]; //1
                this.state = storage[4]; //2
                this.lastQuestion = this.convertFrom(storage[5]); //3
                this.lastReceived_antwoord = this.convertFrom(storage[6]); //4
                //this.Unanswered            = this.convertFrom(storage[5]);

                //if (this.Unanswered != "") {
                //	document.getElementById('question').value = this.Unanswered;
                //	this.sendQuestion();
                //	return;
                //} else {
                document.getElementById('question').value = this.lastQuestion;
                document.getElementById('aiseResponseDiv').innerHTML = this.lastReceived_antwoord;
                //}
                //document.getElementById('aiseResponseDiv').innerHTML = this.lastReceived_antwoord;
            }
        }
        else {
            aise.style.top = this.defaultFromtop;
            aise.style.left = this.defaultFromLeft;
        }
        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 = 'block';
            document.getElementById('status3div').style.display = 'none';
            if (this.useIframeIEfix) {
                document.getElementById('status1frame').style.display = 'block';
                document.getElementById('status2frame').style.display = 'block';
                document.getElementById('status3frame').style.display = 'none';
            }
            if (document.getElementById('aiseResponseDiv').innerHTML == '') {
                this.sendQuestionInit();
                return;
            }
            document.getElementById('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" href="' + this.css + '">');
        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='moz-opacity:.5;filter:alpha(opacity=0);display:none;z-index:900;position:absolute;' width='" + status1div.style.width + "' height='" + status1div.style.height + "'></iframe>");
            var status2div = document.getElementById('status2div');
            document.write("<iframe name='status2frame' id='status2frame' frameborder='0' style='moz-opacity:.5;filter:alpha(opacity=0);display:none;z-index:900;position:absolute;' width='" + status2div.style.width + "' height='" + status2div.style.height + "'></iframe>");
            var status3div = document.getElementById('status3div');
            document.write("<iframe name='status3frame' id='status3frame' frameborder='0' style='moz-opacity:.5;filter:alpha(opacity=0);display:none;z-index:900;position:absolute;' width='" + status3div.style.width + "' height='" + status3div.style.height + "'></iframe>");
        }
        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.setDefaultVragen = function() {
        var faqDiv = document.getElementById('faq');
        faqDiv.innerHTML = "";
        for (var loop = 0; loop < this.defaultvraag.length; loop++) {
            faqDiv.innerHTML = faqDiv.innerHTML + "<img style='cursor:pointer;' src='" + basicurl + "/img/pijl_off.gif' border='0' /><a href='#' onClick=\"" + this.instanceName + ".vraagHandigeVraag('" + this.defaultvraag[loop] + "')\">" + this.defaultvraag[loop] + '</a><br />'
        }
    }
    this.vraagHandigeVraag = function(vraag) {
        document.getElementById('question').value = vraag;
        this.sendQuestion();
    }
    this.verwerkHandigeVragen = function(hvragen) {
        var faqDiv = document.getElementById('faq');
        faqDiv.innerHTML = "";
        for (var loop = 0; loop < hvragen.length; loop++) {
            faqDiv.innerHTML = faqDiv.innerHTML + "<img style='cursor:pointer;' src='" + basicurl + "/img/pijl_off.gif' border='0' /><a href='#' onClick=\"" + this.instanceName + ".vraagHandigeVraag('" + hvragen[loop] + "')\">" + hvragen[loop] + '</a><br />'
        }
        if (hvragen.length == 0) {
            for (var loop = 0; loop < this.defaultvraag.length; loop++) {
                faqDiv.innerHTML = faqDiv.innerHTML + "<img style='cursor:pointer;' src='" + basicurl + "/img/pijl_off.gif' border='0' /><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 + "?langcode=" + this.langCode +
            '&projectID=' + this.projectID + '&uid=' + this.lastReceived_uid + '&vraag=' + vraag;
            
        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;
        }
    }
    this.sendQuestion = function() {
        document.getElementById('aiseResponseDiv').innerHTML = this.loadingHTML;
        this.getDataFromServer("ScriptTagID", this.proxyServer, RemoveXSS(document.getElementById('question').value));
    }
    this.sendQuestionInit = function() {
        document.getElementById('aiseResponseDiv').innerHTML = this.loadingHTML;
        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.lastQuestion = RemoveXSS(document.getElementById('question').value);

        if (this.toonvraag == true) {
            document.getElementById('aiseResponseDiv').innerHTML = "<strong>" + this.lastQuestion + "</strong><div id='ruimtegesteldevraag'>&nbsp;</div>" + antwoord;
        } else {
            document.getElementById('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('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('question').value = "";
                document.getElementById('question').focus();
            } else {
                document.getElementById('question').focus();
                document.getElementById('question').select();
            }
        }
        antwoord = ""; // Leegmaken ivm firefox wait <- Deze controlleert 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 +
			'?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;
        }
        /* reset waarden */
        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()) {
            MainDiv.style.left = ((document.documentElement.clientWidth / 2) + 148) + "px";
            MainDiv.style.top = "141px";
        } else if (isIE()) {
            //alert(document.body.clientWidth);
            MainDiv.style.left = ((document.body.clientWidth / 2) + 145) + "px";
            MainDiv.style.top = "140px";
        } else {
            MainDiv.style.left = ((document.body.clientWidth / 2) + 148) + "px";
            MainDiv.style.top = "140px";
        }
    }
    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*1)- 161 + "px";
    //	status2div.style.top  = (MainPosTop*1)+ 21 + "px";

    var status3div = document.getElementById('status3div');
    status3div.style.left = ((MainPosLeft - status3div.style.width.replace('px', '') * 1) + 256) + "px";
    status3div.style.top = (MainPosTop * 1) + MainHeight + 1 + "px";
    //	if (isSAFARI()) {
    //		document.getElementById('safari1').style.height = '256px';
    //		document.getElementById('safari').style.height = '14px';
    //	}
    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('question').focus();
        document.getElementById('question').select();
    }
}

/*********************************************************************
*********************************************************************
*********************************************************************
**********************************************************************/

var serverPath = "http://projecten.elitech.nl";
var basicurl = serverPath + "/TSM/js_nl";

var aise = new elitechAise();
aise.projectID = "THEVNGeSiChGeKfG"; // Encrypted Projectname
aise.instanceName = 'aise';     /* deze variabele niet veranderen */
aise.defaultFromtop = "142px";    /* startwaarde top van aise */
aise.defaultFromLeft = "783px";    /*307 startwaarde left van aise */
aise.defaultvraag[0] = "Waar kan ik een cursus volgen?";
aise.defaultvraag[1] = "Wat houdt een cursus in?";
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 + "/chris.css";
aise.opmerkingUrl = serverPath + "/receiveopmerkingen.aspx";
aise.loadingHTML = "..."
aise.showDivSources = false;      /* Debug only => laat content van de divs in textarea's zien. Handig tijdens opmaak van div's */
aise.useIframeIEfix = true;  	   /* 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:0;display:none;position:absolute;z-index:1000;top:142px;left:' + aise.defaultFromLeft + ';width:255px;height:315px;">';
aise.frame1 += '	<table id="safari1" style="z-index:2000;" border="0" cellpadding="0" cellspacing="0" width="100%" height="315">';
aise.frame1 += '		<tr style="height:1px;">';
aise.frame1 += '			<td width="10" rowspan="6"></td>';
aise.frame1 += '			<td width="138"></td>';
aise.frame1 += '			<td width="98"></td>';
aise.frame1 += '			<td width="9" rowspan="6"></td>';
aise.frame1 += '		</tr>';
aise.frame1 += '		<tr style="height:64px;" id="safari">';
aise.frame1 += '			<td></td>';
aise.frame1 += '			<td></td>';
aise.frame1 += '		</tr>';
aise.frame1 += '		<tr style="height:65px;">';
aise.frame1 += '			<td align="right"><input type="text" id="question" name="question" size="22" value="" class="tekstinput" onKeyPress="return checkEnter(event)" /><div align="right" id="stelvraag"><a href="#" onMouseOver="javascript:swap(&#34;stelvraag&#34;,&#34;stelvraagon&#34;);" onMouseOut="javascript:swap(&#34;stelvraag&#34;,&#34;stelvraagoff&#34;);" onClick="aise.sendQuestion()"><img name="stelvraag" src="' + basicurl + '/img/stelvraag_off.gif" border="0" alt="Stel uw vraag" /></a></div></td>';
aise.frame1 += '			<td></td>';
aise.frame1 += '		</tr>';
aise.frame1 += '		<tr style="height:128px;">';
aise.frame1 += '			<td colspan="2"><div id="aiseResponseDiv"></div></td>';
aise.frame1 += '		</tr>';
aise.frame1 += '		<tr style="height:51px;">';
aise.frame1 += '			<td colspan="2">';
aise.frame1 += '				<table border="0" cellpadding="0" cellspacing="0" width="100%" style="height:51px;">';
aise.frame1 += '					<tr height="4">';
aise.frame1 += '						<td colspan="2"></td>';
aise.frame1 += '					</tr>';
aise.frame1 += '					<tr height="18">';
aise.frame1 += '						<td colspan="2" class="meestvr">MEEST GESTELDE VRAGEN</td>';
aise.frame1 += '					</tr>';
aise.frame1 += '					<tr>';
aise.frame1 += '						<td rowspan="2" valign="top"><div id="faq"></div></td>';
aise.frame1 += '						<td valign="top" width="20" align="right"><a href="javascript:move_up();" onMouseOver="javascript:swap(&#34;pijl1&#34;,&#34;pijlon&#34;);" onMouseOut="javascript:swap(&#34;pijl1&#34;,&#34;pijloff&#34;);"><img name="pijl1" style="cursor:pointer;" src="' + basicurl + '/img/pijlup_off.gif" border="0" /></a></td>';
aise.frame1 += '					</tr>';
aise.frame1 += '					<tr>';
aise.frame1 += '						<td valign="bottom" width="20" align="right"><a href="javascript:move_down();" onMouseOver="javascript:swap(&#34;pijl2&#34;,&#34;pijldownon&#34;);" onMouseOut="javascript:swap(&#34;pijl2&#34;,&#34;pijldownoff&#34;);"><img name="pijl2" style="cursor:pointer;" src="' + basicurl + '/img/pijldown_off.gif" border="0" /></a></td>';
aise.frame1 += '					</tr>';
aise.frame1 += '				</table>';
aise.frame1 += '			</td>';
aise.frame1 += '		</tr>';
aise.frame1 += '		<tr style="height:6px;">';
aise.frame1 += '			<td colspan="2"></td>';
aise.frame1 += '		</tr>';
aise.frame1 += '	</table>';
aise.frame1 += '</div>';

aise.frame2 += '<div id="status2div" class="status2DivStyle" style="border:0;display:none;position:absolute;z-index:1000;top:0px;left:0px;width:0px;height:0px;"></div>';

aise.frame3 += '<div id="status3div" style="position:absolute;z-index:1000;top:0px;left:560px;width:255px;height:305;display:none;">';
aise.frame3 += '<table id="tlbeoordelingsantw" cellpadding="0" cellspacing="0" border="0" width="255" height="305">';
aise.frame3 += '	<tr><td height="8"></td></tr>';
aise.frame3 += '	<tr><td height="40">Geef hier per vraag aan wat u van het antwoord van Chris vindt.</td></tr>';
aise.frame3 += '	<tr><td height="2"></td></tr>';
aise.frame3 += '	<tr><td class="lijn" height="40"><input type="radio" name="beoordeling" id="beoordelingGoed" value="Goed" onClick="aise.changeBeoordeling(0);aise.SendOpmerking();" />De vraag is goed beantwoord.</td></tr>';
aise.frame3 += '	<tr><td class="lijn" height="40"><input type="radio" name="beoordeling" id="beoordelingVerkeerdHerkend" value="Verkeerd herkend" onClick="aise.changeBeoordeling(1)" />De vraag wordt niet goed herkend.</td></tr>';
aise.frame3 += '	<tr><td class="lijn" height="40"><input type="radio" name="beoordeling" id="beoordelingFout" value="Fout" onClick="aise.changeBeoordeling(2)" />Het antwoord is inhoudelijk niet goed.</td></tr>';
aise.frame3 += '	<tr><td class="lijn" height="135" valign="top">';
aise.frame3 += '		<div id="divInvoerOpmerking" style="display:none;height:135px;height:expression(&#39;135&#39;)">';
aise.frame3 += '			<table id="tlbeoordelingsantw" border="0" cellpadding="0" cellspacing="0">';
aise.frame3 += '				<tr><td height="10"></td></tr>';
aise.frame3 += '				<tr><td height="12"><div id="opmerkingtitel"></div></td></tr>';
aise.frame3 += '				<tr><td height="2"></td></tr>';
aise.frame3 += '				<tr><td height="25"><div id="divInvoerOpmerkingTextArea"><textarea id="invoeropmerking" name="invoer" cols="20" rows="2" value=""></textarea></div></td></tr>';
aise.frame3 += '				<tr><td height="32" valign="bottom"><a href="#" onMouseOver="javascript:swap(&#34;opslaan&#34;,&#34;opslaanon&#34;);" onMouseOut="javascript:swap(&#34;opslaan&#34;,&#34;opslaanoff&#34;);" onClick="aise.SendOpmerking();" title="Opslaan"><img name="opslaan" src="' + basicurl + '/img/ok_off.jpg" border="0" /></a></td></tr>';
aise.frame3 += '				<tr><td height="2"></td></tr>';
aise.frame3 += '			</table>';
aise.frame3 += '		</div>';
aise.frame3 += '	</td></tr>';
aise.frame3 += '</table>';
aise.frame3 += '</div>';

aise.parse(); /* Start aise */



/**********************************************************************/
/**********************************************************************/
/***************** functies alleen voor Chris *************************/
/************** zie ook aise.frame1/2/3 variabelen ********************/
/**********************************************************************/
function isIE50() {
    return isIE5() && !isIE55();
}
function isIE() {
    return navigator.userAgent.indexOf("MSIE") > -1;
}
function isIE55() {
    return navigator.userAgent.indexOf("MSIE 5.5") > -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 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;
    }
    /*
    if (window.event) {
    key = window.event.keyCode;     //IE
    } else {
    key = e.which;     //firefox
    }	
    if (key == 13) {
    //aise.Unanswered = document.getElementById('question').value;
    //we kunnen de page refresh toch niet afvangen.
    //de aanroep van sendQ werkt immers niet.
    //dus: property vullen; meegeven in storeAllData en weer uitlezen in repositionFromStorage
    //indien property gevuld: vraag activeren (en weer leegmaken bij parse)
    }
    */
}
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;
}
pijlon = new Image(); pijlon.src = basicurl + "/img/pijlup_on.gif";
pijloff = new Image(); pijloff.src = basicurl + "/img/pijlup_off.gif";
pijldownon = new Image(); pijldownon.src = basicurl + "/img/pijldown_on.gif";
pijldownoff = new Image(); pijldownoff.src = basicurl + "/img/pijldown_off.gif";
stelvraagon = new Image(); stelvraagon.src = basicurl + "/img/stelvraag_on.gif";
stelvraagoff = new Image(); stelvraagoff.src = basicurl + "/img/stelvraag_off.gif";
opslaanon = new Image(); opslaanon.src = basicurl + "/img/ok_on.jpg";
opslaanoff = new Image(); opslaanoff.src = basicurl + "/img/ok_off.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;
}