
var Gallery = new Class({
	initialize: function(element){
		this.element = element;
		this.initScroller();
	},
	
	initScroller: function(){
		var that = this;
		var container = $(that.element);
		if (!container) {
			return;
		}
		var listContainer = container.getElement('div.listManagement ul');
		var contents = listContainer.getElements('li');
		var len = contents.length;		
		var scrollIndex = 0;
		var totalWidth = 0;		
		var currentLi = contents[0];
		contents.each(function(el, index){
			totalWidth += el.getCoordinates().width;						
		});
		contents.each(function(el, index){
			el.removeEvents('click').addEvent('click', function(e){
				this.getElement('img').removeEvents();
				if(e) e.stop();
				currentLi.getElement('img').src = currentLi.getElement('a').getProperty('longdesc');
				this.getElement('img').src = this.getElement('a').getProperty('rel');
				currentLi = this;
				new Request.HTML({
					async: false,
					method: 'get',
					onComplete: function(){						
						$$('.managementInfo')[0].set('html', arguments[2]);
						setTimeout(function(){
							initNewsScroller();
						}, 500);
					}
				}).get(this.getElement('a').href);	
			});
		});
		currentLi.fireEvent('click');
		
		listContainer.setStyle('width', totalWidth);
		var scrollFx = new Fx.Scroll(listContainer.getParent());
		scrollFx.set(0, 0);	
		scrollFx.toElement(contents[scrollIndex]);
		var btnPre = container.getElement('p.btnPrev a img');
		var btnNext = container.getElement('p.btnNext a img');
		if (!btnPre || !btnNext) {
			return;
		}
		if (contents.length <= 4) {
			this.setDisableButton(btnPre);
			this.setDisableButton(btnNext);
			return;
		}
		that.setDisableButton(btnPre);
		btnPre.removeEvents('click').addEvent('click', function(e){
			new Event(e).stop();	
			if(scrollIndex - 1 < 0) {
				that.setDisableButton(btnPre);
				return;
			}
			scrollIndex -= 1;
			if(scrollIndex - 1 < 0) {
				that.setDisableButton(btnPre);
			}
			that.setEnableButton(btnNext);
			scrollFx.cancel().toElement(contents[scrollIndex]);
		});
		that.setEnableButton(btnNext);
		btnNext.removeEvents('click').addEvent('click', function(e){
			new Event(e).stop();	
			if(scrollIndex + 1 > len - 4) {
				that.setDisableButton(btnNext);
				return;
			}
			scrollIndex += 1;
			if(scrollIndex + 1> len - 4) {
				that.setDisableButton(btnNext);				
			}
			that.setEnableButton(btnPre);
			scrollFx.cancel().toElement(contents[scrollIndex]);
		});
	},
	
	setDisableButton: function (btn) {
		try {			
			btn.setStyles({
				'opacity': '0.4'				
			});
		} catch(err) {}
	},

	setEnableButton: function (btn) {
		try {
			btn.setStyles({
				'opacity': '1'
			});
		} catch(err) {}
	}
});

function initMainMenu(){
	var mainMenu = $('mainMenu');
	if(!mainMenu) return;
	var aLinks = mainMenu.getElements('a');
	var currentLi = aLinks[0];
	aLinks.each(function(aLink, index){
		aLink.removeEvents('click').addEvent('click', function(e){
			if(e) e.stop();
			if(currentLi && currentLi != this){
				currentLi.getElement('img').set('src', currentLi.getElement('img').get('src').replace('o.gif', 'n.gif'));
			}
			if(this.getParent().getParent().hasClass('sub')){
				mainMenu.getElements('li').each(function(ite){
					ite.removeClass('current');
				});
				this.getParent().addClass('current');
				currentLi = this.getParent().getParent().getPrevious();
				currentLi.getElement('img').set('src', currentLi.getElement('img').get('src').replace('n.gif', 'o.gif'));												
				currentLi.getElement('img').removeEvents('mouseover');
				currentLi.getElement('img').removeEvents('mouseout');					
			}
			else{	
				mainMenu.getElements('li').each(function(ite){
					ite.removeClass('current');
				});
				currentLi = this;
				currentLi.getElement('img').set('src', currentLi.getElement('img').get('src').replace('n.gif', 'o.gif'));								
				if(this.getNext()){
					this.getNext().getFirst().addClass('current');
				}
			}
			new MooHover();			
			ajaxPage(this.href, this.rel, this.className);
		});
	});
	var liTags = mainMenu.getElements('li').filter(function(item){
		return item.getElement('ul');
	});
	liTags.each(function(liTag){
		liTag.ul = liTag.getElement('ul').setStyles({'overflow': 'hidden', 'margin': 0, 'padding': 0}).removeClass('hide');
		liTag.ul.h = liTag.ul.getCoordinates().height;
		liTag.fx = new Fx.Tween(liTag.ul, {
			property: 'height'
		}).set(0);
		liTag.removeEvents().addEvents({
			'mouseenter': function(e){
				liTag.fx.cancel().start(liTag.ul.h);			
			},
			'mouseleave': function(e){
				liTag.fx.cancel().start(0);
			}
		});
	});
}
var flashTop = 0;
var flashLeft = 0;
var flashCurrent = '';
function ajaxPage(page, relValue, classValue){	
	/*if(relValue && relValue != ''){
		if(flashCurrent != relValue){	
			$('flashContent').empty();
			flashTop = parseInt(classValue.split(',')[0]);
			flashLeft = parseInt(classValue.split(',')[1]);
			$('flashContent').setStyles({
				'width': 950,
				'height': 680,
				'top': 0,
				'left': $('main').getCoordinates().left + 10
			});
			var so = new SWFObject(relValue, "swfContent", "100%", "100%", 9, "#000000");
			so.addParam("wmode", "transparent");
			so.write("flashContent");			
			flashCurrent = relValue;
	    }
	}
	else{
		$('flashContent').empty();
		$('flashContent').setStyles({
			'width': 0,
			'height': 0,
			'top': 0,
			'left': 0
		});
		flashCurrent = '';
	}*/
	new Request({
		url: page,
		async: false,		
		onSuccess: function(){
			$('content').set('html', arguments[0]);
			initFunc();
		}
	}).send();
}

