jQuery.fn.extend({
	findPos : function() {
    	obj = $(this).get(0);
        var curleft = obj.offsetLeft || 0;
        var curtop = obj.offsetTop || 0;
        while (obj = obj.offsetParent) {
        	curleft += obj.offsetLeft
			curtop += obj.offsetTop
        }
        return {x:curleft,y:curtop};
	}
});

(function($){
    $.fn.vCenter = function(options) {
            var pos = {
            sTop : function() {
                return window.pageYOffset || $.boxModel && document.documentElement.scrollTop || document.body.scrollTop;
                },
            wHeight : function() {
		return document.documentElement.clientHeight;
/*                if ($.browser.opera || ($.browser.safari && parseInt ($.browser.version) > 520)) {
                    return window.innerHeight - (($(document).height() > window.innerHeight) ? getScrollbarWidth() : 0);
                        } else if ($.browser.safari) {
                                return window.innerHeight;
                        } else {
                    return $.boxModel && document.documentElement.clientHeight || document.body.clientHeight;
                    }*/
                }
            };

        return this.each(function(index) {
            if (index == 0) {
                    var $this = $(this);
                    var elHeight = $this.height();
                var posTop = ((pos.sTop() + (pos.wHeight() / 2) - (elHeight / 2) > 0) ? pos.sTop() + (pos.wHeight() / 2) - (elHeight / 2) : 0);
                    $this.css({
                        position: 'absolute',
                        marginTop: '0',
                        top: posTop
                    });
                }
            });
    };

    $.fn.hCenter = function(options) {
            var pos = {
            sLeft : function() {
                return window.pageXOffset || $.boxModel && document.documentElement.scrollLeft || document.body.scrollLeft;
                },
            wWidth : function() {
		return document.documentElement.clientWidth;
/*                if ($.browser.opera || ($.browser.safari && parseInt ($.browser.version) > 520)) {
                    return window.innerWidth - (($(document).width() > window.innerWidth) ? getScrollbarHeight() : 0);
                        } else if ($.browser.safari) {
                                return window.innerWidth;
                        } else {
                    return $.boxModel && document.documentElement.clientWidth || document.body.clientWidth;
                    }*/
                }
            };

        return this.each(function(index) {
            if (index == 0) {
                    var $this = $(this);
                    var elWidth = $this.width();
                var posLeft = ((pos.sLeft() + (pos.wWidth() / 2) - (elWidth / 2) > 0) ? pos.sLeft() + (pos.wWidth() / 2) - (elWidth / 2) : 0);
                    $this.css({
                        position: 'absolute',
                        marginLeft: '0',
                        left: posLeft
                    });
                }
            });
    };

    $.fn.Center = function(options) {
    	$(this).vCenter();
    	$(this).hCenter();
    };

})(jQuery);

function closeAnim(){
    jQuery('#flashTeaserOverlay').empty();
    jQuery('#flashTeaserOverlay').remove();
    jQuery('#flashTeaser').empty();
    jQuery('#flashTeaser').remove();
    jQuery('#mediaPlayer').css('visibility', 'visible');

}

function getTotalHeight() {

  // firefox is ok
  var height = document.documentElement.scrollHeight;

  // now IE 7 + Opera with "min window"
  if(document.documentElement.clientHeight > height ) {
    height  = document.documentElement.clientHeight;
  }
  // last for safari
  if(document.body.scrollHeight > height) {
    height = document.body.scrollHeight;
  }
  return height;
}

function Teaser(width, height, src){
    if(TgetCookie('ktotvflash_promo') == ''){

        var sizeheight = getTotalHeight();
        
	var content = '<div id="flashTeaserOverlay" style="position:absolute; z-index: 99; width: 100%; left: 0px; top: 0px; height: '+sizeheight+'px; background-color: #000; filter: alpha(opacity=80); -moz-opacity :0.8;opacity: 0.8;"></div><div id="flashTeaser" style="position:absolute;z-index: 100;"></div>';
        jQuery('body').append(content);

        var flash = new SWFObject(src, "flashPromo", width, height, "9", "");
        flash.addParam("wmode", "transparent");
        flash.addParam("scale", "noScale");
        flash.addParam("align", "TL");
        flash.write("flashTeaser");

        jQuery('#mediaPlayer').css('visibility', 'hidden');
        TsetCookie('ktotvflash_promo', 'yes', 1);
		if (jQuery("#flash_lightbox_duree").val() == '') {
			duree = 30000;
		} else {
			duree = parseInt(jQuery("#flash_lightbox_duree").val()) * 1000;
		}
        setTimeout('closeAnim()', duree);
    }
}

