﻿function ValidatorEnableFlightStatus(ddlSearchBy, reqFlightNumber, regexFlightNumber, reqOrigin, reqDestination, reqAirport, valEar, valLatest, cmpEarLatest, reqFlightDate,
txtFlightNumber, ddlOrigin, ddlDetination, ddlAirport, ddlEarliest, ddlLatest, ddlDate,sameDestination, isTab)
{ 
    var searchBy =document.getElementById(ddlSearchBy).value;
    var flightNumber = document.getElementById(txtFlightNumber).value;
    var origin = document.getElementById(ddlOrigin).value;
    var destination = document.getElementById(ddlDetination).value;
    var airport = document.getElementById(ddlAirport).value;
    var earliestTime = document.getElementById(ddlEarliest).value;
    var latestTime = document.getElementById(ddlLatest).value;
    var date = document.getElementById(ddlDate).value;

    var SubmitStatus = document.getElementById("SubmitStateFlightsStatus");
    if (SubmitStatus) {
        SubmitStatus.value = false;
    }
    if (date == '') {
        if (isTab == '1') {
            ShowMessage(reqFlightDate);
        }
        else {
            document.getElementById("fsDvDateMsg").style.display = "";
            document.getElementById("fsDvDateMsg").innerHTML = reqFlightDate;
        }
        return false;
        
    }
    switch(searchBy.toUpperCase())
    {
        case "FLIGHT":
            {
                if (flightNumber == '') {
                    if (isTab == '1') {
                        ShowMessage(reqFlightNumber);
                    }
                    else {
                        document.getElementById("fsDvFlightNoMsg").style.display = "";
                        document.getElementById("fsDvFlightNoMsg").innerHTML = reqFlightNumber;
                    }
                    return false;
                }

                if (/\D/.test(flightNumber)) {
                    if (isTab == '1') {
                        ShowMessage(regexFlightNumber);
                    }
                    else {
                        document.getElementById("fsDvFlightNoMsg").style.display = "";
                        document.getElementById("fsDvFlightNoMsg").innerHTML = regexFlightNumber;
                    }
                    return false;
                }
                break;
            }

        case "ROUTE":
            {
                if (origin == '') {
                    if (isTab == '1') {
                        ShowMessage(reqOrigin);
                    }
                    else {
                        document.getElementById("fsDvRouteMsg").style.display = "";
                        document.getElementById("fsDvRouteMsg").innerHTML = reqOrigin;
                    }

                    return false;
                }
                if (destination == '') {
                    if (isTab == '1') {
                        ShowMessage(reqDestination);
                    }
                    else {
                        document.getElementById("fsDvDestinationMsg").style.display = "";
                        document.getElementById("fsDvDestinationMsg").innerHTML = reqDestination;
                    }

                    return false;
                }

                if (destination == origin) {
                    if (isTab == '1') {
                        ShowMessage(sameDestination);
                    }
                    else {
                        document.getElementById("fsDvDestinationMsg").style.display = "";
                        document.getElementById("fsDvDestinationMsg").innerHTML = sameDestination;
                    }

                    return false;
                }
                break;
            }

        case "AIRPORT":
            {
                if (airport == '') {
                    if (isTab == '1') {
                        ShowMessage(reqAirport);
                    }
                    else {
                        document.getElementById("fsDvAirportSelMsg").style.display = "";
                        document.getElementById("fsDvAirportSelMsg").innerHTML = reqAirport;
                    }

                    return false;
                }
                if (earliestTime == '') {
                    if (isTab == '1') {
                        ShowMessage(valEar);
                    }
                    else {
                        document.getElementById("fsDvEarliestMsg").style.display = "";
                        document.getElementById("fsDvEarliestMsg").innerHTML = valEar;
                    }

                    return false;
                }
                if (latestTime == '') {
                    if (isTab == '1') {
                        ShowMessage(valLatest);
                    }
                    else {
                        document.getElementById("fsDvLatestMsg").style.display = "";
                        document.getElementById("fsDvLatestMsg").innerHTML = valLatest;
                    }
                    return false;
                }
                if (parseInt(earliestTime) > parseInt(latestTime)) {
                    if (parseInt(earliestTime) != 23 && parseInt(latestTime) != 0) {
                        if (isTab == '1') {
                            ShowMessage(cmpEarLatest);
                        }
                        else {
                            document.getElementById("fsDvLatestMsg").style.display = "";
                            document.getElementById("fsDvLatestMsg").innerHTML = cmpEarLatest;
                        }
                        return false;
                    }
                }
                break;
            }
    }

    if (SubmitStatus) {
        SubmitStatus.value = true;
    }
}



function showSearchOptionDiv(getVal) {
    var searchBy = document.getElementById(getVal).value;

    var dvFlightData = document.getElementById("trFlight");
    var dvRouteData = document.getElementById("trRoute");
    var dvAirportData = document.getElementById("trAirport");
    if (searchBy == "Flight") {
        dvFlightData.style.display = "";
        dvRouteData.style.display = "none";
        dvAirportData.style.display = "none";
    }
    else if (searchBy == "Route") {
        dvFlightData.style.display = "none";
        dvRouteData.style.display = "";
        dvAirportData.style.display = "none";
    }
    else if (searchBy == "Airport") {
        dvFlightData.style.display = "none";
        dvRouteData.style.display = "none";
        dvAirportData.style.display = "";
    }

}

function hideFSDvMessage(fieldID,dvMessageId)
{
    var commonField = document.getElementById(fieldID.id).value;
    var dvMessageId = document.getElementById(dvMessageId);


   if(commonField!='')
   dvMessageId.style.display="none";

}
