/**
 * Copyright (c) 2009 SOFT4U, s.r.o.
 * 
 * Usage:
 * ------
 *  - Image filename "[NAME]-normal.[EXT]" for normal state ("normal" is lowercase).
 *  - Image filename "[NAME]-over.[EXT]" for over state ("over" is lowercase).
 *  - Add class to rollovers (eg. "rolloverImg")
 *  - call "$.rollover()" function with selector as argument (eg. $.rollover('.rolloverImg');)
 *  - or call "$().rollover()" function with selector as jquery argument (eg. $('.rolloverImg').rollover();)   
 *  - All rollovers will be preloaded and swapped on mouse hover  
 *  - User class "selected" for selected item, will be set to "over" state
 *  - If current url is same like url of parent Anchor, then state is set to "over"  
 * 
 * Image filenames:
 * ----------------
 * Home-normal.png 	//Button, normal state
 * Home-over.png 	//Button, over state
 * Contact-normal.png 	//Button, normal state
 * Contact-over.png 	//Button, over state 
 * 
 * HTML:
 * -----
 * <img src="images/Home-normal.png" class="rolloverImg" />
 * <img src="images/Contact-normal.png" class="rolloverImg selected" /> 
 * 
 * JScript:
 * --------
 * $(function()
 * {
 *		$.rollover('.rolloverImg');
 *		
 *		// or
 *		
 *      $('.rolloverImg').rollover();        
 * });
 * 
 * Known problems:
 * ---------------
 *  - With some png fix might mot work. Call "rollover" function before png fix.    
 * 
 */ 
(function($) 
{		
	jQuery.fn.rollover = function() 
	{	
		return jQuery.rollover(this);							
	};
	
	jQuery.rollover = function(selector) 
	{
		jQuery(selector).each(function()
			{					   
				var srcNormal = $(this).attr('src');			
				var srcOver = srcNormal.replace(/-normal./i, '-over.');									
				
				var imgObj = new Image();
				imgObj.src = srcOver;
				
				$(this).data('rollover-normal', srcNormal);
				$(this).data('rollover-over', srcOver);
				
								
				if ($(this).hasClass('selected')/* || (this.parentNode.href == location.href)*/)
				{
					this.src = srcOver;	
				}
				else
				{				
					$(this).hover( function()
				                {                    
				                    this.src = $(this).data('rollover-over');
									$(this).ifixpng();		                    
				                },
				                function()
				                {
				                    this.src = $(this).data('rollover-normal');
									$(this).ifixpng();                    
				                }
				        );
				}
			});
			
		return jQuery;		
	};
	

})(jQuery);