var Brochures = new Class({
    initialize: function(elements, controls, options) {
        this.setOptions({
        	width: elements[0].getParent().getParent().getStyle('width').toInt(),
        	srcAttribute: 'src',
        	transition: {duration: 500, transition: Fx.Transitions.Expo.easeOut}
        },
        options);
        if (this.options.transition) {
        	this.fx = new Fx.Tween(elements[0].getParent(), this.options.transition);
        }
        this.items = elements;
		new Element('a', {
		    'href': '#',
		    'html': '&lt;&lt;',
		    'events': {
		        'click': function(){
		            myBrochures.prev();
		            return false;
		        }
		    }
		}).inject(controls, 'bottom');
		elements.each(function(n,i){
			new Element('a', {
			    'href': '#',
			    'html': (i+1),
				'class': 'item'+i,
			    'events': {
			        'click': function(){
			            myBrochures.show(i);
			            return false;
			        }
			    }
			}).inject(controls, 'bottom');
		});
		new Element('a', {
		    'href': '#',
		    'html': '&gt;&gt;',
		    'events': {
		        'click': function(){
		            myBrochures.next();
		            return false;
		        }
		    }
		}).inject(controls, 'bottom');
        this.show(0);
    },
    show: function(i){
		this.current = i;
		var obj = this.items[i].getElement('img');
		var fnc = function(){ this.setPos() };
		var idx = $('brochuresNav')||$('brochuresNav_wide');
		idx.className = 'item'+i;
		if (   obj.getAttribute(this.options.srcAttribute).substring(obj.getAttribute(this.options.srcAttribute).lastIndexOf('/'))
			!= obj.getAttribute('src').substring(obj.getAttribute('src').lastIndexOf('/'))) {
			$('loading').setStyle('display', 'block');
			obj.addEvent('load', fnc.bind(this));
			obj.setAttribute('src', obj.getAttribute(this.options.srcAttribute));
		} else {
			fnc.call(this);
		}
    },
    setPos: function(){
		var left = 0 - (this.options.width * this.current);
		var fnc = function(){ $('loading').setStyle('display', 'none'); };
		setTimeout(fnc, 500);
		if (this.fx && !Browser.Engine.webkit) {
			this.fx.start('left', left);
		} else {
			this.items[0].getParent().setStyle('left', left);
		}
    },
    prev: function(){
    	var i = this.current-1;
    	this.show((i<0)?0:i);
    },
    next: function(){
    	var i = this.current+1;
    	this.show((i>=this.items.length)?this.items.length-1:i);
    }
});
Brochures.implement(Options);

window.addEvent('domready', function(){
	var obj = $('brochuresperiod');
	var atr = 'longdesc';
	if (obj) obj.inject($('brochures'), 'top');
	if (brochuresBigArr.length>0) {
		$$('div.brochure a').each(function(n,i){
			var obj = n.getElement('img');	
			n.setAttribute('href', brochuresBigArr[i]);
		});
	} else {
		$$('div.brochure a').each(function(n,i){
			var obj = n.getElement('img');	
			n.setAttribute('href', obj.getAttribute(atr));
		});
	}
	myBrochures = new Brochures($$('div.brochure'), $('brochuresNav'), {srcAttribute: atr});
	//myBrochures = new Brochures($$('div.brochure'), $('brochuresNav'), {srcAttribute: atr, transition:false});
	//myBrochures = new Brochures($$('div.brochure'), $('brochuresNav'), {srcAttribute: atr, transition:{duration: 2500, transition: Fx.Transitions.Elastic.easeOut}});
});