jQuery.fn.center = function () {
  this.css("position","absolute");
  this.css("top", ( $(window).height() - this.height() ) / 2+$(window).scrollTop() + "px");
  this.css("left", ( $(window).width() - this.width() ) / 2+$(window).scrollLeft() + "px");
  return this;
}

function centerItem(item,iWidth,iHeight){  
  windowWidth = $(window).width();
  windowHeight = $(window).height();
  var w = windowWidth - iWidth; 
  var h = windowHeight - iHeight;
  $(item).css({
      'left': w/2,
      'top':h/2
  });   
}

function twitter(project) {
  var p = project;
  var u = 'http://www.twitter.com/share?url='+p;
  openWindow(u);
}

function facebook(project) {
  var p = project;
  openWindow('http:\/\/www.facebook.com\/sharer.php?&u='+p);
}

function isValidEmailAddress(emailAddress) {
  var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
  return pattern.test(emailAddress);
};


function openWindow(url) {
    var params = "location=no,menubar=no,status=no,toolbars=no,resizable=no,scrollbars=no,width=620,height=440";
    var l = posLeft(); var t = posTop();
    if(l>0)
      params +="&left="+(l+10)
    if(t>0)
      params +="&top="+(t+10)
    var popupWin = window.open(url, 'win', params)
  }
  function posLeft() {return typeof window.pageXOffset != 'undefined' ? window.pageXOffset :document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ? document.body.scrollLeft : 0;} 
  function posTop() {return typeof window.pageYOffset != 'undefined' ?  window.pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ? document.body.scrollTop : 0;}   
  function urlencode(str) {return escape(str).replace('+', '%2B').replace('%20', '+').replace('*', '%2A').replace('/', '%2F').replace('@', '%40');}
  function urldecode(str) {return unescape(str.replace('+', ' '));}

