/*
webservices v1.1 : 12/01/2012

{
	page: 'mapage.php', // pour précisez une autre page que le nom réel de la page
}

*/

var wsitems;
var wsidc;
var wsnompage;
var wsjourney;

function jsdatas(data) {
	wsitems = eval(data);
}

function jsjourney(data) {
	wsjourney = eval(data);
}

function otherjourney (journeyid, bloc) {
	//journée précédente ou suivante
	var $bloc=$('#'+ bloc);
	var sos = $bloc.html(); 
	$bloc.html('<div class="ajaxload"><img src="images/ajax-loader.gif"></div>');
	$.getJSON('http://www.rugby-online.eu/webservices/competitionsGetJourney?jsjourney=?',
	{
		idc : wsidc,
		host: document.location.host,
		pg : wsnompage,
		jid : journeyid,
		tws: 'lastjourney'
	})
	.complete(function() {
		$bloc.html(sos);
		$('#namejourney').html(wsjourney['nom']);
		$('#datejourney').html(wsjourney['journee']);
		var prev='';
		if (typeof wsjourney['previd'] != 'undefined') {
			prev='<span class="btprecjourney">précédente</span>';
			$('.precjourney').attr('id', wsjourney['previd']);
		}
		$('.precjourney').html(prev);
		var suiv='';
		if (typeof wsjourney['suivid'] != 'undefined') {
			suiv='<span class="btsuivjourney">suivante</span>';
			$('.suivjourney').attr('id', wsjourney['suivid']);
		}
		$('.suivjourney').html(suiv);
		var d=[];
		var rid='';
		$.each(wsjourney['datas'], function(keydat, valdat) {
			if (valdat['score']['class']=='score') { rid = ' id="' + valdat['idrencontre'] + '"'; }
			if (valdat['islocale']!='') { var islocale=' class="' + valdat['islocale'] + '"'; } else { var islocale=''; }
			d.push('<tr' + rid + islocale + '><td width="40%" class="' + valdat['equipelocale']['class'] + '">' + valdat['equipelocale']['value'] + '</td><td class="' + valdat['score']['class'] + '">' + valdat['score']['value'] + '</td><td width="40%" class="' + valdat['equipevisiteuse']['class'] + '">' + valdat['equipevisiteuse']['value'] + '</td></tr>');
		});
		$('#' + bloc + ' table').html(d.join(''));
		$('#' + bloc + ' tr:nth-child(even)').addClass('even');
	});
}

function autrejournee (journeyid, bloc) {
	//journées futures
	var $bloc=$('#'+ bloc);
	var sos = $bloc.html(); 
	$bloc.html('<div class="ajaxload"><img src="images/ajax-loader.gif"></div>');
	$.getJSON('http://www.rugby-online.eu/webservices/competitionsGetJourney?jsjourney=?',
	{
		idc : wsidc,
		host: document.location.host,
		pg : wsnompage,
		jid : journeyid,
		tws: 'nextjourney'
	})
	.complete(function() {
		$bloc.html(sos);
		$('#nomjournee').html(wsjourney['nom']);
		$('#datejournee').html(wsjourney['journee']);
		var prev='';
		if (typeof wsjourney['previd'] != 'undefined') {
			prev='<span class="btprecedentejournee">précédente</span>';
			$('.precedentejournee').attr('id', wsjourney['previd']);
		}
		$('.precedentejournee').html(prev);
		var suiv='';
		if (typeof wsjourney['suivid'] != 'undefined') {
			suiv='<span class="btprochainejournee">suivante</span>';
			$('.prochainejournee').attr('id', wsjourney['suivid']);
		}
		$('.prochainejournee').html(suiv);
		var d=[];
		$.each(wsjourney['datas'], function(keydat, valdat) {
			if (valdat['islocale']!='') { var islocale=' class="' + valdat['islocale'] + '"'; } else { var islocale=''; }
			d.push('<tr' + islocale + '><td class="' + valdat['equipelocale']['class'] + '">' + valdat['equipelocale']['value'] + '</td><td class="' + valdat['equipevisiteuse']['class'] + '">' + valdat['equipevisiteuse']['value'] + '</td></tr>');
		});
		$('#' + bloc + ' table').html(d.join(''));
		$('#' + bloc + ' tr:nth-child(even)').addClass('even');
	});
}


