var arrIPath = [
		"skroll/ban_3.gif",
		"skroll/ban_4.gif",
		"skroll/ban_5.gif",
		"skroll/ban_6.gif",
		"skroll/ban_1.gif",
		"skroll/ban_2.gif",
		"skroll/ban_7.gif",
		"skroll/ban_8.gif",
		"skroll/ban_9.gif",
		]
	var arrImages = new Array();
	for (var i=0; i<arrIPath.length; i++) {
		arrImages[i] = new Image();
		arrImages[i].src = arrIPath[i];
	}
	var scroller, scroller2, scroller3;
	var images = [
		{src: arrIPath[0], hover_src: arrIPath[0], href: "dv_okean_g.htm", target: '_blank'},
		{src: arrIPath[1], hover_src: arrIPath[1], href: "dv_volx_kr_r.htm", target: '_blank'},
		{src: arrIPath[2], hover_src: arrIPath[2], href: "dv_varadoor_al.htm", target: '_blank'},
		{src: arrIPath[3], hover_src: arrIPath[3], href: "dv_vladimir_6.htm", target: '_blank'},
		{src: arrIPath[4], hover_src: arrIPath[4], href: "dv_verda_c10.htm", target: '_blank'},
		{src: arrIPath[5], hover_src: arrIPath[5], href: "dv_maria_orx.htm", target: '_blank'},
		{src: arrIPath[6], hover_src: arrIPath[6], href: "dv_fav_lux.htm", target: '_blank'},
		{src: arrIPath[7], hover_src: arrIPath[7], href: "dv_yasin_p.htm", target: '_blank'},
		{src: arrIPath[8], hover_src: arrIPath[8], href: "dv_rom_d.htm", target: '_blank'}
		];
	window.onload = function () {
		scroller = new brxScroller('MyScroller', {width: '190px', height: '396px', border: 'none'});
		scroller.initImages(images, {width: '195px', height: '135px'});
		scroller.start(1, 30);
	}
function brxScroller(el_id, con_style) {
	
	this.MAX_BLOCKS = 100;
	this.id = el_id;
	this.type = null;
	this.uniq_id = 'brxScroller_' + el_id + '_' + (new Date()).getTime();
	this.con = document.getElementById(el_id);

	if (this.con) {
		with (this.con.style) {
			position = 'relative';
			overflow = 'hidden';
		}
		for (k in con_style) this.con.style[k] = con_style[k];
	}
	else alert("Error in brxScroller::brxScroller: Couldn't element with id=`" + el_id + "`");
	return this;
}

