﻿/*
 * jQuery hashchange event - v1.3 - 7/21/2010
 * http://benalman.com/projects/jquery-hashchange-plugin/
 * 
 * Copyright (c) 2010 "Cowboy" Ben Alman
 * Dual licensed under the MIT and GPL licenses.
 * http://benalman.com/about/license/
 */
(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){r||l(a());n()}).attr("src",r||"javascript:0").insertAfter("body")[0].contentWindow;h.onpropertychange=function(){try{if(event.propertyName==="title"){q.document.title=h.title}}catch(s){}}}};j.stop=k;o=function(){return a(q.location.href)};l=function(v,s){var u=q.document,t=$.fn[c].domain;if(v!==s){u.title=h.title;u.open();t&&u.write('<script>document.domain="'+t+'"<\/script>');u.close();q.location.hash=v}}})();return j})()})(jQuery,this);

function str_repeat(i, m) { for (var o = []; m > 0; o[--m] = i); return(o.join('')); }

function sprintf () {
  var i = 0, a, f = arguments[i++], o = [], m, p, c, x;
  while (f) {
    if (m = /^[^\x25]+/.exec(f)) o.push(m[0]);
    else if (m = /^\x25{2}/.exec(f)) o.push('%');
    else if (m = /^\x25(?:(\d+)\$)?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(f)) {
      if (((a = arguments[m[1] || i++]) == null) || (a == undefined)) throw("Too few arguments.");
      if (/[^s]/.test(m[7]) && (typeof(a) != 'number'))
        throw("Expecting number but found " + typeof(a));
      switch (m[7]) {
        case 'b': a = a.toString(2); break;
        case 'c': a = String.fromCharCode(a); break;
        case 'd': a = parseInt(a); break;
        case 'e': a = m[6] ? a.toExponential(m[6]) : a.toExponential(); break;
        case 'f': a = m[6] ? parseFloat(a).toFixed(m[6]) : parseFloat(a); break;
        case 'o': a = a.toString(8); break;
        case 's': a = ((a = String(a)) && m[6] ? a.substring(0, m[6]) : a); break;
        case 'u': a = Math.abs(a); break;
        case 'x': a = a.toString(16); break;
        case 'X': a = a.toString(16).toUpperCase(); break;
      }
      a = (/[def]/.test(m[7]) && m[2] && a > 0 ? '+' + a : a);
      c = m[3] ? m[3] == '0' ? '0' : m[3].charAt(1) : ' ';
      x = m[5] - String(a).length;
      p = m[5] ? str_repeat(c, x) : '';
      o.push(m[4] ? a + p : p + a);
    }
    else throw ("Huh ?!");
    f = f.substring(m[0].length);
  }
  return o.join('');
}

function log(s) {
  return;
  var date = new Date();
  var log = document.getElementById("log");
  if (!log) {
    var _log = document.createElement("div");
    _log.id = "log";
    _log.style.position = "fixed";
    _log.style.right = "10px";
    _log.style.top = "50px";
    _log.style.zIndex = "100000";
    _log.style.width = "400px";
    _log.style.height = "300px";
    _log.style.border = "1px solid #000000";
    _log.style.overflow = "auto";
    _log.style.font = "normal 10px lucida console, arial, sans-serif";
    _log.style.color = "#ffffff";
    _log.style.textAlign = "left";
    _log.style.backgroundColor = "#777777";
    document.body.appendChild(_log);
    log = _log;
  }
  var log_entry = document.createElement("div");
  log_entry.innerHTML = sprintf("%02d:%02d:%02d.%03d : %s", date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds(), s)+"<br/>\n"
  log.appendChild(log_entry);
  log.scrollTop = log.scrollHeight;
  return;
}
function tostr(o) {
  var s = "";
  for (var i in o) s+=i+"="+(typeof o[i] != "function"?o[i]:"function")+"<br/>\n";
  log(s);
}

//function log(s) { return; }
//function tostr(o) { return; }