function lastjourney (val,bloc) {
	//résultats dernière journée
	var $bloc=$('#'+ bloc);
	//journée précédente
	var prev='<a href="#" title="Journée précédente" class="precjourney">';
	if (typeof val['previd'] != 'undefined') prev+='<span class="btprecjourney">précédente</span>';
	prev+='</a>';
	$bloc.html('<div class="titrejournee">' + prev + '<span id="namejourney" class="libjournee">' + val['nom'] + '</span><span id="datejourney" class="libjournee">' + val['journee'] + '</span><a href="#" title="Journée suivante" class="suivjourney"></a></div>');
	var d=[];
	//var rid='';
	$.each(val['datas'], function(keydat, valdat) {
		//if (valdat['score']['class']=='score') { rid = ' id="' + valdat['idrencontre'] + '"'; }
		if (valdat['islocale']!='') { var islocale=' class="' + valdat['islocale'] + '"'; } else { var islocale=''; }
		//d.push('<tr' + rid + islocale + '><td width="40%" class="' + valdat['equipelocale']['class'] + '">' + valdat['equipelocale']['value'] + '</td><td class="' + valdat['score']['class'] + '">' + valdat['score']['value'] + '</td><td width="40%" class="' + valdat['equipevisiteuse']['class'] + '">' + valdat['equipevisiteuse']['value'] + '</td></tr>');
		d.push('<tr' + islocale + '><td width="40%" class="' + valdat['equipelocale']['class'] + '">' + valdat['equipelocale']['value'] + '</td><td class="' + valdat['score']['class'] + '">' + valdat['score']['value'] + '</td><td width="40%" class="' + valdat['equipevisiteuse']['class'] + '">' + valdat['equipevisiteuse']['value'] + '</td></tr>');
	});
	$bloc.append('<table>' + d.join('') + '</table>');
	$('#'+ bloc + ' tr:nth-child(even)').addClass('even');
	if (typeof val['previd'] != 'undefined') $('.precjourney').attr('id', val['previd']);
	$('.precjourney, .suivjourney').live('click', function() { otherjourney($(this).attr('id'), bloc); });
}

function last_match (val,bloc) {
	//résultats dernier match
	var $bloc=$('#'+ bloc);
	$bloc.html('<div class="titrejournee"><span class="libjournee">' + val['journee'] + '</span></div>');
	var d=[];
	var rid='';
	var det='&nbsp;';
	if (val['score']['class']=='score') { rid = ' id="' + val['idrencontre'] + '"'; }
	d.push('<tr><td width="40%"><img src="http://www.rugby-online.eu/ws/blasons/' + val['lblason'] + '" alt="blason ' + val['equipelocale'] + '" title="' + val['equipelocale'] + '"></td><td class="' + val['score']['class'] + '">' + val['score']['value'] + '</td><td width="40%"><img src="http://www.rugby-online.eu/ws/blasons/' + val['vblason'] + '" alt="blason ' + val['equipevisiteuse'] + '" title="' + val['equipevisiteuse'] + '"></td></tr>');
	if (typeof val['detail'] != 'undefined') {
		//survol et détails rencontre
		$('#' + bloc + ' table').live('hover' , function() { $(this).toggleClass('trhover'); });
		det = '<a href="#"  class="plusinfos" title="détails du match">+ d\'infos</a>';
		var c='<table id="tbmatch" width="100%"><tr><th width="30%">&nbsp;</th><th width="35%">' + val['equipelocale'] + '</th><th width="35%">' + val['equipevisiteuse'] + '</th></tr>';
		c+='<tr><td class="detailsleft">Essais</td><td>' + val['detail']['essais']['loc'] + '</td><td>' + val['detail']['essais']['vis'] + '</td></tr>';
		c+='<tr><td class="detailsleft">Transformations</td><td>' + val['detail']['transfo']['loc'] + '</td><td>' + val['detail']['transfo']['vis'] + '</td></tr>';
		c+='<tr><td class="detailsleft">Pénalités</td><td>' + val['detail']['penal']['loc'] + '</td><td>' + val['detail']['penal']['vis'] + '</td></tr>';
		c+='<tr><td class="detailsleft">Drops</td><td>' + val['detail']['drops']['loc'] + '</td><td>' + val['detail']['drops']['vis'] + '</td></tr></table>';
		$bloc.click( function () {
			apprise(c, { 'textOk': 'Fermer' });
			$('#tbmatch tr:nth-child(even)').addClass('even');
		});
	}
	d.push('<tr><td>' + val['equipelocale'] + '</td><td>' + det + '</td><td>' + val['equipevisiteuse'] + '</td></tr>');
	$bloc.append('<table' + rid + '>' + d.join('') + '</table>');
}

function nextjourney (val, bloc) {
	//prochaine journée
	var $bloc=$('#'+ bloc);
	//journée suivante
	var suiv='<a href="#" title="Journée suivante" class="prochainejournee">';
	if (typeof val['suivid'] != 'undefined') suiv+='<span class="btprochainejournee">suivante</span>';
	suiv+='</a>';
	$bloc.html('<div class="titrejournee"><a href="#" title="Journée précédente" class="precedentejournee"></a><span  id="nomjournee" class="libjournee">' + val['nom'] + '</span><span  id="datejournee" class="libjournee">' + val['journee'] + '</span>' + suiv + '</div>');
	var d=[];
	$.each(val['datas'], function(keydat, valdat) {
		if (valdat['islocale']!='') { var islocale=' class="' + valdat['islocale'] + '"'; } else { var islocale=''; }
		d.push('<tr' + islocale + '><td class="' + valdat['equipelocale']['class'] + '">' + valdat['equipelocale']['value'] + '</td><td class="' + valdat['equipevisiteuse']['class'] + '">' + valdat['equipevisiteuse']['value'] + '</td></tr>');
	});
	$bloc.append('<table>' + d.join('') + '</table>');
	$('#'+ bloc + ' tr:nth-child(even)').addClass('even');
	if (typeof val['suivid'] != 'undefined') $('.prochainejournee').attr('id', val['suivid']);
	$('.precedentejournee, .prochainejournee').live('click', function() { autrejournee($(this).attr('id'), bloc); });
}

