﻿// File JScript
function CalendarCheckValue (ctrl)
{
    if (ctrl.parentNode.parentNode == null || 
        GetAttribute (ctrl.parentNode.parentNode, "ctrlType") != "GlCalendar" ||
        ctrl.value == "0")
        return;

    var val = ctrl.value;
    
    if (val.charAt (0) == '0')
        val = val.substring (1, val.length);
    
    var md = GetAttribute (ctrl.parentNode.parentNode, "modifyDocument");
    if (md == null || md == "true")
    {
        docModified = true;
    }
     
    var dd = GetAttribute (ctrl.parentNode.parentNode, "dd");
    var MM = GetAttribute (ctrl.parentNode.parentNode, "MM");
    var yyyy = GetAttribute (ctrl.parentNode.parentNode, "yyyy");
    
    if (GetAttribute (ctrl, "dd") != null)
    {
        SetAttribute (ctrl.parentNode.parentNode, "dd", val);
        dd = val;
    }
    else if (GetAttribute (ctrl, "MM") != null)
    {
        SetAttribute (ctrl.parentNode.parentNode, "MM", val);
        MM = val;
    }
    else if (GetAttribute (ctrl, "yyyy") != null)
    {
        SetAttribute (ctrl.parentNode.parentNode, "yyyy", val);
        yyyy = val;
    }
    
    var date = new Date ();
 
    date.setFullYear (yyyy, MM - 1, dd);
    
    var textControls = GetAttribute (ctrl.parentNode.parentNode, "textControls").split (";");
    var color = "";
    
    if ((date.getFullYear () != yyyy || date.getMonth () != (MM - 1) || date.getDate () != dd) &&
        !(yyyy == "" && MM == "" && dd == ""))
    {
        color = "#F00";
        SetAttribute (ctrl.parentNode.parentNode, "error", "true");
    }
    else
    {
        // alert (dd + "/" + MM + "/" + yyyy);
        SetAttribute (ctrl.parentNode.parentNode, "value", dd + "/" + MM + "/" + yyyy);
        SetAttribute (ctrl.parentNode.parentNode, "error", "false");
    }
        
    for (var i = 0; i < textControls.length; i ++)
        document.getElementById(textControls [i]).style.color = color;
        
    CallCustomFunction (ctrl.parentNode.parentNode, "customCalendarCheckValue");
}

function GetDate (cal)
{
    var dd = GetAttribute (cal, "dd");
    var MM = GetAttribute (cal, "MM");
    var yyyy = GetAttribute (cal, "yyyy");
    
    if (dd != "" && MM != "" && yyyy != "")
    {
        yyyy = parseInt (yyyy);
        MM = parseInt (MM);
        dd = parseInt (dd);
        
        var date = new Date ();
        date.setFullYear (yyyy, MM - 1, dd);
        
        return date;
    }
    else
        return null;    
}

function CompareDate (d1, d2)
{
    if (d1 != null && d2 != null)
    {
        if (d1 < d2)
            return -1;
        else if (d1 == d2)
            return 0;
        else
            return 1;    
    }
    else
        return 2; // data non valida
}