window.HN = window.HN || {
  browser: (function(){
    var ua = navigator.userAgent.toLowerCase();
    var b = {
      version: (ua.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [])[1],
      chrome: /applewebkit/.test( ua ) && /safari/.test( ua ) && /chrome/.test( ua ),
      safari: /applewebkit/.test( ua ) && /safari/.test( ua ) && !/chrome/.test( ua ),
      opera: /opera/.test( ua ),
      msie: /msie/.test( ua ) && !/opera/.test( ua ),
      mozilla: /mozilla/.test( ua ) && !/(compatible|webkit)/.test( ua ),
      firefox: /firefox/.test( ua ),
      firefoxVer: (ua.match( /.+firefox\/([\d.]+)/ ) || [])[1],
      windows: /windows/.test( ua ),
      macintosh: /macintosh/.test( ua ),
      windows_xp: /windows nt 5.1/.test( ua ),
      windows_vista: /windows nt 6.0/.test( ua ),
      windows_seven: /windows nt 6.1/.test( ua ),
      iphone: /iphone/.test( ua ) && /applewebkit/.test( ua ),
      ipad: /ipad/.test( ua ) && /applewebkit/.test( ua )
    };
    if (b.msie && b.version < 9) {
      if (/trident\/5/.test( ua ))
        b.version = 9;
      else if (/trident\/4/.test( ua ))
        b.version = 8;
    }
    return b;
  }()),
  url: {
    params: (function(){var p={};document.location.search.substring(1).replace(/([^&]+)=([^&]+)/gi,function(s,$1,$2){p[$1]=$2});return p;}())
  },
  arrayRemove: function(array, from, to){
    var rest = array.slice((to || from) + 1 || array.length);
    array.length = from < 0 ? array.length + from : from;
    return array.push.apply(array, rest);
  }
};


if (HN.browser.msie && HN.browser.version < 7) {
  window.location.href = "http://explore.live.com/windows-live-messenger";
}

$.extend($.easing, {
  easeInQuart: function (x, t, b, c, d) {
    return c*(t/=d)*t*t*t + b;
  },
  easeOutQuart: function (x, t, b, c, d) {
    return -c * ((t=t/d-1)*t*t*t - 1) + b;
  },
  easeOutExpo: function (g, h, f, j, i) {
     return (h == i) ? f + j : j * (-Math.pow(2, -10 * h / i) + 1) + f
  }
});

HN.MS = HN.MS || {};