function TsetCookie(c_name,value,expiredays){
    var exdate=new Date();
    exdate.setDate(exdate.getDate()+expiredays);
    document.cookie=c_name+ "=" +escape(value)+
        ((expiredays==null) ? "" : ";expires="+exdate.toGMTString()) + "; path=/";
}
function TgetCookie(c_name){
    if(document.cookie.length>0){
        c_start=document.cookie.indexOf(c_name + "=");
        if (c_start!=-1){
            c_start=c_start + c_name.length+1;
            c_end=document.cookie.indexOf(";",c_start);
            if (c_end==-1) c_end=document.cookie.length;
            return
                unescape(document.cookie.substring(c_start,c_end));
        }
    }
    return "";
}

jQuery("#footer_item_1191145758687").click(function(){
	
	var title = jQuery("#title_site").val();
	var url = "http://www.ktotv.com";
	
	if(window.sidebar)
		window.sidebar.addPanel(title,url,"");
	else if(window.opera&&window.print){
		var elem=document.createElement('a');
		elem.setAttribute('href',url);
		elem.setAttribute('title',title);
		elem.setAttribute('rel','sidebar');
		elem.click();
	}
	else if(document.all)
		window.external.AddFavorite(url,title);
});

jQuery("#footer_item_1191145769890").click(function(){
	this.style.behavior='url(#default#homepage)'; this.setHomePage('http://www.ktotv.com');
});

