var _Token = '';
var _grandTotal = 0;
var _taxes = 0;
var _TokenCookieName = 'TravelNetAfricaToken';
var _OrderSummaryData = '';
var _CanDeleteFlights = false;
var _vouchers = [];
var _voucherRedeemed = 0;
var _VoucherIssued = false;
var _CanApisInclude = false;

function onAlertShowing(settings) {
	// Wire up the click event for the dismiss button in the alert.
	$("#dismissAlert", this).click(function() {
		settings.target.closeCallout();
	});

	// For this example we want to have the alert fade-in.  Once this callback fires the alert is positioned
	// correctly on the page but it isn't being displayed.  Before displaying it, create a div layer with the same
	// background color as the surrounding area and position it on top of the alert.  Then we fade the overlay out
	// which makes the alert appear to fade in.
	var overlay = $("<div/>").css({
		"position": "absolute",
		"background-color": $(settings.region).css("background-color"),
		"left": settings.offsetLeft + "px",
		"top": settings.offsetTop + "px",
		"z-index": settings.zIndex + 1  // Position this layer on top of where the alert is to be displayed.
	}).width(settings.width)
					.height(settings.height)
					.appendTo("body");

	// Now show the alert behind the overlay				
	$(this).css("display", "block");
	settings.borderBox.css("display", "block");

	// Now fade out the overlay which has the effect of making the alert appear to fade in.
	$(overlay).fadeOut("normal", function() { $(this).remove(); });
}

function setText(element, text) {
    if (typeof element.innerText != 'undefined') {
        element.innerText = text;
    }
    else if (typeof element.textContent != 'undefined') {
        element.textContent = text;
    }
}

function querySt(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];
        }
    }
    return "";
}

$(document).ready(function() {
    ValidateToken();
    if(_order.Order.OrderNumber != null)
            LoadOrderSummary();
});

function LoadOrderSummary(control) {
    $("#OrderSummaryContainer" + control).hide();
    $("#OrderSummaryWrapper" + control).css("display", "block");
    $("#LoadingSummary" + control).css("display", "block");

    ACSWebservice.GetOrderSummaryFromOrderXML(json2xml(_order), CreateOrderSummary, null, control);
    
}

