/**
*	@name getOffsets
*	@version 1.0.0
*	@description Returns the sum of marins and padding depending on the options passed.
*	@author Trey Shugart
*	@date 2008-02-18
*	@copyright Copyright 2008 Trey Shugart
*	@license GNU LGPL (http://www.gnu.org/licenses/lgpl.html)
*/
(function($) {
	$.fn.getOffsets = function(opt) {
		var $$ = $(this);
		
		var o = {
			checkFor: 'height',
			checkMargin: true,
			checkPadding: true
		};
		
		if (typeof(opt) !== 'undefined') {
			for (i in opt) {
				o[i] = opt[i];
			}
		}
		
		var totalOffset = 0;
		$$.each(function() {
			if (o.checkFor === 'height') {
				if (o.checkMargin) {
					totalOffset += (!isNaN(parseInt($(this).css('margin')))) ? (parseInt($(this).css('margin')) * 2) : 0;
					totalOffset += (!isNaN(parseInt($(this).css('margin-top')))) ? parseInt($(this).css('margin-top')) : 0;
					totalOffset += (!isNaN(parseInt($(this).css('margin-bottom')))) ? parseInt($(this).css('margin-bottom')) : 0;
				}
				if (o.checkPadding) {
					totalOffset += (!isNaN(parseInt($(this).css('padding')))) ? (parseInt($(this).css('padding')) * 2) : 0;
					totalOffset += (!isNaN(parseInt($(this).css('padding-top')))) ? parseInt($(this).css('padding-top')) : 0;
					totalOffset += (!isNaN(parseInt($(this).css('padding-bottom')))) ? parseInt($(this).css('padding-bottom')) : 0;
				}
			}
			if (o.checkFor === 'width') {
				if (o.checkMargin) {
					totalOffset += (!isNaN(parseInt($(this).css('margin')))) ? (parseInt($(this).css('margin')) * 2) : 0;
					totalOffset += (!isNaN(parseInt($(this).css('margin-right')))) ? parseInt($(this).css('margin-right')) : 0;
					totalOffset += (!isNaN(parseInt($(this).css('margin-left')))) ? parseInt($(this).css('margin-left')) : 0;
				}
				if (o.checkPadding) {
					totalOffset += (!isNaN(parseInt($(this).css('padding')))) ? (parseInt($(this).css('padding')) * 2) : 0;
					totalOffset += (!isNaN(parseInt($(this).css('padding-right')))) ? parseInt($(this).css('padding-right')) : 0;
					totalOffset += (!isNaN(parseInt($(this).css('padding-left')))) ? parseInt($(this).css('padding-left')) : 0;
				}
			}
		});
		
		return Math.round(totalOffset);
	};
})(jQuery);