function next_match (val,bloc) {
	//prochain match
	var $bloc=$('#'+ bloc);
	$bloc.html('<div class="titrejournee"><span class="libjournee">' + val['journee'] + '</span></div>');
	var d=[];
	d.push('<tr><td width="40%"><img src="http://www.rugby-online.eu/ws/blasons/' + val['lblason'] + '" alt="blason ' + val['equipelocale'] + '" title="' + val['equipelocale'] + '"></td><td>&nbsp;</td><td width="40%"><img src="http://www.rugby-online.eu/ws/blasons/' + val['vblason'] + '" alt="blason ' + val['equipevisiteuse'] + '" title="' + val['equipevisiteuse'] + '"></td></tr>');
	if (typeof val['next'] != 'undefined') {
		//survol et futures rencontre
		$('#' + bloc + ' table').live('hover' , function() { $(this).toggleClass('trhover'); });
		det = '<a href="#" class="plusinfos" title="prochains matchs">+ d\'infos</a>';
		var c='<table id="tbnextmatch" width="100%"><tr><th width="34%">Journée</th><th width="33%">Equipe locale</th><th width="33%">Equipe visiteuse</th></tr>';
		for(m in val['next']) {
			c+='<tr><td>' + val['next'][m]['date'] + '</td><td>' + val['next'][m]['loc'] + '</td><td>' + val['next'][m]['vis'] + '</td></tr>';
		}
		$bloc.click( function () {
			apprise(c, { 'textOk': 'Fermer' });
			$('.appriseOuter').css('min-width','550px');
			$('#tbnextmatch tr:nth-child(even)').addClass('even');
		});
	}
	d.push('<tr><td>' + val['equipelocale'] + '</td><td>' + det + '</td><td>' + val['equipevisiteuse'] + '</td></tr>');
	$bloc.append('<table>' + d.join('') + '</table>');
}

function poulerank (val,bloc) {
	//classement poule
	var $bloc=$('#'+ bloc);
	var d=[];
	d.push('<tr><th>Position</th><th style="text-align:left;">Club</th><th>Points</th><th>Joués</th><th>Gagnés</th><th>Nuls</td><th>Perdus</th></tr>');
	$.each(val['datas'], function(keydat, valdat) {
		if (valdat['islocale']!='') { var islocale=' class="' + valdat['islocale'] + '"'; } else { var islocale=''; }
		d.push('<tr' + islocale + '><td>' + valdat['position'] + '</td><td style="text-align:left;">' + valdat['equipe'] + '</td><td>' + valdat['points'] + '</td><td>' + valdat['joues'] + '</td><td>' + valdat['gagnes'] + '</td><td>' + valdat['nuls'] + '</td><td>' + valdat['perdus'] + '</td></tr>');
	});
	$bloc.html('<table>' + d.join('') + '</table>');
	$('#'+ bloc + ' tr:nth-child(even)').addClass('even');
}

(function($) {
	// définition du plugin jQuery
	$.fn.webservice = function(params) {
		// Fusionner les paramètres par défaut et ceux de l'utilisateur
		//params = $.extend( {journee: 1, classement: 1}, params);
		var datasdone=false;
		// Traverser tous les nœuds.
		this.each(function() {
			// Exprimer un nœud seul en objet jQuery
			//var $nid = $(this);
			//if (params.journee == 1 && journeydone == false) {
			if (datasdone == false) {
				wsidc = params.idc;
				datasdone=true;
				if (typeof params.page == 'undefined') {
					var page = document.location.pathname.split('/');
					wsnompage = page[page.length-1];
				} else wsnompage = params.page;
				$.getJSON('http://www.rugby-online.eu/webservices/competitionsGetdatas?jsdatas=?',
				{
					idc : wsidc,
					host: document.location.host,
					pg : wsnompage
				})
				.complete(function() {
					//console.log(wsitems);
					$.each(wsitems, function(key, val) {
						if ($('#'+ key).length==1) {
							if (val['code']=='lastjourney') {
								lastjourney(val,key);
							} else if (val['code']=='nextjourney') {
								nextjourney(val,key);
							} else if (val['code']=='lastmatch') {
								last_match(val,key);
							} else if (val['code']=='nextmatch') {
								next_match(val,key);
							} else if (val['code']=='poulerank') {
								poulerank(val,key);
							}
							if (val['titre']=='') $('#'+ key).prev().hide(); else $('#'+ key).prev().html(val['titre']);
						}
					});
				});
			}
		});
	// Permettre le chaînage par jQuery
	return this;
};
})(jQuery);

