﻿function loadChart()
{
    var tgroup = getTGroup();
    var prod = getProd();
    var dates = getDates();
    
    if (prod != "")
    {
        getChart(tgroup + prod + dates);
    }
    else
        alert("Please select at least one(1) product.");
}


function getChart(qs)
{
    var ajax = new AJAX();
    
    ajax.callHTML("/cmechart.aspx" + qs, "GET", "", function(res)
    {
        document.getElementById("chart_div").innerHTML = res;
    });
}
function getTGroup()
{
   var h = "?tGroup=";
   var obj;
   
   for (var i = 0; i < 4; i++)
   {
        obj = document.getElementById("rb_" + i);
        
        if(obj.checked)
            h += obj.value;
   }
   return h;
}

function getDates()
{
    var sdObj = document.getElementById("startdate");
    var edObj = document.getElementById("enddate");
    var h = "";
    
    if(sdObj.value != "")
    {
        if(ValidateIt(sdObj))
            h += "&sd=" + sdObj.value;
    }

    if(edObj.value != "")
    {
        if(ValidateIt(edObj))
            h += "&ed=" + edObj.value;
    }
    
    return h;
}

function getProd()
{
    var h = "&prod=";
    var obj;
    
    for(var i = 0; i < 4; i++)
    {
        obj = document.getElementById("cb_" + i);
        
        if(obj.checked)
            h += obj.value + ",";
    }
    
    if(h != "&prod=")
        h = h.substr(0, (h.length - 1));
    else
        h = "";
        
    return h;
}
// vsDate must be in month/day/year format
function isValidDate(dateStr)
{
    // Checks for the following valid date formats:
    // MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY
    // Also separates date into month, day, and year variables

    var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;

    // To require a 4 digit year entry, use this line instead:
    // var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/;

    var matchArray = dateStr.match(datePat); // is the format ok?
    if (matchArray == null)
    {
        alert("Date is not in a valid format.")
        return false;
    }
    
    month = matchArray[1]; // parse date into variables
    day = matchArray[3];
    year = matchArray[4];
    
    if (month < 1 || month > 12)
    { // check month range
        alert("Month must be between 1 and 12.");
        return false;
    }
    
    if (day < 1 || day > 31)
    {
        alert("Day must be between 1 and 31.");
        return false;
    }
    
    if ((month==4 || month==6 || month==9 || month==11) && day==31)
    {
        alert("Month "+month+" doesn't have 31 days!")
        return false
    }
    
    if (month == 2)
    { 
        // check for february 29th
        var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        
        if (day>29 || (day==29 && !isleap))
        {
            alert("February " + year + " doesn't have " + day + " days!");
            return false;
        }
    }
    
    return true;  // date is valid
}

function ValidateIt(objthis)
{
    if (isValidDate(objthis.value) == false)
    {
        objthis.focus();
        return false;
    }
    else
        return true;
}
