var contentSlide = new Class({
	
	Implements: [Options],

	options: {
		width: 1080,
		elem_start: null,
		title_page: null,
		lang: "fr",
		url: null,
	},

	initialize: function(options) {
		this.setOptions(options);
		
		this.options.elem_start = this.options.elem_start[this.options.lang];
		this.page_start();

		this.link();
		this.init();
		this.initContent();
		this.menu();
	},
	
	page_start: function() {
		
		var page = document.location.toString().substring(document.location.toString().lastIndexOf("/")+1);
		var str = page.split('.');

		if(document.location.toString().test("#") || document.location.toString().test(".html")) {
			this.options.elem_start = str[0];
		}
	},
	
	place: function() {
		var left = $$('div#' + this.options.elem_start).getStyle('left').toString().toInt();
		var dif = 0 - left;
		
		$('content_middle').setStyles({
			'position': 'absolute',
			'top': 23,
			'left': (0 * this.options.width) + dif
		});

	},
	
	init: function() {
		if($$('ul#content_top li.'+this.options.elem_start+' a') != '')
		{
			$$('ul#content_top li.'+this.options.elem_start+' a').set('class', 'actif');
			if (document.location.toString().test(".html")) {
				var myURI = new URI('/#/'+this.options.elem_start);
				myURI.go();
	
				var titre_page = this.options.elem_start.charAt(0).toUpperCase();
				titre_page += this.options.elem_start.substr(1);
				
				$$('title').set('html', this.options.title_page+titre_page);
			}
			
		}
	},
	
	incrust: function(html) {
		if($$('ul#content_top li.'+this.options.elem_start+' a') != '')
		{
			$('content_middle').set('html', html);
			
			$('content').setStyle('position', 'relative');
			
			$('content_top').setStyles({
				'position': 'absolute',
				'left': 0,
				'top': '5px'
			});
			
			$('content_bottom').setStyles({
				'position': 'absolute',
				'left': 0,
				'bottom': '9px'
			});
			
			$('content_middle').setStyles({
				'position': 'absolute',
				'left': 0,
				'top': 23
			});
			
			$$('div.content_middle_ajax').each(function(item, index){
				item.setStyles({
					'position': 'absolute',
					'top': 0,
					'left': index * this.options.width
				});
			}.bind(this));
		}
	},		
	
	menu: function() {	
		$$('ul#content_top li a').addEvent('click', function(event){
			
			var page_actuelle = this.options.elem_start; // Page actuelle
			var page_target = event.target.getParent().get('class'); // Page target			
			var res = 0 - $$('div#' + page_target).getStyle('left').toString().toInt();

			$$('ul#content_top li.'+page_actuelle+' a')[0].erase('class');
			$$('ul#content_top li.'+page_target+' a').set('class', 'actif');
			
			var myFx = new Fx.Tween('content_middle');
			myFx.start('left', res);
			
			this.options.elem_start = page_target;
			
			var titre_page = page_target.charAt(0).toUpperCase();
			titre_page += page_target.substr(1);
			
			$$('title').set('html', this.options.title_page+titre_page);
			}.bind(this));		
	},

	initContent: function() {
		var req = new Request.HTML({
			url:'/frontend_dev.php/pages/all.html',
			onSuccess: function(tree, elements, html) {
				this.incrust(html);
				this.place();
				this.accordion();
			}.bind(this),
			onFailure: function() {
				alert("Erreur lors du chargement du JavaScript");
			}
		});
		req.send();
	},
	
	link: function() {
		var myURI = new URI(this.options.url);
		$$('ul#content_top li a').each(function(item, index){
			var tempo = item.getParent().get('class');
			item.erase('href');
			item.set('href', '/#/' + tempo);
		});
	},
	
	accordion: function() {
		if (this.options.lang.test('fr')) {
			var myAccordion = new Fx.Accordion($$('div#constat div.toggler'), $$('div#constat ul.element'));
			var myAccordion2 = new Fx.Accordion($$('div#competences div.toggler'), $$('div#competences ul.element'));
		} else if (this.options.lang.test('en')) {
			var myAccordion = new Fx.Accordion($$('div#konstat div.toggler'), $$('div#konstat ul.element'));
			var myAccordion2 = new Fx.Accordion($$('div#kompetencies div.toggler'), $$('div#kompetencies ul.element'));
		} else if (this.options.lang.test('nl')) {
			var myAccordion = new Fx.Accordion($$('div#konstatering div.toggler'), $$('div#konstatering ul.element'));
			var myAccordion2 = new Fx.Accordion($$('div#kennis div.toggler'), $$('div#kennis ul.element'));
		}
	}
});