/**
 * This function is executed after the page is loaded.
 * 
 * @function
 * @name init
 * @kind function
 */
function init() {
    // Make sure that only plain text is pasted
    configurePastingInElement("xmlArea");
    configurePastingInElement("transformArea");

    //Handle clicks in whole form and set info in tooltip
    setDefaultContent(document.getElementById("xmlArea"), 'Insert XML here');
    setDefaultContent(document.getElementById("transformArea"), 'Insert XSD here');
    
    // refreshTooltip();
    processTooltip();
    tool.addEventListener('click', event => {
        //Check if script was called from textarea or selector
        var targetID = event.target.getAttribute('id');
        if (targetID !== "processors" && targetID !== "xmlArea" && targetID !== "transformArea" && targetID !== "versions") {
            return;
        }

        processTooltip();
        
    })
}

/**
 * The `processTooltip()` function is responsible for updating the display of the tooltip based on the selected version of the processor.
 * It shows or hides different sections of the tooltip based on the selected version. 
 * It also handles the click event on the form and updates the tooltip accordingly.
 * 
 * @function
 * @name processTooltip
 * @kind function
 */
function processTooltip() {

    if (getProcessor() == "xalan") {
        document.getElementById("tooltipFunctionInfo").innerText = "XSLT 1.0 functions";
        document.getElementById("processorTooltipInfo").innerText = "Supports XSLT 1.0";
        hideList(document.getElementsByName("collapse30"));
    } else {
        document.getElementById("tooltipFunctionInfo").innerText = "XSLT 1.0, 2.0 & 3.0 functions";
        document.getElementById("processorTooltipInfo").innerText = "Supports XSLT up to 3.0";
        showList(document.getElementsByName("collapse30"));
    }
}