/*!
 * jQuery Proyectiva Plugnin: addZoom v0.51
 * http://www.proyectiva.com
 *
 * Copyright 2010, Karacas
 */


(function($){
	
 	$.fn.extend({ 
		
		////**********************************************************
		////CONSTRUCTOR
		////**********************************************************
 		pryAddZoom: function(options) {
			
			
			////----------------------------------------------------------
			////DEFAULTS
			////----------------------------------------------------------
			var defaults = {
				animTimeIn : 0,
				animTimeOut : 100,
				alphaIn:0.60,
				boxClassName:'JsFloatImageZoom',
				forceQueTengaLink:false
			};
			var options =  $.extend(defaults, options);
			////----------------------------------------------------------
						
						
			////----------------------------------------------------------
			////PUBLIC START
			////----------------------------------------------------------
    		return this.each(function(indxObj) {
						
				//GENERA DIV
				var miDivZoom =  $('<span class="'+ options.boxClassName +'" style="position:absolut; display:block"></span>');
				$(miDivZoom).fadeTo(0, 0);
				$(miDivZoom).width($(this).width());
				$(miDivZoom).height($(this).height());
				$(miDivZoom).offset({ top: $(this).offset().top, left: $(this).offset().left });
				
				//SETEA IMAGEN
				var miImgZoom
				var miImgZoomBox
				if ($(this).is('img')){
					miImgZoom = $(this);
					miImgZoomBox = $(this);
				}else{
					miImgZoom = $('img:first', this);
					miImgZoomBox = $(this);
				};
				
				
				$(miImgZoom).mouseover(function () { 		
					$('.'+options.boxClassName).hide();
					$(miDivZoom).show().fadeTo(options.animTimeIn, options.alphaIn);			
					$(miDivZoom).width($(miImgZoomBox).outerWidth());
					$(miDivZoom).height($(miImgZoomBox).outerHeight());
					$(miDivZoom).offset({ top: $(miImgZoomBox).offset().top, left: $(miImgZoomBox).offset().left });
				});
				$(miDivZoom).mouseout(function () { $(miDivZoom).fadeTo(options.animTimeOut, 0, function() {
					  $(miDivZoom).hide();
					});
				 });
							
				//SI NO ENCUENTRA IMAGEN RETURN
				if (!Boolean ($(miImgZoom).is('img'))) return;
				
				
				//ENCUENTRA LINK
				var miHrefZoom = $(miImgZoom).parents().filter('a').eq(0);
				if (options.forceQueTengaLink){
					if (miHrefZoom.html() == null) return;
				}
				
				
				//WRITE
				$('body').append(miDivZoom);
				
				
				//ADD LINK
				if (miHrefZoom.html() != null){
					var miHrefZoomClone = $(String(miHrefZoom.parent().html())).html('');
					miDivZoom.wrap(miHrefZoomClone);
					miDivZoom.css('cursor','pointer')
					$(miDivZoom).hide()
				}
				
    		});
			////----------------------------------------------------------


    	}
		////**********************************************************
	});
})(jQuery);