$(document).ready(function(){

	var target = document.getElementById('ul_bloc_antenne');
	var taille = 0;
	var lastTaille = 0;
	
	jQuery("#ul_bloc_antenne li").each(function(){
		
		if (jQuery(this).children('a').hasClass("hover_emission")){
			target.scrollTop = taille-lastTaille;
		}else{
			lastTaille = jQuery(this).height();
			taille += jQuery(this).height();
		}
	});
	
	initAlt();
	initNav();
	initProgram();
  observeRechercheParEmissions();
  initSearch();



	$.ifixpng('/templates/ktotv/images/pixel.gif'); 
	$('ul#top-nav li ul li').ifixpng();

	if($("#user_iv").length) {
		$("div.overlay").show();
		$('object').css('visibility', 'hidden');
		$("#user_iv").parent().show();
		$('a.close').click(function(){
			$("#user_iv").parent().remove();
			$('div.overlay').remove();
			$('object').css('visibility', 'visible');
		});
	}
	
	if($("#pseudo.autocomplete").length) {
		var timeout;
		$("#pseudo.autocomplete").keyup(function(){
			if(timeout) {
				clearTimeout(timeout);
				timeout = null;
				return false;
			}
			timeout = setTimeout("autoComplete()", 100);
		});
	}

	if($('div.banners div.goodies_text_title').length) {
		$('div.banners div.goodies_text_title').click(function(){
			var obj = $(this).parent().children('div.text_doc');
			if($(obj).is('.show')) $(obj).slideUp('slow');
			else $(obj).slideDown('slow');
			$(obj).toggleClass('show');
		});
	}
	
	$('a.delete_js').click(function(){
		return deleteAnnonce(this.id.replace('a_',''));
	});

	$('a.delete_js').confirm({
		timeout:5000,
		dialogShow:'fadeIn',
		dialogSpeed:'slow',
		msg:'<p>Etes-vous sur de vouloir supprimer cette annonce ? ',
		buttons: {
		    ok:'<strong>Oui</strong>',
		    cancel:'<strong>Non</strong></p>',
		    separator:' / '
		}
	});
	
	switch ($("#type").val()) {
		case 'add':msgf='Ajouter cette personne à votre liste d\'amiss ? '; break;
		case 'delete':msgf='Supprimer cette personne à votre liste d\'amis ? '; break;
		default: msgf='Ajouter cette personne à votre liste d\'amis ? '; break;
	}

	$('a.addAmi_js').click(function(){
		return addAmis(this.id.replace('a_',''));
	});
	$('a.addAmi_js').confirm({
		timeout:5000,
		dialogShow:'fadeIn',
		dialogSpeed:'slow',
		msg:msgf,
		buttons: {
		    ok:'<strong>Oui</strong>',
		    cancel:'<strong>Non</strong>',
		    separator:' / '
		}
	});

	$("#login_form a#lostpassword").click(function(){
		$.ajax({
		   type: "POST",
		   data: "class=users&method=getLostForm",
		   url: "/request.php",
		   beforeSend: function() {
			$('body').append('<div class="overlay"></div>');
			$('object').css('visibility', 'hidden');
			$("div.overlay").show();
		   },
		   error:function(msg){ },
		   success:function(data){
			getLoadingBox('Mot de passe oublié', data, '', true);
			$('a.close').click(function(){
				$('#valid_msg').remove();
				$('div.overlay').remove();
				$('object').css('visibility', 'visible');
			});
		   }
		});
		return false;
	});

	$('a#create_blog').click(createBlog);
	$('a#create_blog').confirm({
        timeout:5000,
        dialogShow:'fadeIn',
        dialogSpeed:'slow',
        msg:'<p>Confirmez-vous la création de votre blog ?</p>',
        buttons: {
            ok:'<strong>Oui</strong>',
            cancel:'<strong>Non</strong>',
            separator:' / '
        }
    });

    jQuery("#sendMiniSondage").click(function(){ verifReponseMiniSondage(); });

	if(jQuery('div.emission_detail span.difuse strong#diffDans').length) {
		decompte();
	}

        if (jQuery("#flash_lightbox").length && jQuery("#flash_lightbox").val() != ''){
            Teaser(jQuery("#flash_lightbox_width").val(),jQuery("#flash_lightbox_height").val() ,jQuery("#flash_lightbox").val());
    	    jQuery('#flashTeaser').Center();
        }

	//Lancement du rafraîchissement automatique du bloc direct
	if ($("#videoPlayer div.flash").length) {
		launchRefresh();
	}
});

jQuery("#flashTeaser").ready(function() {
    jQuery('#flashTeaser').Center();
});

jQuery(window).resize(function(){
    jQuery('#flashTeaser').Center();
});


function createBlog() {
	$.ajax({
	   type: "POST",
	   data: "class=blog&method=createBlog",
	   url: "/request.php",
	   beforeSend: function() {
		   $('body').append('<div class="overlay"></div>');
		   $("div.overlay").show();
		   $('object').css('visibility', 'hidden');
		   getLoadingBox('Chargement', 'Le blog est en cours de création');
	   },
	   error:function(msg){},
	   success:function(data){
		   $('div.valid_msg_box').remove();
		   getLoadingBox('Résultat', data, '', true);
		   $('a#create_blog').parent().html('<a href="/blogs/'+$("#usr_login").html()+'" title="Votre blog" target="blog">1 nouveau commentaire sur votre blog</a>');
		   $('a.close').click(function(){
			   $('div.overlay').remove();
			   $('div#valid_msg').remove();
			   $('object').css('visibility', 'visible');
		   });
	   }
	});
}

