/*-------------------------------------------------------------------- 
 * JQuery Plugin: "EqualHeights" & "EqualWidths"
 * by:	Scott Jehl, Todd Parker, Maggie Costello Wachs (http://www.filamentgroup.com)
 *
 * Copyright (c) 2007 Filament Group
 * Licensed under GPL (http://www.opensource.org/licenses/gpl-license.php)
 *
 * Description: Compares the heights or widths of the top-level children of a provided 
 * element  and sets their min-height to the tallest height (or width to widest width).
 * Sets in em units  by default if pxToEm() method is available.
 * Dependencies: jQuery library, pxToEm method	(article: http://www.filamentgroup.com/lab/retaining_scalable_interfaces_with_pixel_to_em_conversion/)							  
 * Usage Example: $(element).equalHeights();
 * Optional: to set min-height in px, pass a true argument: $(element).equalHeights(true);
 * Version: 2.0, 07.24.2008
 * Changelog:
 *  08.02.2007 initial Version 1.0
 *  07.24.2008 v 2.0 - added support for widths
--------------------------------------------------------------------*/

(function($){$.fn.equalHeights=function(px){$(this).each(function(){var currentTallest=0;$(this).children().each(function(i){if($(this).height()>currentTallest){currentTallest=$(this).height();}});if(!px||!Number.prototype.pxToEm){currentTallest=currentTallest.pxToEm();}if($.browser.msie&&$.browser.version==6){$(this).children().css({"height":currentTallest});}$(this).children().css({"min-height":currentTallest});});return this;};})(jQuery);

// just in case you need it...widths too!
(function($){$.fn.equalWidths=function(px){$(this).each(function(){var currentWidest=0;$(this).children().each(function(i){if($(this).width()>currentWidest){currentWidest=$(this).width();}});if(!px||!Number.prototype.pxToEm){currentWidest=currentWidest.pxToEm();}if($.browser.msie&&$.browser.version==6){$(this).children().css({"width":currentWidest});}$(this).children().css({"min-width":currentWidest});});return this;};})(jQuery);

/*-------------------------------------------------------------------- 
 * javascript method: "pxToEm"
 * by:
   Scott Jehl (scott@filamentgroup.com) 
   Maggie Wachs (maggie@filamentgroup.com)
   http://www.filamentgroup.com
 *
 * Copyright (c) 2008 Filament Group
 * Dual licensed under the MIT (filamentgroup.com/examples/mit-license.txt) and GPL
 * (filamentgroup.com/examples/gpl-license.txt) licenses.
 *
 * Description: Extends the native Number and String objects with pxToEm method. pxToEm
 * converts a pixel value to ems depending on inherited font size.  
 * Article: http://www.filamentgroup.com/lab/retaining_scalable_interfaces_with_pixel_to_em_conversion/
 * Demo: http://www.filamentgroup.com/examples/pxToEm/	 	
 *							
 * Options:  	 								
 		scope: string or jQuery selector for font-size scoping
 		reverse: Boolean, true reverses the conversion to em-px
 * Dependencies: jQuery library						  
 * Usage Example: myPixelValue.pxToEm(); or myPixelValue.pxToEm({'scope':'#navigation', reverse: true});
 *
 * Version: 2.0, 08.01.2008 
 * Changelog:
 *		08.02.2007 initial Version 1.0
 *		08.01.2008 - fixed font-size calculation for IE
--------------------------------------------------------------------*/
(function($){Number.prototype.pxToEm=String.prototype.pxToEm=function(settings){settings=jQuery.extend({scope:"body",reverse:false},settings);var pxVal=(this=="")?0:parseFloat(this);var scopeVal;var getWindowWidth=function(){var de=document.documentElement;return self.innerWidth||(de&&de.clientWidth)||document.body.clientWidth;};if(settings.scope=="body"&&$.browser.msie&&(parseFloat($("body").css("font-size"))/getWindowWidth()).toFixed(1)>0){var calcFontSize=function(){return(parseFloat($("body").css("font-size"))/getWindowWidth()).toFixed(3)*16;};scopeVal=calcFontSize();}else{scopeVal=parseFloat(jQuery(settings.scope).css("font-size"));}var result=(settings.reverse==true)?(pxVal*scopeVal).toFixed(2)+"px":(pxVal/scopeVal).toFixed(2)+"em";return result;};})(jQuery);