function CreateOrderSummary(orderData, control) {
    var data = orderData;
    var movementCount = 0;
    var lastMovementid;
    _grandTotal = 0;
    $("#OrderSummaryContainer" + control).html("<div class='ControlHeading'>"+_Itinerary+"</div>");
    _vouchers = [];
     $(orderData).find("Voucher").each(function() {
        _vouchers[_vouchers.length] = { 
                                            "InventoryCompanyID" : $(this).find('InventoryCompanyID').text(),
                                            "VoucherBalance" : $(this).find('VoucherBalance').text(),
                                            "RedeemBalance" : parseFloat("0")
                                       };
    });

    $(orderData).find("Movement").each(function() {
        var movement = $(this);
        movementCount++;
        if (movementCount > 1) {
            $("#OrderSummaryContainer" + control).append("<br/>");
        }
        lastMovementid = movement.find("MovementID").text();
        $("#OrderSummaryContainer" + control).append("<table id='tblMovements" + control + lastMovementid + "' style='width: 100%;'></table>");
        var flightDate = movement.find('MovementDate').text();
        var dataRow = "<tr><td colspan='11' class='green-header'>" + movement.find('CompanyName').text() + " - Flight : " + movement.find('MovementName').text() + " - " + convertDateToStringDMY(flightDate.substring(0, flightDate.indexOf("T"))) + "</td></tr>";
        dataRow += "<tr><td class='col-header' colspan=2>"+_Departure+"</td><td colspan=4>" + movement.find('FromAirportName').text() + " " + movement.find('DeptTime').text() + "</td><td class='col-header' colspan=2>"+_Arrival+"</td><td colspan=3>" + movement.find('ToAirportName').text() + " " + movement.find('ArrivalTime').text() + "</td>" + ((control == "Flight") ? "<td><img src='App_Themes/"+_Theme+"/Images/trash-can.png' title='Remove flight from itinerary' class='remove-flight' onclick='javascript:RemoveMovementFromOrder(" + lastMovementid + ")'/></td>" : "") + "</tr>";
        $("#tblMovements" + control + movement.find('MovementID').text()).append(dataRow);
        if ($(orderData).find("Pax").length > 0) {
            dataRow = "<tr><td class='col-header'>"+_Name+"</td><td class='col-header'>"+_Surname+"</td><td class='col-header'>"+_AgeGroup+"</td><td class='col-header'>"+_Gender+"</td><td class='col-header'>"+_Passport+"</td><td class='col-header'>"+_Status+"</td><td class='col-header'>"+_Class+"</td><td class='col-header'>"+_Fare+"</td><td class='col-header'>"+_Discount+"</td><td class='col-header'>"+_Txes+"</td><td class='col-header'>"+_Ttal+"</td></tr>";
            $("#tblMovements" + control + movement.find('MovementID').text()).append(dataRow);
        }
    });

    var tax = 0;
    var counter = 0
    var farePrice;
    var fareClassName;
    var movementid;
    var fare;
    var paxtax = 0;
    var childDiscount = 0;
    var staffDiscount = 0;
    var infantDiscount = 0;

    //New order no pax jet
    if ((!(_OrderNr.length > 0)) && (!(PaxCreated))) {
        var total = 0;
        for (var j = 0; j <= _order.Order.PNRs.PNR[0].MovementDetails.MovementDetail.length - 1; j++) {
            var movementDetail = _order.Order.PNRs.PNR[0].MovementDetails.MovementDetail[j];
            for (var k = 1; k <= movementDetail.FareDetails.FareDetail.length; k++) {
                var paxCount = movementDetail.FareDetails.FareDetail[k - 1].PaxCount;
                var allocatedCount = 0;
                for (var i = 1; i <= objPax.Paxs.Pax.length; i++) {

                    $(orderData).find("FareDetail").each(function() {
                        if ($(this).find("FareDetailClientID").text() == movementDetail.FareDetails.FareDetail[k - 1].FareDetailClientID) {
                            fare = $(this);
                            childDiscount = 0;
                            staffDiscount = 0;
                            infantDiscount = 0;

                            movementid = $(this).parent().parent().find("Movement").find("MovementID").text();
                            childDiscount = $(this).parent().parent().find("Movement").find("ChildDiscount").text();
                            infantDiscount = $(this).parent().parent().find("Movement").find("InfantDiscount").text();
                            staffDiscount = $(this).parent().parent().find("Movement").find("StaffDiscount").text();

                            farePrice = parseFloat(fare.find("FarePrice").text());
                            fareClassName = fare.find("FareName").text();

                            if (objPax.Paxs.Pax[i - 1].AgeGroup != "2") {
                                fare.parent().parent().find("TaxValue").each(function() {
                                    paxtax += parseFloat($(this).text());
                                });
                            }

                            var calcfarePrice = farePrice;
                            if (objPax.Paxs.Pax[i - 1].AgeGroup == "1")
                                calcfarePrice = farePrice - (farePrice * (parseFloat(childDiscount) / 100));
                            if (objPax.Paxs.Pax[i - 1].AgeGroup == "2")
                                calcfarePrice = farePrice - (farePrice * (parseFloat(infantDiscount) / 100));

                            total += (parseFloat(calcfarePrice) - (parseFloat(calcfarePrice) * (staffDiscount / 100)));
                        }
                    });
                    allocatedCount++;
                    if (paxCount == allocatedCount) {
                        k++;
                        if (movementDetail.FareDetails.FareDetail[k - 1]) {
                            paxCount = movementDetail.FareDetails.FareDetail[k - 1].PaxCount;
                        }
                        allocatedCount = 0;
                    }
                }
            }
        }
        
        
        var TotalTaxAmount = "<a class='Multisector' href='#TaxBreakdownInfo' rel='#TaxBreakdownInfo'>" + _currencySymbol + paxtax.toFixed(2) + "*</a>";
         
        $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='6'>&nbsp;</td><td colspan='2' class='col-header'>" + _Tax + "</td><td colspan='3' class='ar'>" + TotalTaxAmount + "</td></tr>");
        $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='6'>&nbsp;</td><td colspan='2' class='col-header'>" + _AmountPayable + "</td><td colspan='3' class='ar'>" + _currencySymbol + (paxtax + total).toFixed(2) + "</td></tr>");

        // load taxes
        $("#OrderSummaryContainer" + control).append("<div id='TaxBreakdownInfo' ><table id='TaxBreakdownTblInfo' class='Sector' ></table></div>");
        var taxRow = "";
        $(orderData).find("MovementDetail").each(function() {
            var moveid = $(this).find("Movement").find("MovementID").text();
            var fromAirport = $(this).find("Movement").find("FromAirportName").text();
            var toAirport = $(this).find("Movement").find("ToAirportName").text();
            taxRow += "<tr><td class='route-header' colspan=5>" + fromAirport + " To " + toAirport + "</td></tr>";
            taxRow += "<tr><td class='col-header Flightdata'>Description</td><td class='col-header Flightdata'>Amount</td></tr>";
            $(this).find("Tax").each(function() {
                var paxtaxname = $(this).find("PaxTaxName").text();
                var taxvalue = $(this).find("TaxValue").text();
                taxRow += "<tr><td class='Flightdata'>" + paxtaxname + "</td><td class='Flightdata'>" + _currencySymbol + parseFloat(taxvalue).toFixed(2) + "</td></tr>";
            });
            taxRow += "<tr><td colspan='4'><hr></td></tr>";
        });
        $("#TaxBreakdownTblInfo").append(taxRow);
        $("#TaxBreakdownTblInfo").append("<tr><td colspan='4'>*Taxes are charged per passenger.</td></tr>");
        $('a.Multisector').cluetip({ local: true, showTitle: false, hideLocal: true, sticky: false, arrows: false, cursor: 'pointer', width: $(".Sector").widest().width() + 20 });
        
    }
    else {
        $(orderData).find("PaxFareDetail").each(function() {
            counter++;

            paxtax = 0;
            childDiscount = 0;
            staffDiscount = 0;
            infantDiscount = 0;

            var fareDetailClientID = $(this).find("FareDetailClientID").text();
            var paxClientID = $(this).find("PaxClientID").text();
            var status = $(this).find("Status").text();
            var payed = (($(this).find("PaymentDetailID").text().indexOf("INV") > -1) || ($(this).find("PaymentDetailID").text().indexOf("PRO") > -1));

            $(orderData).find("FareDetail").each(function() {
                if ($(this).find("FareDetailClientID").text() == fareDetailClientID) {
                    fare = $(this);
                    movementid = $(this).parent().parent().find("Movement").find("MovementID").text();
                    childDiscount = $(this).parent().parent().find("Movement").find("ChildDiscount").text();
                    infantDiscount = $(this).parent().parent().find("Movement").find("InfantDiscount").text();
                    staffDiscount = $(this).parent().parent().find("Movement").find("StaffDiscount").text();
                }
            });

            if (status == "Pending") {
                farePrice = parseFloat(fare.find("FarePrice").text());
                fareClassName = fare.find("FareName").text();
                fare.parent().parent().find("TaxValue").each(function() {
                    paxtax += parseFloat($(this).text());
                });
            }
            else {
                farePrice = parseFloat($(this).find("FarePrice").text());
                fareClassName = $(this).find("FareClassName").text();
                $(this).find("Tax").each(function() {
                    paxtax += parseFloat($(this).find("TaxValue").text());
                });
            }

            $(orderData).find("Pax").each(function() {
                if ($(this).find("PaxClientID").text() == paxClientID) {

                    var calcfarePrice = farePrice;
                    
                    if (status == "Pending") {
                        if ($(this).find('AgeGroup').text() == "1")
                            calcfarePrice = farePrice - (farePrice * (parseFloat(childDiscount) / 100));
                        if ($(this).find('AgeGroup').text() == "2")
                            calcfarePrice = farePrice - (farePrice * (parseFloat(infantDiscount) / 100));
                    }
                    
                    OrderSummaryLoadPaxs($(this), movementid, parseFloat(calcfarePrice), status, fareClassName, parseFloat(paxtax), control, parseFloat(staffDiscount),payed);
                }
            });

            $(this).find("Tax").each(function() {
                tax += parseFloat($(this).find("TaxValue").text());
            });
        });

        var voucherGrandTotal = 0;
        var voucherCredit = 0;
        for (var i = 0; i <= _vouchers.length-1; i++) {
            //voucherGrandTotal += parseFloat(_vouchers[i].RedeemBalance);
            voucherGrandTotal += parseFloat(_vouchers[i].VoucherBalance);
        }

        // Flight just cancelled
        if (_voucherRedeemed > 0) {
            voucherGrandTotal += _voucherRedeemed;
        }

        if (voucherGrandTotal > _grandTotal) {
            _VoucherIssued = true;            
            voucherCredit = voucherGrandTotal - _grandTotal; //  amount of voucher due to the sponsor
            _voucherRedeemed = _grandTotal; // redeem total amount from voucher
            _grandTotal = 0.00; // payable amount is zero
            $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='8'>&nbsp;</td><td colspan='2' class='col-header'>" + _VoucherRedeemed + "</td><td class='ar'>" + _currencySymbol + _voucherRedeemed.toFixed(2) + "</td></tr>");
            $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='8'>&nbsp;</td><td colspan='2' class='col-header'>" + _AmountPayable + "</td><td class='ar'>" + _currencySymbol + _grandTotal.toFixed(2) + "</td></tr>");
            $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='8'>&nbsp;</td><td colspan='2' class='col-header'>" + _VoucherCreditDueToYou + "</td><td class='ar'>" + _currencySymbol + voucherCredit.toFixed(2) + "</td></tr>");
        }

        if (voucherGrandTotal < _grandTotal) {
            if (parseFloat(voucherGrandTotal) > 0) {
                _VoucherIssued = true;
                _voucherRedeemed = voucherGrandTotal; // redeem the entire voucher balance
                _grandTotal = _grandTotal - voucherGrandTotal;// pay the difference
                $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='8'>&nbsp;</td><td colspan='2' class='col-header'>" + _VoucherRedeemed + "</td><td class='ar'>" + _currencySymbol + _voucherRedeemed.toFixed(2) + "</td></tr>");
            }
            $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='8'>&nbsp;</td><td colspan='2' class='col-header'>" + _AmountPayable + "</td><td class='ar'>" + _currencySymbol + _grandTotal.toFixed(2) + "</td></tr>");
        }

        if (voucherGrandTotal == _grandTotal) {
            _VoucherIssued = true;
            _voucherRedeemed = voucherGrandTotal;  // redeem the entire voucher balance
            _grandTotal = 0.00; // pay nothing
            $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='8'>&nbsp;</td><td colspan='2' class='col-header'>" + _VoucherRedeemed + "</td><td class='ar'>" + _currencySymbol + _voucherRedeemed.toFixed(2) + "</td></tr>");
            $("#tblMovements" + control + lastMovementid).append("<tr><td colspan='8'>&nbsp;</td><td colspan='2' class='col-header'>" + _AmountPayable + "</td><td class='ar'>" + _currencySymbol + _grandTotal.toFixed(2) + "</td></tr>");
        }

        
    }

    $("#LoadingSummary" + control).css("display", "none");
    $("#OrderSummaryContainer" + control).show("slow");
}

