// JavaScript Document

if(!jQuery.load_handlers){jQuery.load_handlers=new Array();function onAjaxLoad(f){jQuery.load_handlers.push(f);};function triggerAjaxLoad(root){for(var i=0;i<jQuery.load_handlers.length;i++)
jQuery.load_handlers[i].apply(root);};jQuery.fn._ACBload=jQuery.fn.load;jQuery.fn.load=function(url,params,callback){callback=callback||function(){};if(params){if(params.constructor==Function){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(jQuery.ajax.caller==jQuery.fn._load)return jQuery._ACBajax(type);var orig_complete=type.complete||function(){};type.complete=function(res,status){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);};}
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;}
jQuery.fn.positionner=function(force){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(force||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);jQuery(jQuery('*',this).filter('input[type=text],textarea')[0]).focus();return this;}
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;i.attr('value',parseInt(i.attr('value'))+1);}
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'){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(false).formulaire_dyn_ajax();updateReaderBuffer();}},iframe:jQuery.browser.msie}).addClass('noajax');});});}
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;var preloaded_urls={};var ajaxbloc_selecteur;jQuery.fn.ajaxbloc=function(){if(this.length)
initReaderBuffer();return this.each(function(){jQuery('div.ajaxbloc',this).ajaxbloc();var blocfrag=jQuery(this);var on_pagination=function(c){jQuery(blocfrag).html(c).removeClass('loading');var a=jQuery('a:first',jQuery(blocfrag)).eq(0);if(a.length&&a.is('a[name=ajax_ancre]')){a=a.attr('href');setTimeout(function(){jQuery(a,blocfrag).positionner(true);},10);}
else{jQuery(blocfrag).positionner(false);}
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(url[1])
url[0]+="&var_ajax_ancre="+url[1];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){ajax_confirm=true;var d=new Date();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');jQuery('form.bouton_action_post.ajax:not(.noajax)',this).each(function(){var leform=this;var url=jQuery(this).attr('action').split('#');jQuery(this).prepend("<input type='hidden' name='var_ajax' value='1' /><input type='hidden' name='var_ajax_env' value='"+(ajax_env)+"' />"+(url[1]?"<input type='hidden' name='var_ajax_ancre' value='"+url[1]+"' />":"")).ajaxForm({beforeSubmit:function(){jQuery(blocfrag).addClass('loading').animeajax();},success:function(c){on_pagination(c);preloaded_urls={};jQuery(blocfrag).ajaxbloc();},iframe:jQuery.browser.msie}).addClass('noajax');});});};jQuery(function(){jQuery('form').parents('div.ajax').formulaire_dyn_ajax();jQuery('div.ajaxbloc').ajaxbloc();});onAjaxLoad(function(){var tmp;if(jQuery&&(tmp=jQuery('form',this).fn)&&tmp.fn.formulaire_dyn_ajax){tmp.parents('div.ajax').formulaire_dyn_ajax();jQuery('div.ajaxbloc',this).ajaxbloc();}});
