/******************************************************************************

Name:    Flip hover

Version: 1.0

Config:  default

Author:  Praveen Vijayan

Support: http://www.decodize.com/

Thanks : Sunil Sukumaran, Saifudeen, Nishanth Krishnan



Licence: Open source



You are free:

	* to copy, distribute, display, and perform the work

	* to make derivative works

******************************************************************************/
(function($) { //
    // plugin definition
    //
    $.fn.fliphover = function(options) {  
        var opts = $.extend({},
        $.fn.fliphover.defaults, options);  //fliphover function 
        return this.each(function() {
            $this = $(this);  
            var o = $.meta ? $.extend({},
            opts, $this.data()) : opts;  
            var x = $this.find('img');  
            var imgHeight = x.height();
            var imgWidth = x.width();
            $this.hover(function() {  
                $this.css({
                    'z-index': '10'
                });
				//Hover effect initiates  
                if (o.hover == 'true') { 
                    if (x.attr("src").indexOf("-on") == -1) {
                        var fname = x.attr("src");
                        fname = fname.substring((fname.length) - 3, (fname.length));
                        fname = "." + fname;
                        nfname = "-on" + fname; //fname = split("[/\\.]", fname) ;
                        var newSrc = x.attr("src").replace(fname, nfname);
                        x.attr("src", newSrc);
                    }
                }
                x.addClass("hover").stop().animate({
                    marginTop: -o.zoom / 2,
                    marginLeft: -o.zoom / 2,
                    top: '50%',
                    left: '50%',
                    width: imgWidth + o.zoom,
                    height: imgHeight + o.zoom,
                    padding: '0'
                },
                200);
            },
            function() { //Adds '-on' to image 
                if (o.hover == 'true') {
					var fname = x.attr("src");
                        fname = fname.substring((fname.length) - 3, (fname.length));
                        fname = "." + fname;
                        nfname = "-on" + fname;					
                    if (x.attr("src").indexOf(fname) != -1) {
                        var oldSrc = x.attr("src").replace(nfname, fname);
                        x.attr("src", oldSrc);
                    }
                }
                $(this).css({
                    'z-index': '0'
                });
                x.removeClass("hover").stop().animate({
                    marginTop: '0',
                    marginLeft: '0',
                    top: '0',
                    left: '0',
                    width: imgWidth,
                    height: imgHeight,
                    padding: '0'
                },
                400);
            }); 
			
			
        });
    }; 
	//fliphover defaults
    $.fn.fliphover.defaults = {
        zoom: 10,
        hover: 'false'
    }; 
})(jQuery);