function OrderSummaryLoadPaxs(pax, id, farePrice, status, fareClassNam, paxtax, control,staffDiscount,payed,InvCompanyID) {

    var ageGroup = "Adult";
    if (pax.find('AgeGroup').text() == "1")
        ageGroup = "Child";
    if (pax.find('AgeGroup').text() == "2")
        ageGroup = "Infant";

    //Gender.
    var gender = "Female";
    if (pax.find('Gender').text() == "0")
        gender = "Male";

    var total = 0;

    if (ageGroup != "Infant") {
        total = parseFloat(paxtax) + (parseFloat(farePrice) - (parseFloat(farePrice) * (staffDiscount/100)));
    }
    else {
        total = parseFloat(farePrice) - (parseFloat(farePrice) * (staffDiscount / 100));
    }
    
    var dataRow = "<tr>";
    dataRow += "<td>" + pax.find('FirstName').text() + "</td>";
    dataRow += "<td>" + pax.find('Surname').text() + "</td>";
    dataRow += "<td>" + ageGroup + "</td>";
    dataRow += "<td>" + gender + "</td>";
    dataRow += "<td>" + pax.find('PassportNumber').text() + "</td>";
    dataRow += "<td>" + status + "</td>";
    dataRow += "<td>" + fareClassNam + "</td>";
    dataRow += "<td class='ar'>" + _currencySymbol + farePrice.toFixed(2) + "</td>";
    dataRow += "<td class='ar'>" + staffDiscount.toFixed(2) + "%</td>";
    if (ageGroup != "Infant") {
        dataRow += "<td class='ar'>" + _currencySymbol + paxtax.toFixed(2) + "</td>";
    }
    else {
        dataRow += "<td class='ar'>" + _currencySymbol + "0.00</td>";
    }
    dataRow += "<td class='ar'>" + _currencySymbol + total.toFixed(2) + "</td>";
    dataRow += "</tr>";
    if ((status == "Pending") || (!payed)) {
        _grandTotal += total;

        for (var i = 0; i <= _vouchers.length-1; i++) {
//            //if (_vouchers[i].InventoryCompanyID == InvCompanyID) {
//            _vouchers[i].RedeemBalance += parseFloat(total);
//            //}
        }
        
    }
    $("#tblMovements" + control + id).append(dataRow);
}

