window.addEvent('domready', function() {
	
	// init newsletter e-mail input
	var newsletterEmail = $('PersonEmail');
	if (newsletterEmail) {
		newsletterEmail.store('default_value', newsletterEmail.get('value'));
		newsletterEmail.addEvents({
			'focus': function(e) {
				if (this.get('value')==this.retrieve('default_value')) {
					this.set('value', '');
				}
			},
			'blur': function(e) {
				if (this.get('value')=='') {
					this.set('value', this.retrieve('default_value'));
				}
			}
		});
	}
	
	// init newsletter submit
	var newsletter = $('newsletter');
	if (newsletter) {
		var newsletterForm = newsletter.getElement('form');
		if (newsletterForm) {
			var newsletterButton = newsletterForm.getElement('div.button');
			if (newsletterButton) {
				newsletterButton.addEvent('click', function(e) {
					e.stop();
					newsletterForm.submit();
				});
			}
		}
	}
	
	// init flayers carrousel
	if ($('FlayersCarrouselContainer')) {
		var flayers = new Carrousel({
			node: 'div.node',
			nodesWrapper: 'FlayersCarrouselContainer',
			btnPrevious: 'FlayersCarrouselButtonPrevious',
			btnNext: 'FlayersCarrouselButtonNext',
			minNodesCount: 3
		});
	}
	
	// init flash videos
	$$('div#gallery div.flashContent').each(function(el) {
		var flashFile = el.getProperty('title') || false;
		if (flashFile) {
			new Swiff('./flash/video_player.swf?video=' + flashFile, {
				container: el,
				width: 640,
				height: 490,
				params: { scale: 'noscale' }
			});
			el.erase('title');
		}
	});
	
	// init gallery
	var gallery = $('gallery');
	if (gallery) {

        var nodes = gallery.getElements('div.node');
        var nodes_photo = gallery.getElements('div.node.photo');
        var nodes_video = gallery.getElements('div.node.video');

		if (nodes.length) {

            var nodes_filter = nodes_photo.length ? 'photo' : 'video';
            
            var paginate = new Paginate({
                nodesContainer: 'gallery_nodes',
                nodesPerPage: 15,
                nodesFilter: nodes_filter
            });
            
            // init tabs
            var tabs = gallery.getElements('div.tabs a');
            var tab_photos = gallery.getElements('div.tabs a.photos');
            var tab_videos = gallery.getElements('div.tabs a.videos');

            // set active tab based on default nodes filter
            if (nodes_filter == 'photo') {
                tab_photos.addClass('active');
            } else {
                tab_videos.addClass('active');
            }

            // hide tabs which contain no nodes
            if (!nodes_photo.length) {
                tab_photos.setStyle('display', 'none');
            }
            if (!nodes_video.length) {
                tab_videos.setStyle('display', 'none');
            }

            // attach events to tabs
			tab_photos.each(function(element) {
                element.addEvent('click', function(e) {
                    e.stop();
                    tabs.removeClass('active');
                    tab_photos.addClass('active');
                    paginate.refresh('photo');
                });
			});
			
			tab_videos.each(function(element) {
                element.addEvent('click', function(e) {
                    e.stop();
                    tabs.removeClass('active');
                    tab_videos.addClass('active');
                    paginate.refresh('video');
                });
			});
		}
	}
	
});