brxScroller.prototype.initImages = function (elements, el_style) {
	if (elements && (elements.length > 0)) {
		this.elements = elements;
		this.el_style = el_style;
		this.offset = 0;
		this.extra_blocks = 0;

		this.scroll_div = document.createElement('div');
		with (this.scroll_div.style) {
			position = 'relative';
			top = '-50px';
		}
		this.con.appendChild(this.scroll_div);
		
		for (var i = 0; i < this.MAX_BLOCKS; i++) {
			var block = this._buildImageBlock();
			this.scroll_div.appendChild(block);
			if (this.scroll_div.offsetHeight > this.con.offsetHeight) break;
		}
		this.type = 'images';
	}
	else alert('Error in brxScroller::initImages: Wrong first parameter.');
}
brxScroller.prototype.initInnerDiv = function () {
	
	if (this.con.offsetHeight > 0) {
		this.offset = 0;
		this.extra_blocks = 0;
		this.innerDiv = this.con.cloneNode(true);

		this.scroll_div = document.createElement('div');
		with (this.scroll_div.style) {
			position = 'relative';
			top = '-50px';
		}
		
		this.con.innerHTML = '';
		this.con.appendChild(this.scroll_div);
		
		for (var i = 0; i < this.MAX_BLOCKS; i++) {
			var block = this._buildInnerDivBlock();
			this.scroll_div.appendChild(block);
			if (this.scroll_div.offsetHeight > this.con.offsetHeight) break;
		}
		this.type = 'innerDiv';
	}
	else alert('Error in brxScroller::initInnerDiv: Height of div id="' + this.id + '" is 0.');
}
brxScroller.prototype.start = function (h_step, delay) {
	this.h_step = h_step;
	this.delay	= delay;
	
	window[this.uniq_id] = {
		_self:	this,
		tick:	this._tick
	}
	window.setTimeout('window.' + this.uniq_id + '.tick()', delay);
}
brxScroller.prototype._tick = function () {
	var _self = this._self;

	if (_self.h_step > 0) {
		if (_self.offset + _self.h_step > 0) {
			var block = (_self.type == 'images')? _self._buildImageBlock(): _self._buildInnerDivBlock();
			_self.scroll_div.insertBefore(block, _self.scroll_div.firstChild);
			_self.extra_blocks ++;
			_self.offset -= parseInt(block.offsetHeight);
			if (_self.extra_blocks > 2) {
				_self.scroll_div.removeChild(_self.scroll_div.lastChild);
				_self.extra_blocks --;
			}
		}
	}
	else {
		if (_self.scroll_div.offsetHeight + _self.offset + _self.h_step < _self.con.offsetHeight) {
			var block = (_self.type == 'images')? _self._buildImageBlock(): _self._buildInnerDivBlock();
			_self.scroll_div.appendChild(block);
			_self.extra_blocks ++;
			if (_self.extra_blocks > 2) {
				_self.offset += parseInt(block.offsetHeight);
				_self.scroll_div.removeChild(_self.scroll_div.firstChild);
				_self.extra_blocks --;
			}
		}
	}
	
	_self.offset += _self.h_step;
	_self.scroll_div.style.top = _self.offset + 'px';
	window.setTimeout('window.' + _self.uniq_id + '.tick()', _self.delay);
}

brxScroller.prototype._buildImageBlock = function () {
	var block = document.createElement('div');
	for (var i = 0; i < this.elements.length; i ++) {
		var el_obj = this._buildImageElement(this.elements[i]);
		block.appendChild(el_obj);
	}
	return block;
}

brxScroller.prototype._buildInnerDivBlock = function () {
	var block = document.createElement('div');
	for (var i = 0; i < this.innerDiv.childNodes.length; i ++) {
		var el_obj = this.innerDiv.childNodes[i].cloneNode(true);
		block.appendChild(el_obj);

		block._self = this;
		block.onmouseover = this._holdScroller;
		block.onmouseout = this._restoreScroller;
	}
	return block;
}
brxScroller.prototype._buildImageElement = function (element_info) {
	var el_item = document.createElement('a');
	with (el_item.style) {
		width = this.scroll_div.offsetWidth + 'px';
		position = 'relative';
		overflow = 'hidden';
		display = 'block';
		backgroundImage = 'url(' + escape(element_info.src) + ')';
		backgroundPosition = 'top left';
		backgroundRepeat = 'no-repeat';
	}
	el_item.setAttribute('href', element_info.href);
	if (element_info.target) el_item.setAttribute('target', element_info.target);
	if (element_info.title) el_item.setAttribute('title', element_info.title);

	el_item._self = this;
	el_item._src = 'url(' + escape(element_info.src) + ')';
	el_item._hover_src = 'url(' + escape(element_info.hover_src) + ')';
	el_item.onmouseover = this._holdScroller;
	el_item.onmouseout = this._restoreScroller;
	
	for (k in this.el_style) el_item.style[k] = this.el_style[k];
	if (element_info.height) el_item.style.height = element_info.height;

	return el_item;
}

brxScroller.prototype._holdScroller = function () {
	var _self = this._self;
	_self.bu_h_step = _self.h_step;
	_self.h_step = 0;
	if (this._hover_src) this.style.backgroundImage = this._hover_src;
}

brxScroller.prototype._restoreScroller = function () {
	var _self = this._self;
	_self.h_step = _self.bu_h_step;
	if (this._src) this.style.backgroundImage = this._src;
}
