﻿
function BN() {
    this.bnrArray;
    this.eklenenBanner = new Array();
}

var bn = new BN();

function BN_AddSlot(siteKod,WebAd,root) {
    //filter banner list from db or manager
    bn.bnrArray = GetBannerList(siteKod,WebAd,root);
}
//BN_AddSlot();

function AddHeader() {
    
    var eklenenler = new Array();
    var eklendi = false;

    for (var i = 0; i < bn.bnrArray.length; i++) {

        eklendi = false;
        //aynı bannerlar için tekrar eklenmeyecek
        for (var j = 0; j < eklenenler.length; j++) {
            if (eklenenler[j] == bn.bnrArray[i].Id) {
                eklendi = true;//break konulacak
            }
        }

        if (!eklendi) {
            //document.write(bn.bnrArray[i].HtmlHeader);
            eklenenler.push(bn.bnrArray[i].Id);
        }
    }
}

function BN_FillSlot(bannerAlanKod, adet,myBnr) {
    var eklenenAdet = 0;

    for (var i = 0; i < bn.bnrArray.length; i++) {
        if (adet == 0 || eklenenAdet < adet) {
            if (bn.bnrArray[i].BannerAlanKod == bannerAlanKod && !EklendiMi(bn.bnrArray[i].Id)) {
                bn.eklenenBanner.push(bn.bnrArray[i].Id);
                eklenenAdet++;
                myBnr.addBanner(bn.bnrArray[i].Kod, bn.bnrArray[i].Sure * 100);
            }
        }
    }
}

function EklendiMi(bannerId) {
    for (var i = 0; i < bn.eklenenBanner.length; i++) {
        if (bn.eklenenBanner[i] == bannerId) {
            return true;
        }
    }
    return false;
}

function Banner(id, kod, bannerAlanKod,sure,htmlHeader) {
    this.Id = id;
    this.Kod = kod;
    this.BannerAlanKod = bannerAlanKod;
    this.Sure = sure;
    this.HtmlHeader = htmlHeader;
}

function GetBannerList(siteKod, WebAd, root) {
    var alanlar = "siteKod=" + siteKod + "&webAd=" + WebAd; //gerekli paremetreleri gönderiyor    
    var oXMLHttpRequest = new XMLHttpRequest;

    

    oXMLHttpRequest.open("POST", root + "handlers/BannerHandler.ashx", false);
    oXMLHttpRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    oXMLHttpRequest.setRequestHeader("Connection", "close");

    var bnrList = new Array();
     
    oXMLHttpRequest.onreadystatechange = function () {
        if (this.readyState == XMLHttpRequest.DONE) {
            if (oXMLHttpRequest.status == 200) {
                var jstr = oXMLHttpRequest.responseText;
                var sonuc = JSON.parse(jstr);

                for (var i = 0; i < sonuc.length; i++) {
                    bnrList[i] = new Banner(sonuc[i].BannerId, sonuc[i].BannerKod, sonuc[i].BannerAlanKod,sonuc[i].Sure,sonuc[i].HtmlHeader);//
                }
            }
        }
    }

    oXMLHttpRequest.send(alanlar);
    oXMLHttpRequest.abort();

    return bnrList;
}

