$(function(){
	load_jquery();
	if ($.browser.msie){_fixPNG()};
	$.ajaxTimeout(10000);
});

function getWindowHeight() {
    var windowHeight=0;
    if (typeof(window.innerHeight)=='number') {
        windowHeight=window.innerHeight;
    }
    else {
     if (document.documentElement&&
       document.documentElement.clientHeight) {
         windowHeight = document.documentElement.clientHeight;
    }
    else {
     if (document.body&&document.body.clientHeight) {
         windowHeight=document.body.clientHeight;
      }
     }
    }
    return Math.max(windowHeight,750);
}

function getWindowWidth() {
        var myWidth = 0;
        if( typeof( window.innerWidth ) == 'number' )
        {
                //Non-IE
                myWidth = window.innerWidth;
        }
        else
        if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )
        {
                //IE 6+ in 'standards compliant mode'
                myWidth = document.documentElement.clientWidth;
        }
        else
        if( document.body && ( document.body.clientWidth || document.body.clientHeight ) )
        {
                //IE 4 compatible
                myWidth = document.body.clientWidth;
        }
        return myWidth;
}

/**
 *
 * @access public
 * @return void
 **/
function alert_ie(){
	if ($.browser.msie){window.alert('Dans cette section, il est recommandé d\'utiliser Firefox')};
}

function load_jquery(){
	$("form").unbind("submit");
	$(".submit").unbind("click");
	$(".ajax").unbind("click");
	$(".submitonchange").find("select").unbind("change");
	$(".submitonchange").find("input").unbind("change");
	$(".submitonchange").find("input[@type=radio]").unbind("click");
	$(".formrecherche").unbind("submit");
	$(".openPartContact").unbind("click");
	$("#popupOverlay").unbind("click");
	$(".closePopup").unbind("click");
	$(".popup").unbind("click");


	$("textarea.jtbedit").each(function(){
		var id=$(this).attr('id');
		tb=new jsToolBar(document.getElementById(id));
		tb.draw('wysiwyg');
		$(this).attr('class','');
	});

	$("#formrecherche").submit(function(){
		window.location=SITE_PATH+$(this).attr('action')+$("#search").val();
		return false;
	});

	$(".submit").click(function(){
		$(this).parents("form").submit();
		return false;
	});

	$("form").not(".notajax").submit(function(){
	   	if($(this).attr('target')=='_top'){
	   		return true;
	   	}
		$(this).ajaxSubmit({
		   url		:	SITE_PATH+'ajax/'+$(this).attr('action'),
		   success	:	function(data){MyAjax(data);}
		});
		return false;
	});

	$(".submitonchange").find("select").change(function(){
		$(this).parents("form").submit();
	});
	$(".submitonchange").find("input").change(function(){
		$(this).parents("form").submit();
	});
	$(".submitonchange").find("input[@type=radio]").click(function(){
		$(this).parents("form").submit();
	});

	$(".ajax").click(function(){
		var title=$(this).attr('title');
		var href=$(this).attr('rel');
		if(title!='' && title!=undefined) {
			if(!window.confirm(title)){
				return false;
			}
		}

		$.ajax({
			url		:	SITE_PATH+'ajax/'+href,
			success	:	function(data){MyAjax(data);}
		});
		return false;
	});

	$("#popupOverlay").click(function(){
		closePopup();
	});

	$("div.closePopup").click(function(){
		closePopup();
	});

	$(".popup").click(function(){
		$.ajax({
			url		:	SITE_PATH+'ajax/'+$(this).attr('rel'),
			success	:	function(data){
				$("#popupOverlay").show(function(){
					$("#popupOverlay").fadeTo('fast',0.8,function(){
						$("#popupContent").html(data);
						$("#popupWindow").show();
						$("#popupWindow").css("left", (getWindowWidth()-$("#popupTable").width())/2);
						var top=screen.height-$("#popupTable").height()/2;
						top=Math.min(top,100);
						$("#popupWindow").css("top",top);
						load_jquery();
					});
				});
			}
		});
	});

	$(".openVideo").click(function(){
		$("#popupOverlay").show(function(){
			$("#popupOverlay").fadeTo('fast',0.85,function(){
				var so = new SWFObject('http://www.medipac.fr/images/video.swf', "sotester", "320", "280", "8.0.23", "#000000", true);
				so.addParam("scale", "noscale");
				so.addParam("wmode","transparent");
				so.write("popupContent");
				$("#popupContent").prepend('<div style="text-align:right;cursor:pointer;margin-bottom:5px;" class="closePopup"><img src="'+IMG+'/fermer.gif" alt="X" /></div>');
				$("#popupWindow").show();
				$("#popupWindow").css("left", (getWindowWidth()-$("#popupTable").width())/2);
				var top=screen.height-$("#popupWindow").height()/2;
				top=Math.min(top,100);
				$("#popupWindow").css("top",top);
				load_jquery();
			});
		});
		return false;
	});

	$("#gid").change(function(){
		if($(this).val()==3){
			$("#formProRs").hide();
		}else{
			$("#formProRs").show();
		}
	});
}


