/* 
  Share this button script (c) iPressroom 2008-2009
  v 1.4.1
*/  

if (typeof jQuery != 'undefined') { (function($){

// changes current tab
function shareChangeTab() {
  var p = $(this).parents(".shareTabs");
  if (p.length) {
   var i = $(".shareTabsList a", p).index(this);
   
   // hide current
   $(".shareTabsList .active", p).removeClass("active");
   $(".shareTab[class!='hidden']", p).addClass("hidden");
   
   // show new
   $(".shareTab", p).eq(i).removeClass('hidden');
   $(".shareTabsList li", p).eq(i).addClass('active');
  }
  return false;
}

// show send link on demand
function shareShowSend () {
  var p = $(this).parents(".shareTabs"); 
  var ifr = $(".shareTab:eq(1) iframe", p).get(0);
  if (!ifr.src) {
   $(ifr).load(function() {$(".sendLink .loading", p).css('display', 'none'); }); // don't use hide() here
   ifr.src= this.href;
  }
}

// detects enough space for popup
function isSpace(offset, elSpace, allSpace) {
  return (offset+elSpace <= allSpace) || (offset < elSpace);
}

// adds special class on mouseover
function shareHover(evt) {
  var sh;
  if ($(this).hasClass('shareLink')) 
    sh = $(this).parents(".shareThis");
  else
   sh = null; 

  if (evt.type == 'mouseenter') {
   // opera incorrect detects dimensions with negative margins
   var b = ($.browser.opera) ? $("body") : $(document);  
   var el = $(this);   
   
   $(this)
     .addClass( isSpace(el.offset().left, this.shrPopup.width(), b.width()) ? 'hovered-right' : 'hovered-left')
     .addClass( isSpace(el.offset().top, this.shrPopup.height(), b.height()) ? 'hovered-bottom' : 'hovered-top' )
     .addClass('hovered');
     
   if (sh)
    sh.css("z-index", parseInt(sh.css("z-index"))+100); 
  }
  else {
   $(this).removeClass('hovered hovered-left hovered-right hovered-top hovered-bottom');
  
   if (sh)
    sh.css("z-index", parseInt(sh.css("z-index"))-100); 
  } 
}

// dummy iframe update on kiosk popup. IE fix
function iframeHelper(evt) {
 $("iframe", this).css("visibility", "visible");
}

// initial setup
$(function () {
  $(".shareThis .shareLink").each(function () {
    this.shrPopup = $(".sharePop", this);   
    $(this).hover(shareHover, shareHover);
  });
  
  $(".shareThis .shareTip").each(function () {
    this.shrPopup = $(".shareTipPop", this);   
    $(this).hover(shareHover, shareHover);
  });

  // ie helper functions
  if (jQuery.browser.msie) {
   $(".shareThis .shareLink").hover(iframeHelper, iframeHelper); 
  };
  
  // tabs events
  $(".shareThis .shareTabsList a").filter(
   function () {
    return $(this).attr("onclick") == undefined;    
   }
  ).click(shareChangeTab);
  $(".shareTabsList a:eq(1)", ".shareThis").click(shareShowSend);
  
  //z-index ie fix
  var z = 100;
  $(".shareThis").each(function() {
   $(this).css("z-index", z--);
  });

  // share options   
  if (typeof(prShareOptions) != 'undefined' )
    $(".shareThisWrap").addClass(prShareOptions.customStyle || "");
  
  // activate first item
  $("a:first", ".shareThis .shareTabsList").click();
});


})(jQuery); }
else { /*jQuery not found*/ }