function checkPattern(field_id, pattern) {
    if(!document.getElementById(field_id)) { return false; }
    var patterns = new Array();
    patterns['mail']    = /^(.+)@(.+)(\..+)$/;
    patterns['url_xml'] = /^((((ht|f)tp(s?)\:\/)?(\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&%\$#_]*)?)){0,255})$/;
    patterns['lien']    = /^((((ht|f)tp(s?)\:\/)?(\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&%\$#_]*)?)){0,255})$/;
    if(!patterns[pattern]) return true;
    var matched = document.getElementById(field_id).value.match(patterns[pattern]);
    return matched ? true : false;
}

function sendLostPass(isValid) {
	var id_field = 'lost_mail';
	if(!isValid) {
		$('#'+id_field).addClass('err');
		return false;
	} else {
		$.ajax({
		   type: "POST",
		   data: "class=users&method=sendLostPass&params[mail]="+$('#'+id_field).val(),
		   url: "/request.php",
		   beforeSend: function() {},
		   error:function(msg){},
		   success:function(data){
			$("#valid_msg div.photo-row").html(data);
		   }
		});
	}
}

function manageBoxes() {
	var inc = $(this).parent().parent().parent();
	if($(inc).is('.show')){ 
		$(inc).children('.included').slideUp('slow');
	}
	else {
		$(inc).children('.included').slideDown('slow');
	}
	$(inc).toggleClass('show');
}

function lookForm() {
	//jQuery("#mediaPlayer").css('visibility', 'hidden');
	jQuery("#mediaPlayer").addClass('hidden_player');
	$("#send_to_friend").jLook();	
}

function ajaxSubmit(form_id) {
    if(!validate(true,form_id)) return false;
	var serialized = $('form#'+form_id+' input[@type="text"]').serialize();
	serialized += '&'+$('form#'+form_id+' textarea').serialize();
    var send_type = $("#send_type").attr('value');
	var param_id = $('#elem_id').length ? '&elem_id='+$('#elem_id').val() : '';
    $.ajax({
       type: "POST",
       dataType: "html",
       data: "class=send_to_friend&method=send&doc="+$("#doc_src").attr('value')+"&"+serialized+"&params[send_type]="+send_type+param_id,
       url: "/request.php",
       beforeSend: function() {
            $("#ibox_content").html('<p><img src="/templates/ktotv/images/loading.gif" alt="Loading ..." /></p>');
       },
       error:function(msg){ alert( "Error !: " + msg ); },
       success:function(data){ $("#ibox_content").html('<p>'+data+'</p>'); }
    });
}

/* Quand est-ce que microsoft supportera le DOM corectement ? */
function hasAttribute(attribute) {
    var has=this.getAttribute(attribute);
    return (has==null) ? false : true;
}

function validateGetValueOf(o) {
    var value="";
    if(typeof(o)=="object") {
        switch(o.type) {
            case "select":
                var i=o.options.SelectedIndex;
            value=(i!=-1) ? o.options[i].value : "";
            break;
            case "chackbox":
			case "radio":
			case "input":
			case "textarea":
			case "file":
            default:
                return o.value;
        }
    }
    return value;
}


/*  validate {{{ */
function validate(hidealert) {
    try {
        var argv = validate.arguments;
        var argc = argv.length;
        var str = "";
        var form_id = "";
        var min_reqs=max_reqs=null;
        if(!document.getElementsByTagName) {
            alert("Sorry! Your browser does not support the W3C HTML DOM!");
            return false;
        }
        if(argc == 2) form_id = argv[1];
        var forms = document.getElementsByTagName('form');
        for(var f=0; f<forms.length;f++) {
            if(form_id != '' && form_id != forms[f].id) continue;
            var e=forms[f].elements;
            for(var i = 0; i < e.length; i++) {
                if(!e[i].hasAttribute) e[i].hasAttribute=hasAttribute;
                if(!e[i].hasAttribute('pattern')) continue;
                var pattern = new RegExp(e[i].getAttribute('pattern'));
                var value = validateGetValueOf(e[i]);
                if (pattern != '/null/') {
                    var offendingChar = value.match(pattern);
                    if(offendingChar == null) {
                        str+= (e[i].hasAttribute('errorMsg')) ?
                            e[i].getAttribute('errorMsg') + "\n" :
                            "Parse error in form ! --"+e[i].name+"\n";
                        var label = document.getElementById('lbl_'+e[i].id);
                        if(label) $(label).addClass('error');
                        continue;
                    }
                    min_reqs= (e[i].hasAttribute('min')) ? e[i].getAttribute('min') : "";
                    max_reqs= (e[i].hasAttribute('max')) ? e[i].getAttribute('max') : "";
                    if(typeof(e[min_reqs])=="object")
                        min_reqs=validateGetValueOf(e[min_reqs]);
                    if(typeof(e[max_reqs])=="object")
                        min_reqs=validateGetValueOf(e[max_reqs]);
                    if(min_reqs!="") min_reqs=parseFloat(min_reqs);
                    if(max_reqs!="") max_reqs=parseFloat(max_reqs);
                    if ((min_reqs!="" && value < min_reqs) || (max_reqs!="" && value > max_reqs)) {
                        str+= (e[i].hasAttribute('MinMaxerrorMsg')) ?
                            e[i].getAttribute('MinMaxerrorMsg') + "\n" :
                            "Parse error in form : "+e[i].name +": "+min_reqs+"<="+value+"<="+max_reqs+"\n";
                        var label = document.getElementById('lbl_'+e[i].id);
                        if(label) $(label).addClass('error');
                    } else {
                        var label = document.getElementById('lbl_'+e[i].id);
                        if(label) $(label).removeClass('error');
                        //if(e[i].getAttribute('type') != 'checkbox') e[i].className='inputValid';
                    }
                }
            }
        }
        if (str != "" && str!=null) {
            if (hidealert == 1) {
                return false;
            } else {
                alert(str);
                return false;
            }
		} else {
			if(argc == 3 && argv[0].toLowerCase() == 'checkpass') {
				if(checkPass(argv[1], argv[2]) == false) {
					document.getElementById(argv[1]).className = 'inputError';
					document.getElementById(argv[2]).className = 'inputError';
					alert("Merci de saisir les deux même mots de passe");
					return false;
				}
			}
			return true;
		}
    } catch(err) {alert(err); }
}
/*  }}} */


function checkPass(firstPass, SecPass) {
    return ($('#'+firstPass).val()  != '' && $('#'+firstPass).val() == $('#'+SecPass).val() ? true : false );
}

initProgram = function() {
	var navRoot = document.getElementById("program");
	if (navRoot) {
		var lis = navRoot.getElementsByTagName("div");

		for (var i=0; i<lis.length; i++) {
			if (lis[i].className.indexOf("dotted-box") != -1) {
				lis[i].onclick = function() {
					if (this.className.indexOf("active") != -1) {
						this.className = this.className.replace("active", "");
					} else {
						this.className += " active";
					}
				}
				lis[i].onmouseover = function() {
					if (this.className.indexOf("hover") == -1) {
						this.className += " hover";
					}
				}
				lis[i].onmouseout = function() {
					this.className = this.className.replace("hover", "");
				}
			}
		}
	}
}

initAlt = function() {
	$('.video-tools li.first').hover( function() {
			var posImg = $('img:first',$(this)).findPos();
			var posToolbar = $(this).parent().findPos();
			$('div:first',$(this)).css("left", posImg.x-posToolbar.x+6);
			$('div:first',$(this)).show();
			}, function() {
			$('div:first',$(this)).hide();
			}
	); 
}

function initSearch(){
  var toggle = true;
  $("div.main div.block li.plus").each(function() {

    $(this).children("ul.subMenu").children("li.arrow a").click(function() {
      toggle = false;
      return true;
    });

		if($(this).children("ul.subMenu").length > 0) {
			$(this).children("ul.subMenu").hide();
			$(this).click(function() {
        if(toggle){
  				$(this).children("ul.subMenu").slideToggle("fast");
  			  $(this).toggleClass('plus');
        } 
        toggle = true;
			});
		}
  });
}

function observeRechercheParEmissions(){
  $("#recherche_par_emission_button").click(function(){
     $("#findEmission form").attr("action",$("#recherche_par_emission_select option:selected").val());
  });
}


function initNav() {
	var actif_element = $("#m_"+$('#hover_element').val()).attr('id');

	if(!$('#'+actif_element).hasClass('active')) {
		$('#'+actif_element).addClass('active');
	}

	$("ul.mainMenu li.linkKeeper").each(function() {
		$(this).mouseover(function(){
			$(this).addClass('on');
		});
		$(this).mouseout(function(){
			// On n'enlève pas la class de l'élément sélectionné
			if($(this).children("a").attr("href") && $(this).children("a").attr("href") != window.location.pathname) {
				$(this).removeClass('on');
			}
		});
		
		//Accordeon
		if($(this).children("ul.subMenu").length > 0) {
			// On ne masque pas le bloc sélectionné
			$(this).children("ul.subMenu:not(:parent[id=m_" + $("#hover_element").val() + "])").hide();
			
			$(this).children("a").click(function() {
				$(this).parent().siblings().children("ul.subMenu").slideUp("slow");
				$(this).parent().siblings().removeClass('active');
				$(this).next("ul").slideToggle("slow");
				return false;
			});
		}
	});
}

function resetVal(elem_id, defVal) { if($('#'+elem_id).val() == defVal) $('#'+elem_id).attr('value', ''); }
function restoreVal(elem_id, defVal) { if($('#'+elem_id).val() == '') $('#'+elem_id).attr('value', defVal); }

getScrollPos = function() {
    var docElem = document.documentElement;
    var scrollX = self.pageXOffset || (docElem&&docElem.scrollLeft) || document.body.scrollLeft;
    var scrollY = self.pageYOffset || (docElem&&docElem.scrollTop) || document.body.scrollTop;
	var arrayPageScroll = new Array(parseInt(scrollX),parseInt(scrollY));
    return arrayPageScroll;
}

getPageSize = function() {
    var docElem = document.documentElement
    var width = self.innerWidth || (docElem&&docElem.clientWidth) || document.body.clientWidth;
    var height = self.innerHeight || (docElem&&docElem.clientHeight) || document.body.clientHeight;
	var ret = new Array(parseInt(width),parseInt(height));
    return ret;
}

getElementSize = function(elem) {
    var width = elem.offsetWidth ||  elem.style.pixelWidth;
    var height = elem.offsetHeight || elem.style.pixelHeight;
	var ret = new Array(parseInt(width),parseInt(height));
    return ret;
}

function getLoadingBox(title, content, classnames, close_link) {
	try {
		title = (title != undefined) ? title : 'Chargement';
		content = (content != undefined) ? content : 'Le formulaire est en cours de validation';
		classnames = (classnames != undefined) ? classnames : ' valid_msg_box'; 
		close_link = (close_link != undefined) ? close_link : false; 
		var loading_box = '<div id="valid_msg" class="validate_msg'+classnames+'" style="display: block;">'+
			'<input type="hidden" id="user_iv" />'+
			'<div class="right-gray">'+
				'<div class="top-right-gray">'+
					'<div class="bottom-right-gray">'+
						'<div class="orange-title">'+
							'<div class="top-orange-title">'+
								'<div class="bottom-orange-title">'+
									'<h3>'+title+'</h3>'+
								'</div>'+
							'</div>'+
						'</div>'+
						'<div class="photo-row">'+
							content+
						'</div>'+
						(close_link ? '<a class="close">Fermer</a>' : '')
						'<br/>'+
					'</div>'+
				'</div>'+
			'</div>'+
		'</div>';
		$('#mediaPlayer').hide();
		$('body').append(loading_box);

		var scrollPos = getScrollPos();
		var pageSize = getPageSize();
		var emSize = getElementSize(document.getElementById('valid_msg'));
		var x = Math.round(pageSize[0]/2) - (emSize[0] /2) + scrollPos[0];
		var y = Math.round(pageSize[1]/2) - (emSize[1] /2) + scrollPos[1];
		if(scrollPos[0] > 0 || scrollPos[1] > 0) {
			$('div.validate_msg.valid_msg_box').css('top', y);
			$('div.validate_msg.valid_msg_box').css('left', x);
		}
	} catch(err) {}
}

function valid_form (form_id) {
	var serialized = '';
	if($('form#'+form_id+' input').length) serialized += $('form#'+form_id+' input').serialize();
	if($('form#'+form_id+' textarea').length) serialized += '&'+$('form#'+form_id+' textarea').serialize();
	if($('form#'+form_id+' select').length) serialized += '&'+$('form#'+form_id+' select').serialize();
	
	$.ajax({
       type: "POST",
       data: 'form_id='+form_id+'&'+serialized,
       url: "/valid_form.php",
       beforeSend: function() { getLoadingBox(); },
       success:function(xml){
		   	$('div.valid_msg_box').remove();
			$('#mediaPlayer').show();
			if($(xml).find('fields').length == 0) {
				$('form#'+form_id).submit();
				return true;
			}
		   	$(xml).find('fields').each(function(){
				var hasError = ($(this).find('error').length > 0);
				if(!hasError) {
					$('form#'+form_id).submit();
					return true;
				}
				$(this).children().each(function(){
					var field_id = $(this).attr('field');
					var isValid = ($(this).attr('errLib') == undefined);
					$('#valid_'+field_id).remove();
					$('#err_'+field_id).remove();

					if(!isValid && $('#'+field_id).length) {

						var lib = $(this).attr('errLib');
						$('#'+field_id).removeClass('validField');
						$('#'+field_id).addClass('errField');
						$('#'+field_id).before('<div id="err_'+field_id+'" class="errLib">'+lib+'</div>');

					} else if($('#'+field_id).length) {

						$('#'+field_id).removeClass('errField');
						$('#'+field_id).addClass('validField');
						$('#'+field_id).before('<div id="valid_'+field_id+'" class="validPic" />');

					}
				});
			});
			$('.errField').mouseover(function(){ $('#err_'+$(this).attr('id')).css('display', 'block'); });
			$('.errField').mouseout(function(){ $('#err_'+$(this).attr('id')).css('display', 'none'); });
			$('.validField').mouseover(function(){ return true; });
			$('.validField').mouseout(function(){ return true; });
			if($('#login').length && typeof('checkLogin' == 'function')) { lastLogin = ''; checkLogin('login'); }
	   }
    });
	return false;
}

function getCoords () {
	if (document.all) {
		if (!document.documentElement.scrollLeft) scrollX = document.body.scrollLeft;
		else scrollX = document.documentElement.scrollLeft;

		if (!document.documentElement.scrollTop) scrollY = document.body.scrollTop;
		else scrollY = document.documentElement.scrollTop;
	}   else {
		scrollX = window.innerHeight;
		scrollY = window.innerWidth;
	}
	arrayPageScroll = new Array(parseInt(scrollX),parseInt(scrollY));
    return arrayPageScroll;
}

function verifReponseMiniSondage(){
	
	if (jQuery("#typeQuestion").val() < 3){
		if (jQuery("form#miniSondage input[@checked]").length){
			recordMiniSondage();
		}
		else{
			alert('Veuillez selectionner votre réponse.');
		}
	}
	else{
		if ((jQuery("#sond").val()).lenght > 5){
			recordMiniSondage();
		}
		else{
			alert('Merci de completer la réponse');
		}
	}
}

function recordMiniSondage(){
	var idSondage = jQuery("#idSondage").val();
	var serial = jQuery("form#miniSondage input").serialize();

	load('reponse');
	jQuery.ajax({
		type: "POST",
		dataType: "html",
		data: serial+"&script=recordMiniSondage&idSondage="+idSondage,
		url: "/JX_sondage.php",
		error:function(msg){alert('Erreur de traitement'); },
		success:function(data){
			jQuery("#reponse").empty();
			jQuery("#reponse").append(data);
		}
	});
}

function inscriptionNewsletter(){
	var mail = $('#email').val();
	var format = $('#format').val();
	var liste = $('#liste').val();
	var action = $('#action').val();
	$.ajax({
		type: "POST",
		dataType: "html",
		data: "email="+mail+"&format="+format+"&liste="+liste+"&action="+action,
		url: "/inscriptionNewsletter.php",
		beforeSend:function(){
			$('body').append('<div class="overlay"></div>');
			$("div.overlay").show();
			$('object').css('visibility', 'hidden');
			getLoadingBox('Inscription à la newsletter', '<div id="loadInscriptNews"><img class="loadInscriptNews" src="/templates/ktotv/images/loading.gif" alt="Loading ..." />Chargement...</div>', '', false);
		},
		error:function(msg){ alert( "Error !: " + msg ); },
		success:function(data){
			$('#valid_msg').remove();	
			getLoadingBox('Inscription à la newsletter', data, '', true);
			$('a.close').click(function(){
				$('#valid_msg').remove();
				$('div.overlay').remove();
				$('object').css('visibility', 'visible');
			});
		}
	});
}

function load(id, width){
	if (width == ''){
		width = 15;
	}
	jQuery('#'+id).empty();
	jQuery('#'+id).html('<center><img src="/photo/images_default/ajax-loader.gif" width="'+width+'"> Veuillez patientez ...</center>');
}

function launchProgram(url_flux) {
	if(url_flux == '' || url_flux == undefined) return false;
	url_flux = 'http://'+url_flux;
	var obj = '<div id="prog_vod"><object type="application/x-mplayer2" width="352" height="340" data="'+url_flux+'">';
	obj += '<param name="filename" value="'+url_flux+'"/></object>';
	obj += '<div id="player_button"><a href="#" onclick="makeFullScreen();return false;">Mode plein écran</a><br/></div></div>';
	jQuery('div.visual').html(obj);
}

function isObject(a) { return (a && typeof a == 'object') || isFunction(a); }
function isFunction(func) { return (typeof func == 'function'); }
function trim(str) { return str.replace(/(^\s*)|(\s*$)/g,''); }

function makeFullScreen() {
	try {
		if(jQuery.browser.msie){
			if (document.getElementById('mediaPlayer').playState == 3) 
			{
				document.getElementById('mediaPlayer').fullScreen=true;
				mediaPlayer.fullScreen = 'true';
			}
		}else{
			detectActiveXPlugIn(false);
			document.getElementById('mediaPlayer').fullScreen=true;
		}
	} catch(err) {}
}

var xpi=null;
function detectActiveXPlugIn(auto) {
	var Found=false;
	/*Si ce n'est pas Firefox*/
	if (navigator.userAgent.indexOf('Firefox')==-1)
		return false; /*on arrete la fonction*/
	/*on fait une boucle qui va lister les diffÃ©rents plugins installés*/
	
	for (i in navigator.plugins) {
		var nv=new Object;
		nv = navigator.plugins[i];
		try {
			//on vÃ©rifi pour chaque extension si le type est celui que l'on recherche
			if (nv[0] && nv[0].type.toLowerCase()=="application/x-oleobject") {
				Found=true;
				return true;
			}
		} catch (ex) {
			Found=false;
		}
	}
	/*s'il n'est pas trouvÃ© on enregistre le lien d'installation du plugin en fonction de la version du navigateur du visiteur*/
	if (!Found) {
	
		$('body').append('<div class="overlay"></div>');
		$("div.overlay").show();
		$('object').css('visibility', 'hidden');

		getLoadingBox('Affichage en plein ecran', 
					  'Pour afficher la vidéo en plein écran, double cliquez sur la fenêtre du player.', '', true);
	
		$('a.close').click(function(){
			$('div.overlay').remove();
			$('div#valid_msg').remove();
			$('object').css('visibility', 'visible');
			$('object').removeAttr('style');
		});

	}
}

function getInfosBlocDirect() {
    $.ajax({
       type: "POST",
       data: "class=params&method=getInfosBlocDirect",
       url: "/request.php",
       success:function(data){
			var json_data_object = eval("(" + data + ")");
			$("#videoPlayer div.header h2").html(json_data_object['head']);
			$("#videoPlayer div.title").html(json_data_object['title']);

			//On ne rafraîchit pas le player s'il ne doit pas être masqué
			if (json_data_object['type'] != $(":input[name='type']").val() || json_data_object['type'] != 'direct') {
				$("#videoPlayer div.flash").html(json_data_object['content']);
			}
			$(":input[name='type']").val(json_data_object['type']);
			$(":input[name='timeHidden']").val(json_data_object['tz_diff']);

			/*if ($('#mediaPlayer').length) {
				$('#mediaPlayer').width('295px');
				$('#mediaPlayer').height('250px');
			}*/

			//On relance la mise à jour pour la fin de l'émission, avec un maximum de 20 minutes
			launchRefresh();
       }
    });
}

function launchRefresh() {
	var delaiMax = 20*60;
	var delaiFin = parseInt($('#timeHidden').val());
	if (delaiFin > delaiMax) {
		delaiFin = delaiMax;
	}
	setTimeout('getInfosBlocDirect();', delaiFin*1000);
}
