﻿function Helpers() {}

Helpers.ClearField = function(field, defaultValue)
{
    var input = document.getElementById(field);
    if (input.value == defaultValue)
        input.value = "";
    else if (input.value == "")
        input.value = defaultValue;
}

Helpers.ToggleDiv = function(ID) {

    var obj = document.getElementById(ID);
    if (obj != null) {
        if (obj.style.display == "block")
            obj.style.display = "none";
        else
            obj.style.display = "block";
    }
}

Helpers.DateTimeCV = function(source, arguments) {

    var minYear = 1900;
    var maxYear = 2200;
    
    var string = arguments.Value
    var bDag = false;
    var bJaar = false;


    if (string.search(/^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/) != -1) {
        var strSeparator = string.substring(2, 3) //find date separator

        var arrayDate = string.split(strSeparator); //split date into month, day, year
        //create a lookup for months not equal to Feb.
        var arrayLookup = { '01': 31, '02': 29, '03': 31, '04': 30, '05': 31, '06': 30, '07': 31, '08': 31, '09': 30, '10': 31, '11': 30, '12': 31 }
        var intDay = parseInt(parseFloat(arrayDate[1]))

        //check if month value and day value agree
        if (arrayDate[0] > 0 && arrayDate[0] < 13) {
            if (arrayLookup[arrayDate[0]] != null && typeof (arrayLookup[arrayDate[0]]) != "undefined") {
                if (intDay <= arrayLookup[arrayDate[0]] && intDay != 0)
                    bDag = true;
            }
            if (bDag) {
                var intYear = parseInt(arrayDate[2]);
                if (intYear < minYear || intYear > maxYear)
                    bJaar = false;
                else {
                    var intMonth = parseInt(parseFloat(arrayDate[0]));
                    if (intMonth == 2) {
                        if (((intYear % 4 == 0 && intDay <= 29) || (intYear % 4 != 0 && intDay <= 28))) {
                            bJaar = true;
                        }
                    }
                    else {
                        bJaar = true;
                    }
                }
            }
            else
                arguments.IsValid = false;
        }
        else
            arguments.IsValid = false;

        arguments.IsValid = (bJaar && bDag);
    }
    else
        arguments.IsValid = false;
}

Helpers.Search = function(targetUrl, searchText) {

    var search = document.getElementById(searchText).value;
    if (search != "") {
        var url = targetUrl + "?search=" + encodeURI(search);
        window.location.href = encodeURI(url.replace('&', '%26'));
    }
    return false;
}