function resizeDiv(w, h){
	$('flashContent').setStyles({
		'top': flashTop + 'px',
		'left': ($('main').getCoordinates().left + flashLeft) + 'px',
		'width': w + 'px',
		'height': h + 'px'		
	});	
}

function initFunc(){	
	$$('img').each(function(fixme){			
		IEPNGFix.process(fixme, 1);				
	});	
	new MooHover();	
	initNews();
	initFaqs();
	initExtensiveInfo();
	initNewsScroller();
	initMooFlow();
	new Gallery('management');
}


function initFadeListImages(){
	var listImg = $$('.listPartners');		
	if(!listImg.length) return;
	var imgs = listImg[0].getElements('ul');
	var imgCur = 0;
	imgs[0].setStyle('opacity', 1);
	imgs[0].fx = new Fx.Tween(imgs[0], {
		duration: 3000
	});
	if(imgs.length >= 2){
		for(var i = 1; i < imgs.length; i++){
			imgs[i].setStyle('opacity', 0).removeClass('hidden');
			imgs[i].fx = new Fx.Tween(imgs[i], {
				duration: 3000
			});
		}
		var lsTimer = setInterval(function(){			
			imgs[imgCur].fx.cancel().start('opacity',[1,0]);
			imgCur = (imgCur < imgs.length - 1)?(imgCur + 1):0;
			imgs[imgCur].fx.cancel().start('opacity',[0,1]);
		}, 4500);	
	}	
}


function initMooFlow(){	
	if(!$('MooFlow')) return;
	var mf = new MooFlow($('MooFlow'), {
		startIndex: 2,
		useSlider: true,
		useAutoPlay: false,
		useCaption: true,
		useResize: false,
		useMouseWheel: true,
		useKeyInput: true
	});
}

function initNews(){
	var newsInfo = $$('.newsInfo');
	if(newsInfo.length){
		var aLinks = newsInfo[0].getElements('a');
		aLinks.each(function(aLink){
			aLink.removeEvents('click').addEvent('click', function(e){
				if(e) e.stop();
				newsInfo[0].getElements('li').each(function(liTag){
					liTag.removeClass('current');
				});
				this.getParent().addClass('current');
				new Request.HTML({
					async: false,
					method: 'get',
					onComplete: function(){
						$$('.newsDetail')[0].getFirst().set('html', arguments[2]);										
						initNewsScroller();
					}
				}).get(this.href);
			});	
		});	
		var paging = newsInfo[0].getParent().getElement('.paging');
		if(paging){
			var aLinks = paging.getElements('a');
			aLinks.each(function(aLink){
				aLink.removeEvents('click').addEvent('click', function(e){
					if(e) e.stop();
					new Request.HTML({
						async: false,
						method: 'get',
						onComplete: function(){
							$('content').set('html', arguments[2]);
							initNews();
							initNewsScroller();
						}
					}).get(this.href);						
				});	
			});					
		}
	}		
}

function initNewsScroller(){
	if($$('.moo-scroll').length){
		$$('.moo-scroll').destroy();
	}
	if($$('.smScrollContent').length){		
		$$('.smScrollContent').each(function(selector){
			new VScroll(selector);
		});
	}
}

var faqScrollTop = 0;
function initFaqs(){
	var listFaq = $$('.listFaq');
	if(listFaq.length){		
		new Accordion($$('.toggler'), $$('.element'), {
			onActive: function(toggler, element){
				toggler.addClass('current');
				setTimeout(function(){
					faqScrollTop = listFaq[0].getFirst().scrollTop;					
					initNewsScroller();
				}, 500);
			},
			onBackground: function(toggler, element){
				toggler.removeClass('current');
			}
		});

	}
}

function initExtensiveInfo(){
	var extensiveInfo = $$('.extensiveInfo');
	if(extensiveInfo.length){		
		new Accordion($$('.toggler'), $$('.element'), {
			alwaysHide: true,
			display: -1,
			onActive: function(toggler, element){
				toggler.addClass('current');
				setTimeout(function(){
					initNewsScroller();
				}, 500);
			},
			onBackground: function(toggler, element){
				toggler.removeClass('current');
				setTimeout(function(){
					initNewsScroller();
				}, 500);
			}		
			
		});

	}
}

window.addEvent('domready', function(){
	initMainMenu();
	initFadeListImages();
});