﻿/*
* jQuery UI Effects Transfer 1.7.2
*
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
* and GPL (GPL-LICENSE.txt) licenses.
*
* http://docs.jquery.com/UI/Effects/Transfer
*
* Depends:
*	effects.core.js
*/
(function($) {

    $.effects.transfer = function(o) {
        return this.queue(function() {
            var elem = $(this),
			target = $(o.options.to),
			endPosition = target.offset(),
			animation = {
			    top: endPosition.top,
			    left: endPosition.left,
			    height: target.innerHeight(),
			    width: target.innerWidth()
			},
			startPosition = elem.offset(),
			transfer = $('<div class="ui-effects-transfer"></div>')
				.appendTo(document.body)
				.addClass(o.options.className)
				.css({
				    top: startPosition.top,
				    left: startPosition.left,
				    height: elem.innerHeight(),
				    width: elem.innerWidth(),
				    position: 'absolute'
				})
				.animate(animation, o.duration, o.options.easing, function() {
				    transfer.remove();
				    (o.callback && o.callback.apply(elem[0], arguments));
				    elem.dequeue();
				});
        });
    };

})(jQuery);