function SetInvalidUser()
{
    $('#lblLogin').css("display", "block");
    $('#lblLogout').css("display", "none");
    $('#ValidatedMenus').css("display", "none");
}

function SetValidUser()
{
    $('#lblLogin').css("display", "none");
    $('#lblLogout').css("display", "block");
    $('#ValidatedMenus').css("display", "block");
}

function ValidateToken()
{
    if(_Token.length > 0)
        ACSWebservice.ValidateToken("<Criteria xmlns='http://www.AirlineCS.com'><TokenValue>"+_Token+"</TokenValue></Criteria>", ValidateTokenCallback)
    else
        SetInvalidUser();
}

function ValidateTokenCallback(result)
{
    var tokenIsValid = $(result).find("TokenIsValid").text();
    if(tokenIsValid == "true")
    {
        SetValidUser();
         $('a').each(function(){
            var anchor = $(this);
            var href = anchor.attr("href")+'';
            if(href != "#")
            {
                if(href.indexOf("?") == -1)
                    anchor.attr("href", href + "?Token=" + _Token);
                else
                {
                    var url = href.substr(0, href.indexOf("?"));
                    var querystring = href.substr(href.indexOf("?")+1);
                    
                    if(querystring.indexOf("Token") == -1)
                        querystring += ("&Token=" + _Token);
                    else
                    {
                        var tokenTag = querystring.substr(querystring.indexOf("Token"));
                        if(tokenTag.indexOf("&") > -1)
                            tokenTag = tokenTag.substr(0, tokenTag.indexOf("&"));
                        querystring = querystring.replace(tokenTag, "");
                        if(querystring.length > 0)
                            querystring += ("&Token=" + _Token);
                        else
                            querystring += ("?Token=" + _Token);
                    }
                    anchor.attr("href", url + querystring);
                }
            }
         });
    }
    else
    {
        SetInvalidUser();
        document.location = "Login.aspx";
    }
}

