

function ConfirmInsert(message, isalert, commandtype) {
    if (message.length == 0) { message = "unspecified message"; }
    if (isalert) {
        alert(message);
        return;
    }

    if (confirm(message)) {
        returnvar = "1";
    }
    else {
        returnvar = "0";
    }

    ManualPostBack("__confirmalert$" + commandtype, returnvar);

}

//manual synchronous postback (non ajax)
function ManualPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }

}

function padleft(paddingchar, paddinglength, text) {
    if (text.length == 0) {
        return text;
    }

    while (text.length < paddinglength) {
        text = paddingchar + text;
    }
    return text; $
}

function allow_numeric(obj) {


    if (/[^0-9]/i.test(obj.value))
        obj.value = obj.value.replace(/[^0-9]/g, '')

}

function allow_decimal(obj) {
    //Vervangt . door decimaal scheidingsteken. Dit voorkomt problemen met meerdere talen bij invoeren via numpad
    obj.value = obj.value.replace('.', DecimalSeperator);
    var re = '^\\' + DecimalSeperator + '{0,1}\\d+\\' + DecimalSeperator + '?\\d{0,5}$';
    var p = new RegExp(re);
    if (!obj.value.match(p)) {
        obj.value = '';
    }
}

function allow_decimal3(obj) {
    //Afronden naar 3 decimalen
    if (obj.value != '') {
        var rvalue = obj.value.replace(',', '.');
        var newvalue = (new Number(rvalue)).toFixed(3); //parseFloat("" + rvalue);
        obj.value = newvalue;
    }
    //Vervangt . door decimaal scheidingsteken. Dit voorkomt problemen met meerdere talen bij invoeren via numpad
    obj.value = obj.value.replace('.', DecimalSeperator);
    
    
    //obj.value = Math.round(new Number(obj.value) * 1000) / 1000;
    var re = '^\\' + DecimalSeperator + '{0,1}\\d+\\' + DecimalSeperator + '?\\d{0,5}$';
    var p = new RegExp(re);
    if (!obj.value.match(p)) {
        obj.value = '';
    }
}

function show(controlid) {
    control = document.getElementById(controlid);
    if (control.style.display != "block")
        control.style.display = "block";
}

// vervangen door "show_abs_no_overflow"
//    function show_abs(e,controlid) {
//        control = document.getElementById(controlid);
//        control.style.display = "block";

//        var posx = 0;
//        var posy = 0;
//        if (!e) var e = window.event;
//        if (e.pageX || e.pageY) {
//            posx = e.pageX;
//            posy = e.pageY;
//        }
//        else if (e.clientX || e.clientY) {
//            posx = e.clientX + document.body.scrollLeft
//			+ document.documentElement.scrollLeft;
//            posy = e.clientY + document.body.scrollTop
//			+ document.documentElement.scrollTop;
//        }
//        
//        control.style.top = posy + 'px';
//        control.style.left = posx + 'px';
//        control.style.zIndex = 999;
//    }

function show_abs_no_overflow(e, controlid) {
    control = document.getElementById(controlid);
    if (control.innerHTML == "") return;
    
    control.style.display = "block";

    //        var windowWidth = document.body.offsetWidth;
    //        var windowHeight = document.body.offsetHeight;
    var windowWidth = document.getElementById('maincontent').offsetWidth;
    var windowHeight = document.getElementById('maincontent').offsetHeight;

    var posx = 0;
    var posy = 0;
    if (!e) var e = window.event;
    if (e.pageX || e.pageY) {
        posx = e.pageX;
        posy = e.pageY;
    }
    //        else if (e.clientX || e.clientY) {
    //        posx = e.clientX + document.body.scrollLeft
    //        + document.documentElement.scrollLeft;
    //        posy = e.clientY + document.body.scrollTop
    //        + document.documentElement.scrollTop;
    //        }
    else if (e.x || e.y) {
        posx = e.x + document.body.scrollLeft
			+ document.documentElement.scrollLeft;
        posy = e.y + document.body.scrollTop
			+ document.documentElement.scrollTop;
    }

    var rightOfControl = posx + control.offsetWidth;
    var mouseX = posx;

    if (rightOfControl > windowWidth) {
        posx = windowWidth - control.offsetWidth - 40; // 40 = width scrollbar x2
        while (mouseX > posx && mouseX < (posx + control.offsetWidth + 40)) {
            posx--;
        }
    }

    control.style.top = posy + 'px';
    control.style.left = posx + 'px';
    control.style.zIndex = 999;
}

