// JavaScript Document
var Pojedynki = new Class({
	initialize: function(el){
		
		if(!$(el))return;
		
		this.el = $(el);
		this.domain = 'ajax/pojedynki/';
		this.zakladki = this.el.getElement('.menuTabs');
		this.exec();
		
	},
	req: function(url, tpl,page){
		var This = this;
		var jsonRequest = new Request.JSON({url: url,
			onRequest: this.loadingStart(),
			onSuccess: function(userObject){
				
				This.loadingStop();
				This.row(userObject,tpl);
			}}).get({'page':page});
	},
	exec: function(){
		
		if(!this.userObject){
			var page = 1;
			///var url = this.domain;
		//	this.req(url+'wygrane/',null,page);
			
			var domain = this.domain+'wygrane/';
			this.req(domain,domain,1);
			
		}
		this.tabs();
	},
	loadingStart: function(){
		this.el.getElement('#pojedynkiajax').set('html','<img src="images/loading.gif" class="loading" />');
		
	},
	loadingStop: function(){
		this.el.getElement('#pojedynkiajax').setStyle('opacity',0);
		this.el.getElement('#pojedynkiajax').set('html','');
		var myFx = new Fx.Tween('pojedynkiajax');
		myFx.start('opacity',[0,1]);
	},
	tabs: function(){
		var This = this;
		//link do requesta
		var page=null;
		var domain = this.domain;
		var zakladki = this.zakladki.getElements('a');
		var taby = this.el.getElements('.menuTabs li');
		
		


		taby[0].addEvent('click', function(e){
			domain = This.domain+'wygrane/';
			This.req(domain,domain,1);
			zakladki.removeClass('activ');
			this.getElement('a').set('class','activ');
	        e.stop();							   
		});
		taby[1].addEvent('click', function(e){
			domain = This.domain+'przegrane/';
			This.req(domain,domain,1);
			zakladki.removeClass('activ');
			this.getElement('a').set('class','activ');
			
			e.stop();								   
		});
		taby[2].addEvent('click', function(e){
			domain = This.domain+'nieroztrzygniete/';
			This.req(domain,domain,1);
			zakladki.removeClass('activ');
			this.getElement('a').set('class','activ');
			
			e.stop();								   
		});
	},
	row: function(userObject,dzial){
		//this.el.getElement('#pojedynkiajax').set('html','');
		if(userObject.gracze.length){
		userObject.gracze.each(function(i,v){
				this.gracz(i);	
		}.bind(this));
		}else{
			this.gracz(null);
		}
		this.pager(userObject.poprzednia,userObject.nastepna,dzial);
	},
	pager: function(poprzednia,nastepna,dzial){
		var This = this;
		var page=null;
		var next = this.el.getElement('.next');
		var prev = this.el.getElement('.prev');

		prev.removeEvents('click');
		next.removeEvents('click');
		if(poprzednia){
			prev.setStyle('visibility','visible');		
			prev.addEvent('click', function(e){
				this.req(dzial,dzial,poprzednia);
				e.stop();	
			}.bind(this));
		}else{
			prev.setStyle('visibility','hidden');
		}
		if(nastepna){
			next.setStyle('visibility','visible');
			next.addEvent('click', function(e){
				this.req(dzial,dzial,nastepna);
				e.stop();	
			}.bind(this));
		}else{
			next.setStyle('visibility','hidden');
		}
	},
	gracz: function(obj){
		var tabcontents = this.el.getElement('#pojedynkiajax');
		if(obj == null){
			tabcontents.set('html','<div class="cent">brak pojedynków</div>');
			return;
		}
		var gracz = new Element('dl',{
			'class':'gracz clearfix'				
		});
		var gracz_dd = new Element('dd',{
			'class':'left'					   
		});
		var gracz_dd_a = new Element('a',{
			'class':'tooltip',
			'href': obj.link							 
		});
		var gracz_image = new Element('img',{
			'alt':obj.login,
			'src':obj.img
		});
		var gracz_login = new Element('dt',{
			'class':'ico1'
		});
		var gracz_login_link = new Element('a',{
			'class':'green bold',
			'href':obj.link,
			'text':obj.login
	    });
		var gracz_login_poziom =  new Element('span',{
						   'text':' - poziom '+obj.poziom
        });
		var wyzwal = new Element('dd',{
			'html':'<strong>'+obj.wyzwal+': </strong>'+obj.data
			
		});
		var stracil = new Element('dd',{
			'html':'<strong>'+obj.stracil+':</strong> '+obj.strata_postaci+' '+obj.postac					  
        });
	tabcontents.grab(gracz);
	gracz.grab(gracz_dd);
		gracz_dd.grab(gracz_dd_a);
			gracz_dd_a.grab(gracz_image);
			
	gracz.grab(gracz_login);
		gracz_login.grab(gracz_login_link);
			gracz_login.grab(gracz_login_poziom)
			
	gracz.grab(wyzwal);
	gracz.grab(stracil);
	
	}
	
 });
	
