var contentUpdater = new Class({

		Implements: [Events, Options],
		
		options: {
			'anUrlExtension': ':::template/page'
		},

		theContainer    : null, //holds the active playlist
		theUrlExtension    : null,
		theMenu    : null,
		self : null,

		initialize: function(aContainer,aMenu,options)
		{
			this.setOptions(options);
			this.theContainer = aContainer;
			this.theMenu = aMenu;
			var self = this;
			this.addEventsOnLinks(this.theMenu, this.options);
		},

		addEventsOnLinks: function(anyMenu,options)
		{
			var self = this;
			var list = $$(anyMenu);
			list.each(function(element) {
			  	// Gestionnaire d'évènement 'click'
				element.set('style', 'color:grey;');
			  	element.addEvent('click', function(e){
				// On stoppe le pointage naturel du lien pour ne pas recharger la page
					e = new Event(e).stop();
					var path = element.getProperty('href')+ options.anUrlExtension;
					//We can use one Request object many times.
					var req = new Request.HTML({url:path,evalResponse:true,evalScripts:true,
						onRequest: function(html) {
							$('Main').set('text', 'loading');
							$('Main').addClass('loading'); 
						},
						onSuccess: function(html) {
							//Clear the text currently inside the results div.
							$('Main').set('text', '');
							$('Main').removeClass('loading'); 
							//Inject the new DOM elements into the results div.
							$('Main').adopt(html);
							//$('SoundsList').addEvent('click',function(e) {
							//	e = new Event(e).stop();
							 //});
							self.addEventsOnLinks('#Main a', self.options);
						},
						//Our request will most likely succeed, but just in case, we'll add an
						//onFailure method which will let the user know what happened.
						onFailure: function() {
							$('Main').set('text', 'The request failed.');
						}
					});
					req.send();
				});
			});
		},

		updateLinks: function(options)
		{
		},
		createInterface: function() {

		}
});

