var floating_officialtop = 220;
var floating_topoffset = 114;
var floating_bottomoffset = -140;
var _docparams_ = "";

function floating_init(pageparams)
{
  floating = $e("floatingbar");
  /*
  if(floating != null) {
    floating.style.top = "230px";
    floating.style.width = "204px";
    floating.style.display = "block";
  }
  */
  _docparams_ = pageparams;
  floater_updateTexts();
}

function floating_move()
{
  if(isNaN(window.pageYOffset)) {
    floating_topoffset = (document.body.scrollTop > floating_officialtop) ? 2 : 110 - (document.body.scrollTop / 2);
  }
  else {
    floating_topoffset = (window.pageYOffset > floating_officialtop) ? 2 : 110 - (window.pageYOffset / 2);
  }
  if(isNaN(floating_topoffset)) floating_topoffset = 2;

  var scroll_ypos = window.pageYOffset || document.body.scrollTop;
  var float_ypos = parseInt(YAHOO.util.Dom.getStyle(floating.id, 'top') || 0);

  if(isNaN(float_ypos)) float_ypos = 0;

  if(floating_topoffset == undefined) {
    floating_topoffset = float_ypos;
  }

  if(scroll_ypos != float_ypos) {
    var distance = Math.abs(scroll_ypos - float_ypos);
    var step     = Math.max(1, distance / 1.0);

    if(scroll_ypos < float_ypos) {
      float_ypos -= step;
    }
    else {
      float_ypos += step;
    }

    YAHOO.util.Dom.setStyle(['content'], 'min-height', (parseInt(YAHOO.util.Dom.getStyle(floating.id, 'height')) + 50).toString() + "px");

    var float_height = parseInt(YAHOO.util.Dom.getStyle(floating.id, "height"));
    var lower_limit  = $e('floatend').offsetTop;
    var upper_limit  = $e('floatbegin').offsetTop + $e('floatbegin').offsetHeight;

    if(isNaN(float_height)) float_height = 400;
    if(isNaN(upper_limit)) upper_limit = 0;
    if(isNaN(lower_limit)) lower_limit = 0;

    float_ypos = Math.max(float_ypos + floating_topoffset, upper_limit + floating_topoffset);
    float_ypos = Math.min(float_ypos + floating_topoffset, lower_limit - float_height - floating_bottomoffset);

    YAHOO.util.Dom.setStyle([floating.id], 'top', float_ypos.toString() + "px")
  }

  window.setTimeout(floating_move, 20);
}

function floater_updateTexts()
{
  var selected = new Array();
  var text = "";
  var i;

  var sv = (getCookie('ucars') || "").split(",");
  var selectedVehicles = []
  for(i = 0; i < sv.length; i++) {
    if(sv[i] != "") {
      var c = sv[i].split(":");
      if(c.length > 0) {
        selectedVehicles.push(c[0]);
      }
    }
  }
  var num_vehicles = selectedVehicles.length;

  fl = $e("floatingtext");
  fs = $e("floatingsave");
  fc = $e("floatingcompare");

  if(fl != null) {
    text = num_vehicles + " vehicle" + (num_vehicles != 1 ? "s" : "") + " selected";
    //if(num_vehicles < 2) text += " (you need a minimum of 2 vehicles to compare)";
    XLib.setInnerHTML(fl, text);

    if(_ls_ == 1) {
      params = "_s=2&_sd=" + selectedVehicles;
      if(_docparams_ != "") params += "&" + _docparams_;

      /*
      if(fs != null) {
        if(num_vehicles > 0) {
          text = "<span class=\"bold\"><a href=\"" + _docuri_ + "?" + params + "\" onclick=\"return _checkLS();\">Save</a></span> the selected vehicles to your My123!";
        }
        else {
          text = "";
        }

        XLib.setInnerHTML(fs, text);
      }
      */

      if(fc != null) {
        if(num_vehicles < 2) {
          text = "Vous devez sélectionner au moins 2 véhicules pour les comparer!";
	      }
        else {
	        compare_params = "";
	        for(i = 0; i < selectedVehicles.length; i++) {
            if(compare_params != "") compare_params += "&";
            compare_params += "id" + (i + 1).toString() + "=" + selectedVehicles[i];
          }
          text = "<span class=\"bold\"><a href=\"" + used_results_comparison_link + "?" + compare_params + "\">Comparer</a></span> les véhicules sélectionnés";
	      }
        XLib.setInnerHTML(fc, text);
      }
    }
    /*
    else {
      if(fs != null) {
        XLib.setDisplayStyle(fs, "block");
        text = "You must login in order to be able to use the extra features from My123!";
        XLib.setInnerHTML(fs, text);
      }
    }
    */
  }

  cl = $e("comparelink");
  if(cl != null) {
    var link = "";
    if(num_vehicles < 2) {
      link = "javascript:void(0); alert('Vous devez sélectionner au moins 2 véhicules pour les comparer');";
    }
    else {
      compare_params = "";
      for(i = 0; i < selectedVehicles.length; i++) {
        if(compare_params != "") compare_params += "&";
        compare_params += "id" + (i + 1).toString() + "=" + selectedVehicles[i];
      }
      link = used_results_comparison_link + "?" + compare_params;
    }
    cl.setAttribute("href", link);
  }

  return true;
}

function floater_selectorReady(selector)
{
  if(selector != null && XLib.browserInfo.browserSupported) {
    YAHOO.util.Dom.setStyle($e("floatingbar"), "width", selector.width.toString() + "px");
    YAHOO.util.Dom.setStyle($e("floatingbar"), "left", (960 - selector.width).toString() + "px");
  }
}