HN.MS.MessengerHD = function(){
  var me = this;
  me.player = null;
  me.curListOffset = 0;
  me.animated = false;
  me.videos = [
	{
      name: "Vous pouvez tout dire en message vidéo",
      url: "http://www.dailymotion.com/embed/video/xnbk9c_papymamy29_fun",
      id: "xm8rud",
      ref_name: "message-video-papimamie",
      thumbnail: "/france/messenger/resources/images/thumbnail_papi.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "SELECTIONNEZ ...", desc: "Choisissez le contact à qui vous voulez laisser un message vidéo et placez votre curseur dessus", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "CLIQUEZ ...", desc: "Dans le menu déroulant, cliquez sur 'Envoyer un message vidéo'", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "ENREGISTREZ ...", desc: "Vous n'avez plus qu'à parler pour enregistrer votre message ! Puis cliquez sur 'Envoyer'", link: "http://explore.live.com/messenger-video-call?T1=t4" }
        ]
      }
    },	   
	{
      name: "Faites vos déclarations par message vidéo",
      url: "http://www.dailymotion.com/embed/video/xnrkhf_laura-a-12_na",
      id: "xnrkhf",
      ref_name: "Laura_a_12",
      thumbnail: "/france/messenger/resources/images/thumbnail_laura.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "SELECTIONNEZ ...", desc: "Choisissez le contact à qui vous voulez laisser un message vidéo et placez votre curseur dessus", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "CLIQUEZ ...", desc: "Dans le menu déroulant, cliquez sur 'Envoyer un message vidéo'", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "ENREGISTREZ ...", desc: "Vous n'avez plus qu'à parler pour enregistrer votre message ! Puis cliquez sur 'Envoyer'", link: "http://explore.live.com/messenger-video-call?T1=t4" }
        ]
      }
    },
	{
      name: "Vous aussi, laissez un message vidéo !",
      url: "http://www.dailymotion.com/embed/video/xnbufy_kevinlover-77_fun",
      id: "xnbufy",
      ref_name: "kevinlover-77_fun",
      thumbnail: "/france/messenger/resources/images/thumbnail_kevin.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "SELECTIONNEZ ...", desc: "Choisissez le contact à qui vous voulez laisser un message vidéo et placez votre curseur dessus", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "CLIQUEZ ...", desc: "Dans le menu déroulant, cliquez sur 'Envoyer un message vidéo'", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "ENREGISTREZ ...", desc: "Vous n'avez plus qu'à parler pour enregistrer votre message ! Puis cliquez sur 'Envoyer'", link: "http://explore.live.com/messenger-video-call?T1=t4" }
        ]
      }
    },
	{
      name: "Faites vos confidences grâce au message vidéo",
      url: "http://www.dailymotion.com/embed/video/xne927_chouchou-bidou_fun",
      id: "xne927",
      ref_name: "chouchou-bidou_fun",
      thumbnail: "/france/messenger/resources/images/thumbnail_chouchou.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "SELECTIONNEZ ...", desc: "Choisissez le contact à qui vous voulez laisser un message vidéo et placez votre curseur dessus", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "CLIQUEZ ...", desc: "Dans le menu déroulant, cliquez sur 'Envoyer un message vidéo'", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "ENREGISTREZ ...", desc: "Vous n'avez plus qu'à parler pour enregistrer votre message ! Puis cliquez sur 'Envoyer'", link: "http://explore.live.com/messenger-video-call?T1=t4" }
        ]
      }
    },
	{
      name: "Où que vous soyez, laissez un message vidéo",
      url: "http://www.dailymotion.com/embed/video/xne946_jeangerard69_fun",
      id: "xne946",
      ref_name: "Jeangerard69",
      thumbnail: "/france/messenger/resources/images/thumbnail_jean.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "SELECTIONNEZ ...", desc: "Choisissez le contact à qui vous voulez laisser un message vidéo et placez votre curseur dessus", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "CLIQUEZ ...", desc: "Dans le menu déroulant, cliquez sur 'Envoyer un message vidéo'", link: "http://explore.live.com/messenger-video-call?T1=t4" },
          { title: "ENREGISTREZ ...", desc: "Vous n'avez plus qu'à parler pour enregistrer votre message ! Puis cliquez sur 'Envoyer'", link: "http://explore.live.com/messenger-video-call?T1=t4" }
        ]
      }
    },
	  {
      name: "Annoncer un evenement sur messenger",
      url: "http://www.dailymotion.com/embed/video/xmd6fg_microsoft-wedding_people",
      id: "xmd6fg",
      ref_name: "microsoft-wedding_people",
      thumbnail: "/france/messenger/resources/images/thumbnail_3.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "TCHATTEZ", desc: "Avec tous vos proches, qu’ils soient sur <strong>Messenger</strong> ou <strong>Facebook</strong>", icon: "", link: "http://explore.live.com/messenger" },
          { title: "PARTAGEZ", desc: "Pendant votre discussion, envoyez vos photos et vidéos !", icon: "", link: "http://explore.live.com/messenger" },
          { title: "SOYEZ MOBILES", desc: "Retrouvez tous vos <em>contacts</em> Messenger sur votre téléphone", icon: "", link: "http://explore.live.com/messenger" }
        ]
      }
    },
    {
      name: "Tchattez avec vos amis facebook",
      url: "http://www.dailymotion.com/embed/video/xoha6q_tchattez-avec-vos-amis-sur-facebook_tech",
      id: "xmd6u7",
      ref_name: "facebook-sur-messenger",
      thumbnail: "/france/messenger/resources/images/thumbnail_2.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "CONNECTER ...", desc: "Au bas de la fenêtre Messenger principale, cliquez sur Ajouter, puis sur Connecter d'autres services et choisissez Facebook", icon: "", link: "http://explore.live.com/messenger-social?T1=t3" },
          { title: "DISCUTER ...", desc: "Sélectionnez l'option Discuter avec mes amis Facebook dans Messenger, et suivez ensuite le guide", icon: "", link: "http://explore.live.com/messenger-social?T1=t3" },
          { title: "PROFITER ...", desc: "Profitez ensuite de tous les avantages Messenger pour vos conversations Facebook", icon: "", link: "http://explore.live.com/messenger-social?T1=t3" }
        ]
      }
    },
	{
      name: "Messenger est sur Windows Phone",
      url: "http://www.dailymotion.com/embed/video/xmuiqs_messenger-est-sur-windows-phone_tech",
      id: "xmuiqs",
      ref_name: "messenger-sur-windows-phone",
      thumbnail: "/france/messenger/resources/images/thumbnail_wp.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "COMMENCER ...", desc: "Commencez une conversation par SMS", link: "http://www.microsoft.com/windowsphone/fr-FR/features/default.aspx#Conversations" },
          { title: "PROLONGER ...", desc: "Continuez cette même conversation sur Facebook", link: "http://www.microsoft.com/windowsphone/fr-FR/features/default.aspx#Conversations" },
          { title: "TERMINER ...", desc: "Et finissez-la sur Windows Live Messenger dans la même fenêtre de conversation", link: "http://www.microsoft.com/windowsphone/fr-FR/features/default.aspx#Conversations" }
        ]
      }
    },
	{
      name: "Le tchat vidéo, pour tout partager en live",
      url: "http://www.dailymotion.com/embed/video/xn0bje_discutez-en-video-hd_tech",
      id: "xn0bje",
      ref_name: "tchat-video",
      thumbnail: "/france/messenger/resources/images/thumbnail_videohd.jpg",
      block: {
        type: me.TYPE_STEPS,
        items: [
          { title: "Commencer ...", desc: "Clic droit sur le contact, puis « Démarrer une conversation vidéo » ou pendant votre tchat, cliquez sur « Conversation vidéo »", link: "http://explore.live.com/messenger-video-call" },
          { title: "Masquez le volet ...", desc: "En cliquant sur « Fermer les messages instantanés » en haut à droite de la fenêtre de conversation", link: "http://explore.live.com/messenger-video-call" },
          { title: "Affichez la vidéo ...", desc: "En cliquant sur « plein écran » en haut à droite de la fenêtre de conversation", link: "http://explore.live.com/messenger-video-call" }
        ]
      }
    }
  ];
  me.curVideoIndex = null;
  var videoToPlay = 0,
    canPlayVideo = true;
  
  me.videosIdI = (function(){
    var idi = {};
    for (var i=0; i<me.videos.length; i++)
      idi[me.videos[i].id] = i;
    return idi;
  }());
  
  this.videoBlockInit = function(){
    $("#video_list").empty().css("width", me.videos.length*200);
    var speed = 150;
    $(me.videos).each(function(i,v){
      $("<li/>", {
        "html": "<a class=\"frame\" href=\"#"+v.id+"_"+v.ref_name+"\">"+
                  "<img class=\"vmaib\" src=\""+v.thumbnail+"\" alt=\""+v.name+"\"/><div class=\"play\"></div>"+
                "</a>"+
                "<div class=\"title\">"+v.name+"</div>",
        "mouseenter": function(){
          $(this)
            .find(".frame").stop().animate({ top: "0" }, speed).end()
            .find(".title").stop().animate({ opacity: 1 }, speed);
        },
        "mouseleave": function(){
          $(this)
            .find(".frame").stop().animate({ top: "20px" }, speed).end()
            .find(".title").stop().animate({ opacity: 0 }, speed);
        }
      }).appendTo("#video_list");
    });
    $("#prev-videos").click(function(){
      if (me.curListOffset > 0) {
        me.curListOffset--;
        $("#video_list").animate({ left: -(me.curListOffset*179)+"px" });
        $("#prev-videos")[me.curListOffset <= 0 ? "addClass" : "removeClass"]("disabled");
        $("#next-videos")[me.curListOffset < me.videos.length-4 ? "removeClass" : "noop"]("disabled");
      }
    });
    $("#next-videos").click(function(){
      if (me.curListOffset < me.videos.length-4) {
        me.curListOffset++;
        $("#video_list").animate({ left: -(me.curListOffset*179)+"px" });
        $("#next-videos")[me.curListOffset >= me.videos.length-4 ? "addClass" : "removeClass"]("disabled");
        $("#prev-videos")[me.curListOffset > 0 ? "removeClass" : "noop"]("disabled");
      }
    });
     if (me.videos.length <= 4)
      $("#next-videos").addClass("disabled");
  },
  this.htmlInit = function(){
  };
  this.domInit = function(){
    // player initialisation
    me.player = $("#player");
    
    // messenger news
    $.ajax({
      url: "XmlHandler.ashx",
      dataType: "xml",
      error: function(){},
      success: function(xml, textStatus){
        xml = me.fixIExml(xml);
        $feed = $("#text-actualite ul").empty();
        $(xml).find("item").each(function(i){
          var title = $(this).find("title").text(),
              link = $(this).find("link").text();
          if (title.length >= 45)
            title = title.substr(0,45)+" ...";
          $feed.append(""+
            "<li>"+
              "<img class=\"puce\" src=\"/france/messenger/resources/images/puce-"+(/^http\:\/\/www\.facebook\.com/.test(link)?"fb.jpg":"frog.png")+"\" alt=\"\" />"+
              "<div class=\"title\"><a class=\"_blank\" href=\""+link+"\">"+title+"</a></div>"+
              "<img src=\"/france/messenger/resources/images/puce-gt.png\" alt=\"\" class=\"back-puce fr\" />"+
            "</li>"
          );
          if (i >= 4) return false;
        });
      }
    })
    
    // header menu scroll
    $("#menu a[href^=#]").click(function(){
      var block = $(this).attr("href");
    
      var h;
      if (typeof window.innerWidth != 'undefined'){
        h = window.innerHeight;
      } else if (typeof document.documentElement != 'undefined' && typeof document.documentElement.clientHeight != 'undefined' && document.documentElement.clientHeight != 0) {
        h = document.documentElement.clientHeight;
      }else{
        h = document.getElementsByTagName('body')[0].clientHeight;
      }
      
      var scheight = document.documentElement.scrollHeight;
      if (HN.browser.chrome) scheight = document.body.scrollHeight;

      if ($(block).offset().top < (scheight - h)) {
        var scrollto = $(block).offset().top;
      }
      else {
        //var scrollto = document.documentElement.scrollHeight - h;
        var scrollto = $(block).offset().top;
        $("#wrapper").css({ height: (scrollto + h - 302) })
      }

      if ($(block).length)
        $("html:not(:animated),body:not(:animated)").animate({ scrollTop: scrollto - 151},{ "duration": 500, "easing": "easeOutExpo" });
      
      return false;
    });
  
    $("#logo a[href^=#]").click(function(){
      if (window.pageYOffset != 11) {
         $("html:not(:animated),body:not(:animated)").animate({ scrollTop: 11},
        {
          "duration": 500,
          "easing": "easeOutExpo",
           complete: function() {
            $("#wrapper").css({ height: 1938 - 151 })
            }
        });
      }
       return false;
    });

    // steps
    var activateStep = function($li){
      var lii = $li.index(),
          $olis = $li.closest("ul").find("li").not(":eq("+lii+")");
      
      // animate current li
      $li.find(".step-num").animate({ width: "15px" },200).end()
         .find(".desc").animate({ opacity:1, "top": "38px" },200).end()
         .find(".title").animate({ "margin-bottom": "44px"  },200).end()
         .find(".step-text").animate({ width: "260px" },200).end()
         .find(".arrow").animate({ opacity:1,"left": "-28px" },200);
      
      // animate other li's
      $olis.find(".step-num").animate({ width: "60px" },200).end()
         .find(".step-text").animate({ width: "220px" },200).end()
         .find(".desc").animate({ opacity:0, "top": "60px" },200).end()
         .find(".title").animate({ "margin-bottom": "0" },200).end()
         .find(".arrow").animate({ opacity:0,"left": "0" },200);	
      
      // animate bg
      $li.closest("ul").prev().find("li")
        .eq(lii).animate({opacity:1},200).end()
        .not(":eq("+lii+")").animate({opacity:0},200);
    };
    $("#steps li").mouseenter(function(e){
      activateStep($(this).closest("li"));
    });
    $("#steps").mouseleave(function(){
       activateStep($(this).find("li").first());
    });
    activateStep($("#steps li").first());
  
    $("#dwld-messenger-mobile").click(function(){
      window.location.href = "http://explore.live.com/messenger-mobile/";
    });
  
    // popup how to dl
    if (HN.browser.firefox) $("#sbs-firefox").show();
    else if (HN.browser.chrome) $("#sbs-chrome").show();
    else if (HN.browser.opera) $("#sbs-opera").show();
    else if (HN.browser.safari) $("#sbs-safari").show();
    else if (HN.browser.msie && HN.browser.version == 9) $("#sbs-iexplorer9").show();
    else $("#sbs-iexplorer").show();
  
    // cta init
    if (HN.browser.iphone) {
      $("#cta-new-wlm").click(function(){
        window.open("http://itunes.apple.com/fr/app/windows-live-messenger/id376196406?mt=8","_blank");
        s.linkTrackVars='events,eVar8,prop8,channel,prop33,prop3,eVar3,eVar33';
        s.prop8=s.eVar8='WL:fr-fr:Windowslive:Messenger:Conversation Video:Menu:Telecharger iOS';
		s.linkTrackEvents='event3';
        s.tl(true,'o','Messenger:Telecharger iOS');
		trackSE(DownloadProduct,'Download Messenger iOS');
        return false;
      });
    }
    else if (HN.browser.ipad) {
      $("#cta-new-wlm").css({ display: "block" }).click(function(){
        window.open("http://itunes.apple.com/fr/app/windows-live-messenger/id376196406?mt=8","_blank");
        s.linkTrackVars='events,eVar8,prop8,channel,prop33,prop3,eVar3,eVar33';
        s.prop8=s.eVar8='WL:fr-fr:Windowslive:Messenger:Conversation Video:Menu:Telecharger iOS';
		s.linkTrackEvents='event3';
        s.tl(true,'o','Messenger:Telecharger iOS');
		trackSE(DownloadProduct,'Download Messenger iOS');
        return false;
      });
    }
    else if (HN.browser.windows_xp) {
      $("#cta-new-wlm").click(function(){
        $("#popup1").show();
        //window.open("http://estc.asp.msn.com/fr/ilm/exe/1/Installation_WLMessenger2009.exe","_blank");
        $iframe = $("<iframe src=\"http://clk.atdmt.com/FRM/go/364880262/direct/01/?href=http://download.microsoft.com/download/8/3/B/83BDB258-69D9-4A40-8DCA-18B2A69A3325/Installation_Messenger.exe\" width=\"1\" height=\"1\"></iframe>").appendTo("body");
        setTimeout(function(){ $iframe.remove(); }, 50000);
        s.linkTrackVars='events,eVar8,prop8,channel,prop33,prop3,eVar3,eVar33';
        s.prop8=s.eVar8='WL:fr-fr:Windowslive:Messenger:Conversation Video:Body CTA:Telecharger Wave 3';
		s.linkTrackEvents='event3';
        s.tl(true,'o','Messenger:Telecharger Wave 3');
		trackSE(DownloadProduct,'Download Messenger Wave 3');
        return false;
      });
    }
    else {
      $("#cta-new-wlm").click(function(){
        $("#popup-how-to-dl-wlm").show();
        //window.open("http://stc.asp.msn.com/fr/ilm/exe/1/Installation_Messenger2011.exe","_blank");
        $iframe = $("<iframe src=\"http://clk.atdmt.com/FRM/go/364880263/direct/01/?href=http://download.microsoft.com/download/8/3/B/83BDB258-69D9-4A40-8DCA-18B2A69A3325/Installation_Messenger.exe\" width=\"1\" height=\"1\"></iframe>").appendTo("body");
        setTimeout(function(){ $iframe.remove(); }, 50000);
        s.linkTrackVars='events,eVar8,prop8,channel,prop33,prop3,eVar3,eVar33';
        s.linkTrackEvents='event3';
        s.prop8=s.eVar8='WL:fr-fr:Windowslive:Messenger:Conversation Video:Body CTA:Telecharger Wave 4';
        s.events='event3';
        s.tl(true,'o','Messenger:Telecharger Wave 4');
		trackSE(DownloadProduct,'Download Messenger Wave 4');
        return false;
      });
    }
    $("#popup1").find("img.close").click(function(){ $("#popup1").hide(); });
    $("#popup-how-to-dl-wlm img.close").click(function(){ $("#popup-how-to-dl-wlm").hide(); });
    $("#popup-confirmation").find("img.close").click(function(){
      $("#popup-confirmation").hide();
      canPlayVideo = true;
      me.showVideo(videoToPlay);
    });
    
    $(window).resize(function(){
      var win_width = $(window).width();
      var win_height = $(window).height();
      $("#popup1").width(win_width-52).height(win_height-125);
      $("#popup1 div.what-changed").height(win_height-178);
    }).resize();
    
    if (HN.url.params.go) {
      if (HN.url.params.go == "confirmation") {
        canPlayVideo = false;
        $("#popup-confirmation").show();
        (new Image()).src = "http://view.atdmt.com/jaction/frmmgm_confinstallationwave4_1";
        s.linkTrackVars='eVar8,prop8,channel,prop33,prop3';
        s.prop8=s.eVar8='WL:fr-fr:Windowslive:Messenger:Messenger HD:Popup Confirmation:Ouverture Wave 4';
        s.tl(true,'o','Messenger:Confirmation Wave4');
      }
      else if (HN.url.params.go == "confirmation-xp") {
        canPlayVideo = false;
        $("#popup-confirmation-xp").show();
		(new Image()).src = "http://view.atdmt.com/jaction/frmmgm_FY12TELECHARGERMESSENGERCON_1";
        s.linkTrackVars='eVar8,prop8,channel,prop33,prop3';
        s.prop8=s.eVar8='WL:fr-fr:Windowslive:Messenger:Messenger HD:Popup Confirmation:Ouverture Wave 3';
        s.tl(true,'o','Messenger:Confirmation Wave3');
      }
      else if (HN.url.params.go == "telecharger") {
        if ($("#sbs-iexplorer").css("display") != "none") { // if ie popup will be shown, change it
          $("#sbs-iexplorer").hide();
          $("#sbs-iexplorer-auto").show();
        }
        setTimeout(function(){ $("#cta-new-wlm").click(); }, 1000);
      }
    }
    
    // hash management
    $(window).hashchange(function(){
      me.showVideo(location.hash.substring(1));
    }).hashchange();
    
    // target="_blank"
    $("a._blank, area._blank").live("click", function(){ open($(this).attr("href"), "_blank"); return false; });
  };
  this.loadInit = function(){
  };
  this.showVideo = function(vi){
    var cb=[],p=[],a_=arguments;for(var k=a_.callee.length;k<a_.length;k++)if(typeof(a_[k])=="function")cb.push(a_[k]);else p.push(a_[k]);
    var force = p[0] !== undefined ? p[0] : false;
    if (typeof(vi) == "number" || /^\d+$/.test(vi)) {
      vi = parseInt(vi);
    }
    else if (typeof(vi) == "string") {
      var id = vi.split("_")[0],
          vi = me.videosIdI[id];
    }
    else {
      return;
    }
    if (vi === undefined)
      vi = 0;
    videoToPlay = vi;
    if (!canPlayVideo || (vi == me.curVideoIndex && !force) || vi < 0 || vi >= me.videos.length)
      return;
    //log("showing video "+vi+" me.player?"+(!!me.player)+" me.animated?"+(!!me.animated));
    if (!me.animated) {
      me.animated = true;
      var curVideo = me.curVideoIndex ? me.videos[me.curVideoIndex] : { block: { type: me.TYPE_STEPS } },
          nextVideo = me.videos[vi],
          speed = me.curVideoIndex ? 1000 : 1000;
      
      $("#title-vid h1").text(nextVideo.name);
      if (nextVideo.block.type == curVideo.block.type) {
        if (curVideo.block.type == me.TYPE_STEPS) {
          var $steps = $("#steps"),
              $steps_old = $steps.clone().insertAfter($steps);
          $steps.find("a").each(function(i){
            $(this).attr("href",nextVideo.block.items[i].link)
              .find(".title").html(nextVideo.block.items[i].title).end()
              .find(".desc").html(nextVideo.block.items[i].desc);
          });
          $steps.hide().fadeIn(speed*0.8);
          $steps_old.fadeOut(speed, function(){
            $(this).remove();
            me.animated = false;
            me.curVideoIndex = vi;
          });
        }
        else {
          me.animated = false;
          me.curVideoIndex = vi;
        }
      }
      else {
        var $titlevid = $("#title-vid"),
            $bg = $("#block-right-bg"),
            $bg2 = $("#block-right"),
            $steps = $("#steps"),
            $stepsBg = $("#steps-bg"),
            $advantages = $("#block-right .advantages"),
            $video = $("#block-left");
        if (curVideo.block.type == me.TYPE_STEPS) {
          $advantages.insertBefore($steps).fadeIn(speed);
          $steps.fadeOut(speed, function(){
            me.animated = false;
            me.curVideoIndex = vi;
          });
          $stepsBg.fadeOut(speed);
          $bg2.animate({ right: "5px" }, speed, "easeOutQuart");
          $bg.animate({ width: "292px", right: "5px" }, speed, "easeOutQuart");
          $video.animate({ left: "5px" }, speed);
          $titlevid.animate({ left: "5px" }, speed);
        }
        else {
          $steps.find("a").each(function(i){
            $(this).attr("href",nextVideo.block.items[i].link)
              .find(".title").html(nextVideo.block.items[i].title).end()
              .find(".desc").html(nextVideo.block.items[i].desc);
          });
          $steps.insertBefore($advantages).fadeIn(speed);
          $stepsBg.fadeIn(speed);
          $advantages.fadeOut(speed, function(){
            me.animated = false;
            me.curVideoIndex = vi;
          });
          $bg2.animate({ right: "55px" }, speed, "easeInQuart");
          $bg.animate({ width: "870px", right: "55px" }, speed, "easeOutQuart");
          $video.animate({ left: "45px" }, speed);
          $titlevid.animate({ left: "44px" }, speed);
        }
      }
      setTimeout(function(){
        me.player.attr("src",nextVideo.url+"?autoPlay=1");
        $("#video_list li").removeClass("playing").eq(vi).addClass("playing");
        me.doTracking("video", nextVideo.ref_name, 0);
      }, speed);
    }
  };
  
};

