﻿function executeAd() {

    $.ajax({
        url: GetLotNumbersServiceLocation(),
        type: "GET",
        data: "deluxePage=" + GetIsdeLuxe() + "&numberOfAds=" + GetNumberOfAdsToDisplay(),
        dataType: "jsonp",
        async: true,
        cache: false,
        success: function(LotList) {

            //if no lots are found then show adbar
            if (LotList.length == 0) {
                ShowAdBar();
            }
            else {

                //Build Ad pillar
                for (ItemId in LotList) {
                    $('.PillarContent').append(BuildHTMLElement(LotList[ItemId]));
                }

                //Call GetLot RestService async
                for (ItemId in LotList) {
                    BuildAdBanner(LotList[ItemId], LotList.length)
                }
            }
        },

        error: function() {
        }
    });
}

function BuildAdBanner(ItemId, NumberOfAdsToShow) {

    $.ajax({
        url: GetLotInfoServiceLocation(),
        type: "GET",
        data: "lotId=" + ItemId + "&languageId=" + LanguageID,
        dataType: "jsonp",
        async: true,
        cache: false,
        success: function(Lot) {
            var LotId = Lot.LotId;
            var NexBidAmount = CalculateAmountInLanguage(Lot.CurrencyId, LanguageID, Lot.NextBidAmount);
            var FormatedNextBidAmount = CultureFormat(NexBidAmount, LanguageID, 0);
            var CurrencyPrefix = GetCurrencyPrefix(LanguageID);
            var Title = Lot.Title;
            var ImageSrc = GetImageUrl(Lot.LotId);
            var ItemLink = '/Item/Item.aspx?LanguageId=' + LanguageID + '&ItemId=' + Lot.LotId;
            var NextBidTranslation = GetNextBidTranslation(LanguageID);

            $('#Currency' + Lot.LotId).html(CurrencyPrefix);
            $('#Price' + Lot.LotId).html(FormatedNextBidAmount);
            $('#Image' + Lot.LotId).attr("src", ImageSrc);
            $('#ImageLink' + Lot.LotId).attr("href", ItemLink);
            $('#NextBidAmount' + Lot.LotId).html(NextBidTranslation);

            var DescriptionLink = $('#Description' + Lot.LotId);
            DescriptionLink.html(Title);
            DescriptionLink.attr("href", ItemLink);

            //Begin showing ads when all items are loaded
            if ($('.Price:not(:empty)').size() == NumberOfAdsToShow) {
                //Show ads if enabled in config file "DisplayAds"
                ShowAdBar();
            }
        },
        error: function() {
        }
    });
}

function ShowAdBar() {

    if (GetDisplayAds() == "true" || document.cookie.indexOf("AdTestMode") != -1) {

        //Jquery takes over invisibility of "ADContainer"
        $("#ADBanner").hide();

        //Regular stylesheet makes "ADContainer" visible
        $('#ADBanner').removeClass('ADinvisible');
        $('#ADBanner').addClass('ADvisible');

        $("#ADBanner").fadeIn(parseInt(GetAdPillarFadeTime()));
    }
}

var enhance = false;

function BuildHTMLElement(ItemId) {
    enhance = !enhance;
    if (enhance) { enhance = ' Enhance' }
    else { enhance = '' }
    var ElementHTML = '<div class="AdElement' + enhance + '" id="' + ItemId + '"><div class="Description"><A href="" id="Description' + ItemId + '"></A></div><div class="Image"><A href="" id="ImageLink' + ItemId + '"><img id="Image' + ItemId + '" src="' + GetDummyPicLocation() + '" alt="" /></A></div><div class="clear"></div><div class="BidInfo"><span class="NextBidText" id="NextBidAmount' + ItemId + '"></span> <span class="Currency" id="Currency' + ItemId + '"></span><span class="Price" id="Price' + ItemId + '"></span></div></div>';
    return ElementHTML;
};

function CalculateAmountInLanguage(LotCurrency, UILanguageID, NextBidAmount) {
    return CurrencyConvert(LotCurrency, GetCurrency(GetLanguage(UILanguageID).CurrencyId).CurrencyId, NextBidAmount);
};

function GetCurrencyPrefix(UILanguageID) {
    return GetCurrency(GetLanguage(UILanguageID).CurrencyId).IntPrefix;
};