function Logout()
{
    var booking = "";
    booking += _NewBookingURL;    
    //booking += (querySt("Token") != "") ? "&Token=" + querySt("Token") : "";
//    if(_OperatorID == 33567)
//    {
//      booking ="http://booking.lacrdc.com/Login.aspx"; 
//    }         
    document.location = booking;  
}

function convertDateToStringDMY(dateToConvert) {
    var year = dateToConvert.substring(0, 4);
    var month = dateToConvert.substring(5, 7);
    var day = dateToConvert.substring(8);
    return day + "/" + month + "/" + year;
}

function ParseOrder()
{
   //Parse PNR
   if(!_order.Order.PNRs.PNR.length)
   {
        var pnr = _order.Order.PNRs.PNR;
        _order.Order.PNRs = { "PNR": [] };
        _order.Order.PNRs.PNR[0] = pnr;
    }

    //Parse Sponsor
    if (!_order.Order.Sponsors.Sponsor.length) {
        var sponsor = _order.Order.Sponsors.Sponsor;
        _order.Order.Sponsors = { "Sponsor": [] };
        _order.Order.Sponsors.Sponsor[0] = sponsor;
    }

    //Parse PaymentDetail
    if (_order.Order.PaymentDetails.PaymentDetail) {
        if (!_order.Order.PaymentDetails.PaymentDetail.length) {
            var paymentDetail = _order.Order.PaymentDetails.PaymentDetail;
            _order.Order.PaymentDetails = { "PaymentDetail": [] };
            _order.Order.PaymentDetails.PaymentDetail[0] = paymentDetail;
        }
    }
   
   //Parse MovementDetail
   for(var pnrIndex = 0; pnrIndex < _order.Order.PNRs.PNR.length; pnrIndex++)
   {
       if(!_order.Order.PNRs.PNR[pnrIndex].MovementDetails.MovementDetail.length)
       {
            var movementDetail = _order.Order.PNRs.PNR[pnrIndex].MovementDetails.MovementDetail;
            _order.Order.PNRs.PNR[pnrIndex].MovementDetails = { "MovementDetail": [] };
           _order.Order.PNRs.PNR[pnrIndex].MovementDetails.MovementDetail[0] = movementDetail;
       }

       //Parse PaxFareDetail
       if (!_order.Order.PNRs.PNR[pnrIndex].PaxFareDetails.PaxFareDetail.length) {
           var paxFareDetail = _order.Order.PNRs.PNR[pnrIndex].PaxFareDetails.PaxFareDetail;
           _order.Order.PNRs.PNR[pnrIndex].PaxFareDetails = { "PaxFareDetail": [] };
           _order.Order.PNRs.PNR[pnrIndex].PaxFareDetails.PaxFareDetail[0] = paxFareDetail;
       }
       
       //Parse FareDetails
       for(var movementIndex = 0; movementIndex < _order.Order.PNRs.PNR[pnrIndex].MovementDetails.MovementDetail.length; movementIndex ++)
       {
            if(!_order.Order.PNRs.PNR[pnrIndex].MovementDetails.MovementDetail[movementIndex].FareDetails.FareDetail.length)
            {
                var fareDetail = _order.Order.PNRs.PNR[pnrIndex].MovementDetails.MovementDetail[movementIndex].FareDetails.FareDetail;
                _order.Order.PNRs.PNR[pnrIndex].MovementDetails.MovementDetail[movementIndex].FareDetails = { "FareDetail": [] };
                _order.Order.PNRs.PNR[pnrIndex].MovementDetails.MovementDetail[movementIndex].FareDetails.FareDetail[0] = fareDetail;
            }
        }
   }
   
   //Parse Paxs
   for(var pnrIndex = 0; pnrIndex < _order.Order.PNRs.PNR.length; pnrIndex++)
   {
       if(!_order.Order.PNRs.PNR[pnrIndex].Paxs.Pax.length)
       {
           var pax = _order.Order.PNRs.PNR[pnrIndex].Paxs.Pax;
            _order.Order.PNRs.PNR[pnrIndex].Paxs = { "Pax": [] };
           _order.Order.PNRs.PNR[pnrIndex].Paxs.Pax[0] = pax;
       }
   }

   var emptyObj = {};
   //Parse Paxs
   for (var paxIndex = 0; paxIndex < _order.Order.PNRs.PNR[0].Paxs.Pax.length; paxIndex++) {
       if (typeof(_order.Order.PNRs.PNR[0].Paxs.Pax[paxIndex].Mobile) == "object") {
           _order.Order.PNRs.PNR[0].Paxs.Pax[paxIndex].Mobile = "";
       }
       if (typeof(_order.Order.PNRs.PNR[0].Paxs.Pax[paxIndex].Tel1) == "object") {
           _order.Order.PNRs.PNR[0].Paxs.Pax[paxIndex].Tel1 = "";
       }
   }

   //Set pax count
   for (var j = 0; j <= _order.Order.PNRs.PNR[0].MovementDetails.MovementDetail.length - 1; j++) {
       var movementDetail = _order.Order.PNRs.PNR[0].MovementDetails.MovementDetail[j];
       for (var k = 1; k <= movementDetail.FareDetails.FareDetail.length; k++) {
           var pxCount = 0;
           var fareDetail = movementDetail.FareDetails.FareDetail[k - 1];
           for (var l = 0; l < _order.Order.PNRs.PNR[0].PaxFareDetails.PaxFareDetail.length; l++) {
               if (_order.Order.PNRs.PNR[0].PaxFareDetails.PaxFareDetail[l].FareDetailClientID == fareDetail.FareDetailClientID) {
                   pxCount++
               }
           }
           _order.Order.PNRs.PNR[0].MovementDetails.MovementDetail[j].FareDetails.FareDetail[k - 1].PaxCount = pxCount;
       }
   }
}

