 function BannersHandler(lang)
 {
    // 0 - русский, 1 - английский
    var accepted_langs = new Array();
    accepted_langs['ru'] = 0;
    accepted_langs['en'] = 1;
    this.lang = accepted_langs[lang];
    this.banners = new Array();
    this.viewed_count = 0;
    this.rand_banners = new Array();
}

BannersHandler.prototype.set = function(json_content)
{
    this.banners.push(json_content);
}

BannersHandler.prototype.shake = function()
{
    this.rand_banners = new Array(this.banners.length);
    var n = 0;
    for (var i = 0; i < this.banners.length; i++)
    {
        do
        {
            var flag = false;
            n = Math.floor(Math.random()*(this.banners.length));
            for (var j = 0; j < i; j++)
            {
                if (n == this.rand_banners[j])
                {
                    flag = true;
                }
            }
        } while (flag);
        this.rand_banners[i] = n;
    }
}

BannersHandler.prototype.show = function(place)
{
    document.write('<a href="' + this.banners[place][this.lang].href + '" targer="' + this.banners[place][this.lang].target + '"><img src="' + this.banners[place][this.lang].source + '" border="0"></a>');
}

BannersHandler.prototype.showRandom = function()
{
    if (this.rand_banners.length)
    {
        if (this.viewed_count > this.banners.length)
        {
            this.viewed_count = 0;
            this.shake();
        }
        this.show(this.rand_banners[this.viewed_count]);
        this.viewed_count++;
    }
}