/**
 *
 * @access public
 * @return void
 **/
function closePopup(){
	$("#popupWindow").hide('fast',function(){
		$("#popupOverlay").fadeTo('fast',0.1,function(){
			$("#popupOverlay").hide();
			$("#popupContent").html('void');
		});
	});
}
/**
 *
 * @access public
 * @return void
 **/
function MyAjax(data){
	var error='';
	var confirmation='';
	var ok=true;

	var t=$(data).children('rsp').children().get();

	for(var i=0;i<t.length;i++) {
		var e=t[i];
		var name=e.nodeName;

		if(name=='alert'){
			window.alert($(e).text());
		}else if(name=='confirmation') {
			var contentconfirm=$(e).text();
			confirmation+="<p>"+contentconfirm+"</p>";
		} else if(name=='error') {
			var errors=$(e).children().get();
			for(var j=0;j<errors.length;j++) {
				var err=errors[j];
				var ename=err.nodeName;
				var econtent=$(err).text();
				$("#"+ename).css('border','#f00 solid 1px');
				$("#"+ename).val('');
				error+="<p>"+econtent+"</p>";
				ok=false;
			}
		} else if(name=='content') {
			var contents=$(e).children().get();
			for(var k=0;k<contents.length;k++) {
				var content=contents[k];
				var cname=content.nodeName;
				var ccontent=$(content).text();
				if(ccontent=='') {
					$("#"+cname).html(ccontent);
				} else {
					$("#"+cname).html(ccontent);
				}
			}
		} else if(name=='ok') {
			var oks=$(e).children().get();
			for(var l=0;l<oks.length;l++) {
				var ok=oks[l];
				var oname=ok.nodeName;
				$("#"+oname).css('border','#b7a9a9 solid 1px');
			}
		} else if(name=='redirection') {
			var url=$(e).text();
			window.location=url;
		} else if(name=='show'){
			var oks=$(e).children().get();
			for(var l=0;l<oks.length;l++) {
				var ok=oks[l];
				var oname=ok.nodeName;
				$("#"+oname).show('fast');
			}
		}else if(name=='closePopup'){
			closePopup();
		}
	}

	if(error!=''){
		$("#error").html(error);
		$("#error").animate({height:26,opacity:1},2000,function(){
			$("#error").fadeTo(10000,1,function(){
				$("#error").animate({height:0,opacity:0},2000);
				$("#error").empty();
			});
		});
	}

	if(confirmation!=''){
		$("#confirmation").html(confirmation);
		$("#confirmation").animate({height:26,opacity:1},2000,function(){
			$("#confirmation").fadeTo(10000,1,function(){
				$("#confirmation").animate({height:0,opacity:0},2000);
				$("#confirmation").empty();
			});
		});
	}
	load_jquery();
	return ok;
}

function _fixPNG() {
	var images = $('img[@src*="png"]'), png;
	images.each(
		function() {
			png = this.src;
			this.src = IMG+'/spacer.gif';
			this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + png + "')";
		}
	);
}


/* ChainHandler, py Peter van der Beken
-------------------------------------------------------- */
function chainHandler(obj, handlerName, handler) {
	obj[handlerName] = (function(existingFunction) {
		return function() {
			handler.apply(this, arguments);
			if (existingFunction)
				existingFunction.apply(this, arguments);
		};
	})(handlerName in obj ? obj[handlerName] : null);
};