function isEmpty(o) {
    var o = {};
    for (var p in o) {
        if (o[p] != o.constructor.prototype[p])
            return false;
    }
    return true;
}


function PopulateCancelUI(result,type) {
    $("#CancelDetails").append("<tr><td class='route-header' colspan='5'>Canceling this flight will result in the following penalties:</td></tr>");

    var header = "<tr>";
    if (type == 1) {
        header += "<td class='col-header'>"+flightNr+"</td>";
        header += "<td class='col-header'>"+_Pssger+"</td>";
    }
    else {
        header += "<td class='col-header'>"+_Pssger+"</td>";
        header += "<td class='col-header'>"+flightNr+"</td>";    
    }

    header += "<td class='col-header'>"+_Fare+"</td>";
    header += "<td class='col-header'>Penalty</td>";
    header += "<td class='col-header'>" + _Voucher + "</td></tr>";
    $("#CancelDetails").append(header);

    
    var fareT = 0;
    $(result).find("CancelDetail").each(function() {
        var cancel = $(this);
        _voucherRedeemed += parseFloat(cancel.find("Voucher").text());
        fareT += parseFloat(cancel.find("Fare").text());
        if (type == 1) {
            $("#CancelDetails").append("<tr><td>" + cancel.find("Flight").text() + "</td><td >" + cancel.find("Pax").text() + "</td><td class='ar'>" + _currencySymbol + parseFloat(cancel.find("Fare").text()).toFixed(2) + "</td><td class='ar'>" + _currencySymbol + (parseFloat(cancel.find("Fare").text()) - parseFloat(cancel.find("Voucher").text())).toFixed(2) + "</td><td class='ar'>" + _currencySymbol + parseFloat(cancel.find("Voucher").text()).toFixed(2) + "</td></tr>");
        }
        else {
            $("#CancelDetails").append("<tr><td>" + cancel.find("Pax").text() + "</td><td>" + cancel.find("Flight").text() + "</td><td class='ar LATextColor'>" + _currencySymbol + parseFloat(cancel.find("Fare").text()).toFixed(2) + "</td><td class='ar'>" + _currencySymbol + (parseFloat(cancel.find("Fare").text()) - parseFloat(cancel.find("Voucher").text())).toFixed(2) + "</td><td class='ar'>" + _currencySymbol + parseFloat(cancel.find("Voucher").text()).toFixed(2) + "</td></tr>");
        }
    });
    $("#CancelDetails").append("<tr><td></td><td></td><td class='col-header ar'>" + _currencySymbol + fareT.toFixed(2) + "</td><td class='col-header ar'>" + _currencySymbol + (fareT - _voucherRedeemed).toFixed(2) + "</td><td class='col-header ar'>" + _currencySymbol + _voucherRedeemed.toFixed(2) + "</td></tr>");
}


