var pagination_search;
var Pagination_search;
Pagination_search = new Class({
	initialize: function() {
/* 	console.log('initialized Pagination_search line 4'); */
		var _this = this;
		// Get all concerned links for Pagination_search 
		var elements = $(document.body).getElements('*[rel=pagination]');
		
		elements.each(function(element) {
			element.addEvent('click', function(e) {
				e.stop();
				//	Start the process
				_this.element_click(element);
			});
		});
	},


	element_click: function(element){
		_this = this;
//		$('clipsloader').setStyle('display', 'inline');
		query = new Request({
			url: element.get('href'), 

			onSuccess: function(xml){
//			$('clipsloader').setStyle('display', 'none');
				_this.update_content(query.response['xml'], element.get('href'));			

			},
			
			onFailure: function() {
//				$('clipsloader').setStyle('display', 'none');
				return false;
			}
		}).send();
	},
	

	update_content: function(xml, url){
		_this = this;
		var clip_target = $('clip_list_ul');
		var pagination_top = $('pagination_top');
		var pagination_bottom = $('pagination_bottom');
		
/*
 *	The data bellow can be added in the xml in website controleur display_clip_list methode
 *	That methode need to be moved in a model ASAP
 *
 *		var eID = xml.getElementsByTagName('eID');
 *		var counter = xml.getElementsByTagName('counter');
 *		var data = xml.getElementsByTagName('data');
 */
		
		
		//	Update content
		var clips = xml.getElementsByTagName('clip');
		clip_target.empty();
		for(i=0; i<clips.length;i++){
			var clip = clips[i].childNodes[0].nodeValue;
		
			var newLi = new Element('li', {'class': 'clip_list_element channel_brd_bt_color'});	//	Creat new clip item
			newLi.innerHTML = clip;											//	Add data in clip item
			newLi.inject(clip_target);										//	Add clip item in the page
		}
		


		//	Update pagination
		var pagination_value = _this.getNodeValueFromName(xml, 'pagination');
		pagination_top.empty();
		pagination_top.innerHTML = pagination_value;

		pagination_bottom.empty();
		pagination_bottom.innerHTML = pagination_value;
		
		
		//	Reaload script on item
		_this.initialize();
		
		//	Update google
		_this.googleUpdate(url);
		
		
		//	Update displayed url
//		window.location.replace(url);

		
	},

	getNodeValueFromName: function(node, name) {
		var value = "";
		
		try {
			value = node.getElementsByTagName(name)[0].childNodes[0].nodeValue;
		} catch(e) {}
		
//		console.log(name,': ', value);
		return value;
	},
	
	googleUpdate: function(url){
		if(pageTracker) {
			pageTracker._trackPageview(url);
		}
	},

	changeAnchor: function(anchor){
		// Si l'url possde dŽjˆ une ancre
		if (window.location.href.match(new RegExp('#.*$'))){
			window.location = window.location.href.replace(
				new RegExp('#.*$'),
				'#' + anchor
			);
		}
		// Sinon, il suffit de l'ajouter ˆ la fin
		else{
			window.location = window.location.href + "#" + anchor
		}
		
		return window.location;
	}
});