var MODES = {
	ANNOUNCES: 0,
	ARCHIVES: 1
}

var ANNOUNCES = {
	curMonth: '',
	curYear: ''
}

var ARCHIVES = {
	curMonth: '',
	curYear: ''
}

// -- default
var accordion = null;
var maxCols = 0;
var curSlide = 0;
var mode = null;

// -- init
function init(){
	
	$$('div[class=site] a').each(function(el){
		el.addEvent('click', function(){
			setCurrentYear(el.get('html'));
		});
	});

	// -- nombre de pages d'archives
	if( $defined($('archives_pages')) )
		maxCols = $('archives_pages').value;
	
	if( $defined($('default_module')) )
		mode = $('default_module').value;
	
	if( $defined( $('announces_current_month')) && $defined($('announces_current_year')) )
		ANNOUNCES = { curMonth: $('announces_current_month').value, curYear: $('announces_current_year').value };
	if( $defined( $('archives_current_month')) && $defined($('archives_current_year')) )
		ARCHIVES = { curMonth: $('archives_current_month').value, curYear: $('archives_current_year').value };
	
	if( $defined($('archives_current_slide')) ){
		var direction = $('archives_current_slide').value.toInt();
		if( direction > 0 ){
			slide(direction);
		}
	}
	
	if( $defined($('slider-trigger-prev')) && $defined($('slider-trigger-next')) ){
		$('slider-trigger-prev').setStyle('visibility', ( curSlide == 0 ) ? 'hidden' : 'visible');
		$('slider-trigger-next').setStyle('visibility', ( curSlide == (maxCols - 1).toInt() ) ? 'hidden' : 'visible');
	}
	
	// Mise à jour des infos de contact
	if( $chk($('contact_data')) ){
		
		new Request.HTML({
			url: "/complements/contact.html",
			onSuccess: function(_data){
				$('contact_data').adopt(_data);
			}
		}).send();
		//		
	}
	
	// Archive par défaut
	setCurrentYear(ARCHIVES.curYear)
	if( mode == MODES.ARCHIVES )
		setCurrentMonth();
	
	//create our Accordion instance
	if( $defined($('default_module')) )
		makeAccordion( $('default_module').value);
	if( Browser.Engine.trident ){
		handleAccordionIeBug($('default_module').value);
	}
}

function handleAccordionIeBug(_default){
	if( _default == -1 ){		
		$('announces_data').setStyle('display', 'none');
		$('archives_data').setStyle('display', 'none');
	}else if( _default == MODES.ANNOUNCES )
		$('archives_data').setStyle('display', 'none');
	else if( _default == MODES.ARCHIVES )
		$('announces_data').setStyle('display', 'none');
}

// -- Gestion du slide
function slide( _direction ){
	if( !( (curSlide + _direction).toInt() >= 0 && (curSlide + _direction).toInt() <= (maxCols -1).toInt()) )
		curSlide = (_direction >= 1) ? (maxCols - 1).toInt() : 0;
	else
		curSlide += _direction;
	
	$('slider-trigger-prev').fade( curSlide == 0 ? 0 : 1);
	$('slider-trigger-next').fade( (curSlide == (maxCols - 1).toInt()) ? 0 : 1);
		
	var x = (curSlide.toInt()*-200)
	var folioChange = new Fx.Tween('folio', {duration:500});
	folioChange.start('left',x);
}

// -- Gestion des archives
function setCurrentYear( _newYear ){
	if( ARCHIVES.curYear != _newYear && $defined($('archive_' + ARCHIVES.curYear)) ){
		$('archive_' + ARCHIVES.curYear).set('class', '');
		$('archive_' + ARCHIVES.curYear + '_months').setStyle('display', 'none');		
	}
	ARCHIVES.curYear = _newYear;
	if( $defined($('archive_' + ARCHIVES.curYear)) ){
		$('archive_' + ARCHIVES.curYear).set('class', 'active');
		$('archive_' + ARCHIVES.curYear + '_months').setStyle('display', 'block');
	}
}

function setCurrentMonth(){	
	if( $defined($('archive_' + ARCHIVES.curYear + '_' + ARCHIVES.curMonth)) )
		$('archive_' + ARCHIVES.curYear + '_' + ARCHIVES.curMonth).set('class', 'active');
}

// -- domready
window.addEvent('domready', init);

// -- Make accordion
function makeAccordion( _default ){
	return new Accordion($$('.toggler'),$$('.element'), {
		display: 	_default,
		height:		true,
		opacity: 	true,
		onActive: function(toggler, el){
			if( Browser.Engine.trident ){
				if( el.id == 'announces_data' ){
					$('announces_data').setStyle('display', 'block');
					$('archives_data').setStyle('display', 'none');
				}else if( el.id == 'archives_data' ){
					$('announces_data').setStyle('display', 'none');
					$('archives_data').setStyle('display', 'block');
				}
			}
		}
	});
}

// -----------------------------------------------------------------------------------------

// -- Affiche la page de détail d'un article
function showArticlePage( _idArticle ){
	$('form_communiques').set('action', '/?bpage=articles.Communiques&id=' + _idArticle);
	$('form_communiques').submit();
}

function getPage(){
	return ( mode == MODES.ANNOUNCES ) ? "annonces" : ( mode == MODES.ARCHIVES ) ? "archives" : "";
}
