/*
 * floatin box
 * created by soi
 */


(function($) {        

$.fn.floatingBox = function(options) {
  if(!this.length>0){ return false; }
    options = $.extend({
        positionTop: '-1',
        positionBottom: '-1',
        positionRight: '-1',
        positionLeft: '-1',                                                                                               
        minTop:0
    }, options || {});
    id = this.attr('id');                      
                                                                                                                      
		$(document).ready(function() {setTimeout(function() { $("#"+id).show().animate({opacity: 1}, 500);	},500);});    
		$(document).ready(function() { $("#"+id).floatingBoxFloat(options);	});
		$(window).bind("resize", function() { $("#"+id).floatingBoxFloat(options, $(this)); });		
		$(window).bind("scroll", function() { $("#"+id).floatingBoxFloat(options, $(this)); });		
		return this; 		
};
  
                                   
$.fn.floatingBoxFloat = function(options, element) {

    var offset =  $(this).offset();
    var offsetTop =  offset.top;
        
		// Get browser window size
		var browserwidth = $(window).width();
		var browserheight = $(window).height();
		
		// Get cuuren scroll position
		var scrollTop = $(window).scrollTop();
		var scrollTopLeft = $(window).scrollLeft();
		
		if(options.positionTop>=0){  
		  if(options.minTop>scrollTop+options.positionTop)
         moveToTop = options.minTop 
      else
         moveToTop = scrollTop+options.positionTop;      
    }
    else{                                                                    
      if(options.positionBottom>=0){                                                         
          moveToTop = scrollTop+browserheight-options.positionBottom-$(this).height();          
      }     
    }
            
		if(options.positionRight>=0){  
       moveToLeft = scrollTopLeft+browserwidth-options.positionRight-$(this).width();  
    }
    else{                                           
      if(options.positionLeft>=0){      
         moveToLeft = scrollTopLeft+options.positionLeft;  
      }          
    }
    
	  $(this).stop(true, true).animate({top: (moveToTop)+"px", left: (moveToLeft)+"px"}, 500);
    
};
})(jQuery);