HN.MS.MessengerHD.prototype = {
  TYPE_STEPS: 1,
  TYPE_ADVANTAGES: 2,
  trackingCount: {
    "video": 0
  },
  doTracking: function(event){
    var cb=[],p=[],a_=arguments;for(var k=a_.callee.length;k<a_.length;k++)if(typeof(a_[k])=="function")cb.push(a_[k]);else p.push(a_[k]);
    var id = p[0] !== undefined ? p[0] : "",
        count = p[1] !== undefined ? parseInt(p[1]) : 0;
    log("tracking="+event+" id="+p[0]+" count="+count);
    if (!p[1] || this.trackingCount[event] < p[1]) {
      this.trackingCount[event]++;
      switch (event) {
        case "video": 
          s.linkTrackVars='eVar8,prop8,channel,prop33,prop3';
          s.prop8=s.eVar8='WL:fr-fr:Windowslive:Messenger:Messenger HD:Lecture Video:'+id;
          s.tl(true,'o','Messenger:Lecture Video:'+id);
          s.prop8=s.eVar8='WL:fr-fr:Windowslive:Messenger:Messenger HD:Clique Video';
          break;
        default: log("tracking not found : "+event); break;
      }
      log("tracking done");
    }
  },
  fixIExml: function(xml){
    if (HN.browser.msie && HN.browser.version < 8 && typeof xml == "string") {
      var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
      xmlDoc.loadXML(xml);
      return xmlDoc;
    }
    else
      return xml;
  }
};

$(document).ready(function() {
  $('a#ie9').fancybox(
	{
		'transitionIn' : 'elastic',
		'transitionOut' : 'elastic',
		'overlayColor' : '#000'
	});
  {$('a#ie9').click(); session = true }
});


window.msnHD = new HN.MS.MessengerHD();

$(function(){ msnHD.domInit(); });
$(window).load(function(){ msnHD.loadInit(); });