function hide(controlid) {
    control = document.getElementById(controlid);
    control.style.display = "none";
}

function queryString(ji) {
    hu = window.location.search.substring(1);
    gy = hu.split("&");

    for (i = 0; i < gy.length; i++) {
        ft = gy[i].split("=");
        if (ft[0] == ji) {
            return ft[1];
        }
    }
}

function SetSelectedText(text, control) {
    if (document.selection) {
        document.selection.createRange().text = text;
        return true;
    }
    else if (control.selectionStart) {
        var startPos = control.selectionStart;
        var endPos = control.selectionEnd;
        var str = control.value.substring(startPos, endPos);
        control.value = control.value.substring(0, startPos) + text + ta.value.substring(endPos, ta.value.length);
        return true;
    }

}

function refreshParent() {
    var xWin = window.dialogArguments;
    xWin.document.forms[0].submit()//location.reload(true);

    if (window.parent.progressWindow) {
        window.parent.progressWindow.close()
    }
    window.close();
}

function disableEnter(sender, e) {
    if (e.KeyCode == 13)
        return false;
}

// Functie tbv RadCombobox
// Deze functie zorgt er voor dat de telerik control nét wat beter werkt
// conform de wensen
// Mogelijk in de toekomst vervangen door blurItem2
function blurItem(rcb) {
    // Aantal items in lijst groter dan 0 dan item instellen
    // anders de selectie opgeschonen
    if (rcb.get_items().get_count() > 0) {
        // Indien item is geselecteerd dan die gebruiken
        // anders eerste item uit de lijst gebruiken
        var HighlightedItem = rcb.get_highlightedItem();
        if (HighlightedItem == null) {
            rcb.get_items().getItem(0).select();
        }
        else {
            if (rcb.get_emptyMessage() == rcb.get_text()) {
                rcb.clearSelection();
            } else {
                rcb.get_items().getItem(HighlightedItem.get_index()).select();
            }
        }
    }
    else {
        rcb.clearSelection();
        rcb.selectedIndex = -1;
    }
}

// Functie tbv RadCombobox
// Deze functie zorgt er voor dat de telerik control nét wat beter werkt
// conform de wensen
function blurItem2(rcb) {
    // Aantal items in lijst groter dan 0 dan item instellen
    // anders de selectie opgeschonen
    if (rcb.get_items().get_count() > 0) {
        // Indien item is geselecteerd dan die gebruiken
        // anders eerste item uit de lijst gebruiken
        var HighlightedItem = rcb.get_selectedItem();
        if (HighlightedItem == null) {
            rcb.get_items().getItem(0).select();
        }
        else {
            if (rcb.get_emptyMessage() == rcb.get_text()) {
                rcb.clearSelection();
            } else {
                rcb.get_items().getItem(HighlightedItem.get_index()).select();
            }
        }
    }
    else {
        rcb.clearSelection();
        rcb.selectedIndex = -1;
    }
}

//Checks text lenght in textbox
function CheckLength(TargetObject, value) {
    LenString = TargetObject.value.length;
    if (LenString > value) {
        TargetObject.value = TargetObject.value.substring(0, value);
    }
}

function CheckLengthRad(TargetObject, value) {
    LenString = TargetObject.get_value().length;
    if (LenString > value) {
        TargetObject.set_value(TargetObject.get_value().substring(0, value));
    }
}
