client/player/js/ui/jquery-ui-1.8.1.custom.js
author ymh <ymh.work@gmail.com>
Mon, 12 Jul 2010 12:01:22 +0200
changeset 57 3a3c15c462f8
parent 1 436d4791d7ac
parent 51 2d6866072851
permissions -rw-r--r--
Merge with da0957782d03935d99e10137f123191a9c843391
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
51
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     1
/*!
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     2
 * jQuery UI 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     3
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     4
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     5
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     6
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     7
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     8
 * http://docs.jquery.com/UI
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
     9
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    10
;jQuery.ui || (function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    11
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    12
//Helper functions and ui object
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    13
$.ui = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    14
	version: "1.8.1",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    15
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    16
	// $.ui.plugin is deprecated.  Use the proxy pattern instead.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    17
	plugin: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    18
		add: function(module, option, set) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    19
			var proto = $.ui[module].prototype;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    20
			for(var i in set) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    21
				proto.plugins[i] = proto.plugins[i] || [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    22
				proto.plugins[i].push([option, set[i]]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    23
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    24
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    25
		call: function(instance, name, args) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    26
			var set = instance.plugins[name];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    27
			if(!set || !instance.element[0].parentNode) { return; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    28
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    29
			for (var i = 0; i < set.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    30
				if (instance.options[set[i][0]]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    31
					set[i][1].apply(instance.element, args);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    32
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    33
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    34
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    35
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    36
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    37
	contains: function(a, b) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    38
		return document.compareDocumentPosition
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    39
			? a.compareDocumentPosition(b) & 16
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    40
			: a !== b && a.contains(b);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    41
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    42
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    43
	hasScroll: function(el, a) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    44
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    45
		//If overflow is hidden, the element might have extra content, but the user wants to hide it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    46
		if ($(el).css('overflow') == 'hidden') { return false; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    47
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    48
		var scroll = (a && a == 'left') ? 'scrollLeft' : 'scrollTop',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    49
			has = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    50
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    51
		if (el[scroll] > 0) { return true; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    52
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    53
		// TODO: determine which cases actually cause this to happen
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    54
		// if the element doesn't have the scroll set, see if it's possible to
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    55
		// set the scroll
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    56
		el[scroll] = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    57
		has = (el[scroll] > 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    58
		el[scroll] = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    59
		return has;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    60
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    61
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    62
	isOverAxis: function(x, reference, size) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    63
		//Determines when x coordinate is over "b" element axis
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    64
		return (x > reference) && (x < (reference + size));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    65
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    66
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    67
	isOver: function(y, x, top, left, height, width) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    68
		//Determines when x, y coordinates is over "b" element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    69
		return $.ui.isOverAxis(y, top, height) && $.ui.isOverAxis(x, left, width);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    70
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    71
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    72
	keyCode: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    73
		ALT: 18,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    74
		BACKSPACE: 8,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    75
		CAPS_LOCK: 20,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    76
		COMMA: 188,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    77
		CONTROL: 17,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    78
		DELETE: 46,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    79
		DOWN: 40,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    80
		END: 35,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    81
		ENTER: 13,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    82
		ESCAPE: 27,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    83
		HOME: 36,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    84
		INSERT: 45,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    85
		LEFT: 37,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    86
		NUMPAD_ADD: 107,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    87
		NUMPAD_DECIMAL: 110,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    88
		NUMPAD_DIVIDE: 111,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    89
		NUMPAD_ENTER: 108,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    90
		NUMPAD_MULTIPLY: 106,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    91
		NUMPAD_SUBTRACT: 109,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    92
		PAGE_DOWN: 34,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    93
		PAGE_UP: 33,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    94
		PERIOD: 190,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    95
		RIGHT: 39,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    96
		SHIFT: 16,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    97
		SPACE: 32,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    98
		TAB: 9,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
    99
		UP: 38
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   100
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   101
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   102
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   103
//jQuery plugins
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   104
$.fn.extend({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   105
	_focus: $.fn.focus,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   106
	focus: function(delay, fn) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   107
		return typeof delay === 'number'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   108
			? this.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   109
				var elem = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   110
				setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   111
					$(elem).focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   112
					(fn && fn.call(elem));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   113
				}, delay);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   114
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   115
			: this._focus.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   116
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   117
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   118
	enableSelection: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   119
		return this
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   120
			.attr('unselectable', 'off')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   121
			.css('MozUserSelect', '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   122
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   123
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   124
	disableSelection: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   125
		return this
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   126
			.attr('unselectable', 'on')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   127
			.css('MozUserSelect', 'none');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   128
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   129
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   130
	scrollParent: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   131
		var scrollParent;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   132
		if(($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   133
			scrollParent = this.parents().filter(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   134
				return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   135
			}).eq(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   136
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   137
			scrollParent = this.parents().filter(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   138
				return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   139
			}).eq(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   140
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   141
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   142
		return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   143
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   144
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   145
	zIndex: function(zIndex) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   146
		if (zIndex !== undefined) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   147
			return this.css('zIndex', zIndex);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   148
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   149
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   150
		if (this.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   151
			var elem = $(this[0]), position, value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   152
			while (elem.length && elem[0] !== document) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   153
				// Ignore z-index if position is set to a value where z-index is ignored by the browser
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   154
				// This makes behavior of this function consistent across browsers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   155
				// WebKit always returns auto if the element is positioned
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   156
				position = elem.css('position');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   157
				if (position == 'absolute' || position == 'relative' || position == 'fixed')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   158
				{
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   159
					// IE returns 0 when zIndex is not specified
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   160
					// other browsers return a string
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   161
					// we ignore the case of nested elements with an explicit value of 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   162
					// <div style="z-index: -10;"><div style="z-index: 0;"></div></div>
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   163
					value = parseInt(elem.css('zIndex'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   164
					if (!isNaN(value) && value != 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   165
						return value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   166
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   167
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   168
				elem = elem.parent();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   169
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   170
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   171
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   172
		return 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   173
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   174
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   175
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   176
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   177
//Additional selectors
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   178
$.extend($.expr[':'], {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   179
	data: function(elem, i, match) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   180
		return !!$.data(elem, match[3]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   181
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   182
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   183
	focusable: function(element) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   184
		var nodeName = element.nodeName.toLowerCase(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   185
			tabIndex = $.attr(element, 'tabindex');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   186
		return (/input|select|textarea|button|object/.test(nodeName)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   187
			? !element.disabled
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   188
			: 'a' == nodeName || 'area' == nodeName
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   189
				? element.href || !isNaN(tabIndex)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   190
				: !isNaN(tabIndex))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   191
			// the element and all of its ancestors must be visible
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   192
			// the browser may report that the area is hidden
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   193
			&& !$(element)['area' == nodeName ? 'parents' : 'closest'](':hidden').length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   194
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   195
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   196
	tabbable: function(element) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   197
		var tabIndex = $.attr(element, 'tabindex');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   198
		return (isNaN(tabIndex) || tabIndex >= 0) && $(element).is(':focusable');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   199
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   200
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   201
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   202
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   203
/*!
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   204
 * jQuery UI Widget 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   205
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   206
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   207
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   208
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   209
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   210
 * http://docs.jquery.com/UI/Widget
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   211
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   212
(function( $ ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   213
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   214
var _remove = $.fn.remove;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   215
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   216
$.fn.remove = function( selector, keepData ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   217
	return this.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   218
		if ( !keepData ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   219
			if ( !selector || $.filter( selector, [ this ] ).length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   220
				$( "*", this ).add( this ).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   221
					$( this ).triggerHandler( "remove" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   222
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   223
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   224
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   225
		return _remove.call( $(this), selector, keepData );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   226
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   227
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   228
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   229
$.widget = function( name, base, prototype ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   230
	var namespace = name.split( "." )[ 0 ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   231
		fullName;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   232
	name = name.split( "." )[ 1 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   233
	fullName = namespace + "-" + name;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   234
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   235
	if ( !prototype ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   236
		prototype = base;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   237
		base = $.Widget;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   238
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   239
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   240
	// create selector for plugin
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   241
	$.expr[ ":" ][ fullName ] = function( elem ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   242
		return !!$.data( elem, name );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   243
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   244
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   245
	$[ namespace ] = $[ namespace ] || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   246
	$[ namespace ][ name ] = function( options, element ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   247
		// allow instantiation without initializing for simple inheritance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   248
		if ( arguments.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   249
			this._createWidget( options, element );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   250
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   251
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   252
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   253
	var basePrototype = new base();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   254
	// we need to make the options hash a property directly on the new instance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   255
	// otherwise we'll modify the options hash on the prototype that we're
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   256
	// inheriting from
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   257
//	$.each( basePrototype, function( key, val ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   258
//		if ( $.isPlainObject(val) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   259
//			basePrototype[ key ] = $.extend( {}, val );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   260
//		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   261
//	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   262
	basePrototype.options = $.extend( {}, basePrototype.options );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   263
	$[ namespace ][ name ].prototype = $.extend( true, basePrototype, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   264
		namespace: namespace,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   265
		widgetName: name,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   266
		widgetEventPrefix: $[ namespace ][ name ].prototype.widgetEventPrefix || name,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   267
		widgetBaseClass: fullName
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   268
	}, prototype );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   269
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   270
	$.widget.bridge( name, $[ namespace ][ name ] );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   271
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   272
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   273
$.widget.bridge = function( name, object ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   274
	$.fn[ name ] = function( options ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   275
		var isMethodCall = typeof options === "string",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   276
			args = Array.prototype.slice.call( arguments, 1 ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   277
			returnValue = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   278
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   279
		// allow multiple hashes to be passed on init
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   280
		options = !isMethodCall && args.length ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   281
			$.extend.apply( null, [ true, options ].concat(args) ) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   282
			options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   283
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   284
		// prevent calls to internal methods
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   285
		if ( isMethodCall && options.substring( 0, 1 ) === "_" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   286
			return returnValue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   287
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   288
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   289
		if ( isMethodCall ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   290
			this.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   291
				var instance = $.data( this, name ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   292
					methodValue = instance && $.isFunction( instance[options] ) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   293
						instance[ options ].apply( instance, args ) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   294
						instance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   295
				if ( methodValue !== instance && methodValue !== undefined ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   296
					returnValue = methodValue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   297
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   298
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   299
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   300
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   301
			this.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   302
				var instance = $.data( this, name );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   303
				if ( instance ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   304
					if ( options ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   305
						instance.option( options );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   306
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   307
					instance._init();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   308
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   309
					$.data( this, name, new object( options, this ) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   310
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   311
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   312
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   313
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   314
		return returnValue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   315
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   316
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   317
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   318
$.Widget = function( options, element ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   319
	// allow instantiation without initializing for simple inheritance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   320
	if ( arguments.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   321
		this._createWidget( options, element );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   322
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   323
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   324
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   325
$.Widget.prototype = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   326
	widgetName: "widget",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   327
	widgetEventPrefix: "",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   328
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   329
		disabled: false
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   330
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   331
	_createWidget: function( options, element ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   332
		// $.widget.bridge stores the plugin instance, but we do it anyway
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   333
		// so that it's stored even before the _create function runs
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   334
		this.element = $( element ).data( this.widgetName, this );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   335
		this.options = $.extend( true, {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   336
			this.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   337
			$.metadata && $.metadata.get( element )[ this.widgetName ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   338
			options );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   339
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   340
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   341
		this.element.bind( "remove." + this.widgetName, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   342
			self.destroy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   343
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   344
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   345
		this._create();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   346
		this._init();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   347
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   348
	_create: function() {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   349
	_init: function() {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   350
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   351
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   352
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   353
			.unbind( "." + this.widgetName )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   354
			.removeData( this.widgetName );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   355
		this.widget()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   356
			.unbind( "." + this.widgetName )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   357
			.removeAttr( "aria-disabled" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   358
			.removeClass(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   359
				this.widgetBaseClass + "-disabled " +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   360
				"ui-state-disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   361
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   362
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   363
	widget: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   364
		return this.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   365
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   366
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   367
	option: function( key, value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   368
		var options = key,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   369
			self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   370
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   371
		if ( arguments.length === 0 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   372
			// don't return a reference to the internal hash
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   373
			return $.extend( {}, self.options );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   374
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   375
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   376
		if  (typeof key === "string" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   377
			if ( value === undefined ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   378
				return this.options[ key ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   379
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   380
			options = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   381
			options[ key ] = value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   382
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   383
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   384
		$.each( options, function( key, value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   385
			self._setOption( key, value );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   386
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   387
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   388
		return self;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   389
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   390
	_setOption: function( key, value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   391
		this.options[ key ] = value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   392
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   393
		if ( key === "disabled" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   394
			this.widget()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   395
				[ value ? "addClass" : "removeClass"](
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   396
					this.widgetBaseClass + "-disabled" + " " +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   397
					"ui-state-disabled" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   398
				.attr( "aria-disabled", value );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   399
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   400
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   401
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   402
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   403
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   404
	enable: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   405
		return this._setOption( "disabled", false );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   406
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   407
	disable: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   408
		return this._setOption( "disabled", true );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   409
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   410
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   411
	_trigger: function( type, event, data ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   412
		var callback = this.options[ type ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   413
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   414
		event = $.Event( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   415
		event.type = ( type === this.widgetEventPrefix ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   416
			type :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   417
			this.widgetEventPrefix + type ).toLowerCase();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   418
		data = data || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   419
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   420
		// copy original event properties over to the new event
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   421
		// this would happen if we could call $.event.fix instead of $.Event
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   422
		// but we don't have a way to force an event to be fixed multiple times
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   423
		if ( event.originalEvent ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   424
			for ( var i = $.event.props.length, prop; i; ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   425
				prop = $.event.props[ --i ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   426
				event[ prop ] = event.originalEvent[ prop ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   427
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   428
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   429
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   430
		this.element.trigger( event, data );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   431
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   432
		return !( $.isFunction(callback) &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   433
			callback.call( this.element[0], event, data ) === false ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   434
			event.isDefaultPrevented() );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   435
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   436
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   437
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   438
})( jQuery );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   439
/*!
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   440
 * jQuery UI Mouse 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   441
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   442
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   443
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   444
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   445
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   446
 * http://docs.jquery.com/UI/Mouse
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   447
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   448
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   449
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   450
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   451
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   452
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   453
$.widget("ui.mouse", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   454
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   455
		cancel: ':input,option',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   456
		distance: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   457
		delay: 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   458
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   459
	_mouseInit: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   460
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   461
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   462
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   463
			.bind('mousedown.'+this.widgetName, function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   464
				return self._mouseDown(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   465
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   466
			.bind('click.'+this.widgetName, function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   467
				if(self._preventClickEvent) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   468
					self._preventClickEvent = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   469
					event.stopImmediatePropagation();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   470
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   471
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   472
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   473
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   474
		this.started = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   475
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   476
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   477
	// TODO: make sure destroying one instance of mouse doesn't mess with
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   478
	// other instances of mouse
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   479
	_mouseDestroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   480
		this.element.unbind('.'+this.widgetName);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   481
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   482
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   483
	_mouseDown: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   484
		// don't let more than one widget handle mouseStart
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   485
		// TODO: figure out why we have to use originalEvent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   486
		event.originalEvent = event.originalEvent || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   487
		if (event.originalEvent.mouseHandled) { return; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   488
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   489
		// we may have missed mouseup (out of window)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   490
		(this._mouseStarted && this._mouseUp(event));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   491
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   492
		this._mouseDownEvent = event;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   493
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   494
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   495
			btnIsLeft = (event.which == 1),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   496
			elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   497
		if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   498
			return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   499
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   500
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   501
		this.mouseDelayMet = !this.options.delay;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   502
		if (!this.mouseDelayMet) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   503
			this._mouseDelayTimer = setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   504
				self.mouseDelayMet = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   505
			}, this.options.delay);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   506
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   507
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   508
		if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   509
			this._mouseStarted = (this._mouseStart(event) !== false);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   510
			if (!this._mouseStarted) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   511
				event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   512
				return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   513
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   514
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   515
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   516
		// these delegates are required to keep context
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   517
		this._mouseMoveDelegate = function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   518
			return self._mouseMove(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   519
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   520
		this._mouseUpDelegate = function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   521
			return self._mouseUp(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   522
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   523
		$(document)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   524
			.bind('mousemove.'+this.widgetName, this._mouseMoveDelegate)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   525
			.bind('mouseup.'+this.widgetName, this._mouseUpDelegate);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   526
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   527
		// preventDefault() is used to prevent the selection of text here -
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   528
		// however, in Safari, this causes select boxes not to be selectable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   529
		// anymore, so this fix is needed
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   530
		($.browser.safari || event.preventDefault());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   531
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   532
		event.originalEvent.mouseHandled = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   533
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   534
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   535
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   536
	_mouseMove: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   537
		// IE mouseup check - mouseup happened when mouse was out of window
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   538
		if ($.browser.msie && !event.button) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   539
			return this._mouseUp(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   540
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   541
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   542
		if (this._mouseStarted) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   543
			this._mouseDrag(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   544
			return event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   545
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   546
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   547
		if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   548
			this._mouseStarted =
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   549
				(this._mouseStart(this._mouseDownEvent, event) !== false);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   550
			(this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   551
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   552
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   553
		return !this._mouseStarted;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   554
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   555
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   556
	_mouseUp: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   557
		$(document)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   558
			.unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   559
			.unbind('mouseup.'+this.widgetName, this._mouseUpDelegate);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   560
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   561
		if (this._mouseStarted) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   562
			this._mouseStarted = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   563
			this._preventClickEvent = (event.target == this._mouseDownEvent.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   564
			this._mouseStop(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   565
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   566
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   567
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   568
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   569
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   570
	_mouseDistanceMet: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   571
		return (Math.max(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   572
				Math.abs(this._mouseDownEvent.pageX - event.pageX),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   573
				Math.abs(this._mouseDownEvent.pageY - event.pageY)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   574
			) >= this.options.distance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   575
		);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   576
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   577
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   578
	_mouseDelayMet: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   579
		return this.mouseDelayMet;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   580
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   581
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   582
	// These are placeholder methods, to be overriden by extending plugin
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   583
	_mouseStart: function(event) {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   584
	_mouseDrag: function(event) {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   585
	_mouseStop: function(event) {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   586
	_mouseCapture: function(event) { return true; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   587
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   588
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   589
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   590
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   591
 * jQuery UI Position 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   592
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   593
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   594
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   595
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   596
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   597
 * http://docs.jquery.com/UI/Position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   598
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   599
(function( $ ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   600
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   601
$.ui = $.ui || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   602
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   603
var horizontalPositions = /left|center|right/,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   604
	horizontalDefault = "center",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   605
	verticalPositions = /top|center|bottom/,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   606
	verticalDefault = "center",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   607
	_position = $.fn.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   608
	_offset = $.fn.offset;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   609
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   610
$.fn.position = function( options ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   611
	if ( !options || !options.of ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   612
		return _position.apply( this, arguments );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   613
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   614
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   615
	// make a copy, we don't want to modify arguments
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   616
	options = $.extend( {}, options );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   617
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   618
	var target = $( options.of ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   619
		collision = ( options.collision || "flip" ).split( " " ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   620
		offset = options.offset ? options.offset.split( " " ) : [ 0, 0 ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   621
		targetWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   622
		targetHeight,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   623
		basePosition;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   624
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   625
	if ( options.of.nodeType === 9 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   626
		targetWidth = target.width();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   627
		targetHeight = target.height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   628
		basePosition = { top: 0, left: 0 };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   629
	} else if ( options.of.scrollTo && options.of.document ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   630
		targetWidth = target.width();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   631
		targetHeight = target.height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   632
		basePosition = { top: target.scrollTop(), left: target.scrollLeft() };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   633
	} else if ( options.of.preventDefault ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   634
		// force left top to allow flipping
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   635
		options.at = "left top";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   636
		targetWidth = targetHeight = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   637
		basePosition = { top: options.of.pageY, left: options.of.pageX };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   638
	} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   639
		targetWidth = target.outerWidth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   640
		targetHeight = target.outerHeight();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   641
		basePosition = target.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   642
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   643
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   644
	// force my and at to have valid horizontal and veritcal positions
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   645
	// if a value is missing or invalid, it will be converted to center 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   646
	$.each( [ "my", "at" ], function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   647
		var pos = ( options[this] || "" ).split( " " );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   648
		if ( pos.length === 1) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   649
			pos = horizontalPositions.test( pos[0] ) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   650
				pos.concat( [verticalDefault] ) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   651
				verticalPositions.test( pos[0] ) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   652
					[ horizontalDefault ].concat( pos ) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   653
					[ horizontalDefault, verticalDefault ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   654
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   655
		pos[ 0 ] = horizontalPositions.test( pos[0] ) ? pos[ 0 ] : horizontalDefault;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   656
		pos[ 1 ] = verticalPositions.test( pos[1] ) ? pos[ 1 ] : verticalDefault;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   657
		options[ this ] = pos;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   658
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   659
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   660
	// normalize collision option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   661
	if ( collision.length === 1 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   662
		collision[ 1 ] = collision[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   663
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   664
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   665
	// normalize offset option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   666
	offset[ 0 ] = parseInt( offset[0], 10 ) || 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   667
	if ( offset.length === 1 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   668
		offset[ 1 ] = offset[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   669
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   670
	offset[ 1 ] = parseInt( offset[1], 10 ) || 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   671
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   672
	if ( options.at[0] === "right" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   673
		basePosition.left += targetWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   674
	} else if (options.at[0] === horizontalDefault ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   675
		basePosition.left += targetWidth / 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   676
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   677
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   678
	if ( options.at[1] === "bottom" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   679
		basePosition.top += targetHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   680
	} else if ( options.at[1] === verticalDefault ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   681
		basePosition.top += targetHeight / 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   682
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   683
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   684
	basePosition.left += offset[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   685
	basePosition.top += offset[ 1 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   686
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   687
	return this.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   688
		var elem = $( this ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   689
			elemWidth = elem.outerWidth(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   690
			elemHeight = elem.outerHeight(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   691
			position = $.extend( {}, basePosition );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   692
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   693
		if ( options.my[0] === "right" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   694
			position.left -= elemWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   695
		} else if ( options.my[0] === horizontalDefault ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   696
			position.left -= elemWidth / 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   697
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   698
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   699
		if ( options.my[1] === "bottom" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   700
			position.top -= elemHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   701
		} else if ( options.my[1] === verticalDefault ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   702
			position.top -= elemHeight / 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   703
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   704
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   705
		// prevent fractions (see #5280)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   706
		position.left = parseInt( position.left );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   707
		position.top = parseInt( position.top );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   708
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   709
		$.each( [ "left", "top" ], function( i, dir ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   710
			if ( $.ui.position[ collision[i] ] ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   711
				$.ui.position[ collision[i] ][ dir ]( position, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   712
					targetWidth: targetWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   713
					targetHeight: targetHeight,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   714
					elemWidth: elemWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   715
					elemHeight: elemHeight,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   716
					offset: offset,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   717
					my: options.my,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   718
					at: options.at
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   719
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   720
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   721
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   722
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   723
		if ( $.fn.bgiframe ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   724
			elem.bgiframe();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   725
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   726
		elem.offset( $.extend( position, { using: options.using } ) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   727
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   728
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   729
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   730
$.ui.position = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   731
	fit: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   732
		left: function( position, data ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   733
			var win = $( window ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   734
				over = position.left + data.elemWidth - win.width() - win.scrollLeft();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   735
			position.left = over > 0 ? position.left - over : Math.max( 0, position.left );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   736
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   737
		top: function( position, data ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   738
			var win = $( window ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   739
				over = position.top + data.elemHeight - win.height() - win.scrollTop();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   740
			position.top = over > 0 ? position.top - over : Math.max( 0, position.top );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   741
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   742
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   743
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   744
	flip: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   745
		left: function( position, data ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   746
			if ( data.at[0] === "center" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   747
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   748
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   749
			var win = $( window ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   750
				over = position.left + data.elemWidth - win.width() - win.scrollLeft(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   751
				myOffset = data.my[ 0 ] === "left" ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   752
					-data.elemWidth :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   753
					data.my[ 0 ] === "right" ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   754
						data.elemWidth :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   755
						0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   756
				offset = -2 * data.offset[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   757
			position.left += position.left < 0 ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   758
				myOffset + data.targetWidth + offset :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   759
				over > 0 ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   760
					myOffset - data.targetWidth + offset :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   761
					0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   762
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   763
		top: function( position, data ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   764
			if ( data.at[1] === "center" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   765
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   766
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   767
			var win = $( window ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   768
				over = position.top + data.elemHeight - win.height() - win.scrollTop(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   769
				myOffset = data.my[ 1 ] === "top" ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   770
					-data.elemHeight :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   771
					data.my[ 1 ] === "bottom" ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   772
						data.elemHeight :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   773
						0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   774
				atOffset = data.at[ 1 ] === "top" ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   775
					data.targetHeight :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   776
					-data.targetHeight,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   777
				offset = -2 * data.offset[ 1 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   778
			position.top += position.top < 0 ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   779
				myOffset + data.targetHeight + offset :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   780
				over > 0 ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   781
					myOffset + atOffset + offset :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   782
					0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   783
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   784
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   785
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   786
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   787
// offset setter from jQuery 1.4
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   788
if ( !$.offset.setOffset ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   789
	$.offset.setOffset = function( elem, options ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   790
		// set position first, in-case top/left are set even on static elem
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   791
		if ( /static/.test( $.curCSS( elem, "position" ) ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   792
			elem.style.position = "relative";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   793
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   794
		var curElem   = $( elem ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   795
			curOffset = curElem.offset(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   796
			curTop    = parseInt( $.curCSS( elem, "top",  true ), 10 ) || 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   797
			curLeft   = parseInt( $.curCSS( elem, "left", true ), 10)  || 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   798
			props     = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   799
				top:  (options.top  - curOffset.top)  + curTop,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   800
				left: (options.left - curOffset.left) + curLeft
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   801
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   802
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   803
		if ( 'using' in options ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   804
			options.using.call( elem, props );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   805
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   806
			curElem.css( props );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   807
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   808
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   809
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   810
	$.fn.offset = function( options ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   811
		var elem = this[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   812
		if ( !elem || !elem.ownerDocument ) { return null; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   813
		if ( options ) { 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   814
			return this.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   815
				$.offset.setOffset( this, options );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   816
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   817
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   818
		return _offset.call( this );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   819
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   820
}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   821
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   822
}( jQuery ));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   823
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   824
 * jQuery UI Draggable 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   825
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   826
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   827
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   828
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   829
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   830
 * http://docs.jquery.com/UI/Draggables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   831
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   832
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   833
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   834
 *	jquery.ui.mouse.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   835
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   836
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   837
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   838
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   839
$.widget("ui.draggable", $.ui.mouse, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   840
	widgetEventPrefix: "drag",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   841
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   842
		addClasses: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   843
		appendTo: "parent",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   844
		axis: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   845
		connectToSortable: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   846
		containment: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   847
		cursor: "auto",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   848
		cursorAt: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   849
		grid: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   850
		handle: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   851
		helper: "original",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   852
		iframeFix: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   853
		opacity: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   854
		refreshPositions: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   855
		revert: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   856
		revertDuration: 500,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   857
		scope: "default",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   858
		scroll: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   859
		scrollSensitivity: 20,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   860
		scrollSpeed: 20,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   861
		snap: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   862
		snapMode: "both",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   863
		snapTolerance: 20,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   864
		stack: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   865
		zIndex: false
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   866
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   867
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   868
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   869
		if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position")))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   870
			this.element[0].style.position = 'relative';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   871
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   872
		(this.options.addClasses && this.element.addClass("ui-draggable"));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   873
		(this.options.disabled && this.element.addClass("ui-draggable-disabled"));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   874
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   875
		this._mouseInit();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   876
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   877
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   878
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   879
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   880
		if(!this.element.data('draggable')) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   881
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   882
			.removeData("draggable")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   883
			.unbind(".draggable")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   884
			.removeClass("ui-draggable"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   885
				+ " ui-draggable-dragging"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   886
				+ " ui-draggable-disabled");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   887
		this._mouseDestroy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   888
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   889
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   890
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   891
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   892
	_mouseCapture: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   893
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   894
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   895
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   896
		// among others, prevent a drag on a resizable-handle
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   897
		if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   898
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   899
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   900
		//Quit if we're not on a valid handle
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   901
		this.handle = this._getHandle(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   902
		if (!this.handle)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   903
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   904
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   905
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   906
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   907
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   908
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   909
	_mouseStart: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   910
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   911
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   912
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   913
		//Create and append the visible helper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   914
		this.helper = this._createHelper(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   915
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   916
		//Cache the helper size
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   917
		this._cacheHelperProportions();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   918
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   919
		//If ddmanager is used for droppables, set the global draggable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   920
		if($.ui.ddmanager)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   921
			$.ui.ddmanager.current = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   922
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   923
		/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   924
		 * - Position generation -
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   925
		 * This block generates everything position related - it's the core of draggables.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   926
		 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   927
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   928
		//Cache the margins of the original element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   929
		this._cacheMargins();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   930
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   931
		//Store the helper's css position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   932
		this.cssPosition = this.helper.css("position");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   933
		this.scrollParent = this.helper.scrollParent();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   934
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   935
		//The element's absolute position on the page minus margins
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   936
		this.offset = this.positionAbs = this.element.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   937
		this.offset = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   938
			top: this.offset.top - this.margins.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   939
			left: this.offset.left - this.margins.left
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   940
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   941
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   942
		$.extend(this.offset, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   943
			click: { //Where the click happened, relative to the element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   944
				left: event.pageX - this.offset.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   945
				top: event.pageY - this.offset.top
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   946
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   947
			parent: this._getParentOffset(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   948
			relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   949
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   950
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   951
		//Generate the original position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   952
		this.originalPosition = this.position = this._generatePosition(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   953
		this.originalPageX = event.pageX;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   954
		this.originalPageY = event.pageY;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   955
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   956
		//Adjust the mouse offset relative to the helper if 'cursorAt' is supplied
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   957
		(o.cursorAt && this._adjustOffsetFromHelper(o.cursorAt));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   958
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   959
		//Set a containment if given in the options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   960
		if(o.containment)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   961
			this._setContainment();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   962
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   963
		//Trigger event + callbacks
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   964
		if(this._trigger("start", event) === false) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   965
			this._clear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   966
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   967
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   968
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   969
		//Recache the helper size
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   970
		this._cacheHelperProportions();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   971
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   972
		//Prepare the droppable offsets
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   973
		if ($.ui.ddmanager && !o.dropBehaviour)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   974
			$.ui.ddmanager.prepareOffsets(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   975
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   976
		this.helper.addClass("ui-draggable-dragging");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   977
		this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   978
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   979
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   980
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   981
	_mouseDrag: function(event, noPropagation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   982
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   983
		//Compute the helpers position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   984
		this.position = this._generatePosition(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   985
		this.positionAbs = this._convertPositionTo("absolute");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   986
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   987
		//Call plugins and callbacks and use the resulting position if something is returned
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   988
		if (!noPropagation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   989
			var ui = this._uiHash();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   990
			if(this._trigger('drag', event, ui) === false) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   991
				this._mouseUp({});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   992
				return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   993
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   994
			this.position = ui.position;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   995
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   996
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   997
		if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   998
		if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
   999
		if($.ui.ddmanager) $.ui.ddmanager.drag(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1000
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1001
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1002
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1003
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1004
	_mouseStop: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1005
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1006
		//If we are using droppables, inform the manager about the drop
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1007
		var dropped = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1008
		if ($.ui.ddmanager && !this.options.dropBehaviour)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1009
			dropped = $.ui.ddmanager.drop(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1010
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1011
		//if a drop comes from outside (a sortable)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1012
		if(this.dropped) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1013
			dropped = this.dropped;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1014
			this.dropped = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1015
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1016
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1017
		//if the original element is removed, don't bother to continue
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1018
		if(!this.element[0] || !this.element[0].parentNode)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1019
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1020
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1021
		if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1022
			var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1023
			$(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1024
				if(self._trigger("stop", event) !== false) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1025
					self._clear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1026
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1027
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1028
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1029
			if(this._trigger("stop", event) !== false) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1030
				this._clear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1031
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1032
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1033
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1034
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1035
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1036
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1037
	cancel: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1038
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1039
		if(this.helper.is(".ui-draggable-dragging")) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1040
			this._mouseUp({});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1041
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1042
			this._clear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1043
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1044
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1045
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1046
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1047
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1048
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1049
	_getHandle: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1050
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1051
		var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1052
		$(this.options.handle, this.element)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1053
			.find("*")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1054
			.andSelf()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1055
			.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1056
				if(this == event.target) handle = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1057
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1058
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1059
		return handle;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1060
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1061
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1062
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1063
	_createHelper: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1064
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1065
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1066
		var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1067
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1068
		if(!helper.parents('body').length)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1069
			helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1070
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1071
		if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position")))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1072
			helper.css("position", "absolute");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1073
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1074
		return helper;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1075
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1076
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1077
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1078
	_adjustOffsetFromHelper: function(obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1079
		if (typeof obj == 'string') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1080
			obj = obj.split(' ');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1081
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1082
		if ($.isArray(obj)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1083
			obj = {left: +obj[0], top: +obj[1] || 0};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1084
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1085
		if ('left' in obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1086
			this.offset.click.left = obj.left + this.margins.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1087
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1088
		if ('right' in obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1089
			this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1090
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1091
		if ('top' in obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1092
			this.offset.click.top = obj.top + this.margins.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1093
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1094
		if ('bottom' in obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1095
			this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1096
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1097
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1098
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1099
	_getParentOffset: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1100
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1101
		//Get the offsetParent and cache its position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1102
		this.offsetParent = this.helper.offsetParent();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1103
		var po = this.offsetParent.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1104
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1105
		// This is a special case where we need to modify a offset calculated on start, since the following happened:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1106
		// 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1107
		// 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1108
		//    the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1109
		if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1110
			po.left += this.scrollParent.scrollLeft();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1111
			po.top += this.scrollParent.scrollTop();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1112
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1113
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1114
		if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1115
		|| (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1116
			po = { top: 0, left: 0 };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1117
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1118
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1119
			top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1120
			left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1121
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1122
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1123
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1124
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1125
	_getRelativeOffset: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1126
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1127
		if(this.cssPosition == "relative") {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1128
			var p = this.element.position();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1129
			return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1130
				top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1131
				left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1132
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1133
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1134
			return { top: 0, left: 0 };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1135
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1136
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1137
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1138
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1139
	_cacheMargins: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1140
		this.margins = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1141
			left: (parseInt(this.element.css("marginLeft"),10) || 0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1142
			top: (parseInt(this.element.css("marginTop"),10) || 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1143
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1144
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1145
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1146
	_cacheHelperProportions: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1147
		this.helperProportions = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1148
			width: this.helper.outerWidth(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1149
			height: this.helper.outerHeight()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1150
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1151
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1152
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1153
	_setContainment: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1154
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1155
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1156
		if(o.containment == 'parent') o.containment = this.helper[0].parentNode;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1157
		if(o.containment == 'document' || o.containment == 'window') this.containment = [
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1158
			0 - this.offset.relative.left - this.offset.parent.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1159
			0 - this.offset.relative.top - this.offset.parent.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1160
			$(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1161
			($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1162
		];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1163
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1164
		if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1165
			var ce = $(o.containment)[0]; if(!ce) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1166
			var co = $(o.containment).offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1167
			var over = ($(ce).css("overflow") != 'hidden');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1168
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1169
			this.containment = [
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1170
				co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1171
				co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1172
				co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1173
				co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1174
			];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1175
		} else if(o.containment.constructor == Array) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1176
			this.containment = o.containment;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1177
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1178
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1179
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1180
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1181
	_convertPositionTo: function(d, pos) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1182
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1183
		if(!pos) pos = this.position;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1184
		var mod = d == "absolute" ? 1 : -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1185
		var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1186
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1187
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1188
			top: (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1189
				pos.top																	// The absolute mouse position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1190
				+ this.offset.relative.top * mod										// Only for relative positioned nodes: Relative offset from element to offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1191
				+ this.offset.parent.top * mod											// The offsetParent's offset without borders (offset + border)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1192
				- ($.browser.safari && $.browser.version < 526 && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1193
			),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1194
			left: (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1195
				pos.left																// The absolute mouse position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1196
				+ this.offset.relative.left * mod										// Only for relative positioned nodes: Relative offset from element to offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1197
				+ this.offset.parent.left * mod											// The offsetParent's offset without borders (offset + border)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1198
				- ($.browser.safari && $.browser.version < 526 && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1199
			)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1200
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1201
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1202
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1203
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1204
	_generatePosition: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1205
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1206
		var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1207
		var pageX = event.pageX;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1208
		var pageY = event.pageY;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1209
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1210
		/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1211
		 * - Position constraining -
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1212
		 * Constrain the position to a mix of grid, containment.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1213
		 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1214
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1215
		if(this.originalPosition) { //If we are not dragging yet, we won't check for options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1216
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1217
			if(this.containment) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1218
				if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1219
				if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1220
				if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1221
				if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1222
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1223
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1224
			if(o.grid) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1225
				var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1226
				pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1227
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1228
				var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1229
				pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1230
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1231
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1232
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1233
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1234
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1235
			top: (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1236
				pageY																// The absolute mouse position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1237
				- this.offset.click.top													// Click offset (relative to the element)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1238
				- this.offset.relative.top												// Only for relative positioned nodes: Relative offset from element to offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1239
				- this.offset.parent.top												// The offsetParent's offset without borders (offset + border)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1240
				+ ($.browser.safari && $.browser.version < 526 && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1241
			),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1242
			left: (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1243
				pageX																// The absolute mouse position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1244
				- this.offset.click.left												// Click offset (relative to the element)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1245
				- this.offset.relative.left												// Only for relative positioned nodes: Relative offset from element to offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1246
				- this.offset.parent.left												// The offsetParent's offset without borders (offset + border)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1247
				+ ($.browser.safari && $.browser.version < 526 && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1248
			)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1249
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1250
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1251
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1252
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1253
	_clear: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1254
		this.helper.removeClass("ui-draggable-dragging");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1255
		if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1256
		//if($.ui.ddmanager) $.ui.ddmanager.current = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1257
		this.helper = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1258
		this.cancelHelperRemoval = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1259
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1260
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1261
	// From now on bulk stuff - mainly helpers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1262
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1263
	_trigger: function(type, event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1264
		ui = ui || this._uiHash();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1265
		$.ui.plugin.call(this, type, [event, ui]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1266
		if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1267
		return $.Widget.prototype._trigger.call(this, type, event, ui);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1268
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1269
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1270
	plugins: {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1271
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1272
	_uiHash: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1273
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1274
			helper: this.helper,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1275
			position: this.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1276
			originalPosition: this.originalPosition,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1277
			offset: this.positionAbs
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1278
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1279
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1280
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1281
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1282
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1283
$.extend($.ui.draggable, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1284
	version: "1.8.1"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1285
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1286
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1287
$.ui.plugin.add("draggable", "connectToSortable", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1288
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1289
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1290
		var inst = $(this).data("draggable"), o = inst.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1291
			uiSortable = $.extend({}, ui, { item: inst.element });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1292
		inst.sortables = [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1293
		$(o.connectToSortable).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1294
			var sortable = $.data(this, 'sortable');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1295
			if (sortable && !sortable.options.disabled) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1296
				inst.sortables.push({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1297
					instance: sortable,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1298
					shouldRevert: sortable.options.revert
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1299
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1300
				sortable._refreshItems();	//Do a one-time refresh at start to refresh the containerCache
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1301
				sortable._trigger("activate", event, uiSortable);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1302
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1303
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1304
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1305
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1306
	stop: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1307
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1308
		//If we are still over the sortable, we fake the stop event of the sortable, but also remove helper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1309
		var inst = $(this).data("draggable"),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1310
			uiSortable = $.extend({}, ui, { item: inst.element });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1311
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1312
		$.each(inst.sortables, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1313
			if(this.instance.isOver) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1314
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1315
				this.instance.isOver = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1316
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1317
				inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1318
				this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1319
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1320
				//The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1321
				if(this.shouldRevert) this.instance.options.revert = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1322
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1323
				//Trigger the stop of the sortable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1324
				this.instance._mouseStop(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1325
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1326
				this.instance.options.helper = this.instance.options._helper;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1327
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1328
				//If the helper has been the original item, restore properties in the sortable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1329
				if(inst.options.helper == 'original')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1330
					this.instance.currentItem.css({ top: 'auto', left: 'auto' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1331
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1332
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1333
				this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1334
				this.instance._trigger("deactivate", event, uiSortable);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1335
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1336
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1337
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1338
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1339
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1340
	drag: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1341
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1342
		var inst = $(this).data("draggable"), self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1343
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1344
		var checkPos = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1345
			var dyClick = this.offset.click.top, dxClick = this.offset.click.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1346
			var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1347
			var itemHeight = o.height, itemWidth = o.width;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1348
			var itemTop = o.top, itemLeft = o.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1349
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1350
			return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1351
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1352
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1353
		$.each(inst.sortables, function(i) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1354
			
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1355
			//Copy over some variables to allow calling the sortable's native _intersectsWith
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1356
			this.instance.positionAbs = inst.positionAbs;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1357
			this.instance.helperProportions = inst.helperProportions;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1358
			this.instance.offset.click = inst.offset.click;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1359
			
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1360
			if(this.instance._intersectsWith(this.instance.containerCache)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1361
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1362
				//If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1363
				if(!this.instance.isOver) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1364
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1365
					this.instance.isOver = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1366
					//Now we fake the start of dragging for the sortable instance,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1367
					//by cloning the list group item, appending it to the sortable and using it as inst.currentItem
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1368
					//We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1369
					this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1370
					this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1371
					this.instance.options.helper = function() { return ui.helper[0]; };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1372
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1373
					event.target = this.instance.currentItem[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1374
					this.instance._mouseCapture(event, true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1375
					this.instance._mouseStart(event, true, true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1376
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1377
					//Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1378
					this.instance.offset.click.top = inst.offset.click.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1379
					this.instance.offset.click.left = inst.offset.click.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1380
					this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1381
					this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1382
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1383
					inst._trigger("toSortable", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1384
					inst.dropped = this.instance.element; //draggable revert needs that
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1385
					//hack so receive/update callbacks work (mostly)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1386
					inst.currentItem = inst.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1387
					this.instance.fromOutside = inst;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1388
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1389
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1390
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1391
				//Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1392
				if(this.instance.currentItem) this.instance._mouseDrag(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1393
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1394
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1395
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1396
				//If it doesn't intersect with the sortable, and it intersected before,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1397
				//we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1398
				if(this.instance.isOver) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1399
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1400
					this.instance.isOver = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1401
					this.instance.cancelHelperRemoval = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1402
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1403
					//Prevent reverting on this forced stop
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1404
					this.instance.options.revert = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1405
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1406
					// The out event needs to be triggered independently
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1407
					this.instance._trigger('out', event, this.instance._uiHash(this.instance));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1408
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1409
					this.instance._mouseStop(event, true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1410
					this.instance.options.helper = this.instance.options._helper;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1411
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1412
					//Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1413
					this.instance.currentItem.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1414
					if(this.instance.placeholder) this.instance.placeholder.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1415
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1416
					inst._trigger("fromSortable", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1417
					inst.dropped = false; //draggable revert needs that
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1418
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1419
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1420
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1421
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1422
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1423
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1424
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1425
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1426
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1427
$.ui.plugin.add("draggable", "cursor", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1428
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1429
		var t = $('body'), o = $(this).data('draggable').options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1430
		if (t.css("cursor")) o._cursor = t.css("cursor");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1431
		t.css("cursor", o.cursor);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1432
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1433
	stop: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1434
		var o = $(this).data('draggable').options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1435
		if (o._cursor) $('body').css("cursor", o._cursor);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1436
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1437
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1438
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1439
$.ui.plugin.add("draggable", "iframeFix", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1440
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1441
		var o = $(this).data('draggable').options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1442
		$(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1443
			$('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1444
			.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1445
				width: this.offsetWidth+"px", height: this.offsetHeight+"px",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1446
				position: "absolute", opacity: "0.001", zIndex: 1000
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1447
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1448
			.css($(this).offset())
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1449
			.appendTo("body");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1450
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1451
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1452
	stop: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1453
		$("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1454
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1455
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1456
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1457
$.ui.plugin.add("draggable", "opacity", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1458
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1459
		var t = $(ui.helper), o = $(this).data('draggable').options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1460
		if(t.css("opacity")) o._opacity = t.css("opacity");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1461
		t.css('opacity', o.opacity);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1462
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1463
	stop: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1464
		var o = $(this).data('draggable').options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1465
		if(o._opacity) $(ui.helper).css('opacity', o._opacity);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1466
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1467
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1468
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1469
$.ui.plugin.add("draggable", "scroll", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1470
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1471
		var i = $(this).data("draggable");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1472
		if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1473
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1474
	drag: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1475
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1476
		var i = $(this).data("draggable"), o = i.options, scrolled = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1477
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1478
		if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1479
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1480
			if(!o.axis || o.axis != 'x') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1481
				if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1482
					i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1483
				else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1484
					i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1485
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1486
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1487
			if(!o.axis || o.axis != 'y') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1488
				if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1489
					i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1490
				else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1491
					i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1492
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1493
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1494
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1495
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1496
			if(!o.axis || o.axis != 'x') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1497
				if(event.pageY - $(document).scrollTop() < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1498
					scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1499
				else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1500
					scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1501
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1502
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1503
			if(!o.axis || o.axis != 'y') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1504
				if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1505
					scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1506
				else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1507
					scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1508
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1509
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1510
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1511
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1512
		if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1513
			$.ui.ddmanager.prepareOffsets(i, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1514
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1515
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1516
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1517
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1518
$.ui.plugin.add("draggable", "snap", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1519
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1520
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1521
		var i = $(this).data("draggable"), o = i.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1522
		i.snapElements = [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1523
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1524
		$(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1525
			var $t = $(this); var $o = $t.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1526
			if(this != i.element[0]) i.snapElements.push({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1527
				item: this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1528
				width: $t.outerWidth(), height: $t.outerHeight(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1529
				top: $o.top, left: $o.left
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1530
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1531
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1532
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1533
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1534
	drag: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1535
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1536
		var inst = $(this).data("draggable"), o = inst.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1537
		var d = o.snapTolerance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1538
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1539
		var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1540
			y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1541
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1542
		for (var i = inst.snapElements.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1543
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1544
			var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1545
				t = inst.snapElements[i].top, b = t + inst.snapElements[i].height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1546
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1547
			//Yes, I know, this is insane ;)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1548
			if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1549
				if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item })));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1550
				inst.snapElements[i].snapping = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1551
				continue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1552
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1553
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1554
			if(o.snapMode != 'inner') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1555
				var ts = Math.abs(t - y2) <= d;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1556
				var bs = Math.abs(b - y1) <= d;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1557
				var ls = Math.abs(l - x2) <= d;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1558
				var rs = Math.abs(r - x1) <= d;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1559
				if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1560
				if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1561
				if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1562
				if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1563
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1564
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1565
			var first = (ts || bs || ls || rs);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1566
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1567
			if(o.snapMode != 'outer') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1568
				var ts = Math.abs(t - y1) <= d;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1569
				var bs = Math.abs(b - y2) <= d;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1570
				var ls = Math.abs(l - x1) <= d;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1571
				var rs = Math.abs(r - x2) <= d;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1572
				if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1573
				if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1574
				if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1575
				if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1576
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1577
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1578
			if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1579
				(inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item })));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1580
			inst.snapElements[i].snapping = (ts || bs || ls || rs || first);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1581
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1582
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1583
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1584
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1585
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1586
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1587
$.ui.plugin.add("draggable", "stack", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1588
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1589
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1590
		var o = $(this).data("draggable").options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1591
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1592
		var group = $.makeArray($(o.stack)).sort(function(a,b) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1593
			return (parseInt($(a).css("zIndex"),10) || 0) - (parseInt($(b).css("zIndex"),10) || 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1594
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1595
		if (!group.length) { return; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1596
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1597
		var min = parseInt(group[0].style.zIndex) || 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1598
		$(group).each(function(i) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1599
			this.style.zIndex = min + i;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1600
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1601
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1602
		this[0].style.zIndex = min + group.length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1603
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1604
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1605
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1606
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1607
$.ui.plugin.add("draggable", "zIndex", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1608
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1609
		var t = $(ui.helper), o = $(this).data("draggable").options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1610
		if(t.css("zIndex")) o._zIndex = t.css("zIndex");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1611
		t.css('zIndex', o.zIndex);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1612
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1613
	stop: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1614
		var o = $(this).data("draggable").options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1615
		if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1616
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1617
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1618
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1619
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1620
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1621
 * jQuery UI Droppable 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1622
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1623
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1624
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1625
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1626
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1627
 * http://docs.jquery.com/UI/Droppables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1628
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1629
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1630
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1631
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1632
 *	jquery.ui.mouse.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1633
 *	jquery.ui.draggable.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1634
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1635
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1636
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1637
$.widget("ui.droppable", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1638
	widgetEventPrefix: "drop",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1639
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1640
		accept: '*',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1641
		activeClass: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1642
		addClasses: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1643
		greedy: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1644
		hoverClass: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1645
		scope: 'default',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1646
		tolerance: 'intersect'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1647
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1648
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1649
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1650
		var o = this.options, accept = o.accept;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1651
		this.isover = 0; this.isout = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1652
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1653
		this.accept = $.isFunction(accept) ? accept : function(d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1654
			return d.is(accept);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1655
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1656
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1657
		//Store the droppable's proportions
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1658
		this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1659
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1660
		// Add the reference and positions to the manager
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1661
		$.ui.ddmanager.droppables[o.scope] = $.ui.ddmanager.droppables[o.scope] || [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1662
		$.ui.ddmanager.droppables[o.scope].push(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1663
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1664
		(o.addClasses && this.element.addClass("ui-droppable"));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1665
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1666
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1667
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1668
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1669
		var drop = $.ui.ddmanager.droppables[this.options.scope];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1670
		for ( var i = 0; i < drop.length; i++ )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1671
			if ( drop[i] == this )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1672
				drop.splice(i, 1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1673
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1674
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1675
			.removeClass("ui-droppable ui-droppable-disabled")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1676
			.removeData("droppable")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1677
			.unbind(".droppable");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1678
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1679
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1680
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1681
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1682
	_setOption: function(key, value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1683
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1684
		if(key == 'accept') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1685
			this.accept = $.isFunction(value) ? value : function(d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1686
				return d.is(value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1687
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1688
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1689
		$.Widget.prototype._setOption.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1690
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1691
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1692
	_activate: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1693
		var draggable = $.ui.ddmanager.current;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1694
		if(this.options.activeClass) this.element.addClass(this.options.activeClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1695
		(draggable && this._trigger('activate', event, this.ui(draggable)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1696
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1697
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1698
	_deactivate: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1699
		var draggable = $.ui.ddmanager.current;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1700
		if(this.options.activeClass) this.element.removeClass(this.options.activeClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1701
		(draggable && this._trigger('deactivate', event, this.ui(draggable)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1702
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1703
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1704
	_over: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1705
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1706
		var draggable = $.ui.ddmanager.current;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1707
		if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1708
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1709
		if (this.accept.call(this.element[0],(draggable.currentItem || draggable.element))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1710
			if(this.options.hoverClass) this.element.addClass(this.options.hoverClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1711
			this._trigger('over', event, this.ui(draggable));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1712
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1713
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1714
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1715
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1716
	_out: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1717
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1718
		var draggable = $.ui.ddmanager.current;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1719
		if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1720
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1721
		if (this.accept.call(this.element[0],(draggable.currentItem || draggable.element))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1722
			if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1723
			this._trigger('out', event, this.ui(draggable));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1724
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1725
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1726
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1727
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1728
	_drop: function(event,custom) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1729
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1730
		var draggable = custom || $.ui.ddmanager.current;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1731
		if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1732
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1733
		var childrenIntersection = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1734
		this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1735
			var inst = $.data(this, 'droppable');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1736
			if(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1737
				inst.options.greedy
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1738
				&& !inst.options.disabled
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1739
				&& inst.options.scope == draggable.options.scope
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1740
				&& inst.accept.call(inst.element[0], (draggable.currentItem || draggable.element))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1741
				&& $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1742
			) { childrenIntersection = true; return false; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1743
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1744
		if(childrenIntersection) return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1745
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1746
		if(this.accept.call(this.element[0],(draggable.currentItem || draggable.element))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1747
			if(this.options.activeClass) this.element.removeClass(this.options.activeClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1748
			if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1749
			this._trigger('drop', event, this.ui(draggable));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1750
			return this.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1751
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1752
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1753
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1754
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1755
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1756
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1757
	ui: function(c) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1758
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1759
			draggable: (c.currentItem || c.element),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1760
			helper: c.helper,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1761
			position: c.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1762
			offset: c.positionAbs
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1763
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1764
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1765
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1766
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1767
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1768
$.extend($.ui.droppable, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1769
	version: "1.8.1"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1770
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1771
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1772
$.ui.intersect = function(draggable, droppable, toleranceMode) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1773
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1774
	if (!droppable.offset) return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1775
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1776
	var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1777
		y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1778
	var l = droppable.offset.left, r = l + droppable.proportions.width,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1779
		t = droppable.offset.top, b = t + droppable.proportions.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1780
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1781
	switch (toleranceMode) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1782
		case 'fit':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1783
			return (l < x1 && x2 < r
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1784
				&& t < y1 && y2 < b);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1785
			break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1786
		case 'intersect':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1787
			return (l < x1 + (draggable.helperProportions.width / 2) // Right Half
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1788
				&& x2 - (draggable.helperProportions.width / 2) < r // Left Half
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1789
				&& t < y1 + (draggable.helperProportions.height / 2) // Bottom Half
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1790
				&& y2 - (draggable.helperProportions.height / 2) < b ); // Top Half
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1791
			break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1792
		case 'pointer':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1793
			var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1794
				draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1795
				isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1796
			return isOver;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1797
			break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1798
		case 'touch':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1799
			return (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1800
					(y1 >= t && y1 <= b) ||	// Top edge touching
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1801
					(y2 >= t && y2 <= b) ||	// Bottom edge touching
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1802
					(y1 < t && y2 > b)		// Surrounded vertically
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1803
				) && (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1804
					(x1 >= l && x1 <= r) ||	// Left edge touching
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1805
					(x2 >= l && x2 <= r) ||	// Right edge touching
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1806
					(x1 < l && x2 > r)		// Surrounded horizontally
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1807
				);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1808
			break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1809
		default:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1810
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1811
			break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1812
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1813
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1814
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1815
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1816
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1817
	This manager tracks offsets of draggables and droppables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1818
*/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1819
$.ui.ddmanager = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1820
	current: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1821
	droppables: { 'default': [] },
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1822
	prepareOffsets: function(t, event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1823
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1824
		var m = $.ui.ddmanager.droppables[t.options.scope] || [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1825
		var type = event ? event.type : null; // workaround for #2317
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1826
		var list = (t.currentItem || t.element).find(":data(droppable)").andSelf();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1827
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1828
		droppablesLoop: for (var i = 0; i < m.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1829
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1830
			if(m[i].options.disabled || (t && !m[i].accept.call(m[i].element[0],(t.currentItem || t.element)))) continue;	//No disabled and non-accepted
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1831
			for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1832
			m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; 									//If the element is not visible, continue
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1833
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1834
			m[i].offset = m[i].element.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1835
			m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1836
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1837
			if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1838
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1839
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1840
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1841
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1842
	drop: function(draggable, event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1843
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1844
		var dropped = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1845
		$.each($.ui.ddmanager.droppables[draggable.options.scope] || [], function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1846
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1847
			if(!this.options) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1848
			if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1849
				dropped = dropped || this._drop.call(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1850
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1851
			if (!this.options.disabled && this.visible && this.accept.call(this.element[0],(draggable.currentItem || draggable.element))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1852
				this.isout = 1; this.isover = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1853
				this._deactivate.call(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1854
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1855
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1856
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1857
		return dropped;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1858
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1859
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1860
	drag: function(draggable, event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1861
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1862
		//If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1863
		if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1864
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1865
		//Run through all droppables and check their positions based on specific tolerance options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1866
		$.each($.ui.ddmanager.droppables[draggable.options.scope] || [], function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1867
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1868
			if(this.options.disabled || this.greedyChild || !this.visible) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1869
			var intersects = $.ui.intersect(draggable, this, this.options.tolerance);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1870
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1871
			var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1872
			if(!c) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1873
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1874
			var parentInstance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1875
			if (this.options.greedy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1876
				var parent = this.element.parents(':data(droppable):eq(0)');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1877
				if (parent.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1878
					parentInstance = $.data(parent[0], 'droppable');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1879
					parentInstance.greedyChild = (c == 'isover' ? 1 : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1880
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1881
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1882
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1883
			// we just moved into a greedy child
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1884
			if (parentInstance && c == 'isover') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1885
				parentInstance['isover'] = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1886
				parentInstance['isout'] = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1887
				parentInstance._out.call(parentInstance, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1888
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1889
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1890
			this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1891
			this[c == "isover" ? "_over" : "_out"].call(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1892
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1893
			// we just moved out of a greedy child
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1894
			if (parentInstance && c == 'isout') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1895
				parentInstance['isout'] = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1896
				parentInstance['isover'] = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1897
				parentInstance._over.call(parentInstance, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1898
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1899
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1900
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1901
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1902
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1903
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1904
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1905
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1906
 * jQuery UI Resizable 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1907
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1908
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1909
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1910
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1911
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1912
 * http://docs.jquery.com/UI/Resizables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1913
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1914
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1915
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1916
 *	jquery.ui.mouse.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1917
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1918
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1919
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1920
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1921
$.widget("ui.resizable", $.ui.mouse, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1922
	widgetEventPrefix: "resize",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1923
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1924
		alsoResize: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1925
		animate: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1926
		animateDuration: "slow",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1927
		animateEasing: "swing",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1928
		aspectRatio: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1929
		autoHide: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1930
		containment: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1931
		ghost: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1932
		grid: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1933
		handles: "e,s,se",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1934
		helper: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1935
		maxHeight: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1936
		maxWidth: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1937
		minHeight: 10,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1938
		minWidth: 10,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1939
		zIndex: 1000
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1940
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1941
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1942
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1943
		var self = this, o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1944
		this.element.addClass("ui-resizable");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1945
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1946
		$.extend(this, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1947
			_aspectRatio: !!(o.aspectRatio),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1948
			aspectRatio: o.aspectRatio,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1949
			originalElement: this.element,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1950
			_proportionallyResizeElements: [],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1951
			_helper: o.helper || o.ghost || o.animate ? o.helper || 'ui-resizable-helper' : null
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1952
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1953
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1954
		//Wrap the element if it cannot hold child nodes
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1955
		if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1956
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1957
			//Opera fix for relative positioning
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1958
			if (/relative/.test(this.element.css('position')) && $.browser.opera)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1959
				this.element.css({ position: 'relative', top: 'auto', left: 'auto' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1960
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1961
			//Create a wrapper element and set the wrapper to the new current internal element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1962
			this.element.wrap(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1963
				$('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1964
					position: this.element.css('position'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1965
					width: this.element.outerWidth(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1966
					height: this.element.outerHeight(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1967
					top: this.element.css('top'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1968
					left: this.element.css('left')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1969
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1970
			);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1971
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1972
			//Overwrite the original this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1973
			this.element = this.element.parent().data(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1974
				"resizable", this.element.data('resizable')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1975
			);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1976
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1977
			this.elementIsWrapper = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1978
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1979
			//Move margins to the wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1980
			this.element.css({ marginLeft: this.originalElement.css("marginLeft"), marginTop: this.originalElement.css("marginTop"), marginRight: this.originalElement.css("marginRight"), marginBottom: this.originalElement.css("marginBottom") });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1981
			this.originalElement.css({ marginLeft: 0, marginTop: 0, marginRight: 0, marginBottom: 0});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1982
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1983
			//Prevent Safari textarea resize
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1984
			this.originalResizeStyle = this.originalElement.css('resize');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1985
			this.originalElement.css('resize', 'none');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1986
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1987
			//Push the actual element to our proportionallyResize internal array
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1988
			this._proportionallyResizeElements.push(this.originalElement.css({ position: 'static', zoom: 1, display: 'block' }));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1989
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1990
			// avoid IE jump (hard set the margin)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1991
			this.originalElement.css({ margin: this.originalElement.css('margin') });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1992
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1993
			// fix handlers offset
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1994
			this._proportionallyResize();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1995
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1996
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1997
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1998
		this.handles = o.handles || (!$('.ui-resizable-handle', this.element).length ? "e,s,se" : { n: '.ui-resizable-n', e: '.ui-resizable-e', s: '.ui-resizable-s', w: '.ui-resizable-w', se: '.ui-resizable-se', sw: '.ui-resizable-sw', ne: '.ui-resizable-ne', nw: '.ui-resizable-nw' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  1999
		if(this.handles.constructor == String) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2000
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2001
			if(this.handles == 'all') this.handles = 'n,e,s,w,se,sw,ne,nw';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2002
			var n = this.handles.split(","); this.handles = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2003
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2004
			for(var i = 0; i < n.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2005
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2006
				var handle = $.trim(n[i]), hname = 'ui-resizable-'+handle;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2007
				var axis = $('<div class="ui-resizable-handle ' + hname + '"></div>');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2008
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2009
				// increase zIndex of sw, se, ne, nw axis
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2010
				//TODO : this modifies original option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2011
				if(/sw|se|ne|nw/.test(handle)) axis.css({ zIndex: ++o.zIndex });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2012
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2013
				//TODO : What's going on here?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2014
				if ('se' == handle) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2015
					axis.addClass('ui-icon ui-icon-gripsmall-diagonal-se');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2016
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2017
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2018
				//Insert into internal handles object and append to element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2019
				this.handles[handle] = '.ui-resizable-'+handle;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2020
				this.element.append(axis);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2021
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2022
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2023
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2024
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2025
		this._renderAxis = function(target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2026
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2027
			target = target || this.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2028
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2029
			for(var i in this.handles) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2030
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2031
				if(this.handles[i].constructor == String)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2032
					this.handles[i] = $(this.handles[i], this.element).show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2033
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2034
				//Apply pad to wrapper element, needed to fix axis position (textarea, inputs, scrolls)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2035
				if (this.elementIsWrapper && this.originalElement[0].nodeName.match(/textarea|input|select|button/i)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2036
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2037
					var axis = $(this.handles[i], this.element), padWrapper = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2038
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2039
					//Checking the correct pad and border
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2040
					padWrapper = /sw|ne|nw|se|n|s/.test(i) ? axis.outerHeight() : axis.outerWidth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2041
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2042
					//The padding type i have to apply...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2043
					var padPos = [ 'padding',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2044
						/ne|nw|n/.test(i) ? 'Top' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2045
						/se|sw|s/.test(i) ? 'Bottom' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2046
						/^e$/.test(i) ? 'Right' : 'Left' ].join("");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2047
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2048
					target.css(padPos, padWrapper);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2049
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2050
					this._proportionallyResize();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2051
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2052
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2053
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2054
				//TODO: What's that good for? There's not anything to be executed left
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2055
				if(!$(this.handles[i]).length)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2056
					continue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2057
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2058
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2059
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2060
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2061
		//TODO: make renderAxis a prototype function
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2062
		this._renderAxis(this.element);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2063
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2064
		this._handles = $('.ui-resizable-handle', this.element)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2065
			.disableSelection();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2066
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2067
		//Matching axis name
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2068
		this._handles.mouseover(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2069
			if (!self.resizing) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2070
				if (this.className)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2071
					var axis = this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2072
				//Axis, default = se
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2073
				self.axis = axis && axis[1] ? axis[1] : 'se';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2074
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2075
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2076
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2077
		//If we want to auto hide the elements
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2078
		if (o.autoHide) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2079
			this._handles.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2080
			$(this.element)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2081
				.addClass("ui-resizable-autohide")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2082
				.hover(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2083
					$(this).removeClass("ui-resizable-autohide");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2084
					self._handles.show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2085
				},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2086
				function(){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2087
					if (!self.resizing) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2088
						$(this).addClass("ui-resizable-autohide");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2089
						self._handles.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2090
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2091
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2092
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2093
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2094
		//Initialize the mouse interaction
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2095
		this._mouseInit();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2096
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2097
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2098
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2099
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2100
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2101
		this._mouseDestroy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2102
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2103
		var _destroy = function(exp) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2104
			$(exp).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2105
				.removeData("resizable").unbind(".resizable").find('.ui-resizable-handle').remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2106
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2107
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2108
		//TODO: Unwrap at same DOM position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2109
		if (this.elementIsWrapper) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2110
			_destroy(this.element);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2111
			var wrapper = this.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2112
			wrapper.after(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2113
				this.originalElement.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2114
					position: wrapper.css('position'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2115
					width: wrapper.outerWidth(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2116
					height: wrapper.outerHeight(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2117
					top: wrapper.css('top'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2118
					left: wrapper.css('left')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2119
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2120
			).remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2121
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2122
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2123
		this.originalElement.css('resize', this.originalResizeStyle);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2124
		_destroy(this.originalElement);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2125
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2126
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2127
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2128
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2129
	_mouseCapture: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2130
		var handle = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2131
		for (var i in this.handles) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2132
			if ($(this.handles[i])[0] == event.target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2133
				handle = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2134
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2135
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2136
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2137
		return !this.options.disabled && handle;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2138
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2139
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2140
	_mouseStart: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2141
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2142
		var o = this.options, iniPos = this.element.position(), el = this.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2143
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2144
		this.resizing = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2145
		this.documentScroll = { top: $(document).scrollTop(), left: $(document).scrollLeft() };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2146
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2147
		// bugfix for http://dev.jquery.com/ticket/1749
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2148
		if (el.is('.ui-draggable') || (/absolute/).test(el.css('position'))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2149
			el.css({ position: 'absolute', top: iniPos.top, left: iniPos.left });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2150
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2151
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2152
		//Opera fixing relative position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2153
		if ($.browser.opera && (/relative/).test(el.css('position')))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2154
			el.css({ position: 'relative', top: 'auto', left: 'auto' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2155
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2156
		this._renderProxy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2157
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2158
		var curleft = num(this.helper.css('left')), curtop = num(this.helper.css('top'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2159
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2160
		if (o.containment) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2161
			curleft += $(o.containment).scrollLeft() || 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2162
			curtop += $(o.containment).scrollTop() || 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2163
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2164
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2165
		//Store needed variables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2166
		this.offset = this.helper.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2167
		this.position = { left: curleft, top: curtop };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2168
		this.size = this._helper ? { width: el.outerWidth(), height: el.outerHeight() } : { width: el.width(), height: el.height() };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2169
		this.originalSize = this._helper ? { width: el.outerWidth(), height: el.outerHeight() } : { width: el.width(), height: el.height() };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2170
		this.originalPosition = { left: curleft, top: curtop };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2171
		this.sizeDiff = { width: el.outerWidth() - el.width(), height: el.outerHeight() - el.height() };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2172
		this.originalMousePosition = { left: event.pageX, top: event.pageY };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2173
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2174
		//Aspect Ratio
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2175
		this.aspectRatio = (typeof o.aspectRatio == 'number') ? o.aspectRatio : ((this.originalSize.width / this.originalSize.height) || 1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2176
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2177
	    var cursor = $('.ui-resizable-' + this.axis).css('cursor');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2178
	    $('body').css('cursor', cursor == 'auto' ? this.axis + '-resize' : cursor);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2179
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2180
		el.addClass("ui-resizable-resizing");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2181
		this._propagate("start", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2182
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2183
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2184
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2185
	_mouseDrag: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2186
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2187
		//Increase performance, avoid regex
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2188
		var el = this.helper, o = this.options, props = {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2189
			self = this, smp = this.originalMousePosition, a = this.axis;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2190
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2191
		var dx = (event.pageX-smp.left)||0, dy = (event.pageY-smp.top)||0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2192
		var trigger = this._change[a];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2193
		if (!trigger) return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2194
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2195
		// Calculate the attrs that will be change
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2196
		var data = trigger.apply(this, [event, dx, dy]), ie6 = $.browser.msie && $.browser.version < 7, csdif = this.sizeDiff;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2197
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2198
		if (this._aspectRatio || event.shiftKey)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2199
			data = this._updateRatio(data, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2200
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2201
		data = this._respectSize(data, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2202
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2203
		// plugins callbacks need to be called first
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2204
		this._propagate("resize", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2205
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2206
		el.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2207
			top: this.position.top + "px", left: this.position.left + "px",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2208
			width: this.size.width + "px", height: this.size.height + "px"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2209
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2210
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2211
		if (!this._helper && this._proportionallyResizeElements.length)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2212
			this._proportionallyResize();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2213
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2214
		this._updateCache(data);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2215
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2216
		// calling the user callback at the end
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2217
		this._trigger('resize', event, this.ui());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2218
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2219
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2220
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2221
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2222
	_mouseStop: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2223
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2224
		this.resizing = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2225
		var o = this.options, self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2226
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2227
		if(this._helper) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2228
			var pr = this._proportionallyResizeElements, ista = pr.length && (/textarea/i).test(pr[0].nodeName),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2229
						soffseth = ista && $.ui.hasScroll(pr[0], 'left') /* TODO - jump height */ ? 0 : self.sizeDiff.height,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2230
							soffsetw = ista ? 0 : self.sizeDiff.width;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2231
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2232
			var s = { width: (self.size.width - soffsetw), height: (self.size.height - soffseth) },
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2233
				left = (parseInt(self.element.css('left'), 10) + (self.position.left - self.originalPosition.left)) || null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2234
				top = (parseInt(self.element.css('top'), 10) + (self.position.top - self.originalPosition.top)) || null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2235
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2236
			if (!o.animate)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2237
				this.element.css($.extend(s, { top: top, left: left }));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2238
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2239
			self.helper.height(self.size.height);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2240
			self.helper.width(self.size.width);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2241
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2242
			if (this._helper && !o.animate) this._proportionallyResize();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2243
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2244
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2245
		$('body').css('cursor', 'auto');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2246
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2247
		this.element.removeClass("ui-resizable-resizing");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2248
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2249
		this._propagate("stop", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2250
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2251
		if (this._helper) this.helper.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2252
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2253
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2254
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2255
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2256
	_updateCache: function(data) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2257
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2258
		this.offset = this.helper.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2259
		if (isNumber(data.left)) this.position.left = data.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2260
		if (isNumber(data.top)) this.position.top = data.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2261
		if (isNumber(data.height)) this.size.height = data.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2262
		if (isNumber(data.width)) this.size.width = data.width;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2263
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2264
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2265
	_updateRatio: function(data, event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2266
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2267
		var o = this.options, cpos = this.position, csize = this.size, a = this.axis;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2268
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2269
		if (data.height) data.width = (csize.height * this.aspectRatio);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2270
		else if (data.width) data.height = (csize.width / this.aspectRatio);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2271
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2272
		if (a == 'sw') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2273
			data.left = cpos.left + (csize.width - data.width);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2274
			data.top = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2275
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2276
		if (a == 'nw') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2277
			data.top = cpos.top + (csize.height - data.height);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2278
			data.left = cpos.left + (csize.width - data.width);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2279
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2280
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2281
		return data;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2282
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2283
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2284
	_respectSize: function(data, event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2285
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2286
		var el = this.helper, o = this.options, pRatio = this._aspectRatio || event.shiftKey, a = this.axis,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2287
				ismaxw = isNumber(data.width) && o.maxWidth && (o.maxWidth < data.width), ismaxh = isNumber(data.height) && o.maxHeight && (o.maxHeight < data.height),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2288
					isminw = isNumber(data.width) && o.minWidth && (o.minWidth > data.width), isminh = isNumber(data.height) && o.minHeight && (o.minHeight > data.height);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2289
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2290
		if (isminw) data.width = o.minWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2291
		if (isminh) data.height = o.minHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2292
		if (ismaxw) data.width = o.maxWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2293
		if (ismaxh) data.height = o.maxHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2294
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2295
		var dw = this.originalPosition.left + this.originalSize.width, dh = this.position.top + this.size.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2296
		var cw = /sw|nw|w/.test(a), ch = /nw|ne|n/.test(a);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2297
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2298
		if (isminw && cw) data.left = dw - o.minWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2299
		if (ismaxw && cw) data.left = dw - o.maxWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2300
		if (isminh && ch)	data.top = dh - o.minHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2301
		if (ismaxh && ch)	data.top = dh - o.maxHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2302
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2303
		// fixing jump error on top/left - bug #2330
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2304
		var isNotwh = !data.width && !data.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2305
		if (isNotwh && !data.left && data.top) data.top = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2306
		else if (isNotwh && !data.top && data.left) data.left = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2307
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2308
		return data;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2309
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2310
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2311
	_proportionallyResize: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2312
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2313
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2314
		if (!this._proportionallyResizeElements.length) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2315
		var element = this.helper || this.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2316
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2317
		for (var i=0; i < this._proportionallyResizeElements.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2318
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2319
			var prel = this._proportionallyResizeElements[i];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2320
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2321
			if (!this.borderDif) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2322
				var b = [prel.css('borderTopWidth'), prel.css('borderRightWidth'), prel.css('borderBottomWidth'), prel.css('borderLeftWidth')],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2323
					p = [prel.css('paddingTop'), prel.css('paddingRight'), prel.css('paddingBottom'), prel.css('paddingLeft')];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2324
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2325
				this.borderDif = $.map(b, function(v, i) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2326
					var border = parseInt(v,10)||0, padding = parseInt(p[i],10)||0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2327
					return border + padding;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2328
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2329
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2330
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2331
			if ($.browser.msie && !(!($(element).is(':hidden') || $(element).parents(':hidden').length)))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2332
				continue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2333
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2334
			prel.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2335
				height: (element.height() - this.borderDif[0] - this.borderDif[2]) || 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2336
				width: (element.width() - this.borderDif[1] - this.borderDif[3]) || 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2337
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2338
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2339
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2340
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2341
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2342
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2343
	_renderProxy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2344
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2345
		var el = this.element, o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2346
		this.elementOffset = el.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2347
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2348
		if(this._helper) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2349
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2350
			this.helper = this.helper || $('<div style="overflow:hidden;"></div>');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2351
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2352
			// fix ie6 offset TODO: This seems broken
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2353
			var ie6 = $.browser.msie && $.browser.version < 7, ie6offset = (ie6 ? 1 : 0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2354
			pxyoffset = ( ie6 ? 2 : -1 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2355
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2356
			this.helper.addClass(this._helper).css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2357
				width: this.element.outerWidth() + pxyoffset,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2358
				height: this.element.outerHeight() + pxyoffset,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2359
				position: 'absolute',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2360
				left: this.elementOffset.left - ie6offset +'px',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2361
				top: this.elementOffset.top - ie6offset +'px',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2362
				zIndex: ++o.zIndex //TODO: Don't modify option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2363
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2364
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2365
			this.helper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2366
				.appendTo("body")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2367
				.disableSelection();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2368
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2369
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2370
			this.helper = this.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2371
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2372
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2373
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2374
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2375
	_change: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2376
		e: function(event, dx, dy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2377
			return { width: this.originalSize.width + dx };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2378
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2379
		w: function(event, dx, dy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2380
			var o = this.options, cs = this.originalSize, sp = this.originalPosition;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2381
			return { left: sp.left + dx, width: cs.width - dx };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2382
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2383
		n: function(event, dx, dy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2384
			var o = this.options, cs = this.originalSize, sp = this.originalPosition;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2385
			return { top: sp.top + dy, height: cs.height - dy };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2386
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2387
		s: function(event, dx, dy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2388
			return { height: this.originalSize.height + dy };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2389
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2390
		se: function(event, dx, dy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2391
			return $.extend(this._change.s.apply(this, arguments), this._change.e.apply(this, [event, dx, dy]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2392
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2393
		sw: function(event, dx, dy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2394
			return $.extend(this._change.s.apply(this, arguments), this._change.w.apply(this, [event, dx, dy]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2395
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2396
		ne: function(event, dx, dy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2397
			return $.extend(this._change.n.apply(this, arguments), this._change.e.apply(this, [event, dx, dy]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2398
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2399
		nw: function(event, dx, dy) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2400
			return $.extend(this._change.n.apply(this, arguments), this._change.w.apply(this, [event, dx, dy]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2401
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2402
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2403
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2404
	_propagate: function(n, event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2405
		$.ui.plugin.call(this, n, [event, this.ui()]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2406
		(n != "resize" && this._trigger(n, event, this.ui()));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2407
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2408
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2409
	plugins: {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2410
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2411
	ui: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2412
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2413
			originalElement: this.originalElement,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2414
			element: this.element,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2415
			helper: this.helper,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2416
			position: this.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2417
			size: this.size,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2418
			originalSize: this.originalSize,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2419
			originalPosition: this.originalPosition
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2420
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2421
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2422
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2423
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2424
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2425
$.extend($.ui.resizable, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2426
	version: "1.8.1"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2427
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2428
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2429
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2430
 * Resizable Extensions
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2431
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2432
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2433
$.ui.plugin.add("resizable", "alsoResize", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2434
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2435
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2436
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2437
		var self = $(this).data("resizable"), o = self.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2438
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2439
		var _store = function(exp) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2440
			$(exp).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2441
				$(this).data("resizable-alsoresize", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2442
					width: parseInt($(this).width(), 10), height: parseInt($(this).height(), 10),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2443
					left: parseInt($(this).css('left'), 10), top: parseInt($(this).css('top'), 10)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2444
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2445
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2446
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2447
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2448
		if (typeof(o.alsoResize) == 'object' && !o.alsoResize.parentNode) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2449
			if (o.alsoResize.length) { o.alsoResize = o.alsoResize[0];	_store(o.alsoResize); }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2450
			else { $.each(o.alsoResize, function(exp, c) { _store(exp); }); }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2451
		}else{
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2452
			_store(o.alsoResize);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2453
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2454
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2455
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2456
	resize: function(event, ui){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2457
		var self = $(this).data("resizable"), o = self.options, os = self.originalSize, op = self.originalPosition;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2458
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2459
		var delta = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2460
			height: (self.size.height - os.height) || 0, width: (self.size.width - os.width) || 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2461
			top: (self.position.top - op.top) || 0, left: (self.position.left - op.left) || 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2462
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2463
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2464
		_alsoResize = function(exp, c) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2465
			$(exp).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2466
				var el = $(this), start = $(this).data("resizable-alsoresize"), style = {}, css = c && c.length ? c : ['width', 'height', 'top', 'left'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2467
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2468
				$.each(css || ['width', 'height', 'top', 'left'], function(i, prop) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2469
					var sum = (start[prop]||0) + (delta[prop]||0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2470
					if (sum && sum >= 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2471
						style[prop] = sum || null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2472
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2473
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2474
				//Opera fixing relative position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2475
				if (/relative/.test(el.css('position')) && $.browser.opera) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2476
					self._revertToRelativePosition = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2477
					el.css({ position: 'absolute', top: 'auto', left: 'auto' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2478
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2479
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2480
				el.css(style);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2481
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2482
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2483
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2484
		if (typeof(o.alsoResize) == 'object' && !o.alsoResize.nodeType) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2485
			$.each(o.alsoResize, function(exp, c) { _alsoResize(exp, c); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2486
		}else{
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2487
			_alsoResize(o.alsoResize);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2488
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2489
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2490
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2491
	stop: function(event, ui){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2492
		var self = $(this).data("resizable");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2493
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2494
		//Opera fixing relative position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2495
		if (self._revertToRelativePosition && $.browser.opera) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2496
			self._revertToRelativePosition = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2497
			el.css({ position: 'relative' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2498
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2499
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2500
		$(this).removeData("resizable-alsoresize-start");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2501
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2502
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2503
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2504
$.ui.plugin.add("resizable", "animate", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2505
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2506
	stop: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2507
		var self = $(this).data("resizable"), o = self.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2508
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2509
		var pr = self._proportionallyResizeElements, ista = pr.length && (/textarea/i).test(pr[0].nodeName),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2510
					soffseth = ista && $.ui.hasScroll(pr[0], 'left') /* TODO - jump height */ ? 0 : self.sizeDiff.height,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2511
						soffsetw = ista ? 0 : self.sizeDiff.width;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2512
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2513
		var style = { width: (self.size.width - soffsetw), height: (self.size.height - soffseth) },
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2514
					left = (parseInt(self.element.css('left'), 10) + (self.position.left - self.originalPosition.left)) || null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2515
						top = (parseInt(self.element.css('top'), 10) + (self.position.top - self.originalPosition.top)) || null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2516
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2517
		self.element.animate(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2518
			$.extend(style, top && left ? { top: top, left: left } : {}), {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2519
				duration: o.animateDuration,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2520
				easing: o.animateEasing,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2521
				step: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2522
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2523
					var data = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2524
						width: parseInt(self.element.css('width'), 10),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2525
						height: parseInt(self.element.css('height'), 10),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2526
						top: parseInt(self.element.css('top'), 10),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2527
						left: parseInt(self.element.css('left'), 10)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2528
					};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2529
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2530
					if (pr && pr.length) $(pr[0]).css({ width: data.width, height: data.height });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2531
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2532
					// propagating resize, and updating values for each animation step
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2533
					self._updateCache(data);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2534
					self._propagate("resize", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2535
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2536
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2537
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2538
		);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2539
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2540
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2541
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2542
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2543
$.ui.plugin.add("resizable", "containment", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2544
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2545
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2546
		var self = $(this).data("resizable"), o = self.options, el = self.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2547
		var oc = o.containment,	ce = (oc instanceof $) ? oc.get(0) : (/parent/.test(oc)) ? el.parent().get(0) : oc;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2548
		if (!ce) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2549
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2550
		self.containerElement = $(ce);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2551
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2552
		if (/document/.test(oc) || oc == document) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2553
			self.containerOffset = { left: 0, top: 0 };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2554
			self.containerPosition = { left: 0, top: 0 };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2555
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2556
			self.parentData = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2557
				element: $(document), left: 0, top: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2558
				width: $(document).width(), height: $(document).height() || document.body.parentNode.scrollHeight
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2559
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2560
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2561
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2562
		// i'm a node, so compute top, left, right, bottom
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2563
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2564
			var element = $(ce), p = [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2565
			$([ "Top", "Right", "Left", "Bottom" ]).each(function(i, name) { p[i] = num(element.css("padding" + name)); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2566
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2567
			self.containerOffset = element.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2568
			self.containerPosition = element.position();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2569
			self.containerSize = { height: (element.innerHeight() - p[3]), width: (element.innerWidth() - p[1]) };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2570
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2571
			var co = self.containerOffset, ch = self.containerSize.height,	cw = self.containerSize.width,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2572
						width = ($.ui.hasScroll(ce, "left") ? ce.scrollWidth : cw ), height = ($.ui.hasScroll(ce) ? ce.scrollHeight : ch);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2573
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2574
			self.parentData = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2575
				element: ce, left: co.left, top: co.top, width: width, height: height
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2576
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2577
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2578
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2579
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2580
	resize: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2581
		var self = $(this).data("resizable"), o = self.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2582
				ps = self.containerSize, co = self.containerOffset, cs = self.size, cp = self.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2583
				pRatio = self._aspectRatio || event.shiftKey, cop = { top:0, left:0 }, ce = self.containerElement;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2584
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2585
		if (ce[0] != document && (/static/).test(ce.css('position'))) cop = co;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2586
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2587
		if (cp.left < (self._helper ? co.left : 0)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2588
			self.size.width = self.size.width + (self._helper ? (self.position.left - co.left) : (self.position.left - cop.left));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2589
			if (pRatio) self.size.height = self.size.width / o.aspectRatio;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2590
			self.position.left = o.helper ? co.left : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2591
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2592
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2593
		if (cp.top < (self._helper ? co.top : 0)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2594
			self.size.height = self.size.height + (self._helper ? (self.position.top - co.top) : self.position.top);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2595
			if (pRatio) self.size.width = self.size.height * o.aspectRatio;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2596
			self.position.top = self._helper ? co.top : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2597
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2598
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2599
		self.offset.left = self.parentData.left+self.position.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2600
		self.offset.top = self.parentData.top+self.position.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2601
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2602
		var woset = Math.abs( (self._helper ? self.offset.left - cop.left : (self.offset.left - cop.left)) + self.sizeDiff.width ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2603
					hoset = Math.abs( (self._helper ? self.offset.top - cop.top : (self.offset.top - co.top)) + self.sizeDiff.height );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2604
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2605
		var isParent = self.containerElement.get(0) == self.element.parent().get(0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2606
		    isOffsetRelative = /relative|absolute/.test(self.containerElement.css('position'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2607
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2608
		if(isParent && isOffsetRelative) woset -= self.parentData.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2609
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2610
		if (woset + self.size.width >= self.parentData.width) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2611
			self.size.width = self.parentData.width - woset;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2612
			if (pRatio) self.size.height = self.size.width / self.aspectRatio;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2613
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2614
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2615
		if (hoset + self.size.height >= self.parentData.height) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2616
			self.size.height = self.parentData.height - hoset;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2617
			if (pRatio) self.size.width = self.size.height * self.aspectRatio;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2618
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2619
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2620
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2621
	stop: function(event, ui){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2622
		var self = $(this).data("resizable"), o = self.options, cp = self.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2623
				co = self.containerOffset, cop = self.containerPosition, ce = self.containerElement;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2624
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2625
		var helper = $(self.helper), ho = helper.offset(), w = helper.outerWidth() - self.sizeDiff.width, h = helper.outerHeight() - self.sizeDiff.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2626
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2627
		if (self._helper && !o.animate && (/relative/).test(ce.css('position')))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2628
			$(this).css({ left: ho.left - cop.left - co.left, width: w, height: h });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2629
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2630
		if (self._helper && !o.animate && (/static/).test(ce.css('position')))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2631
			$(this).css({ left: ho.left - cop.left - co.left, width: w, height: h });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2632
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2633
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2634
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2635
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2636
$.ui.plugin.add("resizable", "ghost", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2637
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2638
	start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2639
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2640
		var self = $(this).data("resizable"), o = self.options, cs = self.size;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2641
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2642
		self.ghost = self.originalElement.clone();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2643
		self.ghost
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2644
			.css({ opacity: .25, display: 'block', position: 'relative', height: cs.height, width: cs.width, margin: 0, left: 0, top: 0 })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2645
			.addClass('ui-resizable-ghost')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2646
			.addClass(typeof o.ghost == 'string' ? o.ghost : '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2647
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2648
		self.ghost.appendTo(self.helper);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2649
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2650
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2651
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2652
	resize: function(event, ui){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2653
		var self = $(this).data("resizable"), o = self.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2654
		if (self.ghost) self.ghost.css({ position: 'relative', height: self.size.height, width: self.size.width });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2655
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2656
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2657
	stop: function(event, ui){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2658
		var self = $(this).data("resizable"), o = self.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2659
		if (self.ghost && self.helper) self.helper.get(0).removeChild(self.ghost.get(0));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2660
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2661
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2662
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2663
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2664
$.ui.plugin.add("resizable", "grid", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2665
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2666
	resize: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2667
		var self = $(this).data("resizable"), o = self.options, cs = self.size, os = self.originalSize, op = self.originalPosition, a = self.axis, ratio = o._aspectRatio || event.shiftKey;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2668
		o.grid = typeof o.grid == "number" ? [o.grid, o.grid] : o.grid;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2669
		var ox = Math.round((cs.width - os.width) / (o.grid[0]||1)) * (o.grid[0]||1), oy = Math.round((cs.height - os.height) / (o.grid[1]||1)) * (o.grid[1]||1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2670
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2671
		if (/^(se|s|e)$/.test(a)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2672
			self.size.width = os.width + ox;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2673
			self.size.height = os.height + oy;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2674
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2675
		else if (/^(ne)$/.test(a)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2676
			self.size.width = os.width + ox;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2677
			self.size.height = os.height + oy;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2678
			self.position.top = op.top - oy;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2679
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2680
		else if (/^(sw)$/.test(a)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2681
			self.size.width = os.width + ox;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2682
			self.size.height = os.height + oy;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2683
			self.position.left = op.left - ox;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2684
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2685
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2686
			self.size.width = os.width + ox;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2687
			self.size.height = os.height + oy;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2688
			self.position.top = op.top - oy;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2689
			self.position.left = op.left - ox;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2690
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2691
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2692
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2693
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2694
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2695
var num = function(v) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2696
	return parseInt(v, 10) || 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2697
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2698
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2699
var isNumber = function(value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2700
	return !isNaN(parseInt(value, 10));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2701
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2702
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2703
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2704
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2705
 * jQuery UI Selectable 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2706
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2707
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2708
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2709
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2710
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2711
 * http://docs.jquery.com/UI/Selectables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2712
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2713
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2714
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2715
 *	jquery.ui.mouse.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2716
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2717
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2718
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2719
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2720
$.widget("ui.selectable", $.ui.mouse, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2721
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2722
		appendTo: 'body',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2723
		autoRefresh: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2724
		distance: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2725
		filter: '*',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2726
		tolerance: 'touch'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2727
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2728
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2729
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2730
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2731
		this.element.addClass("ui-selectable");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2732
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2733
		this.dragged = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2734
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2735
		// cache selectee children based on filter
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2736
		var selectees;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2737
		this.refresh = function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2738
			selectees = $(self.options.filter, self.element[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2739
			selectees.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2740
				var $this = $(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2741
				var pos = $this.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2742
				$.data(this, "selectable-item", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2743
					element: this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2744
					$element: $this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2745
					left: pos.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2746
					top: pos.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2747
					right: pos.left + $this.outerWidth(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2748
					bottom: pos.top + $this.outerHeight(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2749
					startselected: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2750
					selected: $this.hasClass('ui-selected'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2751
					selecting: $this.hasClass('ui-selecting'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2752
					unselecting: $this.hasClass('ui-unselecting')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2753
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2754
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2755
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2756
		this.refresh();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2757
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2758
		this.selectees = selectees.addClass("ui-selectee");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2759
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2760
		this._mouseInit();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2761
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2762
		this.helper = $(document.createElement('div'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2763
			.css({border:'1px dotted black'})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2764
			.addClass("ui-selectable-helper");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2765
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2766
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2767
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2768
		this.selectees
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2769
			.removeClass("ui-selectee")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2770
			.removeData("selectable-item");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2771
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2772
			.removeClass("ui-selectable ui-selectable-disabled")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2773
			.removeData("selectable")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2774
			.unbind(".selectable");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2775
		this._mouseDestroy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2776
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2777
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2778
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2779
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2780
	_mouseStart: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2781
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2782
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2783
		this.opos = [event.pageX, event.pageY];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2784
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2785
		if (this.options.disabled)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2786
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2787
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2788
		var options = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2789
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2790
		this.selectees = $(options.filter, this.element[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2791
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2792
		this._trigger("start", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2793
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2794
		$(options.appendTo).append(this.helper);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2795
		// position helper (lasso)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2796
		this.helper.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2797
			"z-index": 100,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2798
			"position": "absolute",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2799
			"left": event.clientX,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2800
			"top": event.clientY,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2801
			"width": 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2802
			"height": 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2803
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2804
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2805
		if (options.autoRefresh) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2806
			this.refresh();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2807
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2808
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2809
		this.selectees.filter('.ui-selected').each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2810
			var selectee = $.data(this, "selectable-item");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2811
			selectee.startselected = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2812
			if (!event.metaKey) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2813
				selectee.$element.removeClass('ui-selected');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2814
				selectee.selected = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2815
				selectee.$element.addClass('ui-unselecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2816
				selectee.unselecting = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2817
				// selectable UNSELECTING callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2818
				self._trigger("unselecting", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2819
					unselecting: selectee.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2820
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2821
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2822
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2823
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2824
		$(event.target).parents().andSelf().each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2825
			var selectee = $.data(this, "selectable-item");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2826
			if (selectee) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2827
				selectee.$element.removeClass("ui-unselecting").addClass('ui-selecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2828
				selectee.unselecting = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2829
				selectee.selecting = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2830
				selectee.selected = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2831
				// selectable SELECTING callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2832
				self._trigger("selecting", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2833
					selecting: selectee.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2834
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2835
				return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2836
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2837
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2838
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2839
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2840
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2841
	_mouseDrag: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2842
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2843
		this.dragged = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2844
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2845
		if (this.options.disabled)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2846
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2847
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2848
		var options = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2849
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2850
		var x1 = this.opos[0], y1 = this.opos[1], x2 = event.pageX, y2 = event.pageY;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2851
		if (x1 > x2) { var tmp = x2; x2 = x1; x1 = tmp; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2852
		if (y1 > y2) { var tmp = y2; y2 = y1; y1 = tmp; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2853
		this.helper.css({left: x1, top: y1, width: x2-x1, height: y2-y1});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2854
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2855
		this.selectees.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2856
			var selectee = $.data(this, "selectable-item");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2857
			//prevent helper from being selected if appendTo: selectable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2858
			if (!selectee || selectee.element == self.element[0])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2859
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2860
			var hit = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2861
			if (options.tolerance == 'touch') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2862
				hit = ( !(selectee.left > x2 || selectee.right < x1 || selectee.top > y2 || selectee.bottom < y1) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2863
			} else if (options.tolerance == 'fit') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2864
				hit = (selectee.left > x1 && selectee.right < x2 && selectee.top > y1 && selectee.bottom < y2);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2865
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2866
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2867
			if (hit) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2868
				// SELECT
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2869
				if (selectee.selected) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2870
					selectee.$element.removeClass('ui-selected');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2871
					selectee.selected = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2872
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2873
				if (selectee.unselecting) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2874
					selectee.$element.removeClass('ui-unselecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2875
					selectee.unselecting = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2876
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2877
				if (!selectee.selecting) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2878
					selectee.$element.addClass('ui-selecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2879
					selectee.selecting = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2880
					// selectable SELECTING callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2881
					self._trigger("selecting", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2882
						selecting: selectee.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2883
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2884
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2885
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2886
				// UNSELECT
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2887
				if (selectee.selecting) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2888
					if (event.metaKey && selectee.startselected) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2889
						selectee.$element.removeClass('ui-selecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2890
						selectee.selecting = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2891
						selectee.$element.addClass('ui-selected');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2892
						selectee.selected = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2893
					} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2894
						selectee.$element.removeClass('ui-selecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2895
						selectee.selecting = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2896
						if (selectee.startselected) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2897
							selectee.$element.addClass('ui-unselecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2898
							selectee.unselecting = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2899
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2900
						// selectable UNSELECTING callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2901
						self._trigger("unselecting", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2902
							unselecting: selectee.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2903
						});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2904
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2905
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2906
				if (selectee.selected) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2907
					if (!event.metaKey && !selectee.startselected) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2908
						selectee.$element.removeClass('ui-selected');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2909
						selectee.selected = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2910
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2911
						selectee.$element.addClass('ui-unselecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2912
						selectee.unselecting = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2913
						// selectable UNSELECTING callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2914
						self._trigger("unselecting", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2915
							unselecting: selectee.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2916
						});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2917
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2918
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2919
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2920
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2921
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2922
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2923
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2924
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2925
	_mouseStop: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2926
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2927
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2928
		this.dragged = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2929
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2930
		var options = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2931
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2932
		$('.ui-unselecting', this.element[0]).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2933
			var selectee = $.data(this, "selectable-item");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2934
			selectee.$element.removeClass('ui-unselecting');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2935
			selectee.unselecting = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2936
			selectee.startselected = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2937
			self._trigger("unselected", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2938
				unselected: selectee.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2939
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2940
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2941
		$('.ui-selecting', this.element[0]).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2942
			var selectee = $.data(this, "selectable-item");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2943
			selectee.$element.removeClass('ui-selecting').addClass('ui-selected');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2944
			selectee.selecting = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2945
			selectee.selected = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2946
			selectee.startselected = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2947
			self._trigger("selected", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2948
				selected: selectee.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2949
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2950
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2951
		this._trigger("stop", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2952
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2953
		this.helper.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2954
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2955
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2956
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2957
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2958
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2959
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2960
$.extend($.ui.selectable, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2961
	version: "1.8.1"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2962
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2963
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2964
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2965
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2966
 * jQuery UI Sortable 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2967
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2968
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2969
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2970
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2971
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2972
 * http://docs.jquery.com/UI/Sortables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2973
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2974
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2975
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2976
 *	jquery.ui.mouse.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2977
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2978
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2979
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2980
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2981
$.widget("ui.sortable", $.ui.mouse, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2982
	widgetEventPrefix: "sort",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2983
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2984
		appendTo: "parent",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2985
		axis: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2986
		connectWith: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2987
		containment: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2988
		cursor: 'auto',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2989
		cursorAt: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2990
		dropOnEmpty: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2991
		forcePlaceholderSize: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2992
		forceHelperSize: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2993
		grid: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2994
		handle: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2995
		helper: "original",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2996
		items: '> *',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2997
		opacity: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2998
		placeholder: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  2999
		revert: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3000
		scroll: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3001
		scrollSensitivity: 20,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3002
		scrollSpeed: 20,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3003
		scope: "default",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3004
		tolerance: "intersect",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3005
		zIndex: 1000
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3006
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3007
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3008
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3009
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3010
		this.containerCache = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3011
		this.element.addClass("ui-sortable");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3012
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3013
		//Get the items
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3014
		this.refresh();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3015
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3016
		//Let's determine if the items are floating
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3017
		this.floating = this.items.length ? (/left|right/).test(this.items[0].item.css('float')) : false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3018
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3019
		//Let's determine the parent's offset
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3020
		this.offset = this.element.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3021
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3022
		//Initialize mouse events for interaction
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3023
		this._mouseInit();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3024
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3025
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3026
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3027
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3028
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3029
			.removeClass("ui-sortable ui-sortable-disabled")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3030
			.removeData("sortable")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3031
			.unbind(".sortable");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3032
		this._mouseDestroy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3033
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3034
		for ( var i = this.items.length - 1; i >= 0; i-- )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3035
			this.items[i].item.removeData("sortable-item");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3036
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3037
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3038
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3039
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3040
	_setOption: function(key, value){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3041
		if ( key === "disabled" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3042
			this.options[ key ] = value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3043
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3044
			this.widget()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3045
				[ value ? "addClass" : "removeClass"]( "ui-sortable-disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3046
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3047
			// Don't call widget base _setOption for disable as it adds ui-state-disabled class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3048
			$.Widget.prototype._setOption.apply(self, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3049
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3050
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3051
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3052
	_mouseCapture: function(event, overrideHandle) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3053
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3054
		if (this.reverting) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3055
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3056
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3057
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3058
		if(this.options.disabled || this.options.type == 'static') return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3059
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3060
		//We have to refresh the items data once first
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3061
		this._refreshItems(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3062
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3063
		//Find out if the clicked node (or one of its parents) is a actual item in this.items
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3064
		var currentItem = null, self = this, nodes = $(event.target).parents().each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3065
			if($.data(this, 'sortable-item') == self) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3066
				currentItem = $(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3067
				return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3068
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3069
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3070
		if($.data(event.target, 'sortable-item') == self) currentItem = $(event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3071
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3072
		if(!currentItem) return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3073
		if(this.options.handle && !overrideHandle) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3074
			var validHandle = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3075
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3076
			$(this.options.handle, currentItem).find("*").andSelf().each(function() { if(this == event.target) validHandle = true; });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3077
			if(!validHandle) return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3078
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3079
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3080
		this.currentItem = currentItem;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3081
		this._removeCurrentsFromItems();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3082
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3083
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3084
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3085
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3086
	_mouseStart: function(event, overrideHandle, noActivation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3087
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3088
		var o = this.options, self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3089
		this.currentContainer = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3090
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3091
		//We only need to call refreshPositions, because the refreshItems call has been moved to mouseCapture
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3092
		this.refreshPositions();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3093
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3094
		//Create and append the visible helper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3095
		this.helper = this._createHelper(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3096
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3097
		//Cache the helper size
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3098
		this._cacheHelperProportions();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3099
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3100
		/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3101
		 * - Position generation -
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3102
		 * This block generates everything position related - it's the core of draggables.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3103
		 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3104
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3105
		//Cache the margins of the original element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3106
		this._cacheMargins();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3107
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3108
		//Get the next scrolling parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3109
		this.scrollParent = this.helper.scrollParent();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3110
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3111
		//The element's absolute position on the page minus margins
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3112
		this.offset = this.currentItem.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3113
		this.offset = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3114
			top: this.offset.top - this.margins.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3115
			left: this.offset.left - this.margins.left
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3116
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3117
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3118
		// Only after we got the offset, we can change the helper's position to absolute
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3119
		// TODO: Still need to figure out a way to make relative sorting possible
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3120
		this.helper.css("position", "absolute");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3121
		this.cssPosition = this.helper.css("position");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3122
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3123
		$.extend(this.offset, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3124
			click: { //Where the click happened, relative to the element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3125
				left: event.pageX - this.offset.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3126
				top: event.pageY - this.offset.top
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3127
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3128
			parent: this._getParentOffset(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3129
			relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3130
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3131
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3132
		//Generate the original position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3133
		this.originalPosition = this._generatePosition(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3134
		this.originalPageX = event.pageX;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3135
		this.originalPageY = event.pageY;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3136
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3137
		//Adjust the mouse offset relative to the helper if 'cursorAt' is supplied
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3138
		(o.cursorAt && this._adjustOffsetFromHelper(o.cursorAt));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3139
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3140
		//Cache the former DOM position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3141
		this.domPosition = { prev: this.currentItem.prev()[0], parent: this.currentItem.parent()[0] };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3142
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3143
		//If the helper is not the original, hide the original so it's not playing any role during the drag, won't cause anything bad this way
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3144
		if(this.helper[0] != this.currentItem[0]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3145
			this.currentItem.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3146
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3147
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3148
		//Create the placeholder
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3149
		this._createPlaceholder();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3150
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3151
		//Set a containment if given in the options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3152
		if(o.containment)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3153
			this._setContainment();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3154
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3155
		if(o.cursor) { // cursor option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3156
			if ($('body').css("cursor")) this._storedCursor = $('body').css("cursor");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3157
			$('body').css("cursor", o.cursor);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3158
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3159
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3160
		if(o.opacity) { // opacity option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3161
			if (this.helper.css("opacity")) this._storedOpacity = this.helper.css("opacity");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3162
			this.helper.css("opacity", o.opacity);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3163
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3164
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3165
		if(o.zIndex) { // zIndex option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3166
			if (this.helper.css("zIndex")) this._storedZIndex = this.helper.css("zIndex");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3167
			this.helper.css("zIndex", o.zIndex);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3168
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3169
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3170
		//Prepare scrolling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3171
		if(this.scrollParent[0] != document && this.scrollParent[0].tagName != 'HTML')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3172
			this.overflowOffset = this.scrollParent.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3173
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3174
		//Call callbacks
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3175
		this._trigger("start", event, this._uiHash());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3176
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3177
		//Recache the helper size
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3178
		if(!this._preserveHelperProportions)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3179
			this._cacheHelperProportions();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3180
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3181
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3182
		//Post 'activate' events to possible containers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3183
		if(!noActivation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3184
			 for (var i = this.containers.length - 1; i >= 0; i--) { this.containers[i]._trigger("activate", event, self._uiHash(this)); }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3185
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3186
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3187
		//Prepare possible droppables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3188
		if($.ui.ddmanager)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3189
			$.ui.ddmanager.current = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3190
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3191
		if ($.ui.ddmanager && !o.dropBehaviour)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3192
			$.ui.ddmanager.prepareOffsets(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3193
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3194
		this.dragging = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3195
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3196
		this.helper.addClass("ui-sortable-helper");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3197
		this._mouseDrag(event); //Execute the drag once - this causes the helper not to be visible before getting its correct position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3198
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3199
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3200
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3201
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3202
	_mouseDrag: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3203
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3204
		//Compute the helpers position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3205
		this.position = this._generatePosition(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3206
		this.positionAbs = this._convertPositionTo("absolute");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3207
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3208
		if (!this.lastPositionAbs) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3209
			this.lastPositionAbs = this.positionAbs;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3210
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3211
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3212
		//Do scrolling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3213
		if(this.options.scroll) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3214
			var o = this.options, scrolled = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3215
			if(this.scrollParent[0] != document && this.scrollParent[0].tagName != 'HTML') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3216
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3217
				if((this.overflowOffset.top + this.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3218
					this.scrollParent[0].scrollTop = scrolled = this.scrollParent[0].scrollTop + o.scrollSpeed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3219
				else if(event.pageY - this.overflowOffset.top < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3220
					this.scrollParent[0].scrollTop = scrolled = this.scrollParent[0].scrollTop - o.scrollSpeed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3221
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3222
				if((this.overflowOffset.left + this.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3223
					this.scrollParent[0].scrollLeft = scrolled = this.scrollParent[0].scrollLeft + o.scrollSpeed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3224
				else if(event.pageX - this.overflowOffset.left < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3225
					this.scrollParent[0].scrollLeft = scrolled = this.scrollParent[0].scrollLeft - o.scrollSpeed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3226
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3227
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3228
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3229
				if(event.pageY - $(document).scrollTop() < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3230
					scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3231
				else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3232
					scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3233
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3234
				if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3235
					scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3236
				else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3237
					scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3238
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3239
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3240
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3241
			if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3242
				$.ui.ddmanager.prepareOffsets(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3243
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3244
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3245
		//Regenerate the absolute position used for position checks
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3246
		this.positionAbs = this._convertPositionTo("absolute");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3247
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3248
		//Set the helper position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3249
		if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3250
		if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3251
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3252
		//Rearrange
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3253
		for (var i = this.items.length - 1; i >= 0; i--) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3254
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3255
			//Cache variables and intersection, continue if no intersection
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3256
			var item = this.items[i], itemElement = item.item[0], intersection = this._intersectsWithPointer(item);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3257
			if (!intersection) continue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3258
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3259
			if(itemElement != this.currentItem[0] //cannot intersect with itself
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3260
				&&	this.placeholder[intersection == 1 ? "next" : "prev"]()[0] != itemElement //no useless actions that have been done before
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3261
				&&	!$.ui.contains(this.placeholder[0], itemElement) //no action if the item moved is the parent of the item checked
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3262
				&& (this.options.type == 'semi-dynamic' ? !$.ui.contains(this.element[0], itemElement) : true)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3263
				//&& itemElement.parentNode == this.placeholder[0].parentNode // only rearrange items within the same container
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3264
			) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3265
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3266
				this.direction = intersection == 1 ? "down" : "up";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3267
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3268
				if (this.options.tolerance == "pointer" || this._intersectsWithSides(item)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3269
					this._rearrange(event, item);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3270
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3271
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3272
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3273
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3274
				this._trigger("change", event, this._uiHash());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3275
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3276
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3277
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3278
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3279
		//Post events to containers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3280
		this._contactContainers(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3281
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3282
		//Interconnect with droppables
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3283
		if($.ui.ddmanager) $.ui.ddmanager.drag(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3284
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3285
		//Call callbacks
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3286
		this._trigger('sort', event, this._uiHash());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3287
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3288
		this.lastPositionAbs = this.positionAbs;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3289
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3290
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3291
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3292
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3293
	_mouseStop: function(event, noPropagation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3294
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3295
		if(!event) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3296
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3297
		//If we are using droppables, inform the manager about the drop
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3298
		if ($.ui.ddmanager && !this.options.dropBehaviour)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3299
			$.ui.ddmanager.drop(this, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3300
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3301
		if(this.options.revert) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3302
			var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3303
			var cur = self.placeholder.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3304
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3305
			self.reverting = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3306
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3307
			$(this.helper).animate({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3308
				left: cur.left - this.offset.parent.left - self.margins.left + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollLeft),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3309
				top: cur.top - this.offset.parent.top - self.margins.top + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollTop)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3310
			}, parseInt(this.options.revert, 10) || 500, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3311
				self._clear(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3312
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3313
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3314
			this._clear(event, noPropagation);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3315
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3316
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3317
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3318
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3319
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3320
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3321
	cancel: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3322
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3323
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3324
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3325
		if(this.dragging) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3326
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3327
			this._mouseUp();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3328
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3329
			if(this.options.helper == "original")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3330
				this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3331
			else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3332
				this.currentItem.show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3333
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3334
			//Post deactivating events to containers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3335
			for (var i = this.containers.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3336
				this.containers[i]._trigger("deactivate", null, self._uiHash(this));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3337
				if(this.containers[i].containerCache.over) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3338
					this.containers[i]._trigger("out", null, self._uiHash(this));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3339
					this.containers[i].containerCache.over = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3340
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3341
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3342
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3343
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3344
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3345
		//$(this.placeholder[0]).remove(); would have been the jQuery way - unfortunately, it unbinds ALL events from the original node!
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3346
		if(this.placeholder[0].parentNode) this.placeholder[0].parentNode.removeChild(this.placeholder[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3347
		if(this.options.helper != "original" && this.helper && this.helper[0].parentNode) this.helper.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3348
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3349
		$.extend(this, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3350
			helper: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3351
			dragging: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3352
			reverting: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3353
			_noFinalSort: null
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3354
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3355
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3356
		if(this.domPosition.prev) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3357
			$(this.domPosition.prev).after(this.currentItem);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3358
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3359
			$(this.domPosition.parent).prepend(this.currentItem);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3360
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3361
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3362
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3363
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3364
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3365
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3366
	serialize: function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3367
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3368
		var items = this._getItemsAsjQuery(o && o.connected);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3369
		var str = []; o = o || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3370
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3371
		$(items).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3372
			var res = ($(o.item || this).attr(o.attribute || 'id') || '').match(o.expression || (/(.+)[-=_](.+)/));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3373
			if(res) str.push((o.key || res[1]+'[]')+'='+(o.key && o.expression ? res[1] : res[2]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3374
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3375
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3376
		return str.join('&');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3377
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3378
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3379
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3380
	toArray: function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3381
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3382
		var items = this._getItemsAsjQuery(o && o.connected);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3383
		var ret = []; o = o || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3384
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3385
		items.each(function() { ret.push($(o.item || this).attr(o.attribute || 'id') || ''); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3386
		return ret;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3387
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3388
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3389
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3390
	/* Be careful with the following core functions */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3391
	_intersectsWith: function(item) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3392
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3393
		var x1 = this.positionAbs.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3394
			x2 = x1 + this.helperProportions.width,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3395
			y1 = this.positionAbs.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3396
			y2 = y1 + this.helperProportions.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3397
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3398
		var l = item.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3399
			r = l + item.width,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3400
			t = item.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3401
			b = t + item.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3402
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3403
		var dyClick = this.offset.click.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3404
			dxClick = this.offset.click.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3405
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3406
		var isOverElement = (y1 + dyClick) > t && (y1 + dyClick) < b && (x1 + dxClick) > l && (x1 + dxClick) < r;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3407
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3408
		if(	   this.options.tolerance == "pointer"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3409
			|| this.options.forcePointerForContainers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3410
			|| (this.options.tolerance != "pointer" && this.helperProportions[this.floating ? 'width' : 'height'] > item[this.floating ? 'width' : 'height'])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3411
		) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3412
			return isOverElement;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3413
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3414
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3415
			return (l < x1 + (this.helperProportions.width / 2) // Right Half
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3416
				&& x2 - (this.helperProportions.width / 2) < r // Left Half
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3417
				&& t < y1 + (this.helperProportions.height / 2) // Bottom Half
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3418
				&& y2 - (this.helperProportions.height / 2) < b ); // Top Half
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3419
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3420
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3421
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3422
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3423
	_intersectsWithPointer: function(item) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3424
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3425
		var isOverElementHeight = $.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, item.top, item.height),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3426
			isOverElementWidth = $.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, item.left, item.width),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3427
			isOverElement = isOverElementHeight && isOverElementWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3428
			verticalDirection = this._getDragVerticalDirection(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3429
			horizontalDirection = this._getDragHorizontalDirection();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3430
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3431
		if (!isOverElement)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3432
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3433
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3434
		return this.floating ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3435
			( ((horizontalDirection && horizontalDirection == "right") || verticalDirection == "down") ? 2 : 1 )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3436
			: ( verticalDirection && (verticalDirection == "down" ? 2 : 1) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3437
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3438
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3439
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3440
	_intersectsWithSides: function(item) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3441
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3442
		var isOverBottomHalf = $.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, item.top + (item.height/2), item.height),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3443
			isOverRightHalf = $.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, item.left + (item.width/2), item.width),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3444
			verticalDirection = this._getDragVerticalDirection(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3445
			horizontalDirection = this._getDragHorizontalDirection();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3446
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3447
		if (this.floating && horizontalDirection) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3448
			return ((horizontalDirection == "right" && isOverRightHalf) || (horizontalDirection == "left" && !isOverRightHalf));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3449
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3450
			return verticalDirection && ((verticalDirection == "down" && isOverBottomHalf) || (verticalDirection == "up" && !isOverBottomHalf));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3451
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3452
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3453
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3454
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3455
	_getDragVerticalDirection: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3456
		var delta = this.positionAbs.top - this.lastPositionAbs.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3457
		return delta != 0 && (delta > 0 ? "down" : "up");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3458
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3459
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3460
	_getDragHorizontalDirection: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3461
		var delta = this.positionAbs.left - this.lastPositionAbs.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3462
		return delta != 0 && (delta > 0 ? "right" : "left");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3463
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3464
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3465
	refresh: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3466
		this._refreshItems(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3467
		this.refreshPositions();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3468
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3469
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3470
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3471
	_connectWith: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3472
		var options = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3473
		return options.connectWith.constructor == String
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3474
			? [options.connectWith]
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3475
			: options.connectWith;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3476
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3477
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3478
	_getItemsAsjQuery: function(connected) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3479
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3480
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3481
		var items = [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3482
		var queries = [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3483
		var connectWith = this._connectWith();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3484
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3485
		if(connectWith && connected) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3486
			for (var i = connectWith.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3487
				var cur = $(connectWith[i]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3488
				for (var j = cur.length - 1; j >= 0; j--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3489
					var inst = $.data(cur[j], 'sortable');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3490
					if(inst && inst != this && !inst.options.disabled) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3491
						queries.push([$.isFunction(inst.options.items) ? inst.options.items.call(inst.element) : $(inst.options.items, inst.element).not(".ui-sortable-helper").not('.ui-sortable-placeholder'), inst]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3492
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3493
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3494
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3495
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3496
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3497
		queries.push([$.isFunction(this.options.items) ? this.options.items.call(this.element, null, { options: this.options, item: this.currentItem }) : $(this.options.items, this.element).not(".ui-sortable-helper").not('.ui-sortable-placeholder'), this]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3498
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3499
		for (var i = queries.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3500
			queries[i][0].each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3501
				items.push(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3502
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3503
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3504
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3505
		return $(items);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3506
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3507
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3508
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3509
	_removeCurrentsFromItems: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3510
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3511
		var list = this.currentItem.find(":data(sortable-item)");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3512
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3513
		for (var i=0; i < this.items.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3514
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3515
			for (var j=0; j < list.length; j++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3516
				if(list[j] == this.items[i].item[0])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3517
					this.items.splice(i,1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3518
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3519
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3520
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3521
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3522
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3523
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3524
	_refreshItems: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3525
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3526
		this.items = [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3527
		this.containers = [this];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3528
		var items = this.items;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3529
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3530
		var queries = [[$.isFunction(this.options.items) ? this.options.items.call(this.element[0], event, { item: this.currentItem }) : $(this.options.items, this.element), this]];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3531
		var connectWith = this._connectWith();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3532
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3533
		if(connectWith) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3534
			for (var i = connectWith.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3535
				var cur = $(connectWith[i]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3536
				for (var j = cur.length - 1; j >= 0; j--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3537
					var inst = $.data(cur[j], 'sortable');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3538
					if(inst && inst != this && !inst.options.disabled) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3539
						queries.push([$.isFunction(inst.options.items) ? inst.options.items.call(inst.element[0], event, { item: this.currentItem }) : $(inst.options.items, inst.element), inst]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3540
						this.containers.push(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3541
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3542
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3543
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3544
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3545
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3546
		for (var i = queries.length - 1; i >= 0; i--) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3547
			var targetData = queries[i][1];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3548
			var _queries = queries[i][0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3549
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3550
			for (var j=0, queriesLength = _queries.length; j < queriesLength; j++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3551
				var item = $(_queries[j]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3552
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3553
				item.data('sortable-item', targetData); // Data for target checking (mouse manager)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3554
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3555
				items.push({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3556
					item: item,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3557
					instance: targetData,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3558
					width: 0, height: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3559
					left: 0, top: 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3560
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3561
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3562
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3563
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3564
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3565
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3566
	refreshPositions: function(fast) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3567
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3568
		//This has to be redone because due to the item being moved out/into the offsetParent, the offsetParent's position will change
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3569
		if(this.offsetParent && this.helper) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3570
			this.offset.parent = this._getParentOffset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3571
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3572
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3573
		for (var i = this.items.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3574
			var item = this.items[i];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3575
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3576
			var t = this.options.toleranceElement ? $(this.options.toleranceElement, item.item) : item.item;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3577
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3578
			if (!fast) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3579
				item.width = t.outerWidth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3580
				item.height = t.outerHeight();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3581
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3582
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3583
			var p = t.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3584
			item.left = p.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3585
			item.top = p.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3586
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3587
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3588
		if(this.options.custom && this.options.custom.refreshContainers) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3589
			this.options.custom.refreshContainers.call(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3590
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3591
			for (var i = this.containers.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3592
				var p = this.containers[i].element.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3593
				this.containers[i].containerCache.left = p.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3594
				this.containers[i].containerCache.top = p.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3595
				this.containers[i].containerCache.width	= this.containers[i].element.outerWidth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3596
				this.containers[i].containerCache.height = this.containers[i].element.outerHeight();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3597
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3598
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3599
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3600
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3601
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3602
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3603
	_createPlaceholder: function(that) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3604
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3605
		var self = that || this, o = self.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3606
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3607
		if(!o.placeholder || o.placeholder.constructor == String) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3608
			var className = o.placeholder;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3609
			o.placeholder = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3610
				element: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3611
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3612
					var el = $(document.createElement(self.currentItem[0].nodeName))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3613
						.addClass(className || self.currentItem[0].className+" ui-sortable-placeholder")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3614
						.removeClass("ui-sortable-helper")[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3615
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3616
					if(!className)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3617
						el.style.visibility = "hidden";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3618
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3619
					return el;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3620
				},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3621
				update: function(container, p) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3622
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3623
					// 1. If a className is set as 'placeholder option, we don't force sizes - the class is responsible for that
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3624
					// 2. The option 'forcePlaceholderSize can be enabled to force it even if a class name is specified
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3625
					if(className && !o.forcePlaceholderSize) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3626
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3627
					//If the element doesn't have a actual height by itself (without styles coming from a stylesheet), it receives the inline height from the dragged item
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3628
					if(!p.height()) { p.height(self.currentItem.innerHeight() - parseInt(self.currentItem.css('paddingTop')||0, 10) - parseInt(self.currentItem.css('paddingBottom')||0, 10)); };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3629
					if(!p.width()) { p.width(self.currentItem.innerWidth() - parseInt(self.currentItem.css('paddingLeft')||0, 10) - parseInt(self.currentItem.css('paddingRight')||0, 10)); };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3630
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3631
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3632
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3633
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3634
		//Create the placeholder
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3635
		self.placeholder = $(o.placeholder.element.call(self.element, self.currentItem));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3636
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3637
		//Append it after the actual current item
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3638
		self.currentItem.after(self.placeholder);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3639
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3640
		//Update the size of the placeholder (TODO: Logic to fuzzy, see line 316/317)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3641
		o.placeholder.update(self, self.placeholder);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3642
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3643
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3644
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3645
	_contactContainers: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3646
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3647
		// get innermost container that intersects with item 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3648
		var innermostContainer = null, innermostIndex = null;		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3649
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3650
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3651
		for (var i = this.containers.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3652
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3653
			// never consider a container that's located within the item itself 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3654
			if($.ui.contains(this.currentItem[0], this.containers[i].element[0]))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3655
				continue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3656
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3657
			if(this._intersectsWith(this.containers[i].containerCache)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3658
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3659
				// if we've already found a container and it's more "inner" than this, then continue 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3660
				if(innermostContainer && $.ui.contains(this.containers[i].element[0], innermostContainer.element[0]))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3661
					continue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3662
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3663
				innermostContainer = this.containers[i]; 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3664
				innermostIndex = i;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3665
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3666
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3667
				// container doesn't intersect. trigger "out" event if necessary 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3668
				if(this.containers[i].containerCache.over) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3669
					this.containers[i]._trigger("out", event, this._uiHash(this));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3670
					this.containers[i].containerCache.over = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3671
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3672
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3673
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3674
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3675
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3676
		// if no intersecting containers found, return 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3677
		if(!innermostContainer) return; 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3678
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3679
		// move the item into the container if it's not there already
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3680
		if(this.containers.length === 1) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3681
			this.containers[innermostIndex]._trigger("over", event, this._uiHash(this));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3682
			this.containers[innermostIndex].containerCache.over = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3683
		} else if(this.currentContainer != this.containers[innermostIndex]) { 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3684
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3685
			//When entering a new container, we will find the item with the least distance and append our item near it 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3686
			var dist = 10000; var itemWithLeastDistance = null; var base = this.positionAbs[this.containers[innermostIndex].floating ? 'left' : 'top']; 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3687
			for (var j = this.items.length - 1; j >= 0; j--) { 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3688
				if(!$.ui.contains(this.containers[innermostIndex].element[0], this.items[j].item[0])) continue; 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3689
				var cur = this.items[j][this.containers[innermostIndex].floating ? 'left' : 'top']; 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3690
				if(Math.abs(cur - base) < dist) { 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3691
					dist = Math.abs(cur - base); itemWithLeastDistance = this.items[j]; 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3692
				} 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3693
			} 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3694
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3695
			if(!itemWithLeastDistance && !this.options.dropOnEmpty) //Check if dropOnEmpty is enabled 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3696
				return; 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3697
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3698
			this.currentContainer = this.containers[innermostIndex]; 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3699
			itemWithLeastDistance ? this._rearrange(event, itemWithLeastDistance, null, true) : this._rearrange(event, null, this.containers[innermostIndex].element, true); 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3700
			this._trigger("change", event, this._uiHash()); 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3701
			this.containers[innermostIndex]._trigger("change", event, this._uiHash(this)); 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3702
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3703
			//Update the placeholder 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3704
			this.options.placeholder.update(this.currentContainer, this.placeholder); 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3705
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3706
			this.containers[innermostIndex]._trigger("over", event, this._uiHash(this)); 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3707
			this.containers[innermostIndex].containerCache.over = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3708
		} 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3709
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3710
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3711
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3712
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3713
	_createHelper: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3714
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3715
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3716
		var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event, this.currentItem])) : (o.helper == 'clone' ? this.currentItem.clone() : this.currentItem);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3717
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3718
		if(!helper.parents('body').length) //Add the helper to the DOM if that didn't happen already
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3719
			$(o.appendTo != 'parent' ? o.appendTo : this.currentItem[0].parentNode)[0].appendChild(helper[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3720
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3721
		if(helper[0] == this.currentItem[0])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3722
			this._storedCSS = { width: this.currentItem[0].style.width, height: this.currentItem[0].style.height, position: this.currentItem.css("position"), top: this.currentItem.css("top"), left: this.currentItem.css("left") };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3723
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3724
		if(helper[0].style.width == '' || o.forceHelperSize) helper.width(this.currentItem.width());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3725
		if(helper[0].style.height == '' || o.forceHelperSize) helper.height(this.currentItem.height());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3726
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3727
		return helper;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3728
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3729
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3730
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3731
	_adjustOffsetFromHelper: function(obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3732
		if (typeof obj == 'string') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3733
			obj = obj.split(' ');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3734
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3735
		if ($.isArray(obj)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3736
			obj = {left: +obj[0], top: +obj[1] || 0};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3737
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3738
		if ('left' in obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3739
			this.offset.click.left = obj.left + this.margins.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3740
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3741
		if ('right' in obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3742
			this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3743
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3744
		if ('top' in obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3745
			this.offset.click.top = obj.top + this.margins.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3746
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3747
		if ('bottom' in obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3748
			this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3749
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3750
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3751
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3752
	_getParentOffset: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3753
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3754
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3755
		//Get the offsetParent and cache its position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3756
		this.offsetParent = this.helper.offsetParent();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3757
		var po = this.offsetParent.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3758
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3759
		// This is a special case where we need to modify a offset calculated on start, since the following happened:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3760
		// 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3761
		// 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3762
		//    the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3763
		if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3764
			po.left += this.scrollParent.scrollLeft();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3765
			po.top += this.scrollParent.scrollTop();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3766
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3767
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3768
		if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3769
		|| (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3770
			po = { top: 0, left: 0 };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3771
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3772
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3773
			top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3774
			left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3775
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3776
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3777
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3778
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3779
	_getRelativeOffset: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3780
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3781
		if(this.cssPosition == "relative") {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3782
			var p = this.currentItem.position();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3783
			return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3784
				top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3785
				left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3786
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3787
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3788
			return { top: 0, left: 0 };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3789
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3790
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3791
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3792
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3793
	_cacheMargins: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3794
		this.margins = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3795
			left: (parseInt(this.currentItem.css("marginLeft"),10) || 0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3796
			top: (parseInt(this.currentItem.css("marginTop"),10) || 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3797
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3798
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3799
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3800
	_cacheHelperProportions: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3801
		this.helperProportions = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3802
			width: this.helper.outerWidth(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3803
			height: this.helper.outerHeight()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3804
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3805
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3806
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3807
	_setContainment: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3808
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3809
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3810
		if(o.containment == 'parent') o.containment = this.helper[0].parentNode;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3811
		if(o.containment == 'document' || o.containment == 'window') this.containment = [
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3812
			0 - this.offset.relative.left - this.offset.parent.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3813
			0 - this.offset.relative.top - this.offset.parent.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3814
			$(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3815
			($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3816
		];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3817
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3818
		if(!(/^(document|window|parent)$/).test(o.containment)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3819
			var ce = $(o.containment)[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3820
			var co = $(o.containment).offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3821
			var over = ($(ce).css("overflow") != 'hidden');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3822
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3823
			this.containment = [
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3824
				co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3825
				co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3826
				co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3827
				co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3828
			];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3829
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3830
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3831
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3832
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3833
	_convertPositionTo: function(d, pos) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3834
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3835
		if(!pos) pos = this.position;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3836
		var mod = d == "absolute" ? 1 : -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3837
		var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3838
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3839
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3840
			top: (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3841
				pos.top																	// The absolute mouse position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3842
				+ this.offset.relative.top * mod										// Only for relative positioned nodes: Relative offset from element to offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3843
				+ this.offset.parent.top * mod											// The offsetParent's offset without borders (offset + border)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3844
				- ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3845
			),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3846
			left: (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3847
				pos.left																// The absolute mouse position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3848
				+ this.offset.relative.left * mod										// Only for relative positioned nodes: Relative offset from element to offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3849
				+ this.offset.parent.left * mod											// The offsetParent's offset without borders (offset + border)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3850
				- ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3851
			)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3852
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3853
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3854
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3855
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3856
	_generatePosition: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3857
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3858
		var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3859
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3860
		// This is another very weird special case that only happens for relative elements:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3861
		// 1. If the css position is relative
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3862
		// 2. and the scroll parent is the document or similar to the offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3863
		// we have to refresh the relative offset during the scroll so there are no jumps
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3864
		if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3865
			this.offset.relative = this._getRelativeOffset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3866
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3867
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3868
		var pageX = event.pageX;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3869
		var pageY = event.pageY;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3870
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3871
		/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3872
		 * - Position constraining -
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3873
		 * Constrain the position to a mix of grid, containment.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3874
		 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3875
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3876
		if(this.originalPosition) { //If we are not dragging yet, we won't check for options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3877
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3878
			if(this.containment) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3879
				if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3880
				if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3881
				if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3882
				if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3883
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3884
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3885
			if(o.grid) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3886
				var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3887
				pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3888
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3889
				var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3890
				pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3891
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3892
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3893
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3894
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3895
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3896
			top: (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3897
				pageY																// The absolute mouse position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3898
				- this.offset.click.top													// Click offset (relative to the element)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3899
				- this.offset.relative.top												// Only for relative positioned nodes: Relative offset from element to offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3900
				- this.offset.parent.top												// The offsetParent's offset without borders (offset + border)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3901
				+ ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3902
			),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3903
			left: (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3904
				pageX																// The absolute mouse position
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3905
				- this.offset.click.left												// Click offset (relative to the element)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3906
				- this.offset.relative.left												// Only for relative positioned nodes: Relative offset from element to offset parent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3907
				- this.offset.parent.left												// The offsetParent's offset without borders (offset + border)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3908
				+ ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3909
			)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3910
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3911
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3912
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3913
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3914
	_rearrange: function(event, i, a, hardRefresh) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3915
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3916
		a ? a[0].appendChild(this.placeholder[0]) : i.item[0].parentNode.insertBefore(this.placeholder[0], (this.direction == 'down' ? i.item[0] : i.item[0].nextSibling));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3917
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3918
		//Various things done here to improve the performance:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3919
		// 1. we create a setTimeout, that calls refreshPositions
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3920
		// 2. on the instance, we have a counter variable, that get's higher after every append
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3921
		// 3. on the local scope, we copy the counter variable, and check in the timeout, if it's still the same
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3922
		// 4. this lets only the last addition to the timeout stack through
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3923
		this.counter = this.counter ? ++this.counter : 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3924
		var self = this, counter = this.counter;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3925
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3926
		window.setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3927
			if(counter == self.counter) self.refreshPositions(!hardRefresh); //Precompute after each DOM insertion, NOT on mousemove
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3928
		},0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3929
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3930
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3931
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3932
	_clear: function(event, noPropagation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3933
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3934
		this.reverting = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3935
		// We delay all events that have to be triggered to after the point where the placeholder has been removed and
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3936
		// everything else normalized again
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3937
		var delayedTriggers = [], self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3938
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3939
		// We first have to update the dom position of the actual currentItem
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3940
		// Note: don't do it if the current item is already removed (by a user), or it gets reappended (see #4088)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3941
		if(!this._noFinalSort && this.currentItem[0].parentNode) this.placeholder.before(this.currentItem);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3942
		this._noFinalSort = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3943
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3944
		if(this.helper[0] == this.currentItem[0]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3945
			for(var i in this._storedCSS) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3946
				if(this._storedCSS[i] == 'auto' || this._storedCSS[i] == 'static') this._storedCSS[i] = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3947
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3948
			this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3949
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3950
			this.currentItem.show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3951
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3952
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3953
		if(this.fromOutside && !noPropagation) delayedTriggers.push(function(event) { this._trigger("receive", event, this._uiHash(this.fromOutside)); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3954
		if((this.fromOutside || this.domPosition.prev != this.currentItem.prev().not(".ui-sortable-helper")[0] || this.domPosition.parent != this.currentItem.parent()[0]) && !noPropagation) delayedTriggers.push(function(event) { this._trigger("update", event, this._uiHash()); }); //Trigger update callback if the DOM position has changed
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3955
		if(!$.ui.contains(this.element[0], this.currentItem[0])) { //Node was moved out of the current element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3956
			if(!noPropagation) delayedTriggers.push(function(event) { this._trigger("remove", event, this._uiHash()); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3957
			for (var i = this.containers.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3958
				if($.ui.contains(this.containers[i].element[0], this.currentItem[0]) && !noPropagation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3959
					delayedTriggers.push((function(c) { return function(event) { c._trigger("receive", event, this._uiHash(this)); };  }).call(this, this.containers[i]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3960
					delayedTriggers.push((function(c) { return function(event) { c._trigger("update", event, this._uiHash(this));  }; }).call(this, this.containers[i]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3961
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3962
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3963
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3964
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3965
		//Post events to containers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3966
		for (var i = this.containers.length - 1; i >= 0; i--){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3967
			if(!noPropagation) delayedTriggers.push((function(c) { return function(event) { c._trigger("deactivate", event, this._uiHash(this)); };  }).call(this, this.containers[i]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3968
			if(this.containers[i].containerCache.over) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3969
				delayedTriggers.push((function(c) { return function(event) { c._trigger("out", event, this._uiHash(this)); };  }).call(this, this.containers[i]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3970
				this.containers[i].containerCache.over = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3971
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3972
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3973
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3974
		//Do what was originally in plugins
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3975
		if(this._storedCursor) $('body').css("cursor", this._storedCursor); //Reset cursor
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3976
		if(this._storedOpacity) this.helper.css("opacity", this._storedOpacity); //Reset opacity
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3977
		if(this._storedZIndex) this.helper.css("zIndex", this._storedZIndex == 'auto' ? '' : this._storedZIndex); //Reset z-index
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3978
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3979
		this.dragging = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3980
		if(this.cancelHelperRemoval) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3981
			if(!noPropagation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3982
				this._trigger("beforeStop", event, this._uiHash());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3983
				for (var i=0; i < delayedTriggers.length; i++) { delayedTriggers[i].call(this, event); }; //Trigger all delayed events
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3984
				this._trigger("stop", event, this._uiHash());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3985
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3986
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3987
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3988
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3989
		if(!noPropagation) this._trigger("beforeStop", event, this._uiHash());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3990
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3991
		//$(this.placeholder[0]).remove(); would have been the jQuery way - unfortunately, it unbinds ALL events from the original node!
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3992
		this.placeholder[0].parentNode.removeChild(this.placeholder[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3993
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3994
		if(this.helper[0] != this.currentItem[0]) this.helper.remove(); this.helper = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3995
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3996
		if(!noPropagation) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3997
			for (var i=0; i < delayedTriggers.length; i++) { delayedTriggers[i].call(this, event); }; //Trigger all delayed events
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3998
			this._trigger("stop", event, this._uiHash());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  3999
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4000
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4001
		this.fromOutside = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4002
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4003
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4004
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4005
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4006
	_trigger: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4007
		if ($.Widget.prototype._trigger.apply(this, arguments) === false) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4008
			this.cancel();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4009
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4010
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4011
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4012
	_uiHash: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4013
		var self = inst || this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4014
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4015
			helper: self.helper,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4016
			placeholder: self.placeholder || $([]),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4017
			position: self.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4018
			originalPosition: self.originalPosition,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4019
			offset: self.positionAbs,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4020
			item: self.currentItem,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4021
			sender: inst ? inst.element : null
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4022
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4023
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4024
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4025
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4026
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4027
$.extend($.ui.sortable, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4028
	version: "1.8.1"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4029
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4030
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4031
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4032
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4033
 * jQuery UI Accordion 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4034
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4035
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4036
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4037
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4038
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4039
 * http://docs.jquery.com/UI/Accordion
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4040
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4041
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4042
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4043
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4044
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4045
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4046
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4047
$.widget("ui.accordion", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4048
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4049
		active: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4050
		animated: 'slide',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4051
		autoHeight: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4052
		clearStyle: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4053
		collapsible: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4054
		event: "click",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4055
		fillSpace: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4056
		header: "> li > :first-child,> :not(li):even",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4057
		icons: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4058
			header: "ui-icon-triangle-1-e",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4059
			headerSelected: "ui-icon-triangle-1-s"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4060
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4061
		navigation: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4062
		navigationFilter: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4063
			return this.href.toLowerCase() == location.href.toLowerCase();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4064
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4065
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4066
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4067
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4068
		var o = this.options, self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4069
		this.running = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4070
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4071
		this.element.addClass("ui-accordion ui-widget ui-helper-reset");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4072
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4073
		// in lack of child-selectors in CSS we need to mark top-LIs in a UL-accordion for some IE-fix
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4074
		if (this.element[0].nodeName == "UL") {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4075
			this.element.children("li").addClass("ui-accordion-li-fix");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4076
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4077
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4078
		this.headers = this.element.find(o.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4079
			.bind("mouseenter.accordion", function(){ $(this).addClass('ui-state-hover'); })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4080
			.bind("mouseleave.accordion", function(){ $(this).removeClass('ui-state-hover'); })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4081
			.bind("focus.accordion", function(){ $(this).addClass('ui-state-focus'); })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4082
			.bind("blur.accordion", function(){ $(this).removeClass('ui-state-focus'); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4083
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4084
		this.headers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4085
			.next()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4086
				.addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4087
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4088
		if ( o.navigation ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4089
			var current = this.element.find("a").filter(o.navigationFilter);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4090
			if ( current.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4091
				var header = current.closest(".ui-accordion-header");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4092
				if ( header.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4093
					// anchor within header
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4094
					this.active = header;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4095
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4096
					// anchor within content
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4097
					this.active = current.closest(".ui-accordion-content").prev();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4098
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4099
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4100
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4101
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4102
		this.active = this._findActive(this.active || o.active).toggleClass("ui-state-default").toggleClass("ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4103
		this.active.next().addClass('ui-accordion-content-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4104
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4105
		//Append icon elements
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4106
		this._createIcons();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4107
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4108
		this.resize();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4109
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4110
		//ARIA
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4111
		this.element.attr('role','tablist');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4112
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4113
		this.headers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4114
			.attr('role','tab')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4115
			.bind('keydown', function(event) { return self._keydown(event); })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4116
			.next()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4117
			.attr('role','tabpanel');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4118
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4119
		this.headers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4120
			.not(this.active || "")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4121
			.attr('aria-expanded','false')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4122
			.attr("tabIndex", "-1")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4123
			.next()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4124
			.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4125
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4126
		// make sure at least one header is in the tab order
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4127
		if (!this.active.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4128
			this.headers.eq(0).attr('tabIndex','0');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4129
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4130
			this.active
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4131
				.attr('aria-expanded','true')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4132
				.attr('tabIndex', '0');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4133
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4134
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4135
		// only need links in taborder for Safari
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4136
		if (!$.browser.safari)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4137
			this.headers.find('a').attr('tabIndex','-1');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4138
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4139
		if (o.event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4140
			this.headers.bind((o.event) + ".accordion", function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4141
				self._clickHandler.call(self, event, this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4142
				event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4143
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4144
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4145
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4146
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4147
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4148
	_createIcons: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4149
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4150
		if (o.icons) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4151
			$("<span/>").addClass("ui-icon " + o.icons.header).prependTo(this.headers);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4152
			this.active.find(".ui-icon").toggleClass(o.icons.header).toggleClass(o.icons.headerSelected);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4153
			this.element.addClass("ui-accordion-icons");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4154
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4155
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4156
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4157
	_destroyIcons: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4158
		this.headers.children(".ui-icon").remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4159
		this.element.removeClass("ui-accordion-icons");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4160
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4161
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4162
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4163
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4164
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4165
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4166
			.removeClass("ui-accordion ui-widget ui-helper-reset")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4167
			.removeAttr("role")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4168
			.unbind('.accordion')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4169
			.removeData('accordion');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4170
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4171
		this.headers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4172
			.unbind(".accordion")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4173
			.removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-corner-top")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4174
			.removeAttr("role").removeAttr("aria-expanded").removeAttr("tabIndex");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4175
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4176
		this.headers.find("a").removeAttr("tabIndex");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4177
		this._destroyIcons();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4178
		var contents = this.headers.next().css("display", "").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4179
		if (o.autoHeight || o.fillHeight) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4180
			contents.css("height", "");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4181
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4182
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4183
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4184
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4185
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4186
	_setOption: function(key, value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4187
		$.Widget.prototype._setOption.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4188
			
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4189
		if (key == "active") {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4190
			this.activate(value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4191
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4192
		if (key == "icons") {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4193
			this._destroyIcons();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4194
			if (value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4195
				this._createIcons();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4196
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4197
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4198
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4199
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4200
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4201
	_keydown: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4202
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4203
		var o = this.options, keyCode = $.ui.keyCode;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4204
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4205
		if (o.disabled || event.altKey || event.ctrlKey)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4206
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4207
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4208
		var length = this.headers.length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4209
		var currentIndex = this.headers.index(event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4210
		var toFocus = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4211
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4212
		switch(event.keyCode) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4213
			case keyCode.RIGHT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4214
			case keyCode.DOWN:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4215
				toFocus = this.headers[(currentIndex + 1) % length];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4216
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4217
			case keyCode.LEFT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4218
			case keyCode.UP:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4219
				toFocus = this.headers[(currentIndex - 1 + length) % length];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4220
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4221
			case keyCode.SPACE:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4222
			case keyCode.ENTER:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4223
				this._clickHandler({ target: event.target }, event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4224
				event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4225
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4226
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4227
		if (toFocus) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4228
			$(event.target).attr('tabIndex','-1');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4229
			$(toFocus).attr('tabIndex','0');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4230
			toFocus.focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4231
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4232
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4233
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4234
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4235
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4236
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4237
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4238
	resize: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4239
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4240
		var o = this.options, maxHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4241
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4242
		if (o.fillSpace) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4243
			
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4244
			if($.browser.msie) { var defOverflow = this.element.parent().css('overflow'); this.element.parent().css('overflow', 'hidden'); }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4245
			maxHeight = this.element.parent().height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4246
			if($.browser.msie) { this.element.parent().css('overflow', defOverflow); }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4247
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4248
			this.headers.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4249
				maxHeight -= $(this).outerHeight(true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4250
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4251
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4252
			this.headers.next().each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4253
    		   $(this).height(Math.max(0, maxHeight - $(this).innerHeight() + $(this).height()));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4254
			}).css('overflow', 'auto');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4255
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4256
		} else if ( o.autoHeight ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4257
			maxHeight = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4258
			this.headers.next().each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4259
				maxHeight = Math.max(maxHeight, $(this).height());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4260
			}).height(maxHeight);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4261
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4262
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4263
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4264
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4265
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4266
	activate: function(index) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4267
		// TODO this gets called on init, changing the option without an explicit call for that
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4268
		this.options.active = index;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4269
		// call clickHandler with custom event
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4270
		var active = this._findActive(index)[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4271
		this._clickHandler({ target: active }, active);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4272
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4273
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4274
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4275
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4276
	_findActive: function(selector) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4277
		return selector
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4278
			? typeof selector == "number"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4279
				? this.headers.filter(":eq(" + selector + ")")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4280
				: this.headers.not(this.headers.not(selector))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4281
			: selector === false
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4282
				? $([])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4283
				: this.headers.filter(":eq(0)");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4284
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4285
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4286
	// TODO isn't event.target enough? why the seperate target argument?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4287
	_clickHandler: function(event, target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4288
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4289
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4290
		if (o.disabled)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4291
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4292
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4293
		// called only when using activate(false) to close all parts programmatically
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4294
		if (!event.target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4295
			if (!o.collapsible)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4296
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4297
			this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4298
				.find(".ui-icon").removeClass(o.icons.headerSelected).addClass(o.icons.header);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4299
			this.active.next().addClass('ui-accordion-content-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4300
			var toHide = this.active.next(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4301
				data = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4302
					options: o,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4303
					newHeader: $([]),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4304
					oldHeader: o.active,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4305
					newContent: $([]),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4306
					oldContent: toHide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4307
				},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4308
				toShow = (this.active = $([]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4309
			this._toggle(toShow, toHide, data);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4310
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4311
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4312
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4313
		// get the click target
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4314
		var clicked = $(event.currentTarget || target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4315
		var clickedIsActive = clicked[0] == this.active[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4316
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4317
		// TODO the option is changed, is that correct?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4318
		// TODO if it is correct, shouldn't that happen after determining that the click is valid?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4319
		o.active = o.collapsible && clickedIsActive ? false : $('.ui-accordion-header', this.element).index(clicked);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4320
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4321
		// if animations are still active, or the active header is the target, ignore click
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4322
		if (this.running || (!o.collapsible && clickedIsActive)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4323
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4324
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4325
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4326
		// switch classes
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4327
		this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4328
			.find(".ui-icon").removeClass(o.icons.headerSelected).addClass(o.icons.header);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4329
		if (!clickedIsActive) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4330
			clicked.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4331
				.find(".ui-icon").removeClass(o.icons.header).addClass(o.icons.headerSelected);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4332
			clicked.next().addClass('ui-accordion-content-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4333
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4334
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4335
		// find elements to show and hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4336
		var toShow = clicked.next(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4337
			toHide = this.active.next(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4338
			data = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4339
				options: o,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4340
				newHeader: clickedIsActive && o.collapsible ? $([]) : clicked,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4341
				oldHeader: this.active,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4342
				newContent: clickedIsActive && o.collapsible ? $([]) : toShow,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4343
				oldContent: toHide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4344
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4345
			down = this.headers.index( this.active[0] ) > this.headers.index( clicked[0] );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4346
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4347
		this.active = clickedIsActive ? $([]) : clicked;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4348
		this._toggle(toShow, toHide, data, clickedIsActive, down);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4349
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4350
		return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4351
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4352
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4353
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4354
	_toggle: function(toShow, toHide, data, clickedIsActive, down) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4355
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4356
		var o = this.options, self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4357
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4358
		this.toShow = toShow;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4359
		this.toHide = toHide;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4360
		this.data = data;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4361
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4362
		var complete = function() { if(!self) return; return self._completed.apply(self, arguments); };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4363
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4364
		// trigger changestart event
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4365
		this._trigger("changestart", null, this.data);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4366
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4367
		// count elements to animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4368
		this.running = toHide.size() === 0 ? toShow.size() : toHide.size();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4369
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4370
		if (o.animated) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4371
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4372
			var animOptions = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4373
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4374
			if ( o.collapsible && clickedIsActive ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4375
				animOptions = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4376
					toShow: $([]),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4377
					toHide: toHide,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4378
					complete: complete,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4379
					down: down,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4380
					autoHeight: o.autoHeight || o.fillSpace
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4381
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4382
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4383
				animOptions = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4384
					toShow: toShow,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4385
					toHide: toHide,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4386
					complete: complete,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4387
					down: down,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4388
					autoHeight: o.autoHeight || o.fillSpace
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4389
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4390
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4391
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4392
			if (!o.proxied) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4393
				o.proxied = o.animated;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4394
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4395
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4396
			if (!o.proxiedDuration) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4397
				o.proxiedDuration = o.duration;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4398
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4399
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4400
			o.animated = $.isFunction(o.proxied) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4401
				o.proxied(animOptions) : o.proxied;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4402
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4403
			o.duration = $.isFunction(o.proxiedDuration) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4404
				o.proxiedDuration(animOptions) : o.proxiedDuration;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4405
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4406
			var animations = $.ui.accordion.animations,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4407
				duration = o.duration,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4408
				easing = o.animated;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4409
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4410
			if (easing && !animations[easing] && !$.easing[easing]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4411
				easing = 'slide';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4412
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4413
			if (!animations[easing]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4414
				animations[easing] = function(options) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4415
					this.slide(options, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4416
						easing: easing,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4417
						duration: duration || 700
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4418
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4419
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4420
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4421
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4422
			animations[easing](animOptions);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4423
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4424
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4425
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4426
			if (o.collapsible && clickedIsActive) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4427
				toShow.toggle();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4428
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4429
				toHide.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4430
				toShow.show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4431
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4432
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4433
			complete(true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4434
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4435
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4436
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4437
		// TODO assert that the blur and focus triggers are really necessary, remove otherwise
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4438
		toHide.prev().attr('aria-expanded','false').attr("tabIndex", "-1").blur();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4439
		toShow.prev().attr('aria-expanded','true').attr("tabIndex", "0").focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4440
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4441
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4442
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4443
	_completed: function(cancel) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4444
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4445
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4446
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4447
		this.running = cancel ? 0 : --this.running;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4448
		if (this.running) return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4449
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4450
		if (o.clearStyle) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4451
			this.toShow.add(this.toHide).css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4452
				height: "",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4453
				overflow: ""
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4454
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4455
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4456
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4457
		// other classes are removed before the animation; this one needs to stay until completed
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4458
		this.toHide.removeClass("ui-accordion-content-active");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4459
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4460
		this._trigger('change', null, this.data);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4461
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4462
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4463
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4464
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4465
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4466
$.extend($.ui.accordion, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4467
	version: "1.8.1",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4468
	animations: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4469
		slide: function(options, additions) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4470
			options = $.extend({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4471
				easing: "swing",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4472
				duration: 300
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4473
			}, options, additions);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4474
			if ( !options.toHide.size() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4475
				options.toShow.animate({height: "show"}, options);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4476
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4477
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4478
			if ( !options.toShow.size() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4479
				options.toHide.animate({height: "hide"}, options);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4480
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4481
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4482
			var overflow = options.toShow.css('overflow'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4483
				percentDone = 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4484
				showProps = {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4485
				hideProps = {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4486
				fxAttrs = [ "height", "paddingTop", "paddingBottom" ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4487
				originalWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4488
			// fix width before calculating height of hidden element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4489
			var s = options.toShow;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4490
			originalWidth = s[0].style.width;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4491
			s.width( parseInt(s.parent().width(),10) - parseInt(s.css("paddingLeft"),10) - parseInt(s.css("paddingRight"),10) - (parseInt(s.css("borderLeftWidth"),10) || 0) - (parseInt(s.css("borderRightWidth"),10) || 0) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4492
			
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4493
			$.each(fxAttrs, function(i, prop) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4494
				hideProps[prop] = 'hide';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4495
				
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4496
				var parts = ('' + $.css(options.toShow[0], prop)).match(/^([\d+-.]+)(.*)$/);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4497
				showProps[prop] = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4498
					value: parts[1],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4499
					unit: parts[2] || 'px'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4500
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4501
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4502
			options.toShow.css({ height: 0, overflow: 'hidden' }).show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4503
			options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate(hideProps,{
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4504
				step: function(now, settings) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4505
					// only calculate the percent when animating height
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4506
					// IE gets very inconsistent results when animating elements
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4507
					// with small values, which is common for padding
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4508
					if (settings.prop == 'height') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4509
						percentDone = ( settings.end - settings.start === 0 ) ? 0 :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4510
							(settings.now - settings.start) / (settings.end - settings.start);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4511
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4512
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4513
					options.toShow[0].style[settings.prop] =
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4514
						(percentDone * showProps[settings.prop].value) + showProps[settings.prop].unit;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4515
				},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4516
				duration: options.duration,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4517
				easing: options.easing,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4518
				complete: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4519
					if ( !options.autoHeight ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4520
						options.toShow.css("height", "");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4521
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4522
					options.toShow.css("width", originalWidth);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4523
					options.toShow.css({overflow: overflow});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4524
					options.complete();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4525
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4526
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4527
		},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4528
		bounceslide: function(options) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4529
			this.slide(options, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4530
				easing: options.down ? "easeOutBounce" : "swing",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4531
				duration: options.down ? 1000 : 200
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4532
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4533
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4534
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4535
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4536
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4537
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4538
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4539
 * jQuery UI Autocomplete 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4540
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4541
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4542
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4543
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4544
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4545
 * http://docs.jquery.com/UI/Autocomplete
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4546
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4547
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4548
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4549
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4550
 *	jquery.ui.position.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4551
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4552
(function( $ ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4553
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4554
$.widget( "ui.autocomplete", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4555
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4556
		minLength: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4557
		delay: 300
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4558
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4559
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4560
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4561
			doc = this.element[ 0 ].ownerDocument;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4562
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4563
			.addClass( "ui-autocomplete-input" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4564
			.attr( "autocomplete", "off" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4565
			// TODO verify these actually work as intended
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4566
			.attr({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4567
				role: "textbox",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4568
				"aria-autocomplete": "list",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4569
				"aria-haspopup": "true"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4570
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4571
			.bind( "keydown.autocomplete", function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4572
				var keyCode = $.ui.keyCode;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4573
				switch( event.keyCode ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4574
				case keyCode.PAGE_UP:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4575
					self._move( "previousPage", event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4576
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4577
				case keyCode.PAGE_DOWN:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4578
					self._move( "nextPage", event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4579
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4580
				case keyCode.UP:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4581
					self._move( "previous", event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4582
					// prevent moving cursor to beginning of text field in some browsers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4583
					event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4584
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4585
				case keyCode.DOWN:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4586
					self._move( "next", event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4587
					// prevent moving cursor to end of text field in some browsers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4588
					event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4589
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4590
				case keyCode.ENTER:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4591
					// when menu is open or has focus
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4592
					if ( self.menu.active ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4593
						event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4594
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4595
					//passthrough - ENTER and TAB both select the current element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4596
				case keyCode.TAB:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4597
					if ( !self.menu.active ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4598
						return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4599
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4600
					self.menu.select( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4601
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4602
				case keyCode.ESCAPE:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4603
					self.element.val( self.term );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4604
					self.close( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4605
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4606
				case keyCode.LEFT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4607
				case keyCode.RIGHT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4608
				case keyCode.SHIFT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4609
				case keyCode.CONTROL:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4610
				case keyCode.ALT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4611
					// ignore metakeys (shift, ctrl, alt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4612
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4613
				default:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4614
					// keypress is triggered before the input value is changed
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4615
					clearTimeout( self.searching );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4616
					self.searching = setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4617
						self.search( null, event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4618
					}, self.options.delay );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4619
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4620
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4621
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4622
			.bind( "focus.autocomplete", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4623
				self.selectedItem = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4624
				self.previous = self.element.val();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4625
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4626
			.bind( "blur.autocomplete", function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4627
				clearTimeout( self.searching );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4628
				// clicks on the menu (or a button to trigger a search) will cause a blur event
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4629
				// TODO try to implement this without a timeout, see clearTimeout in search()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4630
				self.closing = setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4631
					self.close( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4632
					self._change( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4633
				}, 150 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4634
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4635
		this._initSource();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4636
		this.response = function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4637
			return self._response.apply( self, arguments );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4638
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4639
		this.menu = $( "<ul></ul>" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4640
			.addClass( "ui-autocomplete" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4641
			.appendTo( "body", doc )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4642
			.menu({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4643
				focus: function( event, ui ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4644
					var item = ui.item.data( "item.autocomplete" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4645
					if ( false !== self._trigger( "focus", null, { item: item } ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4646
						// use value to match what will end up in the input, if it was a key event
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4647
						if ( /^key/.test(event.originalEvent.type) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4648
							self.element.val( item.value );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4649
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4650
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4651
				},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4652
				selected: function( event, ui ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4653
					var item = ui.item.data( "item.autocomplete" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4654
					if ( false !== self._trigger( "select", event, { item: item } ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4655
						self.element.val( item.value );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4656
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4657
					self.close( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4658
					// only trigger when focus was lost (click on menu)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4659
					var previous = self.previous;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4660
					if ( self.element[0] !== doc.activeElement ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4661
						self.element.focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4662
						self.previous = previous;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4663
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4664
					self.selectedItem = item;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4665
				},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4666
				blur: function( event, ui ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4667
					if ( self.menu.element.is(":visible") ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4668
						self.element.val( self.term );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4669
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4670
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4671
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4672
			.zIndex( this.element.zIndex() + 1 )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4673
			// workaround for jQuery bug #5781 http://dev.jquery.com/ticket/5781
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4674
			.css({ top: 0, left: 0 })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4675
			.hide()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4676
			.data( "menu" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4677
		if ( $.fn.bgiframe ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4678
			 this.menu.element.bgiframe();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4679
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4680
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4681
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4682
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4683
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4684
			.removeClass( "ui-autocomplete-input" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4685
			.removeAttr( "autocomplete" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4686
			.removeAttr( "role" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4687
			.removeAttr( "aria-autocomplete" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4688
			.removeAttr( "aria-haspopup" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4689
		this.menu.element.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4690
		$.Widget.prototype.destroy.call( this );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4691
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4692
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4693
	_setOption: function( key ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4694
		$.Widget.prototype._setOption.apply( this, arguments );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4695
		if ( key === "source" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4696
			this._initSource();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4697
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4698
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4699
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4700
	_initSource: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4701
		var array,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4702
			url;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4703
		if ( $.isArray(this.options.source) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4704
			array = this.options.source;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4705
			this.source = function( request, response ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4706
				response( $.ui.autocomplete.filter(array, request.term) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4707
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4708
		} else if ( typeof this.options.source === "string" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4709
			url = this.options.source;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4710
			this.source = function( request, response ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4711
				$.getJSON( url, request, response );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4712
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4713
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4714
			this.source = this.options.source;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4715
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4716
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4717
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4718
	search: function( value, event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4719
		value = value != null ? value : this.element.val();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4720
		if ( value.length < this.options.minLength ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4721
			return this.close( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4722
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4723
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4724
		clearTimeout( this.closing );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4725
		if ( this._trigger("search") === false ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4726
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4727
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4728
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4729
		return this._search( value );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4730
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4731
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4732
	_search: function( value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4733
		this.term = this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4734
			.addClass( "ui-autocomplete-loading" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4735
			// always save the actual value, not the one passed as an argument
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4736
			.val();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4737
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4738
		this.source( { term: value }, this.response );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4739
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4740
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4741
	_response: function( content ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4742
		if ( content.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4743
			content = this._normalize( content );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4744
			this._suggest( content );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4745
			this._trigger( "open" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4746
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4747
			this.close();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4748
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4749
		this.element.removeClass( "ui-autocomplete-loading" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4750
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4751
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4752
	close: function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4753
		clearTimeout( this.closing );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4754
		if ( this.menu.element.is(":visible") ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4755
			this._trigger( "close", event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4756
			this.menu.element.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4757
			this.menu.deactivate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4758
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4759
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4760
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4761
	_change: function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4762
		if ( this.previous !== this.element.val() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4763
			this._trigger( "change", event, { item: this.selectedItem } );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4764
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4765
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4766
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4767
	_normalize: function( items ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4768
		// assume all items have the right format when the first item is complete
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4769
		if ( items.length && items[0].label && items[0].value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4770
			return items;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4771
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4772
		return $.map( items, function(item) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4773
			if ( typeof item === "string" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4774
				return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4775
					label: item,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4776
					value: item
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4777
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4778
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4779
			return $.extend({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4780
				label: item.label || item.value,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4781
				value: item.value || item.label
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4782
			}, item );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4783
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4784
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4785
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4786
	_suggest: function( items ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4787
		var ul = this.menu.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4788
				.empty()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4789
				.zIndex( this.element.zIndex() + 1 ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4790
			menuWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4791
			textWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4792
		this._renderMenu( ul, items );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4793
		// TODO refresh should check if the active item is still in the dom, removing the need for a manual deactivate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4794
		this.menu.deactivate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4795
		this.menu.refresh();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4796
		this.menu.element.show().position({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4797
			my: "left top",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4798
			at: "left bottom",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4799
			of: this.element,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4800
			collision: "none"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4801
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4802
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4803
		menuWidth = ul.width( "" ).width();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4804
		textWidth = this.element.width();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4805
		ul.width( Math.max( menuWidth, textWidth ) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4806
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4807
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4808
	_renderMenu: function( ul, items ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4809
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4810
		$.each( items, function( index, item ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4811
			self._renderItem( ul, item );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4812
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4813
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4814
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4815
	_renderItem: function( ul, item) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4816
		return $( "<li></li>" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4817
			.data( "item.autocomplete", item )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4818
			.append( "<a>" + item.label + "</a>" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4819
			.appendTo( ul );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4820
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4821
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4822
	_move: function( direction, event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4823
		if ( !this.menu.element.is(":visible") ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4824
			this.search( null, event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4825
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4826
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4827
		if ( this.menu.first() && /^previous/.test(direction) ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4828
				this.menu.last() && /^next/.test(direction) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4829
			this.element.val( this.term );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4830
			this.menu.deactivate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4831
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4832
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4833
		this.menu[ direction ]( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4834
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4835
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4836
	widget: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4837
		return this.menu.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4838
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4839
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4840
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4841
$.extend( $.ui.autocomplete, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4842
	escapeRegex: function( value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4843
		return value.replace( /([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4844
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4845
	filter: function(array, term) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4846
		var matcher = new RegExp( $.ui.autocomplete.escapeRegex(term), "i" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4847
		return $.grep( array, function(value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4848
			return matcher.test( value.label || value.value || value );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4849
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4850
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4851
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4852
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4853
}( jQuery ));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4854
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4855
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4856
 * jQuery UI Menu (not officially released)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4857
 * 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4858
 * This widget isn't yet finished and the API is subject to change. We plan to finish
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4859
 * it for the next release. You're welcome to give it a try anyway and give us feedback,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4860
 * as long as you're okay with migrating your code later on. We can help with that, too.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4861
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4862
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4863
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4864
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4865
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4866
 * http://docs.jquery.com/UI/Menu
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4867
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4868
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4869
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4870
 *  jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4871
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4872
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4873
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4874
$.widget("ui.menu", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4875
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4876
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4877
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4878
			.addClass("ui-menu ui-widget ui-widget-content ui-corner-all")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4879
			.attr({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4880
				role: "listbox",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4881
				"aria-activedescendant": "ui-active-menuitem"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4882
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4883
			.click(function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4884
				if ( !$( event.target ).closest( ".ui-menu-item a" ).length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4885
					return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4886
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4887
				// temporary
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4888
				event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4889
				self.select( event );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4890
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4891
		this.refresh();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4892
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4893
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4894
	refresh: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4895
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4896
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4897
		// don't refresh list items that are already adapted
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4898
		var items = this.element.children("li:not(.ui-menu-item):has(a)")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4899
			.addClass("ui-menu-item")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4900
			.attr("role", "menuitem");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4901
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4902
		items.children("a")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4903
			.addClass("ui-corner-all")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4904
			.attr("tabindex", -1)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4905
			// mouseenter doesn't work with event delegation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4906
			.mouseenter(function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4907
				self.activate( event, $(this).parent() );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4908
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4909
			.mouseleave(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4910
				self.deactivate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4911
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4912
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4913
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4914
	activate: function( event, item ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4915
		this.deactivate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4916
		if (this.hasScroll()) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4917
			var offset = item.offset().top - this.element.offset().top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4918
				scroll = this.element.attr("scrollTop"),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4919
				elementHeight = this.element.height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4920
			if (offset < 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4921
				this.element.attr("scrollTop", scroll + offset);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4922
			} else if (offset > elementHeight) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4923
				this.element.attr("scrollTop", scroll + offset - elementHeight + item.height());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4924
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4925
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4926
		this.active = item.eq(0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4927
			.children("a")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4928
				.addClass("ui-state-hover")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4929
				.attr("id", "ui-active-menuitem")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4930
			.end();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4931
		this._trigger("focus", event, { item: item });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4932
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4933
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4934
	deactivate: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4935
		if (!this.active) { return; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4936
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4937
		this.active.children("a")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4938
			.removeClass("ui-state-hover")
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4939
			.removeAttr("id");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4940
		this._trigger("blur");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4941
		this.active = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4942
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4943
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4944
	next: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4945
		this.move("next", ".ui-menu-item:first", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4946
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4947
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4948
	previous: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4949
		this.move("prev", ".ui-menu-item:last", event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4950
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4951
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4952
	first: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4953
		return this.active && !this.active.prev().length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4954
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4955
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4956
	last: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4957
		return this.active && !this.active.next().length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4958
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4959
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4960
	move: function(direction, edge, event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4961
		if (!this.active) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4962
			this.activate(event, this.element.children(edge));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4963
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4964
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4965
		var next = this.active[direction + "All"](".ui-menu-item").eq(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4966
		if (next.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4967
			this.activate(event, next);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4968
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4969
			this.activate(event, this.element.children(edge));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4970
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4971
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4972
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4973
	// TODO merge with previousPage
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4974
	nextPage: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4975
		if (this.hasScroll()) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4976
			// TODO merge with no-scroll-else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4977
			if (!this.active || this.last()) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4978
				this.activate(event, this.element.children(":first"));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4979
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4980
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4981
			var base = this.active.offset().top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4982
				height = this.element.height(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4983
				result = this.element.children("li").filter(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4984
					var close = $(this).offset().top - base - height + $(this).height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4985
					// TODO improve approximation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4986
					return close < 10 && close > -10;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4987
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4988
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4989
			// TODO try to catch this earlier when scrollTop indicates the last page anyway
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4990
			if (!result.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4991
				result = this.element.children(":last");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4992
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4993
			this.activate(event, result);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4994
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4995
			this.activate(event, this.element.children(!this.active || this.last() ? ":first" : ":last"));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4996
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4997
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4998
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  4999
	// TODO merge with nextPage
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5000
	previousPage: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5001
		if (this.hasScroll()) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5002
			// TODO merge with no-scroll-else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5003
			if (!this.active || this.first()) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5004
				this.activate(event, this.element.children(":last"));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5005
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5006
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5007
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5008
			var base = this.active.offset().top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5009
				height = this.element.height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5010
				result = this.element.children("li").filter(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5011
					var close = $(this).offset().top - base + height - $(this).height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5012
					// TODO improve approximation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5013
					return close < 10 && close > -10;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5014
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5015
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5016
			// TODO try to catch this earlier when scrollTop indicates the last page anyway
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5017
			if (!result.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5018
				result = this.element.children(":first");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5019
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5020
			this.activate(event, result);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5021
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5022
			this.activate(event, this.element.children(!this.active || this.first() ? ":last" : ":first"));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5023
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5024
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5025
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5026
	hasScroll: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5027
		return this.element.height() < this.element.attr("scrollHeight");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5028
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5029
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5030
	select: function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5031
		this._trigger("selected", event, { item: this.active });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5032
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5033
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5034
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5035
}(jQuery));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5036
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5037
 * jQuery UI Button 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5038
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5039
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5040
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5041
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5042
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5043
 * http://docs.jquery.com/UI/Button
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5044
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5045
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5046
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5047
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5048
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5049
(function( $ ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5050
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5051
var lastActive,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5052
	baseClasses = "ui-button ui-widget ui-state-default ui-corner-all",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5053
	otherClasses = "ui-state-hover ui-state-active " +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5054
		"ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon ui-button-text-only",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5055
	formResetHandler = function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5056
		$( ":ui-button", event.target.form ).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5057
			var inst = $( this ).data( "button" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5058
			setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5059
				inst.refresh();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5060
			}, 1 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5061
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5062
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5063
	radioGroup = function( radio ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5064
		var name = radio.name,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5065
			form = radio.form,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5066
			radios = $( [] );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5067
		if ( name ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5068
			if ( form ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5069
				radios = $( form ).find( "[name='" + name + "']" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5070
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5071
				radios = $( "[name='" + name + "']", radio.ownerDocument )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5072
					.filter(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5073
						return !this.form;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5074
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5075
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5076
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5077
		return radios;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5078
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5079
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5080
$.widget( "ui.button", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5081
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5082
		text: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5083
		label: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5084
		icons: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5085
			primary: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5086
			secondary: null
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5087
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5088
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5089
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5090
		this.element.closest( "form" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5091
			.unbind( "reset.button" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5092
			.bind( "reset.button", formResetHandler );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5093
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5094
		this._determineButtonType();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5095
		this.hasTitle = !!this.buttonElement.attr( "title" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5096
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5097
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5098
			options = this.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5099
			toggleButton = this.type === "checkbox" || this.type === "radio",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5100
			hoverClass = "ui-state-hover" + ( !toggleButton ? " ui-state-active" : "" ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5101
			focusClass = "ui-state-focus";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5102
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5103
		if ( options.label === null ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5104
			options.label = this.buttonElement.html();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5105
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5106
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5107
		if ( this.element.is( ":disabled" ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5108
			options.disabled = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5109
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5110
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5111
		this.buttonElement
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5112
			.addClass( baseClasses )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5113
			.attr( "role", "button" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5114
			.bind( "mouseenter.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5115
				if ( options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5116
					return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5117
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5118
				$( this ).addClass( "ui-state-hover" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5119
				if ( this === lastActive ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5120
					$( this ).addClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5121
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5122
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5123
			.bind( "mouseleave.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5124
				if ( options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5125
					return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5126
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5127
				$( this ).removeClass( hoverClass );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5128
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5129
			.bind( "focus.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5130
				// no need to check disabled, focus won't be triggered anyway
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5131
				$( this ).addClass( focusClass );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5132
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5133
			.bind( "blur.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5134
				$( this ).removeClass( focusClass );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5135
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5136
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5137
		if ( toggleButton ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5138
			this.element.bind( "change.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5139
				self.refresh();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5140
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5141
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5142
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5143
		if ( this.type === "checkbox" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5144
			this.buttonElement.bind( "click.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5145
				if ( options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5146
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5147
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5148
				$( this ).toggleClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5149
				self.buttonElement.attr( "aria-pressed", self.element[0].checked );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5150
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5151
		} else if ( this.type === "radio" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5152
			this.buttonElement.bind( "click.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5153
				if ( options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5154
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5155
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5156
				$( this ).addClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5157
				self.buttonElement.attr( "aria-pressed", true );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5158
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5159
				var radio = self.element[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5160
				radioGroup( radio )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5161
					.not( radio )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5162
					.map(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5163
						return $( this ).button( "widget" )[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5164
					})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5165
					.removeClass( "ui-state-active" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5166
					.attr( "aria-pressed", false );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5167
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5168
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5169
			this.buttonElement
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5170
				.bind( "mousedown.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5171
					if ( options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5172
						return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5173
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5174
					$( this ).addClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5175
					lastActive = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5176
					$( document ).one( "mouseup", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5177
						lastActive = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5178
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5179
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5180
				.bind( "mouseup.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5181
					if ( options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5182
						return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5183
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5184
					$( this ).removeClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5185
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5186
				.bind( "keydown.button", function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5187
					if ( options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5188
						return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5189
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5190
					if ( event.keyCode == $.ui.keyCode.SPACE || event.keyCode == $.ui.keyCode.ENTER ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5191
						$( this ).addClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5192
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5193
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5194
				.bind( "keyup.button", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5195
					$( this ).removeClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5196
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5197
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5198
			if ( this.buttonElement.is("a") ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5199
				this.buttonElement.keyup(function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5200
					if ( event.keyCode === $.ui.keyCode.SPACE ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5201
						// TODO pass through original event correctly (just as 2nd argument doesn't work)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5202
						$( this ).click();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5203
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5204
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5205
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5206
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5207
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5208
		// TODO: pull out $.Widget's handling for the disabled option into
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5209
		// $.Widget.prototype._setOptionDisabled so it's easy to proxy and can
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5210
		// be overridden by individual plugins
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5211
		this._setOption( "disabled", options.disabled );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5212
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5213
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5214
	_determineButtonType: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5215
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5216
		if ( this.element.is(":checkbox") ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5217
			this.type = "checkbox";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5218
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5219
			if ( this.element.is(":radio") ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5220
				this.type = "radio";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5221
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5222
				if ( this.element.is("input") ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5223
					this.type = "input";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5224
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5225
					this.type = "button";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5226
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5227
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5228
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5229
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5230
		if ( this.type === "checkbox" || this.type === "radio" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5231
			// we don't search against the document in case the element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5232
			// is disconnected from the DOM
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5233
			this.buttonElement = this.element.parents().last()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5234
				.find( "[for=" + this.element.attr("id") + "]" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5235
			this.element.addClass( "ui-helper-hidden-accessible" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5236
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5237
			var checked = this.element.is( ":checked" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5238
			if ( checked ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5239
				this.buttonElement.addClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5240
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5241
			this.buttonElement.attr( "aria-pressed", checked );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5242
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5243
			this.buttonElement = this.element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5244
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5245
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5246
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5247
	widget: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5248
		return this.buttonElement;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5249
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5250
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5251
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5252
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5253
			.removeClass( "ui-helper-hidden-accessible" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5254
		this.buttonElement
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5255
			.removeClass( baseClasses + " " + otherClasses )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5256
			.removeAttr( "role" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5257
			.removeAttr( "aria-pressed" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5258
			.html( this.buttonElement.find(".ui-button-text").html() );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5259
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5260
		if ( !this.hasTitle ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5261
			this.buttonElement.removeAttr( "title" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5262
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5263
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5264
		$.Widget.prototype.destroy.call( this );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5265
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5266
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5267
	_setOption: function( key, value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5268
		$.Widget.prototype._setOption.apply( this, arguments );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5269
		if ( key === "disabled" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5270
			if ( value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5271
				this.element.attr( "disabled", true );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5272
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5273
				this.element.removeAttr( "disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5274
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5275
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5276
		this._resetButton();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5277
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5278
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5279
	refresh: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5280
		var isDisabled = this.element.is( ":disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5281
		if ( isDisabled !== this.options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5282
			this._setOption( "disabled", isDisabled );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5283
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5284
		if ( this.type === "radio" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5285
			radioGroup( this.element[0] ).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5286
				if ( $( this ).is( ":checked" ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5287
					$( this ).button( "widget" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5288
						.addClass( "ui-state-active" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5289
						.attr( "aria-pressed", true );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5290
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5291
					$( this ).button( "widget" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5292
						.removeClass( "ui-state-active" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5293
						.attr( "aria-pressed", false );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5294
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5295
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5296
		} else if ( this.type === "checkbox" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5297
			if ( this.element.is( ":checked" ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5298
				this.buttonElement
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5299
					.addClass( "ui-state-active" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5300
					.attr( "aria-pressed", true );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5301
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5302
				this.buttonElement
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5303
					.removeClass( "ui-state-active" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5304
					.attr( "aria-pressed", false );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5305
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5306
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5307
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5308
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5309
	_resetButton: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5310
		if ( this.type === "input" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5311
			if ( this.options.label ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5312
				this.element.val( this.options.label );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5313
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5314
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5315
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5316
		var buttonElement = this.buttonElement,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5317
			buttonText = $( "<span></span>" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5318
				.addClass( "ui-button-text" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5319
				.html( this.options.label )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5320
				.appendTo( buttonElement.empty() )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5321
				.text(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5322
			icons = this.options.icons,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5323
			multipleIcons = icons.primary && icons.secondary;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5324
		if ( icons.primary || icons.secondary ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5325
			buttonElement.addClass( "ui-button-text-icon" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5326
				( multipleIcons ? "s" : "" ) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5327
			if ( icons.primary ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5328
				buttonElement.prepend( "<span class='ui-button-icon-primary ui-icon " + icons.primary + "'></span>" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5329
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5330
			if ( icons.secondary ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5331
				buttonElement.append( "<span class='ui-button-icon-secondary ui-icon " + icons.secondary + "'></span>" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5332
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5333
			if ( !this.options.text ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5334
				buttonElement
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5335
					.addClass( multipleIcons ? "ui-button-icons-only" : "ui-button-icon-only" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5336
					.removeClass( "ui-button-text-icons ui-button-text-icon" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5337
				if ( !this.hasTitle ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5338
					buttonElement.attr( "title", buttonText );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5339
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5340
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5341
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5342
			buttonElement.addClass( "ui-button-text-only" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5343
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5344
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5345
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5346
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5347
$.widget( "ui.buttonset", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5348
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5349
		this.element.addClass( "ui-buttonset" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5350
		this._init();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5351
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5352
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5353
	_init: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5354
		this.refresh();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5355
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5356
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5357
	_setOption: function( key, value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5358
		if ( key === "disabled" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5359
			this.buttons.button( "option", key, value );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5360
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5361
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5362
		$.Widget.prototype._setOption.apply( this, arguments );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5363
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5364
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5365
	refresh: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5366
		this.buttons = this.element.find( ":button, :submit, :reset, :checkbox, :radio, a, :data(button)" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5367
			.filter( ":ui-button" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5368
				.button( "refresh" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5369
			.end()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5370
			.not( ":ui-button" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5371
				.button()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5372
			.end()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5373
			.map(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5374
				return $( this ).button( "widget" )[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5375
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5376
				.removeClass( "ui-corner-all ui-corner-left ui-corner-right" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5377
				.filter( ":first" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5378
					.addClass( "ui-corner-left" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5379
				.end()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5380
				.filter( ":last" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5381
					.addClass( "ui-corner-right" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5382
				.end()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5383
			.end();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5384
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5385
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5386
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5387
		this.element.removeClass( "ui-buttonset" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5388
		this.buttons
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5389
			.map(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5390
				return $( this ).button( "widget" )[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5391
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5392
				.removeClass( "ui-corner-left ui-corner-right" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5393
			.end()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5394
			.button( "destroy" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5395
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5396
		$.Widget.prototype.destroy.call( this );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5397
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5398
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5399
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5400
}( jQuery ) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5401
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5402
 * jQuery UI Dialog 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5403
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5404
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5405
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5406
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5407
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5408
 * http://docs.jquery.com/UI/Dialog
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5409
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5410
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5411
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5412
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5413
 *  jquery.ui.button.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5414
 *	jquery.ui.draggable.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5415
 *	jquery.ui.mouse.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5416
 *	jquery.ui.position.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5417
 *	jquery.ui.resizable.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5418
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5419
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5420
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5421
var uiDialogClasses =
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5422
	'ui-dialog ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5423
	'ui-widget ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5424
	'ui-widget-content ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5425
	'ui-corner-all ';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5426
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5427
$.widget("ui.dialog", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5428
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5429
		autoOpen: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5430
		buttons: {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5431
		closeOnEscape: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5432
		closeText: 'close',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5433
		dialogClass: '',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5434
		draggable: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5435
		hide: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5436
		height: 'auto',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5437
		maxHeight: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5438
		maxWidth: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5439
		minHeight: 150,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5440
		minWidth: 150,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5441
		modal: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5442
		position: 'center',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5443
		resizable: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5444
		show: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5445
		stack: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5446
		title: '',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5447
		width: 300,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5448
		zIndex: 1000
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5449
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5450
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5451
		this.originalTitle = this.element.attr('title');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5452
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5453
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5454
			options = self.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5455
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5456
			title = options.title || self.originalTitle || '&#160;',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5457
			titleId = $.ui.dialog.getTitleId(self.element),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5458
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5459
			uiDialog = (self.uiDialog = $('<div></div>'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5460
				.appendTo(document.body)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5461
				.hide()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5462
				.addClass(uiDialogClasses + options.dialogClass)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5463
				.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5464
					zIndex: options.zIndex
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5465
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5466
				// setting tabIndex makes the div focusable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5467
				// setting outline to 0 prevents a border on focus in Mozilla
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5468
				.attr('tabIndex', -1).css('outline', 0).keydown(function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5469
					if (options.closeOnEscape && event.keyCode &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5470
						event.keyCode === $.ui.keyCode.ESCAPE) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5471
						
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5472
						self.close(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5473
						event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5474
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5475
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5476
				.attr({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5477
					role: 'dialog',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5478
					'aria-labelledby': titleId
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5479
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5480
				.mousedown(function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5481
					self.moveToTop(false, event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5482
				}),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5483
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5484
			uiDialogContent = self.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5485
				.show()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5486
				.removeAttr('title')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5487
				.addClass(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5488
					'ui-dialog-content ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5489
					'ui-widget-content')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5490
				.appendTo(uiDialog),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5491
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5492
			uiDialogTitlebar = (self.uiDialogTitlebar = $('<div></div>'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5493
				.addClass(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5494
					'ui-dialog-titlebar ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5495
					'ui-widget-header ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5496
					'ui-corner-all ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5497
					'ui-helper-clearfix'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5498
				)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5499
				.prependTo(uiDialog),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5500
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5501
			uiDialogTitlebarClose = $('<a href="#"></a>')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5502
				.addClass(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5503
					'ui-dialog-titlebar-close ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5504
					'ui-corner-all'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5505
				)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5506
				.attr('role', 'button')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5507
				.hover(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5508
					function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5509
						uiDialogTitlebarClose.addClass('ui-state-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5510
					},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5511
					function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5512
						uiDialogTitlebarClose.removeClass('ui-state-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5513
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5514
				)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5515
				.focus(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5516
					uiDialogTitlebarClose.addClass('ui-state-focus');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5517
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5518
				.blur(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5519
					uiDialogTitlebarClose.removeClass('ui-state-focus');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5520
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5521
				.click(function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5522
					self.close(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5523
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5524
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5525
				.appendTo(uiDialogTitlebar),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5526
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5527
			uiDialogTitlebarCloseText = (self.uiDialogTitlebarCloseText = $('<span></span>'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5528
				.addClass(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5529
					'ui-icon ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5530
					'ui-icon-closethick'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5531
				)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5532
				.text(options.closeText)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5533
				.appendTo(uiDialogTitlebarClose),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5534
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5535
			uiDialogTitle = $('<span></span>')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5536
				.addClass('ui-dialog-title')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5537
				.attr('id', titleId)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5538
				.html(title)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5539
				.prependTo(uiDialogTitlebar);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5540
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5541
		//handling of deprecated beforeclose (vs beforeClose) option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5542
		//Ticket #4669 http://dev.jqueryui.com/ticket/4669
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5543
		//TODO: remove in 1.9pre
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5544
		if ($.isFunction(options.beforeclose) && !$.isFunction(options.beforeClose)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5545
			options.beforeClose = options.beforeclose;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5546
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5547
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5548
		uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5549
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5550
		if (options.draggable && $.fn.draggable) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5551
			self._makeDraggable();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5552
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5553
		if (options.resizable && $.fn.resizable) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5554
			self._makeResizable();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5555
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5556
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5557
		self._createButtons(options.buttons);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5558
		self._isOpen = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5559
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5560
		if ($.fn.bgiframe) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5561
			uiDialog.bgiframe();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5562
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5563
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5564
	_init: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5565
		if ( this.options.autoOpen ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5566
			this.open();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5567
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5568
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5569
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5570
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5571
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5572
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5573
		if (self.overlay) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5574
			self.overlay.destroy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5575
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5576
		self.uiDialog.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5577
		self.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5578
			.unbind('.dialog')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5579
			.removeData('dialog')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5580
			.removeClass('ui-dialog-content ui-widget-content')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5581
			.hide().appendTo('body');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5582
		self.uiDialog.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5583
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5584
		if (self.originalTitle) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5585
			self.element.attr('title', self.originalTitle);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5586
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5587
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5588
		return self;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5589
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5590
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5591
	widget: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5592
		return this.uiDialog;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5593
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5594
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5595
	close: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5596
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5597
			maxZ;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5598
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5599
		if (false === self._trigger('beforeClose', event)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5600
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5601
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5602
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5603
		if (self.overlay) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5604
			self.overlay.destroy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5605
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5606
		self.uiDialog.unbind('keypress.ui-dialog');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5607
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5608
		self._isOpen = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5609
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5610
		if (self.options.hide) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5611
			self.uiDialog.hide(self.options.hide, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5612
				self._trigger('close', event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5613
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5614
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5615
			self.uiDialog.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5616
			self._trigger('close', event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5617
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5618
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5619
		$.ui.dialog.overlay.resize();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5620
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5621
		// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5622
		if (self.options.modal) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5623
			maxZ = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5624
			$('.ui-dialog').each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5625
				if (this !== self.uiDialog[0]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5626
					maxZ = Math.max(maxZ, $(this).css('z-index'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5627
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5628
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5629
			$.ui.dialog.maxZ = maxZ;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5630
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5631
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5632
		return self;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5633
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5634
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5635
	isOpen: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5636
		return this._isOpen;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5637
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5638
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5639
	// the force parameter allows us to move modal dialogs to their correct
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5640
	// position on open
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5641
	moveToTop: function(force, event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5642
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5643
			options = self.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5644
			saveScroll;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5645
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5646
		if ((options.modal && !force) ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5647
			(!options.stack && !options.modal)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5648
			return self._trigger('focus', event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5649
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5650
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5651
		if (options.zIndex > $.ui.dialog.maxZ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5652
			$.ui.dialog.maxZ = options.zIndex;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5653
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5654
		if (self.overlay) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5655
			$.ui.dialog.maxZ += 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5656
			self.overlay.$el.css('z-index', $.ui.dialog.overlay.maxZ = $.ui.dialog.maxZ);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5657
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5658
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5659
		//Save and then restore scroll since Opera 9.5+ resets when parent z-Index is changed.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5660
		//  http://ui.jquery.com/bugs/ticket/3193
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5661
		saveScroll = { scrollTop: self.element.attr('scrollTop'), scrollLeft: self.element.attr('scrollLeft') };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5662
		$.ui.dialog.maxZ += 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5663
		self.uiDialog.css('z-index', $.ui.dialog.maxZ);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5664
		self.element.attr(saveScroll);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5665
		self._trigger('focus', event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5666
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5667
		return self;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5668
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5669
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5670
	open: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5671
		if (this._isOpen) { return; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5672
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5673
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5674
			options = self.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5675
			uiDialog = self.uiDialog;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5676
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5677
		self.overlay = options.modal ? new $.ui.dialog.overlay(self) : null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5678
		if (uiDialog.next().length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5679
			uiDialog.appendTo('body');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5680
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5681
		self._size();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5682
		self._position(options.position);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5683
		uiDialog.show(options.show);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5684
		self.moveToTop(true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5685
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5686
		// prevent tabbing out of modal dialogs
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5687
		if (options.modal) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5688
			uiDialog.bind('keypress.ui-dialog', function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5689
				if (event.keyCode !== $.ui.keyCode.TAB) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5690
					return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5691
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5692
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5693
				var tabbables = $(':tabbable', this),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5694
					first = tabbables.filter(':first'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5695
					last  = tabbables.filter(':last');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5696
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5697
				if (event.target === last[0] && !event.shiftKey) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5698
					first.focus(1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5699
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5700
				} else if (event.target === first[0] && event.shiftKey) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5701
					last.focus(1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5702
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5703
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5704
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5705
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5706
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5707
		// set focus to the first tabbable element in the content area or the first button
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5708
		// if there are no tabbable elements, set focus on the dialog itself
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5709
		$([])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5710
			.add(uiDialog.find('.ui-dialog-content :tabbable:first'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5711
			.add(uiDialog.find('.ui-dialog-buttonpane :tabbable:first'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5712
			.add(uiDialog)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5713
			.filter(':first')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5714
			.focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5715
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5716
		self._trigger('open');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5717
		self._isOpen = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5718
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5719
		return self;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5720
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5721
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5722
	_createButtons: function(buttons) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5723
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5724
			hasButtons = false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5725
			uiDialogButtonPane = $('<div></div>')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5726
				.addClass(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5727
					'ui-dialog-buttonpane ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5728
					'ui-widget-content ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5729
					'ui-helper-clearfix'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5730
				);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5731
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5732
		// if we already have a button pane, remove it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5733
		self.uiDialog.find('.ui-dialog-buttonpane').remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5734
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5735
		if (typeof buttons === 'object' && buttons !== null) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5736
			$.each(buttons, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5737
				return !(hasButtons = true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5738
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5739
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5740
		if (hasButtons) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5741
			$.each(buttons, function(name, fn) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5742
				var button = $('<button type="button"></button>')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5743
					.text(name)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5744
					.click(function() { fn.apply(self.element[0], arguments); })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5745
					.appendTo(uiDialogButtonPane);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5746
				if ($.fn.button) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5747
					button.button();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5748
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5749
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5750
			uiDialogButtonPane.appendTo(self.uiDialog);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5751
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5752
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5753
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5754
	_makeDraggable: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5755
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5756
			options = self.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5757
			doc = $(document),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5758
			heightBeforeDrag;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5759
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5760
		function filteredUi(ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5761
			return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5762
				position: ui.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5763
				offset: ui.offset
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5764
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5765
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5766
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5767
		self.uiDialog.draggable({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5768
			cancel: '.ui-dialog-content, .ui-dialog-titlebar-close',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5769
			handle: '.ui-dialog-titlebar',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5770
			containment: 'document',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5771
			start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5772
				heightBeforeDrag = options.height === "auto" ? "auto" : $(this).height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5773
				$(this).height($(this).height()).addClass("ui-dialog-dragging");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5774
				self._trigger('dragStart', event, filteredUi(ui));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5775
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5776
			drag: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5777
				self._trigger('drag', event, filteredUi(ui));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5778
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5779
			stop: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5780
				options.position = [ui.position.left - doc.scrollLeft(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5781
					ui.position.top - doc.scrollTop()];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5782
				$(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5783
				self._trigger('dragStop', event, filteredUi(ui));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5784
				$.ui.dialog.overlay.resize();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5785
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5786
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5787
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5788
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5789
	_makeResizable: function(handles) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5790
		handles = (handles === undefined ? this.options.resizable : handles);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5791
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5792
			options = self.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5793
			// .ui-resizable has position: relative defined in the stylesheet
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5794
			// but dialogs have to use absolute or fixed positioning
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5795
			position = self.uiDialog.css('position'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5796
			resizeHandles = (typeof handles === 'string' ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5797
				handles	:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5798
				'n,e,s,w,se,sw,ne,nw'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5799
			);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5800
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5801
		function filteredUi(ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5802
			return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5803
				originalPosition: ui.originalPosition,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5804
				originalSize: ui.originalSize,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5805
				position: ui.position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5806
				size: ui.size
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5807
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5808
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5809
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5810
		self.uiDialog.resizable({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5811
			cancel: '.ui-dialog-content',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5812
			containment: 'document',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5813
			alsoResize: self.element,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5814
			maxWidth: options.maxWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5815
			maxHeight: options.maxHeight,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5816
			minWidth: options.minWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5817
			minHeight: self._minHeight(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5818
			handles: resizeHandles,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5819
			start: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5820
				$(this).addClass("ui-dialog-resizing");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5821
				self._trigger('resizeStart', event, filteredUi(ui));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5822
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5823
			resize: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5824
				self._trigger('resize', event, filteredUi(ui));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5825
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5826
			stop: function(event, ui) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5827
				$(this).removeClass("ui-dialog-resizing");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5828
				options.height = $(this).height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5829
				options.width = $(this).width();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5830
				self._trigger('resizeStop', event, filteredUi(ui));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5831
				$.ui.dialog.overlay.resize();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5832
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5833
		})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5834
		.css('position', position)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5835
		.find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5836
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5837
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5838
	_minHeight: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5839
		var options = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5840
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5841
		if (options.height === 'auto') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5842
			return options.minHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5843
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5844
			return Math.min(options.minHeight, options.height);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5845
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5846
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5847
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5848
	_position: function(position) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5849
		var myAt = [],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5850
			offset = [0, 0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5851
			isVisible;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5852
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5853
		position = position || $.ui.dialog.prototype.options.position;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5854
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5855
		// deep extending converts arrays to objects in jQuery <= 1.3.2 :-(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5856
//		if (typeof position == 'string' || $.isArray(position)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5857
//			myAt = $.isArray(position) ? position : position.split(' ');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5858
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5859
		if (typeof position === 'string' || (typeof position === 'object' && '0' in position)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5860
			myAt = position.split ? position.split(' ') : [position[0], position[1]];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5861
			if (myAt.length === 1) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5862
				myAt[1] = myAt[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5863
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5864
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5865
			$.each(['left', 'top'], function(i, offsetPosition) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5866
				if (+myAt[i] === myAt[i]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5867
					offset[i] = myAt[i];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5868
					myAt[i] = offsetPosition;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5869
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5870
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5871
		} else if (typeof position === 'object') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5872
			if ('left' in position) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5873
				myAt[0] = 'left';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5874
				offset[0] = position.left;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5875
			} else if ('right' in position) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5876
				myAt[0] = 'right';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5877
				offset[0] = -position.right;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5878
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5879
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5880
			if ('top' in position) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5881
				myAt[1] = 'top';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5882
				offset[1] = position.top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5883
			} else if ('bottom' in position) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5884
				myAt[1] = 'bottom';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5885
				offset[1] = -position.bottom;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5886
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5887
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5888
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5889
		// need to show the dialog to get the actual offset in the position plugin
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5890
		isVisible = this.uiDialog.is(':visible');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5891
		if (!isVisible) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5892
			this.uiDialog.show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5893
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5894
		this.uiDialog
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5895
			// workaround for jQuery bug #5781 http://dev.jquery.com/ticket/5781
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5896
			.css({ top: 0, left: 0 })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5897
			.position({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5898
				my: myAt.join(' '),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5899
				at: myAt.join(' '),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5900
				offset: offset.join(' '),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5901
				of: window,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5902
				collision: 'fit',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5903
				// ensure that the titlebar is never outside the document
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5904
				using: function(pos) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5905
					var topOffset = $(this).css(pos).offset().top;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5906
					if (topOffset < 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5907
						$(this).css('top', pos.top - topOffset);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5908
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5909
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5910
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5911
		if (!isVisible) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5912
			this.uiDialog.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5913
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5914
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5915
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5916
	_setOption: function(key, value){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5917
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5918
			uiDialog = self.uiDialog,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5919
			isResizable = uiDialog.is(':data(resizable)'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5920
			resize = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5921
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5922
		switch (key) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5923
			//handling of deprecated beforeclose (vs beforeClose) option
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5924
			//Ticket #4669 http://dev.jqueryui.com/ticket/4669
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5925
			//TODO: remove in 1.9pre
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5926
			case "beforeclose":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5927
				key = "beforeClose";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5928
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5929
			case "buttons":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5930
				self._createButtons(value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5931
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5932
			case "closeText":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5933
				// convert whatever was passed in to a string, for text() to not throw up
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5934
				self.uiDialogTitlebarCloseText.text("" + value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5935
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5936
			case "dialogClass":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5937
				uiDialog
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5938
					.removeClass(self.options.dialogClass)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5939
					.addClass(uiDialogClasses + value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5940
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5941
			case "disabled":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5942
				if (value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5943
					uiDialog.addClass('ui-dialog-disabled');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5944
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5945
					uiDialog.removeClass('ui-dialog-disabled');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5946
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5947
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5948
			case "draggable":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5949
				if (value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5950
					self._makeDraggable();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5951
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5952
					uiDialog.draggable('destroy');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5953
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5954
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5955
			case "height":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5956
				resize = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5957
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5958
			case "maxHeight":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5959
				if (isResizable) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5960
					uiDialog.resizable('option', 'maxHeight', value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5961
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5962
				resize = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5963
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5964
			case "maxWidth":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5965
				if (isResizable) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5966
					uiDialog.resizable('option', 'maxWidth', value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5967
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5968
				resize = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5969
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5970
			case "minHeight":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5971
				if (isResizable) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5972
					uiDialog.resizable('option', 'minHeight', value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5973
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5974
				resize = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5975
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5976
			case "minWidth":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5977
				if (isResizable) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5978
					uiDialog.resizable('option', 'minWidth', value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5979
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5980
				resize = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5981
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5982
			case "position":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5983
				self._position(value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5984
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5985
			case "resizable":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5986
				// currently resizable, becoming non-resizable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5987
				if (isResizable && !value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5988
					uiDialog.resizable('destroy');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5989
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5990
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5991
				// currently resizable, changing handles
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5992
				if (isResizable && typeof value === 'string') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5993
					uiDialog.resizable('option', 'handles', value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5994
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5995
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5996
				// currently non-resizable, becoming resizable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5997
				if (!isResizable && value !== false) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5998
					self._makeResizable(value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  5999
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6000
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6001
			case "title":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6002
				// convert whatever was passed in o a string, for html() to not throw up
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6003
				$(".ui-dialog-title", self.uiDialogTitlebar).html("" + (value || '&#160;'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6004
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6005
			case "width":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6006
				resize = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6007
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6008
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6009
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6010
		$.Widget.prototype._setOption.apply(self, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6011
		if (resize) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6012
			self._size();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6013
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6014
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6015
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6016
	_size: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6017
		/* If the user has resized the dialog, the .ui-dialog and .ui-dialog-content
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6018
		 * divs will both have width and height set, so we need to reset them
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6019
		 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6020
		var options = this.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6021
			nonContentHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6022
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6023
		// reset content sizing
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6024
		// hide for non content measurement because height: 0 doesn't work in IE quirks mode (see #4350)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6025
		this.element.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6026
			width: 'auto',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6027
			minHeight: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6028
			height: 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6029
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6030
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6031
		// reset wrapper sizing
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6032
		// determine the height of all the non-content elements
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6033
		nonContentHeight = this.uiDialog.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6034
				height: 'auto',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6035
				width: options.width
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6036
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6037
			.height();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6038
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6039
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6040
			.css(options.height === 'auto' ? {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6041
					minHeight: Math.max(options.minHeight - nonContentHeight, 0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6042
					height: 'auto'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6043
				} : {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6044
					minHeight: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6045
					height: Math.max(options.height - nonContentHeight, 0)				
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6046
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6047
			.show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6048
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6049
		if (this.uiDialog.is(':data(resizable)')) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6050
			this.uiDialog.resizable('option', 'minHeight', this._minHeight());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6051
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6052
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6053
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6054
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6055
$.extend($.ui.dialog, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6056
	version: "1.8.1",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6057
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6058
	uuid: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6059
	maxZ: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6060
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6061
	getTitleId: function($el) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6062
		var id = $el.attr('id');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6063
		if (!id) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6064
			this.uuid += 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6065
			id = this.uuid;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6066
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6067
		return 'ui-dialog-title-' + id;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6068
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6069
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6070
	overlay: function(dialog) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6071
		this.$el = $.ui.dialog.overlay.create(dialog);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6072
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6073
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6074
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6075
$.extend($.ui.dialog.overlay, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6076
	instances: [],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6077
	// reuse old instances due to IE memory leak with alpha transparency (see #5185)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6078
	oldInstances: [],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6079
	maxZ: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6080
	events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6081
		function(event) { return event + '.dialog-overlay'; }).join(' '),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6082
	create: function(dialog) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6083
		if (this.instances.length === 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6084
			// prevent use of anchors and inputs
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6085
			// we use a setTimeout in case the overlay is created from an
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6086
			// event that we're going to be cancelling (see #2804)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6087
			setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6088
				// handle $(el).dialog().dialog('close') (see #4065)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6089
				if ($.ui.dialog.overlay.instances.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6090
					$(document).bind($.ui.dialog.overlay.events, function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6091
						// stop events if the z-index of the target is < the z-index of the overlay
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6092
						return ($(event.target).zIndex() >= $.ui.dialog.overlay.maxZ);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6093
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6094
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6095
			}, 1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6096
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6097
			// allow closing by pressing the escape key
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6098
			$(document).bind('keydown.dialog-overlay', function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6099
				if (dialog.options.closeOnEscape && event.keyCode &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6100
					event.keyCode === $.ui.keyCode.ESCAPE) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6101
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6102
					dialog.close(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6103
					event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6104
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6105
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6106
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6107
			// handle window resize
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6108
			$(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6109
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6110
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6111
		var $el = (this.oldInstances.pop() || $('<div></div>').addClass('ui-widget-overlay'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6112
			.appendTo(document.body)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6113
			.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6114
				width: this.width(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6115
				height: this.height()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6116
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6117
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6118
		if ($.fn.bgiframe) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6119
			$el.bgiframe();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6120
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6121
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6122
		this.instances.push($el);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6123
		return $el;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6124
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6125
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6126
	destroy: function($el) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6127
		this.oldInstances.push(this.instances.splice($.inArray($el, this.instances), 1)[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6128
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6129
		if (this.instances.length === 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6130
			$([document, window]).unbind('.dialog-overlay');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6131
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6132
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6133
		$el.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6134
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6135
		// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6136
		var maxZ = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6137
		$.each(this.instances, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6138
			maxZ = Math.max(maxZ, this.css('z-index'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6139
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6140
		this.maxZ = maxZ;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6141
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6142
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6143
	height: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6144
		var scrollHeight,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6145
			offsetHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6146
		// handle IE 6
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6147
		if ($.browser.msie && $.browser.version < 7) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6148
			scrollHeight = Math.max(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6149
				document.documentElement.scrollHeight,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6150
				document.body.scrollHeight
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6151
			);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6152
			offsetHeight = Math.max(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6153
				document.documentElement.offsetHeight,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6154
				document.body.offsetHeight
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6155
			);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6156
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6157
			if (scrollHeight < offsetHeight) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6158
				return $(window).height() + 'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6159
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6160
				return scrollHeight + 'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6161
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6162
		// handle "good" browsers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6163
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6164
			return $(document).height() + 'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6165
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6166
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6167
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6168
	width: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6169
		var scrollWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6170
			offsetWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6171
		// handle IE 6
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6172
		if ($.browser.msie && $.browser.version < 7) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6173
			scrollWidth = Math.max(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6174
				document.documentElement.scrollWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6175
				document.body.scrollWidth
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6176
			);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6177
			offsetWidth = Math.max(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6178
				document.documentElement.offsetWidth,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6179
				document.body.offsetWidth
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6180
			);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6181
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6182
			if (scrollWidth < offsetWidth) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6183
				return $(window).width() + 'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6184
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6185
				return scrollWidth + 'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6186
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6187
		// handle "good" browsers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6188
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6189
			return $(document).width() + 'px';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6190
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6191
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6192
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6193
	resize: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6194
		/* If the dialog is draggable and the user drags it past the
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6195
		 * right edge of the window, the document becomes wider so we
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6196
		 * need to stretch the overlay. If the user then drags the
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6197
		 * dialog back to the left, the document will become narrower,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6198
		 * so we need to shrink the overlay to the appropriate size.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6199
		 * This is handled by shrinking the overlay before setting it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6200
		 * to the full document size.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6201
		 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6202
		var $overlays = $([]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6203
		$.each($.ui.dialog.overlay.instances, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6204
			$overlays = $overlays.add(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6205
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6206
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6207
		$overlays.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6208
			width: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6209
			height: 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6210
		}).css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6211
			width: $.ui.dialog.overlay.width(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6212
			height: $.ui.dialog.overlay.height()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6213
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6214
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6215
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6216
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6217
$.extend($.ui.dialog.overlay.prototype, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6218
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6219
		$.ui.dialog.overlay.destroy(this.$el);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6220
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6221
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6222
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6223
}(jQuery));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6224
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6225
 * jQuery UI Slider 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6226
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6227
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6228
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6229
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6230
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6231
 * http://docs.jquery.com/UI/Slider
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6232
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6233
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6234
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6235
 *	jquery.ui.mouse.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6236
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6237
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6238
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6239
(function( $ ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6240
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6241
// number of pages in a slider
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6242
// (how many times can you page up/down to go through the whole range)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6243
var numPages = 5;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6244
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6245
$.widget( "ui.slider", $.ui.mouse, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6246
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6247
	widgetEventPrefix: "slide",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6248
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6249
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6250
		animate: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6251
		distance: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6252
		max: 100,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6253
		min: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6254
		orientation: "horizontal",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6255
		range: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6256
		step: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6257
		value: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6258
		values: null
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6259
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6260
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6261
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6262
		var self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6263
			o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6264
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6265
		this._keySliding = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6266
		this._mouseSliding = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6267
		this._animateOff = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6268
		this._handleIndex = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6269
		this._detectOrientation();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6270
		this._mouseInit();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6271
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6272
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6273
			.addClass( "ui-slider" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6274
				" ui-slider-" + this.orientation +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6275
				" ui-widget" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6276
				" ui-widget-content" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6277
				" ui-corner-all" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6278
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6279
		if ( o.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6280
			this.element.addClass( "ui-slider-disabled ui-disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6281
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6282
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6283
		this.range = $([]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6284
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6285
		if ( o.range ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6286
			if ( o.range === true ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6287
				this.range = $( "<div></div>" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6288
				if ( !o.values ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6289
					o.values = [ this._valueMin(), this._valueMin() ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6290
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6291
				if ( o.values.length && o.values.length !== 2 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6292
					o.values = [ o.values[0], o.values[0] ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6293
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6294
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6295
				this.range = $( "<div></div>" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6296
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6297
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6298
			this.range
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6299
				.appendTo( this.element )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6300
				.addClass( "ui-slider-range" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6301
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6302
			if ( o.range === "min" || o.range === "max" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6303
				this.range.addClass( "ui-slider-range-" + o.range );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6304
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6305
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6306
			// note: this isn't the most fittingly semantic framework class for this element,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6307
			// but worked best visually with a variety of themes
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6308
			this.range.addClass( "ui-widget-header" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6309
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6310
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6311
		if ( $( ".ui-slider-handle", this.element ).length === 0 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6312
			$( "<a href='#'></a>" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6313
				.appendTo( this.element )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6314
				.addClass( "ui-slider-handle" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6315
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6316
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6317
		if ( o.values && o.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6318
			while ( $(".ui-slider-handle", this.element).length < o.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6319
				$( "<a href='#'></a>" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6320
					.appendTo( this.element )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6321
					.addClass( "ui-slider-handle" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6322
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6323
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6324
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6325
		this.handles = $( ".ui-slider-handle", this.element )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6326
			.addClass( "ui-state-default" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6327
				" ui-corner-all" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6328
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6329
		this.handle = this.handles.eq( 0 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6330
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6331
		this.handles.add( this.range ).filter( "a" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6332
			.click(function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6333
				event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6334
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6335
			.hover(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6336
				if ( !o.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6337
					$( this ).addClass( "ui-state-hover" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6338
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6339
			}, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6340
				$( this ).removeClass( "ui-state-hover" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6341
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6342
			.focus(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6343
				if ( !o.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6344
					$( ".ui-slider .ui-state-focus" ).removeClass( "ui-state-focus" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6345
					$( this ).addClass( "ui-state-focus" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6346
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6347
					$( this ).blur();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6348
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6349
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6350
			.blur(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6351
				$( this ).removeClass( "ui-state-focus" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6352
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6353
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6354
		this.handles.each(function( i ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6355
			$( this ).data( "index.ui-slider-handle", i );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6356
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6357
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6358
		this.handles
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6359
			.keydown(function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6360
				var ret = true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6361
					index = $( this ).data( "index.ui-slider-handle" ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6362
					allowed,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6363
					curVal,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6364
					newVal,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6365
					step;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6366
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6367
				if ( self.options.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6368
					return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6369
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6370
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6371
				switch ( event.keyCode ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6372
					case $.ui.keyCode.HOME:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6373
					case $.ui.keyCode.END:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6374
					case $.ui.keyCode.PAGE_UP:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6375
					case $.ui.keyCode.PAGE_DOWN:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6376
					case $.ui.keyCode.UP:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6377
					case $.ui.keyCode.RIGHT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6378
					case $.ui.keyCode.DOWN:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6379
					case $.ui.keyCode.LEFT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6380
						ret = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6381
						if ( !self._keySliding ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6382
							self._keySliding = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6383
							$( this ).addClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6384
							allowed = self._start( event, index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6385
							if ( allowed === false ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6386
								return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6387
							}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6388
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6389
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6390
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6391
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6392
				step = self.options.step;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6393
				if ( self.options.values && self.options.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6394
					curVal = newVal = self.values( index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6395
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6396
					curVal = newVal = self.value();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6397
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6398
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6399
				switch ( event.keyCode ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6400
					case $.ui.keyCode.HOME:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6401
						newVal = self._valueMin();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6402
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6403
					case $.ui.keyCode.END:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6404
						newVal = self._valueMax();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6405
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6406
					case $.ui.keyCode.PAGE_UP:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6407
						newVal = curVal + ( (self._valueMax() - self._valueMin()) / numPages );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6408
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6409
					case $.ui.keyCode.PAGE_DOWN:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6410
						newVal = curVal - ( (self._valueMax() - self._valueMin()) / numPages );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6411
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6412
					case $.ui.keyCode.UP:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6413
					case $.ui.keyCode.RIGHT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6414
						if ( curVal === self._valueMax() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6415
							return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6416
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6417
						newVal = curVal + step;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6418
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6419
					case $.ui.keyCode.DOWN:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6420
					case $.ui.keyCode.LEFT:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6421
						if ( curVal === self._valueMin() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6422
							return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6423
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6424
						newVal = curVal - step;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6425
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6426
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6427
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6428
				self._slide( event, index, newVal );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6429
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6430
				return ret;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6431
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6432
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6433
			.keyup(function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6434
				var index = $( this ).data( "index.ui-slider-handle" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6435
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6436
				if ( self._keySliding ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6437
					self._keySliding = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6438
					self._stop( event, index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6439
					self._change( event, index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6440
					$( this ).removeClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6441
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6442
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6443
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6444
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6445
		this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6446
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6447
		this._animateOff = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6448
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6449
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6450
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6451
		this.handles.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6452
		this.range.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6453
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6454
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6455
			.removeClass( "ui-slider" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6456
				" ui-slider-horizontal" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6457
				" ui-slider-vertical" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6458
				" ui-slider-disabled" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6459
				" ui-widget" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6460
				" ui-widget-content" +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6461
				" ui-corner-all" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6462
			.removeData( "slider" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6463
			.unbind( ".slider" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6464
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6465
		this._mouseDestroy();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6466
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6467
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6468
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6469
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6470
	_mouseCapture: function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6471
		var o = this.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6472
			position,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6473
			normValue,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6474
			distance,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6475
			closestHandle,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6476
			self,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6477
			index,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6478
			allowed,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6479
			offset,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6480
			mouseOverHandle;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6481
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6482
		if ( o.disabled ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6483
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6484
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6485
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6486
		this.elementSize = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6487
			width: this.element.outerWidth(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6488
			height: this.element.outerHeight()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6489
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6490
		this.elementOffset = this.element.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6491
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6492
		position = { x: event.pageX, y: event.pageY };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6493
		normValue = this._normValueFromMouse( position );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6494
		distance = this._valueMax() - this._valueMin() + 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6495
		self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6496
		this.handles.each(function( i ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6497
			var thisDistance = Math.abs( normValue - self.values(i) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6498
			if ( distance > thisDistance ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6499
				distance = thisDistance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6500
				closestHandle = $( this );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6501
				index = i;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6502
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6503
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6504
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6505
		// workaround for bug #3736 (if both handles of a range are at 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6506
		// the first is always used as the one with least distance,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6507
		// and moving it is obviously prevented by preventing negative ranges)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6508
		if( o.range === true && this.values(1) === o.min ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6509
			index += 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6510
			closestHandle = $( this.handles[index] );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6511
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6512
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6513
		allowed = this._start( event, index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6514
		if ( allowed === false ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6515
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6516
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6517
		this._mouseSliding = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6518
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6519
		self._handleIndex = index;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6520
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6521
		closestHandle
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6522
			.addClass( "ui-state-active" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6523
			.focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6524
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6525
		offset = closestHandle.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6526
		mouseOverHandle = !$( event.target ).parents().andSelf().is( ".ui-slider-handle" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6527
		this._clickOffset = mouseOverHandle ? { left: 0, top: 0 } : {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6528
			left: event.pageX - offset.left - ( closestHandle.width() / 2 ),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6529
			top: event.pageY - offset.top -
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6530
				( closestHandle.height() / 2 ) -
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6531
				( parseInt( closestHandle.css("borderTopWidth"), 10 ) || 0 ) -
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6532
				( parseInt( closestHandle.css("borderBottomWidth"), 10 ) || 0) +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6533
				( parseInt( closestHandle.css("marginTop"), 10 ) || 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6534
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6535
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6536
		normValue = this._normValueFromMouse( position );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6537
		this._slide( event, index, normValue );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6538
		this._animateOff = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6539
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6540
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6541
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6542
	_mouseStart: function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6543
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6544
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6545
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6546
	_mouseDrag: function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6547
		var position = { x: event.pageX, y: event.pageY },
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6548
			normValue = this._normValueFromMouse( position );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6549
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6550
		this._slide( event, this._handleIndex, normValue );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6551
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6552
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6553
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6554
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6555
	_mouseStop: function( event ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6556
		this.handles.removeClass( "ui-state-active" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6557
		this._mouseSliding = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6558
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6559
		this._stop( event, this._handleIndex );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6560
		this._change( event, this._handleIndex );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6561
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6562
		this._handleIndex = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6563
		this._clickOffset = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6564
		this._animateOff = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6565
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6566
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6567
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6568
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6569
	_detectOrientation: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6570
		this.orientation = ( this.options.orientation === "vertical" ) ? "vertical" : "horizontal";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6571
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6572
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6573
	_normValueFromMouse: function( position ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6574
		var pixelTotal,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6575
			pixelMouse,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6576
			percentMouse,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6577
			valueTotal,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6578
			valueMouse;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6579
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6580
		if ( this.orientation === "horizontal" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6581
			pixelTotal = this.elementSize.width;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6582
			pixelMouse = position.x - this.elementOffset.left - ( this._clickOffset ? this._clickOffset.left : 0 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6583
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6584
			pixelTotal = this.elementSize.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6585
			pixelMouse = position.y - this.elementOffset.top - ( this._clickOffset ? this._clickOffset.top : 0 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6586
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6587
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6588
		percentMouse = ( pixelMouse / pixelTotal );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6589
		if ( percentMouse > 1 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6590
			percentMouse = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6591
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6592
		if ( percentMouse < 0 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6593
			percentMouse = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6594
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6595
		if ( this.orientation === "vertical" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6596
			percentMouse = 1 - percentMouse;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6597
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6598
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6599
		valueTotal = this._valueMax() - this._valueMin();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6600
		valueMouse = this._valueMin() + percentMouse * valueTotal;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6601
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6602
		return this._trimAlignValue( valueMouse );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6603
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6604
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6605
	_start: function( event, index ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6606
		var uiHash = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6607
			handle: this.handles[ index ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6608
			value: this.value()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6609
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6610
		if ( this.options.values && this.options.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6611
			uiHash.value = this.values( index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6612
			uiHash.values = this.values();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6613
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6614
		return this._trigger( "start", event, uiHash );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6615
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6616
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6617
	_slide: function( event, index, newVal ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6618
		var otherVal,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6619
			newValues,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6620
			allowed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6621
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6622
		if ( this.options.values && this.options.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6623
			otherVal = this.values( index ? 0 : 1 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6624
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6625
			if ( ( this.options.values.length === 2 && this.options.range === true ) && 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6626
					( ( index === 0 && newVal > otherVal) || ( index === 1 && newVal < otherVal ) )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6627
				) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6628
				newVal = otherVal;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6629
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6630
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6631
			if ( newVal !== this.values( index ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6632
				newValues = this.values();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6633
				newValues[ index ] = newVal;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6634
				// A slide can be canceled by returning false from the slide callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6635
				allowed = this._trigger( "slide", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6636
					handle: this.handles[ index ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6637
					value: newVal,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6638
					values: newValues
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6639
				} );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6640
				otherVal = this.values( index ? 0 : 1 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6641
				if ( allowed !== false ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6642
					this.values( index, newVal, true );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6643
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6644
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6645
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6646
			if ( newVal !== this.value() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6647
				// A slide can be canceled by returning false from the slide callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6648
				allowed = this._trigger( "slide", event, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6649
					handle: this.handles[ index ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6650
					value: newVal
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6651
				} );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6652
				if ( allowed !== false ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6653
					this.value( newVal );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6654
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6655
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6656
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6657
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6658
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6659
	_stop: function( event, index ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6660
		var uiHash = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6661
			handle: this.handles[ index ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6662
			value: this.value()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6663
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6664
		if ( this.options.values && this.options.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6665
			uiHash.value = this.values( index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6666
			uiHash.values = this.values();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6667
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6668
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6669
		this._trigger( "stop", event, uiHash );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6670
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6671
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6672
	_change: function( event, index ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6673
		if ( !this._keySliding && !this._mouseSliding ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6674
			var uiHash = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6675
				handle: this.handles[ index ],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6676
				value: this.value()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6677
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6678
			if ( this.options.values && this.options.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6679
				uiHash.value = this.values( index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6680
				uiHash.values = this.values();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6681
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6682
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6683
			this._trigger( "change", event, uiHash );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6684
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6685
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6686
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6687
	value: function( newValue ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6688
		if ( arguments.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6689
			this.options.value = this._trimAlignValue( newValue );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6690
			this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6691
			this._change( null, 0 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6692
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6693
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6694
		return this._value();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6695
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6696
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6697
	values: function( index, newValue ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6698
		var vals,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6699
			newValues,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6700
			i;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6701
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6702
		if ( arguments.length > 1 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6703
			this.options.values[ index ] = this._trimAlignValue( newValue );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6704
			this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6705
			this._change( null, index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6706
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6707
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6708
		if ( arguments.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6709
			if ( $.isArray( arguments[ 0 ] ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6710
				vals = this.options.values;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6711
				newValues = arguments[ 0 ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6712
				for ( i = 0; i < vals.length; i += 1 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6713
					vals[ i ] = this._trimAlignValue( newValues[ i ] );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6714
					this._change( null, i );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6715
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6716
				this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6717
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6718
				if ( this.options.values && this.options.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6719
					return this._values( index );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6720
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6721
					return this.value();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6722
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6723
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6724
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6725
			return this._values();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6726
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6727
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6728
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6729
	_setOption: function( key, value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6730
		var i,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6731
			valsLength = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6732
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6733
		if ( $.isArray( this.options.values ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6734
			valsLength = this.options.values.length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6735
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6736
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6737
		$.Widget.prototype._setOption.apply( this, arguments );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6738
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6739
		switch ( key ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6740
			case "disabled":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6741
				if ( value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6742
					this.handles.filter( ".ui-state-focus" ).blur();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6743
					this.handles.removeClass( "ui-state-hover" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6744
					this.handles.attr( "disabled", "disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6745
					this.element.addClass( "ui-disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6746
				} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6747
					this.handles.removeAttr( "disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6748
					this.element.removeClass( "ui-disabled" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6749
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6750
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6751
			case "orientation":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6752
				this._detectOrientation();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6753
				this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6754
					.removeClass( "ui-slider-horizontal ui-slider-vertical" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6755
					.addClass( "ui-slider-" + this.orientation );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6756
				this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6757
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6758
			case "value":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6759
				this._animateOff = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6760
				this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6761
				this._change( null, 0 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6762
				this._animateOff = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6763
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6764
			case "values":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6765
				this._animateOff = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6766
				this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6767
				for ( i = 0; i < valsLength; i += 1 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6768
					this._change( null, i );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6769
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6770
				this._animateOff = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6771
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6772
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6773
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6774
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6775
	//internal value getter
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6776
	// _value() returns value trimmed by min and max, aligned by step
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6777
	_value: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6778
		var val = this.options.value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6779
		val = this._trimAlignValue( val );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6780
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6781
		return val;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6782
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6783
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6784
	//internal values getter
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6785
	// _values() returns array of values trimmed by min and max, aligned by step
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6786
	// _values( index ) returns single value trimmed by min and max, aligned by step
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6787
	_values: function( index ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6788
		var val,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6789
			vals,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6790
			i;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6791
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6792
		if ( arguments.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6793
			val = this.options.values[ index ];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6794
			val = this._trimAlignValue( val );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6795
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6796
			return val;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6797
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6798
			// .slice() creates a copy of the array
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6799
			// this copy gets trimmed by min and max and then returned
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6800
			vals = this.options.values.slice();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6801
			for ( i = 0; i < vals.length; i+= 1) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6802
				vals[ i ] = this._trimAlignValue( vals[ i ] );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6803
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6804
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6805
			return vals;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6806
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6807
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6808
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6809
	// returns the step-aligned value that val is closest to, between (inclusive) min and max
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6810
	_trimAlignValue: function( val ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6811
		if ( val < this._valueMin() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6812
			return this._valueMin();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6813
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6814
		if ( val > this._valueMax() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6815
			return this._valueMax();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6816
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6817
		var step = this.options.step,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6818
			valModStep = val % step,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6819
			alignValue = val - valModStep;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6820
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6821
		if ( valModStep >= ( step / 2 ) ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6822
			alignValue += step;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6823
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6824
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6825
		// Since JavaScript has problems with large floats, round
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6826
		// the final value to 5 digits after the decimal point (see #4124)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6827
		return parseFloat( alignValue.toFixed(5) );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6828
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6829
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6830
	_valueMin: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6831
		return this.options.min;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6832
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6833
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6834
	_valueMax: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6835
		return this.options.max;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6836
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6837
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6838
	_refreshValue: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6839
		var oRange = this.options.range,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6840
			o = this.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6841
			self = this,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6842
			animate = ( !this._animateOff ) ? o.animate : false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6843
			valPercent,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6844
			_set = {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6845
			lastValPercent,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6846
			value,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6847
			valueMin,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6848
			valueMax;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6849
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6850
		if ( this.options.values && this.options.values.length ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6851
			this.handles.each(function( i, j ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6852
				valPercent = ( self.values(i) - self._valueMin() ) / ( self._valueMax() - self._valueMin() ) * 100;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6853
				_set[ self.orientation === "horizontal" ? "left" : "bottom" ] = valPercent + "%";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6854
				$( this ).stop( 1, 1 )[ animate ? "animate" : "css" ]( _set, o.animate );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6855
				if ( self.options.range === true ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6856
					if ( self.orientation === "horizontal" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6857
						if ( i === 0 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6858
							self.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { left: valPercent + "%" }, o.animate );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6859
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6860
						if ( i === 1 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6861
							self.range[ animate ? "animate" : "css" ]( { width: ( valPercent - lastValPercent ) + "%" }, { queue: false, duration: o.animate } );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6862
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6863
					} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6864
						if ( i === 0 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6865
							self.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { bottom: ( valPercent ) + "%" }, o.animate );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6866
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6867
						if ( i === 1 ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6868
							self.range[ animate ? "animate" : "css" ]( { height: ( valPercent - lastValPercent ) + "%" }, { queue: false, duration: o.animate } );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6869
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6870
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6871
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6872
				lastValPercent = valPercent;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6873
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6874
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6875
			value = this.value();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6876
			valueMin = this._valueMin();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6877
			valueMax = this._valueMax();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6878
			valPercent = ( valueMax !== valueMin ) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6879
					( value - valueMin ) / ( valueMax - valueMin ) * 100 :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6880
					0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6881
			_set[ self.orientation === "horizontal" ? "left" : "bottom" ] = valPercent + "%";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6882
			this.handle.stop( 1, 1 )[ animate ? "animate" : "css" ]( _set, o.animate );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6883
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6884
			if ( oRange === "min" && this.orientation === "horizontal" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6885
				this.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { width: valPercent + "%" }, o.animate );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6886
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6887
			if ( oRange === "max" && this.orientation === "horizontal" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6888
				this.range[ animate ? "animate" : "css" ]( { width: ( 100 - valPercent ) + "%" }, { queue: false, duration: o.animate } );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6889
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6890
			if ( oRange === "min" && this.orientation === "vertical" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6891
				this.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { height: valPercent + "%" }, o.animate );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6892
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6893
			if ( oRange === "max" && this.orientation === "vertical" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6894
				this.range[ animate ? "animate" : "css" ]( { height: ( 100 - valPercent ) + "%" }, { queue: false, duration: o.animate } );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6895
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6896
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6897
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6898
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6899
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6900
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6901
$.extend( $.ui.slider, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6902
	version: "1.8.1"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6903
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6904
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6905
}(jQuery));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6906
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6907
 * jQuery UI Tabs 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6908
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6909
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6910
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6911
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6912
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6913
 * http://docs.jquery.com/UI/Tabs
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6914
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6915
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6916
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6917
 *	jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6918
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6919
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6920
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6921
var tabId = 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6922
	listId = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6923
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6924
$.widget("ui.tabs", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6925
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6926
		add: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6927
		ajaxOptions: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6928
		cache: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6929
		cookie: null, // e.g. { expires: 7, path: '/', domain: 'jquery.com', secure: true }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6930
		collapsible: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6931
		disable: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6932
		disabled: [],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6933
		enable: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6934
		event: 'click',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6935
		fx: null, // e.g. { height: 'toggle', opacity: 'toggle', duration: 200 }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6936
		idPrefix: 'ui-tabs-',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6937
		load: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6938
		panelTemplate: '<div></div>',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6939
		remove: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6940
		select: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6941
		show: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6942
		spinner: '<em>Loading&#8230;</em>',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6943
		tabTemplate: '<li><a href="#{href}"><span>#{label}</span></a></li>'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6944
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6945
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6946
		this._tabify(true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6947
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6948
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6949
	_setOption: function(key, value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6950
		if (key == 'selected') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6951
			if (this.options.collapsible && value == this.options.selected) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6952
				return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6953
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6954
			this.select(value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6955
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6956
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6957
			this.options[key] = value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6958
			this._tabify();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6959
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6960
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6961
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6962
	_tabId: function(a) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6963
		return a.title && a.title.replace(/\s/g, '_').replace(/[^A-Za-z0-9\-_:\.]/g, '') ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6964
			this.options.idPrefix + (++tabId);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6965
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6966
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6967
	_sanitizeSelector: function(hash) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6968
		return hash.replace(/:/g, '\\:'); // we need this because an id may contain a ":"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6969
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6970
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6971
	_cookie: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6972
		var cookie = this.cookie || (this.cookie = this.options.cookie.name || 'ui-tabs-' + (++listId));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6973
		return $.cookie.apply(null, [cookie].concat($.makeArray(arguments)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6974
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6975
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6976
	_ui: function(tab, panel) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6977
		return {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6978
			tab: tab,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6979
			panel: panel,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6980
			index: this.anchors.index(tab)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6981
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6982
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6983
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6984
	_cleanup: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6985
		// restore all former loading tabs labels
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6986
		this.lis.filter('.ui-state-processing').removeClass('ui-state-processing')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6987
				.find('span:data(label.tabs)')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6988
				.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6989
					var el = $(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6990
					el.html(el.data('label.tabs')).removeData('label.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6991
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6992
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6993
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6994
	_tabify: function(init) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6995
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6996
		this.list = this.element.find('ol,ul').eq(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6997
		this.lis = $('li:has(a[href])', this.list);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6998
		this.anchors = this.lis.map(function() { return $('a', this)[0]; });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  6999
		this.panels = $([]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7000
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7001
		var self = this, o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7002
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7003
		var fragmentId = /^#.+/; // Safari 2 reports '#' for an empty hash
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7004
		this.anchors.each(function(i, a) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7005
			var href = $(a).attr('href');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7006
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7007
			// For dynamically created HTML that contains a hash as href IE < 8 expands
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7008
			// such href to the full page url with hash and then misinterprets tab as ajax.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7009
			// Same consideration applies for an added tab with a fragment identifier
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7010
			// since a[href=#fragment-identifier] does unexpectedly not match.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7011
			// Thus normalize href attribute...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7012
			var hrefBase = href.split('#')[0], baseEl;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7013
			if (hrefBase && (hrefBase === location.toString().split('#')[0] ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7014
					(baseEl = $('base')[0]) && hrefBase === baseEl.href)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7015
				href = a.hash;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7016
				a.href = href;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7017
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7018
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7019
			// inline tab
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7020
			if (fragmentId.test(href)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7021
				self.panels = self.panels.add(self._sanitizeSelector(href));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7022
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7023
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7024
			// remote tab
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7025
			else if (href != '#') { // prevent loading the page itself if href is just "#"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7026
				$.data(a, 'href.tabs', href); // required for restore on destroy
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7027
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7028
				// TODO until #3808 is fixed strip fragment identifier from url
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7029
				// (IE fails to load from such url)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7030
				$.data(a, 'load.tabs', href.replace(/#.*$/, '')); // mutable data
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7031
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7032
				var id = self._tabId(a);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7033
				a.href = '#' + id;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7034
				var $panel = $('#' + id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7035
				if (!$panel.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7036
					$panel = $(o.panelTemplate).attr('id', id).addClass('ui-tabs-panel ui-widget-content ui-corner-bottom')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7037
						.insertAfter(self.panels[i - 1] || self.list);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7038
					$panel.data('destroy.tabs', true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7039
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7040
				self.panels = self.panels.add($panel);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7041
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7042
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7043
			// invalid tab href
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7044
			else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7045
				o.disabled.push(i);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7046
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7047
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7048
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7049
		// initialization from scratch
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7050
		if (init) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7051
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7052
			// attach necessary classes for styling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7053
			this.element.addClass('ui-tabs ui-widget ui-widget-content ui-corner-all');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7054
			this.list.addClass('ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7055
			this.lis.addClass('ui-state-default ui-corner-top');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7056
			this.panels.addClass('ui-tabs-panel ui-widget-content ui-corner-bottom');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7057
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7058
			// Selected tab
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7059
			// use "selected" option or try to retrieve:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7060
			// 1. from fragment identifier in url
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7061
			// 2. from cookie
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7062
			// 3. from selected class attribute on <li>
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7063
			if (o.selected === undefined) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7064
				if (location.hash) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7065
					this.anchors.each(function(i, a) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7066
						if (a.hash == location.hash) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7067
							o.selected = i;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7068
							return false; // break
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7069
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7070
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7071
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7072
				if (typeof o.selected != 'number' && o.cookie) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7073
					o.selected = parseInt(self._cookie(), 10);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7074
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7075
				if (typeof o.selected != 'number' && this.lis.filter('.ui-tabs-selected').length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7076
					o.selected = this.lis.index(this.lis.filter('.ui-tabs-selected'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7077
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7078
				o.selected = o.selected || (this.lis.length ? 0 : -1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7079
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7080
			else if (o.selected === null) { // usage of null is deprecated, TODO remove in next release
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7081
				o.selected = -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7082
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7083
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7084
			// sanity check - default to first tab...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7085
			o.selected = ((o.selected >= 0 && this.anchors[o.selected]) || o.selected < 0) ? o.selected : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7086
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7087
			// Take disabling tabs via class attribute from HTML
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7088
			// into account and update option properly.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7089
			// A selected tab cannot become disabled.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7090
			o.disabled = $.unique(o.disabled.concat(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7091
				$.map(this.lis.filter('.ui-state-disabled'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7092
					function(n, i) { return self.lis.index(n); } )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7093
			)).sort();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7094
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7095
			if ($.inArray(o.selected, o.disabled) != -1) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7096
				o.disabled.splice($.inArray(o.selected, o.disabled), 1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7097
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7098
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7099
			// highlight selected tab
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7100
			this.panels.addClass('ui-tabs-hide');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7101
			this.lis.removeClass('ui-tabs-selected ui-state-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7102
			if (o.selected >= 0 && this.anchors.length) { // check for length avoids error when initializing empty list
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7103
				this.panels.eq(o.selected).removeClass('ui-tabs-hide');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7104
				this.lis.eq(o.selected).addClass('ui-tabs-selected ui-state-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7105
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7106
				// seems to be expected behavior that the show callback is fired
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7107
				self.element.queue("tabs", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7108
					self._trigger('show', null, self._ui(self.anchors[o.selected], self.panels[o.selected]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7109
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7110
				
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7111
				this.load(o.selected);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7112
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7113
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7114
			// clean up to avoid memory leaks in certain versions of IE 6
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7115
			$(window).bind('unload', function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7116
				self.lis.add(self.anchors).unbind('.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7117
				self.lis = self.anchors = self.panels = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7118
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7119
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7120
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7121
		// update selected after add/remove
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7122
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7123
			o.selected = this.lis.index(this.lis.filter('.ui-tabs-selected'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7124
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7125
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7126
		// update collapsible
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7127
		this.element[o.collapsible ? 'addClass' : 'removeClass']('ui-tabs-collapsible');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7128
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7129
		// set or update cookie after init and add/remove respectively
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7130
		if (o.cookie) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7131
			this._cookie(o.selected, o.cookie);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7132
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7133
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7134
		// disable tabs
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7135
		for (var i = 0, li; (li = this.lis[i]); i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7136
			$(li)[$.inArray(i, o.disabled) != -1 &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7137
				!$(li).hasClass('ui-tabs-selected') ? 'addClass' : 'removeClass']('ui-state-disabled');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7138
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7139
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7140
		// reset cache if switching from cached to not cached
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7141
		if (o.cache === false) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7142
			this.anchors.removeData('cache.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7143
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7144
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7145
		// remove all handlers before, tabify may run on existing tabs after add or option change
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7146
		this.lis.add(this.anchors).unbind('.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7147
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7148
		if (o.event != 'mouseover') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7149
			var addState = function(state, el) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7150
				if (el.is(':not(.ui-state-disabled)')) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7151
					el.addClass('ui-state-' + state);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7152
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7153
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7154
			var removeState = function(state, el) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7155
				el.removeClass('ui-state-' + state);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7156
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7157
			this.lis.bind('mouseover.tabs', function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7158
				addState('hover', $(this));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7159
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7160
			this.lis.bind('mouseout.tabs', function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7161
				removeState('hover', $(this));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7162
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7163
			this.anchors.bind('focus.tabs', function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7164
				addState('focus', $(this).closest('li'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7165
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7166
			this.anchors.bind('blur.tabs', function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7167
				removeState('focus', $(this).closest('li'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7168
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7169
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7170
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7171
		// set up animations
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7172
		var hideFx, showFx;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7173
		if (o.fx) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7174
			if ($.isArray(o.fx)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7175
				hideFx = o.fx[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7176
				showFx = o.fx[1];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7177
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7178
			else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7179
				hideFx = showFx = o.fx;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7180
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7181
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7182
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7183
		// Reset certain styles left over from animation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7184
		// and prevent IE's ClearType bug...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7185
		function resetStyle($el, fx) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7186
			$el.css({ display: '' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7187
			if (!$.support.opacity && fx.opacity) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7188
				$el[0].style.removeAttribute('filter');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7189
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7190
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7191
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7192
		// Show a tab...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7193
		var showTab = showFx ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7194
			function(clicked, $show) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7195
				$(clicked).closest('li').addClass('ui-tabs-selected ui-state-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7196
				$show.hide().removeClass('ui-tabs-hide') // avoid flicker that way
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7197
					.animate(showFx, showFx.duration || 'normal', function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7198
						resetStyle($show, showFx);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7199
						self._trigger('show', null, self._ui(clicked, $show[0]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7200
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7201
			} :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7202
			function(clicked, $show) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7203
				$(clicked).closest('li').addClass('ui-tabs-selected ui-state-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7204
				$show.removeClass('ui-tabs-hide');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7205
				self._trigger('show', null, self._ui(clicked, $show[0]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7206
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7207
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7208
		// Hide a tab, $show is optional...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7209
		var hideTab = hideFx ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7210
			function(clicked, $hide) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7211
				$hide.animate(hideFx, hideFx.duration || 'normal', function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7212
					self.lis.removeClass('ui-tabs-selected ui-state-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7213
					$hide.addClass('ui-tabs-hide');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7214
					resetStyle($hide, hideFx);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7215
					self.element.dequeue("tabs");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7216
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7217
			} :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7218
			function(clicked, $hide, $show) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7219
				self.lis.removeClass('ui-tabs-selected ui-state-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7220
				$hide.addClass('ui-tabs-hide');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7221
				self.element.dequeue("tabs");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7222
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7223
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7224
		// attach tab event handler, unbind to avoid duplicates from former tabifying...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7225
		this.anchors.bind(o.event + '.tabs', function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7226
			var el = this, $li = $(this).closest('li'), $hide = self.panels.filter(':not(.ui-tabs-hide)'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7227
					$show = $(self._sanitizeSelector(this.hash));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7228
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7229
			// If tab is already selected and not collapsible or tab disabled or
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7230
			// or is already loading or click callback returns false stop here.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7231
			// Check if click handler returns false last so that it is not executed
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7232
			// for a disabled or loading tab!
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7233
			if (($li.hasClass('ui-tabs-selected') && !o.collapsible) ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7234
				$li.hasClass('ui-state-disabled') ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7235
				$li.hasClass('ui-state-processing') ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7236
				self._trigger('select', null, self._ui(this, $show[0])) === false) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7237
				this.blur();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7238
				return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7239
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7240
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7241
			o.selected = self.anchors.index(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7242
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7243
			self.abort();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7244
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7245
			// if tab may be closed
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7246
			if (o.collapsible) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7247
				if ($li.hasClass('ui-tabs-selected')) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7248
					o.selected = -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7249
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7250
					if (o.cookie) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7251
						self._cookie(o.selected, o.cookie);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7252
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7253
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7254
					self.element.queue("tabs", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7255
						hideTab(el, $hide);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7256
					}).dequeue("tabs");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7257
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7258
					this.blur();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7259
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7260
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7261
				else if (!$hide.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7262
					if (o.cookie) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7263
						self._cookie(o.selected, o.cookie);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7264
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7265
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7266
					self.element.queue("tabs", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7267
						showTab(el, $show);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7268
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7269
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7270
					self.load(self.anchors.index(this)); // TODO make passing in node possible, see also http://dev.jqueryui.com/ticket/3171
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7271
					
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7272
					this.blur();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7273
					return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7274
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7275
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7276
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7277
			if (o.cookie) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7278
				self._cookie(o.selected, o.cookie);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7279
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7280
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7281
			// show new tab
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7282
			if ($show.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7283
				if ($hide.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7284
					self.element.queue("tabs", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7285
						hideTab(el, $hide);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7286
					});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7287
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7288
				self.element.queue("tabs", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7289
					showTab(el, $show);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7290
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7291
				
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7292
				self.load(self.anchors.index(this));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7293
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7294
			else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7295
				throw 'jQuery UI Tabs: Mismatching fragment identifier.';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7296
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7297
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7298
			// Prevent IE from keeping other link focussed when using the back button
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7299
			// and remove dotted border from clicked link. This is controlled via CSS
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7300
			// in modern browsers; blur() removes focus from address bar in Firefox
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7301
			// which can become a usability and annoying problem with tabs('rotate').
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7302
			if ($.browser.msie) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7303
				this.blur();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7304
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7305
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7306
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7307
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7308
		// disable click in any case
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7309
		this.anchors.bind('click.tabs', function(){return false;});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7310
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7311
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7312
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7313
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7314
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7315
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7316
		this.abort();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7317
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7318
		this.element.unbind('.tabs')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7319
			.removeClass('ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7320
			.removeData('tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7321
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7322
		this.list.removeClass('ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7323
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7324
		this.anchors.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7325
			var href = $.data(this, 'href.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7326
			if (href) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7327
				this.href = href;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7328
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7329
			var $this = $(this).unbind('.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7330
			$.each(['href', 'load', 'cache'], function(i, prefix) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7331
				$this.removeData(prefix + '.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7332
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7333
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7334
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7335
		this.lis.unbind('.tabs').add(this.panels).each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7336
			if ($.data(this, 'destroy.tabs')) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7337
				$(this).remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7338
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7339
			else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7340
				$(this).removeClass([
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7341
					'ui-state-default',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7342
					'ui-corner-top',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7343
					'ui-tabs-selected',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7344
					'ui-state-active',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7345
					'ui-state-hover',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7346
					'ui-state-focus',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7347
					'ui-state-disabled',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7348
					'ui-tabs-panel',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7349
					'ui-widget-content',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7350
					'ui-corner-bottom',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7351
					'ui-tabs-hide'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7352
				].join(' '));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7353
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7354
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7355
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7356
		if (o.cookie) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7357
			this._cookie(null, o.cookie);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7358
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7359
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7360
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7361
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7362
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7363
	add: function(url, label, index) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7364
		if (index === undefined) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7365
			index = this.anchors.length; // append by default
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7366
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7367
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7368
		var self = this, o = this.options,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7369
			$li = $(o.tabTemplate.replace(/#\{href\}/g, url).replace(/#\{label\}/g, label)),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7370
			id = !url.indexOf('#') ? url.replace('#', '') : this._tabId($('a', $li)[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7371
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7372
		$li.addClass('ui-state-default ui-corner-top').data('destroy.tabs', true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7373
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7374
		// try to find an existing element before creating a new one
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7375
		var $panel = $('#' + id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7376
		if (!$panel.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7377
			$panel = $(o.panelTemplate).attr('id', id).data('destroy.tabs', true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7378
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7379
		$panel.addClass('ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7380
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7381
		if (index >= this.lis.length) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7382
			$li.appendTo(this.list);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7383
			$panel.appendTo(this.list[0].parentNode);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7384
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7385
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7386
			$li.insertBefore(this.lis[index]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7387
			$panel.insertBefore(this.panels[index]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7388
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7389
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7390
		o.disabled = $.map(o.disabled,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7391
			function(n, i) { return n >= index ? ++n : n; });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7392
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7393
		this._tabify();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7394
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7395
		if (this.anchors.length == 1) { // after tabify
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7396
			o.selected = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7397
			$li.addClass('ui-tabs-selected ui-state-active');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7398
			$panel.removeClass('ui-tabs-hide');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7399
			this.element.queue("tabs", function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7400
				self._trigger('show', null, self._ui(self.anchors[0], self.panels[0]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7401
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7402
				
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7403
			this.load(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7404
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7405
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7406
		// callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7407
		this._trigger('add', null, this._ui(this.anchors[index], this.panels[index]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7408
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7409
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7410
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7411
	remove: function(index) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7412
		var o = this.options, $li = this.lis.eq(index).remove(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7413
			$panel = this.panels.eq(index).remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7414
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7415
		// If selected tab was removed focus tab to the right or
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7416
		// in case the last tab was removed the tab to the left.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7417
		if ($li.hasClass('ui-tabs-selected') && this.anchors.length > 1) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7418
			this.select(index + (index + 1 < this.anchors.length ? 1 : -1));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7419
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7420
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7421
		o.disabled = $.map($.grep(o.disabled, function(n, i) { return n != index; }),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7422
			function(n, i) { return n >= index ? --n : n; });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7423
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7424
		this._tabify();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7425
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7426
		// callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7427
		this._trigger('remove', null, this._ui($li.find('a')[0], $panel[0]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7428
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7429
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7430
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7431
	enable: function(index) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7432
		var o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7433
		if ($.inArray(index, o.disabled) == -1) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7434
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7435
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7436
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7437
		this.lis.eq(index).removeClass('ui-state-disabled');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7438
		o.disabled = $.grep(o.disabled, function(n, i) { return n != index; });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7439
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7440
		// callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7441
		this._trigger('enable', null, this._ui(this.anchors[index], this.panels[index]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7442
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7443
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7444
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7445
	disable: function(index) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7446
		var self = this, o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7447
		if (index != o.selected) { // cannot disable already selected tab
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7448
			this.lis.eq(index).addClass('ui-state-disabled');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7449
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7450
			o.disabled.push(index);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7451
			o.disabled.sort();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7452
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7453
			// callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7454
			this._trigger('disable', null, this._ui(this.anchors[index], this.panels[index]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7455
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7456
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7457
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7458
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7459
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7460
	select: function(index) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7461
		if (typeof index == 'string') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7462
			index = this.anchors.index(this.anchors.filter('[href$=' + index + ']'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7463
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7464
		else if (index === null) { // usage of null is deprecated, TODO remove in next release
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7465
			index = -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7466
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7467
		if (index == -1 && this.options.collapsible) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7468
			index = this.options.selected;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7469
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7470
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7471
		this.anchors.eq(index).trigger(this.options.event + '.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7472
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7473
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7474
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7475
	load: function(index) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7476
		var self = this, o = this.options, a = this.anchors.eq(index)[0], url = $.data(a, 'load.tabs');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7477
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7478
		this.abort();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7479
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7480
		// not remote or from cache
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7481
		if (!url || this.element.queue("tabs").length !== 0 && $.data(a, 'cache.tabs')) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7482
			this.element.dequeue("tabs");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7483
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7484
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7485
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7486
		// load remote from here on
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7487
		this.lis.eq(index).addClass('ui-state-processing');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7488
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7489
		if (o.spinner) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7490
			var span = $('span', a);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7491
			span.data('label.tabs', span.html()).html(o.spinner);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7492
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7493
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7494
		this.xhr = $.ajax($.extend({}, o.ajaxOptions, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7495
			url: url,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7496
			success: function(r, s) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7497
				$(self._sanitizeSelector(a.hash)).html(r);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7498
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7499
				// take care of tab labels
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7500
				self._cleanup();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7501
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7502
				if (o.cache) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7503
					$.data(a, 'cache.tabs', true); // if loaded once do not load them again
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7504
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7505
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7506
				// callbacks
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7507
				self._trigger('load', null, self._ui(self.anchors[index], self.panels[index]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7508
				try {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7509
					o.ajaxOptions.success(r, s);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7510
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7511
				catch (e) {}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7512
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7513
			error: function(xhr, s, e) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7514
				// take care of tab labels
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7515
				self._cleanup();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7516
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7517
				// callbacks
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7518
				self._trigger('load', null, self._ui(self.anchors[index], self.panels[index]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7519
				try {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7520
					// Passing index avoid a race condition when this method is
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7521
					// called after the user has selected another tab.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7522
					// Pass the anchor that initiated this request allows
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7523
					// loadError to manipulate the tab content panel via $(a.hash)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7524
					o.ajaxOptions.error(xhr, s, index, a);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7525
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7526
				catch (e) {}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7527
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7528
		}));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7529
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7530
		// last, so that load event is fired before show...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7531
		self.element.dequeue("tabs");
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7532
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7533
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7534
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7535
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7536
	abort: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7537
		// stop possibly running animations
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7538
		this.element.queue([]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7539
		this.panels.stop(false, true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7540
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7541
		// "tabs" queue must not contain more than two elements,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7542
		// which are the callbacks for the latest clicked tab...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7543
		this.element.queue("tabs", this.element.queue("tabs").splice(-2, 2));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7544
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7545
		// terminate pending requests from other tabs
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7546
		if (this.xhr) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7547
			this.xhr.abort();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7548
			delete this.xhr;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7549
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7550
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7551
		// take care of tab labels
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7552
		this._cleanup();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7553
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7554
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7555
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7556
	url: function(index, url) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7557
		this.anchors.eq(index).removeData('cache.tabs').data('load.tabs', url);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7558
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7559
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7560
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7561
	length: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7562
		return this.anchors.length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7563
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7564
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7565
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7566
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7567
$.extend($.ui.tabs, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7568
	version: '1.8.1'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7569
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7570
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7571
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7572
 * Tabs Extensions
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7573
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7574
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7575
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7576
 * Rotate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7577
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7578
$.extend($.ui.tabs.prototype, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7579
	rotation: null,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7580
	rotate: function(ms, continuing) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7581
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7582
		var self = this, o = this.options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7583
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7584
		var rotate = self._rotate || (self._rotate = function(e) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7585
			clearTimeout(self.rotation);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7586
			self.rotation = setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7587
				var t = o.selected;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7588
				self.select( ++t < self.anchors.length ? t : 0 );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7589
			}, ms);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7590
			
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7591
			if (e) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7592
				e.stopPropagation();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7593
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7594
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7595
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7596
		var stop = self._unrotate || (self._unrotate = !continuing ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7597
			function(e) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7598
				if (e.clientX) { // in case of a true click
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7599
					self.rotate(null);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7600
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7601
			} :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7602
			function(e) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7603
				t = o.selected;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7604
				rotate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7605
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7606
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7607
		// start rotation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7608
		if (ms) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7609
			this.element.bind('tabsshow', rotate);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7610
			this.anchors.bind(o.event + '.tabs', stop);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7611
			rotate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7612
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7613
		// stop rotation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7614
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7615
			clearTimeout(self.rotation);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7616
			this.element.unbind('tabsshow', rotate);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7617
			this.anchors.unbind(o.event + '.tabs', stop);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7618
			delete this._rotate;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7619
			delete this._unrotate;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7620
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7621
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7622
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7623
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7624
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7625
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7626
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7627
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7628
 * jQuery UI Datepicker 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7629
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7630
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7631
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7632
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7633
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7634
 * http://docs.jquery.com/UI/Datepicker
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7635
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7636
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7637
 *	jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7638
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7639
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7640
(function($) { // hide the namespace
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7641
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7642
$.extend($.ui, { datepicker: { version: "1.8.1" } });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7643
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7644
var PROP_NAME = 'datepicker';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7645
var dpuuid = new Date().getTime();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7646
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7647
/* Date picker manager.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7648
   Use the singleton instance of this class, $.datepicker, to interact with the date picker.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7649
   Settings for (groups of) date pickers are maintained in an instance object,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7650
   allowing multiple different settings on the same page. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7651
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7652
function Datepicker() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7653
	this.debug = false; // Change this to true to start debugging
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7654
	this._curInst = null; // The current instance in use
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7655
	this._keyEvent = false; // If the last event was a key event
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7656
	this._disabledInputs = []; // List of date picker inputs that have been disabled
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7657
	this._datepickerShowing = false; // True if the popup picker is showing , false if not
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7658
	this._inDialog = false; // True if showing within a "dialog", false if not
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7659
	this._mainDivId = 'ui-datepicker-div'; // The ID of the main datepicker division
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7660
	this._inlineClass = 'ui-datepicker-inline'; // The name of the inline marker class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7661
	this._appendClass = 'ui-datepicker-append'; // The name of the append marker class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7662
	this._triggerClass = 'ui-datepicker-trigger'; // The name of the trigger marker class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7663
	this._dialogClass = 'ui-datepicker-dialog'; // The name of the dialog marker class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7664
	this._disableClass = 'ui-datepicker-disabled'; // The name of the disabled covering marker class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7665
	this._unselectableClass = 'ui-datepicker-unselectable'; // The name of the unselectable cell marker class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7666
	this._currentClass = 'ui-datepicker-current-day'; // The name of the current day marker class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7667
	this._dayOverClass = 'ui-datepicker-days-cell-over'; // The name of the day hover marker class
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7668
	this.regional = []; // Available regional settings, indexed by language code
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7669
	this.regional[''] = { // Default regional settings
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7670
		closeText: 'Done', // Display text for close link
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7671
		prevText: 'Prev', // Display text for previous month link
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7672
		nextText: 'Next', // Display text for next month link
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7673
		currentText: 'Today', // Display text for current month link
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7674
		monthNames: ['January','February','March','April','May','June',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7675
			'July','August','September','October','November','December'], // Names of months for drop-down and formatting
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7676
		monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], // For formatting
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7677
		dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], // For formatting
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7678
		dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'], // For formatting
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7679
		dayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'], // Column headings for days starting at Sunday
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7680
		weekHeader: 'Wk', // Column header for week of the year
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7681
		dateFormat: 'mm/dd/yy', // See format options on parseDate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7682
		firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ...
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7683
		isRTL: false, // True if right-to-left language, false if left-to-right
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7684
		showMonthAfterYear: false, // True if the year select precedes month, false for month then year
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7685
		yearSuffix: '' // Additional text to append to the year in the month headers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7686
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7687
	this._defaults = { // Global defaults for all the date picker instances
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7688
		showOn: 'focus', // 'focus' for popup on focus,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7689
			// 'button' for trigger button, or 'both' for either
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7690
		showAnim: 'show', // Name of jQuery animation for popup
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7691
		showOptions: {}, // Options for enhanced animations
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7692
		defaultDate: null, // Used when field is blank: actual date,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7693
			// +/-number for offset from today, null for today
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7694
		appendText: '', // Display text following the input box, e.g. showing the format
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7695
		buttonText: '...', // Text for trigger button
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7696
		buttonImage: '', // URL for trigger button image
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7697
		buttonImageOnly: false, // True if the image appears alone, false if it appears on a button
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7698
		hideIfNoPrevNext: false, // True to hide next/previous month links
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7699
			// if not applicable, false to just disable them
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7700
		navigationAsDateFormat: false, // True if date formatting applied to prev/today/next links
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7701
		gotoCurrent: false, // True if today link goes back to current selection instead
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7702
		changeMonth: false, // True if month can be selected directly, false if only prev/next
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7703
		changeYear: false, // True if year can be selected directly, false if only prev/next
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7704
		yearRange: 'c-10:c+10', // Range of years to display in drop-down,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7705
			// either relative to today's year (-nn:+nn), relative to currently displayed year
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7706
			// (c-nn:c+nn), absolute (nnnn:nnnn), or a combination of the above (nnnn:-n)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7707
		showOtherMonths: false, // True to show dates in other months, false to leave blank
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7708
		selectOtherMonths: false, // True to allow selection of dates in other months, false for unselectable
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7709
		showWeek: false, // True to show week of the year, false to not show it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7710
		calculateWeek: this.iso8601Week, // How to calculate the week of the year,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7711
			// takes a Date and returns the number of the week for it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7712
		shortYearCutoff: '+10', // Short year values < this are in the current century,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7713
			// > this are in the previous century,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7714
			// string value starting with '+' for current year + value
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7715
		minDate: null, // The earliest selectable date, or null for no limit
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7716
		maxDate: null, // The latest selectable date, or null for no limit
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7717
		duration: '_default', // Duration of display/closure
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7718
		beforeShowDay: null, // Function that takes a date and returns an array with
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7719
			// [0] = true if selectable, false if not, [1] = custom CSS class name(s) or '',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7720
			// [2] = cell title (optional), e.g. $.datepicker.noWeekends
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7721
		beforeShow: null, // Function that takes an input field and
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7722
			// returns a set of custom settings for the date picker
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7723
		onSelect: null, // Define a callback function when a date is selected
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7724
		onChangeMonthYear: null, // Define a callback function when the month or year is changed
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7725
		onClose: null, // Define a callback function when the datepicker is closed
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7726
		numberOfMonths: 1, // Number of months to show at a time
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7727
		showCurrentAtPos: 0, // The position in multipe months at which to show the current month (starting at 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7728
		stepMonths: 1, // Number of months to step back/forward
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7729
		stepBigMonths: 12, // Number of months to step back/forward for the big links
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7730
		altField: '', // Selector for an alternate field to store selected dates into
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7731
		altFormat: '', // The date format to use for the alternate field
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7732
		constrainInput: true, // The input is constrained by the current date format
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7733
		showButtonPanel: false, // True to show button panel, false to not show it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7734
		autoSize: false // True to size the input for the date format, false to leave as is
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7735
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7736
	$.extend(this._defaults, this.regional['']);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7737
	this.dpDiv = $('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7738
}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7739
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7740
$.extend(Datepicker.prototype, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7741
	/* Class name added to elements to indicate already configured with a date picker. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7742
	markerClassName: 'hasDatepicker',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7743
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7744
	/* Debug logging (if enabled). */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7745
	log: function () {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7746
		if (this.debug)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7747
			console.log.apply('', arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7748
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7749
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7750
	// TODO rename to "widget" when switching to widget factory
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7751
	_widgetDatepicker: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7752
		return this.dpDiv;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7753
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7754
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7755
	/* Override the default settings for all instances of the date picker.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7756
	   @param  settings  object - the new settings to use as defaults (anonymous object)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7757
	   @return the manager object */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7758
	setDefaults: function(settings) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7759
		extendRemove(this._defaults, settings || {});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7760
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7761
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7762
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7763
	/* Attach the date picker to a jQuery selection.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7764
	   @param  target    element - the target input field or division or span
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7765
	   @param  settings  object - the new settings to use for this date picker instance (anonymous) */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7766
	_attachDatepicker: function(target, settings) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7767
		// check for settings on the control itself - in namespace 'date:'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7768
		var inlineSettings = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7769
		for (var attrName in this._defaults) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7770
			var attrValue = target.getAttribute('date:' + attrName);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7771
			if (attrValue) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7772
				inlineSettings = inlineSettings || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7773
				try {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7774
					inlineSettings[attrName] = eval(attrValue);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7775
				} catch (err) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7776
					inlineSettings[attrName] = attrValue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7777
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7778
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7779
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7780
		var nodeName = target.nodeName.toLowerCase();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7781
		var inline = (nodeName == 'div' || nodeName == 'span');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7782
		if (!target.id)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7783
			target.id = 'dp' + (++this.uuid);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7784
		var inst = this._newInst($(target), inline);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7785
		inst.settings = $.extend({}, settings || {}, inlineSettings || {});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7786
		if (nodeName == 'input') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7787
			this._connectDatepicker(target, inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7788
		} else if (inline) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7789
			this._inlineDatepicker(target, inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7790
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7791
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7792
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7793
	/* Create a new instance object. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7794
	_newInst: function(target, inline) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7795
		var id = target[0].id.replace(/([^A-Za-z0-9_])/g, '\\\\$1'); // escape jQuery meta chars
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7796
		return {id: id, input: target, // associated target
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7797
			selectedDay: 0, selectedMonth: 0, selectedYear: 0, // current selection
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7798
			drawMonth: 0, drawYear: 0, // month being drawn
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7799
			inline: inline, // is datepicker inline or not
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7800
			dpDiv: (!inline ? this.dpDiv : // presentation div
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7801
			$('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7802
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7803
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7804
	/* Attach the date picker to an input field. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7805
	_connectDatepicker: function(target, inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7806
		var input = $(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7807
		inst.append = $([]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7808
		inst.trigger = $([]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7809
		if (input.hasClass(this.markerClassName))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7810
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7811
		this._attachments(input, inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7812
		input.addClass(this.markerClassName).keydown(this._doKeyDown).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7813
			keypress(this._doKeyPress).keyup(this._doKeyUp).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7814
			bind("setData.datepicker", function(event, key, value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7815
				inst.settings[key] = value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7816
			}).bind("getData.datepicker", function(event, key) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7817
				return this._get(inst, key);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7818
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7819
		this._autoSize(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7820
		$.data(target, PROP_NAME, inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7821
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7822
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7823
	/* Make attachments based on settings. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7824
	_attachments: function(input, inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7825
		var appendText = this._get(inst, 'appendText');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7826
		var isRTL = this._get(inst, 'isRTL');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7827
		if (inst.append)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7828
			inst.append.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7829
		if (appendText) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7830
			inst.append = $('<span class="' + this._appendClass + '">' + appendText + '</span>');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7831
			input[isRTL ? 'before' : 'after'](inst.append);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7832
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7833
		input.unbind('focus', this._showDatepicker);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7834
		if (inst.trigger)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7835
			inst.trigger.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7836
		var showOn = this._get(inst, 'showOn');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7837
		if (showOn == 'focus' || showOn == 'both') // pop-up date picker when in the marked field
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7838
			input.focus(this._showDatepicker);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7839
		if (showOn == 'button' || showOn == 'both') { // pop-up date picker when button clicked
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7840
			var buttonText = this._get(inst, 'buttonText');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7841
			var buttonImage = this._get(inst, 'buttonImage');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7842
			inst.trigger = $(this._get(inst, 'buttonImageOnly') ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7843
				$('<img/>').addClass(this._triggerClass).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7844
					attr({ src: buttonImage, alt: buttonText, title: buttonText }) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7845
				$('<button type="button"></button>').addClass(this._triggerClass).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7846
					html(buttonImage == '' ? buttonText : $('<img/>').attr(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7847
					{ src:buttonImage, alt:buttonText, title:buttonText })));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7848
			input[isRTL ? 'before' : 'after'](inst.trigger);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7849
			inst.trigger.click(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7850
				if ($.datepicker._datepickerShowing && $.datepicker._lastInput == input[0])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7851
					$.datepicker._hideDatepicker();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7852
				else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7853
					$.datepicker._showDatepicker(input[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7854
				return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7855
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7856
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7857
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7858
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7859
	/* Apply the maximum length for the date format. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7860
	_autoSize: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7861
		if (this._get(inst, 'autoSize') && !inst.inline) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7862
			var date = new Date(2009, 12 - 1, 20); // Ensure double digits
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7863
			var dateFormat = this._get(inst, 'dateFormat');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7864
			if (dateFormat.match(/[DM]/)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7865
				var findMax = function(names) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7866
					var max = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7867
					var maxI = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7868
					for (var i = 0; i < names.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7869
						if (names[i].length > max) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7870
							max = names[i].length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7871
							maxI = i;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7872
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7873
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7874
					return maxI;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7875
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7876
				date.setMonth(findMax(this._get(inst, (dateFormat.match(/MM/) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7877
					'monthNames' : 'monthNamesShort'))));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7878
				date.setDate(findMax(this._get(inst, (dateFormat.match(/DD/) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7879
					'dayNames' : 'dayNamesShort'))) + 20 - date.getDay());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7880
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7881
			inst.input.attr('size', this._formatDate(inst, date).length);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7882
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7883
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7884
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7885
	/* Attach an inline date picker to a div. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7886
	_inlineDatepicker: function(target, inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7887
		var divSpan = $(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7888
		if (divSpan.hasClass(this.markerClassName))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7889
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7890
		divSpan.addClass(this.markerClassName).append(inst.dpDiv).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7891
			bind("setData.datepicker", function(event, key, value){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7892
				inst.settings[key] = value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7893
			}).bind("getData.datepicker", function(event, key){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7894
				return this._get(inst, key);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7895
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7896
		$.data(target, PROP_NAME, inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7897
		this._setDate(inst, this._getDefaultDate(inst), true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7898
		this._updateDatepicker(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7899
		this._updateAlternate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7900
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7901
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7902
	/* Pop-up the date picker in a "dialog" box.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7903
	   @param  input     element - ignored
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7904
	   @param  date      string or Date - the initial date to display
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7905
	   @param  onSelect  function - the function to call when a date is selected
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7906
	   @param  settings  object - update the dialog date picker instance's settings (anonymous object)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7907
	   @param  pos       int[2] - coordinates for the dialog's position within the screen or
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7908
	                     event - with x/y coordinates or
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7909
	                     leave empty for default (screen centre)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7910
	   @return the manager object */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7911
	_dialogDatepicker: function(input, date, onSelect, settings, pos) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7912
		var inst = this._dialogInst; // internal instance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7913
		if (!inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7914
			var id = 'dp' + (++this.uuid);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7915
			this._dialogInput = $('<input type="text" id="' + id +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7916
				'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7917
			this._dialogInput.keydown(this._doKeyDown);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7918
			$('body').append(this._dialogInput);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7919
			inst = this._dialogInst = this._newInst(this._dialogInput, false);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7920
			inst.settings = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7921
			$.data(this._dialogInput[0], PROP_NAME, inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7922
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7923
		extendRemove(inst.settings, settings || {});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7924
		date = (date && date.constructor == Date ? this._formatDate(inst, date) : date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7925
		this._dialogInput.val(date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7926
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7927
		this._pos = (pos ? (pos.length ? pos : [pos.pageX, pos.pageY]) : null);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7928
		if (!this._pos) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7929
			var browserWidth = document.documentElement.clientWidth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7930
			var browserHeight = document.documentElement.clientHeight;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7931
			var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7932
			var scrollY = document.documentElement.scrollTop || document.body.scrollTop;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7933
			this._pos = // should use actual width/height below
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7934
				[(browserWidth / 2) - 100 + scrollX, (browserHeight / 2) - 150 + scrollY];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7935
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7936
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7937
		// move input on screen for focus, but hidden behind dialog
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7938
		this._dialogInput.css('left', (this._pos[0] + 20) + 'px').css('top', this._pos[1] + 'px');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7939
		inst.settings.onSelect = onSelect;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7940
		this._inDialog = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7941
		this.dpDiv.addClass(this._dialogClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7942
		this._showDatepicker(this._dialogInput[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7943
		if ($.blockUI)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7944
			$.blockUI(this.dpDiv);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7945
		$.data(this._dialogInput[0], PROP_NAME, inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7946
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7947
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7948
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7949
	/* Detach a datepicker from its control.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7950
	   @param  target    element - the target input field or division or span */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7951
	_destroyDatepicker: function(target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7952
		var $target = $(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7953
		var inst = $.data(target, PROP_NAME);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7954
		if (!$target.hasClass(this.markerClassName)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7955
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7956
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7957
		var nodeName = target.nodeName.toLowerCase();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7958
		$.removeData(target, PROP_NAME);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7959
		if (nodeName == 'input') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7960
			inst.append.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7961
			inst.trigger.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7962
			$target.removeClass(this.markerClassName).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7963
				unbind('focus', this._showDatepicker).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7964
				unbind('keydown', this._doKeyDown).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7965
				unbind('keypress', this._doKeyPress).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7966
				unbind('keyup', this._doKeyUp);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7967
		} else if (nodeName == 'div' || nodeName == 'span')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7968
			$target.removeClass(this.markerClassName).empty();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7969
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7970
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7971
	/* Enable the date picker to a jQuery selection.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7972
	   @param  target    element - the target input field or division or span */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7973
	_enableDatepicker: function(target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7974
		var $target = $(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7975
		var inst = $.data(target, PROP_NAME);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7976
		if (!$target.hasClass(this.markerClassName)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7977
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7978
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7979
		var nodeName = target.nodeName.toLowerCase();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7980
		if (nodeName == 'input') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7981
			target.disabled = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7982
			inst.trigger.filter('button').
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7983
				each(function() { this.disabled = false; }).end().
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7984
				filter('img').css({opacity: '1.0', cursor: ''});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7985
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7986
		else if (nodeName == 'div' || nodeName == 'span') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7987
			var inline = $target.children('.' + this._inlineClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7988
			inline.children().removeClass('ui-state-disabled');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7989
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7990
		this._disabledInputs = $.map(this._disabledInputs,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7991
			function(value) { return (value == target ? null : value); }); // delete entry
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7992
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7993
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7994
	/* Disable the date picker to a jQuery selection.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7995
	   @param  target    element - the target input field or division or span */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7996
	_disableDatepicker: function(target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7997
		var $target = $(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7998
		var inst = $.data(target, PROP_NAME);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  7999
		if (!$target.hasClass(this.markerClassName)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8000
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8001
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8002
		var nodeName = target.nodeName.toLowerCase();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8003
		if (nodeName == 'input') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8004
			target.disabled = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8005
			inst.trigger.filter('button').
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8006
				each(function() { this.disabled = true; }).end().
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8007
				filter('img').css({opacity: '0.5', cursor: 'default'});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8008
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8009
		else if (nodeName == 'div' || nodeName == 'span') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8010
			var inline = $target.children('.' + this._inlineClass);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8011
			inline.children().addClass('ui-state-disabled');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8012
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8013
		this._disabledInputs = $.map(this._disabledInputs,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8014
			function(value) { return (value == target ? null : value); }); // delete entry
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8015
		this._disabledInputs[this._disabledInputs.length] = target;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8016
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8017
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8018
	/* Is the first field in a jQuery collection disabled as a datepicker?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8019
	   @param  target    element - the target input field or division or span
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8020
	   @return boolean - true if disabled, false if enabled */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8021
	_isDisabledDatepicker: function(target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8022
		if (!target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8023
			return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8024
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8025
		for (var i = 0; i < this._disabledInputs.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8026
			if (this._disabledInputs[i] == target)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8027
				return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8028
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8029
		return false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8030
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8031
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8032
	/* Retrieve the instance data for the target control.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8033
	   @param  target  element - the target input field or division or span
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8034
	   @return  object - the associated instance data
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8035
	   @throws  error if a jQuery problem getting data */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8036
	_getInst: function(target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8037
		try {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8038
			return $.data(target, PROP_NAME);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8039
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8040
		catch (err) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8041
			throw 'Missing instance data for this datepicker';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8042
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8043
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8044
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8045
	/* Update or retrieve the settings for a date picker attached to an input field or division.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8046
	   @param  target  element - the target input field or division or span
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8047
	   @param  name    object - the new settings to update or
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8048
	                   string - the name of the setting to change or retrieve,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8049
	                   when retrieving also 'all' for all instance settings or
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8050
	                   'defaults' for all global defaults
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8051
	   @param  value   any - the new value for the setting
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8052
	                   (omit if above is an object or to retrieve a value) */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8053
	_optionDatepicker: function(target, name, value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8054
		var inst = this._getInst(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8055
		if (arguments.length == 2 && typeof name == 'string') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8056
			return (name == 'defaults' ? $.extend({}, $.datepicker._defaults) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8057
				(inst ? (name == 'all' ? $.extend({}, inst.settings) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8058
				this._get(inst, name)) : null));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8059
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8060
		var settings = name || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8061
		if (typeof name == 'string') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8062
			settings = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8063
			settings[name] = value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8064
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8065
		if (inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8066
			if (this._curInst == inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8067
				this._hideDatepicker();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8068
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8069
			var date = this._getDateDatepicker(target, true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8070
			extendRemove(inst.settings, settings);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8071
			this._attachments($(target), inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8072
			this._autoSize(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8073
			this._setDateDatepicker(target, date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8074
			this._updateDatepicker(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8075
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8076
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8077
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8078
	// change method deprecated
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8079
	_changeDatepicker: function(target, name, value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8080
		this._optionDatepicker(target, name, value);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8081
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8082
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8083
	/* Redraw the date picker attached to an input field or division.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8084
	   @param  target  element - the target input field or division or span */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8085
	_refreshDatepicker: function(target) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8086
		var inst = this._getInst(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8087
		if (inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8088
			this._updateDatepicker(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8089
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8090
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8091
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8092
	/* Set the dates for a jQuery selection.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8093
	   @param  target   element - the target input field or division or span
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8094
	   @param  date     Date - the new date */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8095
	_setDateDatepicker: function(target, date) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8096
		var inst = this._getInst(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8097
		if (inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8098
			this._setDate(inst, date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8099
			this._updateDatepicker(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8100
			this._updateAlternate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8101
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8102
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8103
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8104
	/* Get the date(s) for the first entry in a jQuery selection.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8105
	   @param  target     element - the target input field or division or span
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8106
	   @param  noDefault  boolean - true if no default date is to be used
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8107
	   @return Date - the current date */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8108
	_getDateDatepicker: function(target, noDefault) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8109
		var inst = this._getInst(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8110
		if (inst && !inst.inline)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8111
			this._setDateFromField(inst, noDefault);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8112
		return (inst ? this._getDate(inst) : null);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8113
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8114
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8115
	/* Handle keystrokes. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8116
	_doKeyDown: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8117
		var inst = $.datepicker._getInst(event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8118
		var handled = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8119
		var isRTL = inst.dpDiv.is('.ui-datepicker-rtl');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8120
		inst._keyEvent = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8121
		if ($.datepicker._datepickerShowing)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8122
			switch (event.keyCode) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8123
				case 9: $.datepicker._hideDatepicker();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8124
						handled = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8125
						break; // hide on tab out
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8126
				case 13: var sel = $('td.' + $.datepicker._dayOverClass, inst.dpDiv).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8127
							add($('td.' + $.datepicker._currentClass, inst.dpDiv));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8128
						if (sel[0])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8129
							$.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8130
						else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8131
							$.datepicker._hideDatepicker();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8132
						return false; // don't submit the form
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8133
						break; // select the value on enter
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8134
				case 27: $.datepicker._hideDatepicker();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8135
						break; // hide on escape
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8136
				case 33: $.datepicker._adjustDate(event.target, (event.ctrlKey ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8137
							-$.datepicker._get(inst, 'stepBigMonths') :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8138
							-$.datepicker._get(inst, 'stepMonths')), 'M');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8139
						break; // previous month/year on page up/+ ctrl
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8140
				case 34: $.datepicker._adjustDate(event.target, (event.ctrlKey ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8141
							+$.datepicker._get(inst, 'stepBigMonths') :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8142
							+$.datepicker._get(inst, 'stepMonths')), 'M');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8143
						break; // next month/year on page down/+ ctrl
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8144
				case 35: if (event.ctrlKey || event.metaKey) $.datepicker._clearDate(event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8145
						handled = event.ctrlKey || event.metaKey;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8146
						break; // clear on ctrl or command +end
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8147
				case 36: if (event.ctrlKey || event.metaKey) $.datepicker._gotoToday(event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8148
						handled = event.ctrlKey || event.metaKey;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8149
						break; // current on ctrl or command +home
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8150
				case 37: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? +1 : -1), 'D');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8151
						handled = event.ctrlKey || event.metaKey;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8152
						// -1 day on ctrl or command +left
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8153
						if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8154
									-$.datepicker._get(inst, 'stepBigMonths') :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8155
									-$.datepicker._get(inst, 'stepMonths')), 'M');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8156
						// next month/year on alt +left on Mac
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8157
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8158
				case 38: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, -7, 'D');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8159
						handled = event.ctrlKey || event.metaKey;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8160
						break; // -1 week on ctrl or command +up
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8161
				case 39: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, (isRTL ? -1 : +1), 'D');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8162
						handled = event.ctrlKey || event.metaKey;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8163
						// +1 day on ctrl or command +right
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8164
						if (event.originalEvent.altKey) $.datepicker._adjustDate(event.target, (event.ctrlKey ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8165
									+$.datepicker._get(inst, 'stepBigMonths') :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8166
									+$.datepicker._get(inst, 'stepMonths')), 'M');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8167
						// next month/year on alt +right
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8168
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8169
				case 40: if (event.ctrlKey || event.metaKey) $.datepicker._adjustDate(event.target, +7, 'D');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8170
						handled = event.ctrlKey || event.metaKey;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8171
						break; // +1 week on ctrl or command +down
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8172
				default: handled = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8173
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8174
		else if (event.keyCode == 36 && event.ctrlKey) // display the date picker on ctrl+home
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8175
			$.datepicker._showDatepicker(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8176
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8177
			handled = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8178
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8179
		if (handled) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8180
			event.preventDefault();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8181
			event.stopPropagation();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8182
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8183
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8184
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8185
	/* Filter entered characters - based on date format. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8186
	_doKeyPress: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8187
		var inst = $.datepicker._getInst(event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8188
		if ($.datepicker._get(inst, 'constrainInput')) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8189
			var chars = $.datepicker._possibleChars($.datepicker._get(inst, 'dateFormat'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8190
			var chr = String.fromCharCode(event.charCode == undefined ? event.keyCode : event.charCode);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8191
			return event.ctrlKey || (chr < ' ' || !chars || chars.indexOf(chr) > -1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8192
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8193
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8194
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8195
	/* Synchronise manual entry and field/alternate field. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8196
	_doKeyUp: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8197
		var inst = $.datepicker._getInst(event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8198
		if (inst.input.val() != inst.lastVal) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8199
			try {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8200
				var date = $.datepicker.parseDate($.datepicker._get(inst, 'dateFormat'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8201
					(inst.input ? inst.input.val() : null),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8202
					$.datepicker._getFormatConfig(inst));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8203
				if (date) { // only if valid
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8204
					$.datepicker._setDateFromField(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8205
					$.datepicker._updateAlternate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8206
					$.datepicker._updateDatepicker(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8207
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8208
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8209
			catch (event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8210
				$.datepicker.log(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8211
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8212
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8213
		return true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8214
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8215
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8216
	/* Pop-up the date picker for a given input field.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8217
	   @param  input  element - the input field attached to the date picker or
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8218
	                  event - if triggered by focus */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8219
	_showDatepicker: function(input) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8220
		input = input.target || input;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8221
		if (input.nodeName.toLowerCase() != 'input') // find from button/image trigger
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8222
			input = $('input', input.parentNode)[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8223
		if ($.datepicker._isDisabledDatepicker(input) || $.datepicker._lastInput == input) // already here
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8224
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8225
		var inst = $.datepicker._getInst(input);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8226
		if ($.datepicker._curInst && $.datepicker._curInst != inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8227
			$.datepicker._curInst.dpDiv.stop(true, true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8228
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8229
		var beforeShow = $.datepicker._get(inst, 'beforeShow');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8230
		extendRemove(inst.settings, (beforeShow ? beforeShow.apply(input, [input, inst]) : {}));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8231
		inst.lastVal = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8232
		$.datepicker._lastInput = input;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8233
		$.datepicker._setDateFromField(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8234
		if ($.datepicker._inDialog) // hide cursor
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8235
			input.value = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8236
		if (!$.datepicker._pos) { // position below input
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8237
			$.datepicker._pos = $.datepicker._findPos(input);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8238
			$.datepicker._pos[1] += input.offsetHeight; // add the height
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8239
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8240
		var isFixed = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8241
		$(input).parents().each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8242
			isFixed |= $(this).css('position') == 'fixed';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8243
			return !isFixed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8244
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8245
		if (isFixed && $.browser.opera) { // correction for Opera when fixed and scrolled
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8246
			$.datepicker._pos[0] -= document.documentElement.scrollLeft;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8247
			$.datepicker._pos[1] -= document.documentElement.scrollTop;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8248
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8249
		var offset = {left: $.datepicker._pos[0], top: $.datepicker._pos[1]};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8250
		$.datepicker._pos = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8251
		// determine sizing offscreen
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8252
		inst.dpDiv.css({position: 'absolute', display: 'block', top: '-1000px'});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8253
		$.datepicker._updateDatepicker(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8254
		// fix width for dynamic number of date pickers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8255
		// and adjust position before showing
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8256
		offset = $.datepicker._checkOffset(inst, offset, isFixed);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8257
		inst.dpDiv.css({position: ($.datepicker._inDialog && $.blockUI ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8258
			'static' : (isFixed ? 'fixed' : 'absolute')), display: 'none',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8259
			left: offset.left + 'px', top: offset.top + 'px'});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8260
		if (!inst.inline) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8261
			var showAnim = $.datepicker._get(inst, 'showAnim');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8262
			var duration = $.datepicker._get(inst, 'duration');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8263
			var postProcess = function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8264
				$.datepicker._datepickerShowing = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8265
				var borders = $.datepicker._getBorders(inst.dpDiv);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8266
				inst.dpDiv.find('iframe.ui-datepicker-cover'). // IE6- only
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8267
					css({left: -borders[0], top: -borders[1],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8268
						width: inst.dpDiv.outerWidth(), height: inst.dpDiv.outerHeight()});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8269
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8270
			inst.dpDiv.zIndex($(input).zIndex()+1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8271
			if ($.effects && $.effects[showAnim])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8272
				inst.dpDiv.show(showAnim, $.datepicker._get(inst, 'showOptions'), duration, postProcess);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8273
			else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8274
				inst.dpDiv[showAnim || 'show']((showAnim ? duration : null), postProcess);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8275
			if (!showAnim || !duration)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8276
				postProcess();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8277
			if (inst.input.is(':visible') && !inst.input.is(':disabled'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8278
				inst.input.focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8279
			$.datepicker._curInst = inst;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8280
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8281
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8282
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8283
	/* Generate the date picker content. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8284
	_updateDatepicker: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8285
		var self = this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8286
		var borders = $.datepicker._getBorders(inst.dpDiv);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8287
		inst.dpDiv.empty().append(this._generateHTML(inst))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8288
			.find('iframe.ui-datepicker-cover') // IE6- only
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8289
				.css({left: -borders[0], top: -borders[1],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8290
					width: inst.dpDiv.outerWidth(), height: inst.dpDiv.outerHeight()})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8291
			.end()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8292
			.find('button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8293
				.bind('mouseout', function(){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8294
					$(this).removeClass('ui-state-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8295
					if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).removeClass('ui-datepicker-prev-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8296
					if(this.className.indexOf('ui-datepicker-next') != -1) $(this).removeClass('ui-datepicker-next-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8297
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8298
				.bind('mouseover', function(){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8299
					if (!self._isDisabledDatepicker( inst.inline ? inst.dpDiv.parent()[0] : inst.input[0])) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8300
						$(this).parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8301
						$(this).addClass('ui-state-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8302
						if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).addClass('ui-datepicker-prev-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8303
						if(this.className.indexOf('ui-datepicker-next') != -1) $(this).addClass('ui-datepicker-next-hover');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8304
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8305
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8306
			.end()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8307
			.find('.' + this._dayOverClass + ' a')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8308
				.trigger('mouseover')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8309
			.end();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8310
		var numMonths = this._getNumberOfMonths(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8311
		var cols = numMonths[1];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8312
		var width = 17;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8313
		if (cols > 1)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8314
			inst.dpDiv.addClass('ui-datepicker-multi-' + cols).css('width', (width * cols) + 'em');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8315
		else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8316
			inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width('');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8317
		inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8318
			'Class']('ui-datepicker-multi');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8319
		inst.dpDiv[(this._get(inst, 'isRTL') ? 'add' : 'remove') +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8320
			'Class']('ui-datepicker-rtl');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8321
		if (inst == $.datepicker._curInst && $.datepicker._datepickerShowing && inst.input &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8322
				inst.input.is(':visible') && !inst.input.is(':disabled'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8323
			inst.input.focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8324
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8325
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8326
	/* Retrieve the size of left and top borders for an element.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8327
	   @param  elem  (jQuery object) the element of interest
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8328
	   @return  (number[2]) the left and top borders */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8329
	_getBorders: function(elem) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8330
		var convert = function(value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8331
			return {thin: 1, medium: 2, thick: 3}[value] || value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8332
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8333
		return [parseFloat(convert(elem.css('border-left-width'))),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8334
			parseFloat(convert(elem.css('border-top-width')))];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8335
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8336
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8337
	/* Check positioning to remain on screen. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8338
	_checkOffset: function(inst, offset, isFixed) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8339
		var dpWidth = inst.dpDiv.outerWidth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8340
		var dpHeight = inst.dpDiv.outerHeight();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8341
		var inputWidth = inst.input ? inst.input.outerWidth() : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8342
		var inputHeight = inst.input ? inst.input.outerHeight() : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8343
		var viewWidth = document.documentElement.clientWidth + $(document).scrollLeft();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8344
		var viewHeight = document.documentElement.clientHeight + $(document).scrollTop();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8345
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8346
		offset.left -= (this._get(inst, 'isRTL') ? (dpWidth - inputWidth) : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8347
		offset.left -= (isFixed && offset.left == inst.input.offset().left) ? $(document).scrollLeft() : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8348
		offset.top -= (isFixed && offset.top == (inst.input.offset().top + inputHeight)) ? $(document).scrollTop() : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8349
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8350
		// now check if datepicker is showing outside window viewport - move to a better place if so.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8351
		offset.left -= Math.min(offset.left, (offset.left + dpWidth > viewWidth && viewWidth > dpWidth) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8352
			Math.abs(offset.left + dpWidth - viewWidth) : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8353
		offset.top -= Math.min(offset.top, (offset.top + dpHeight > viewHeight && viewHeight > dpHeight) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8354
			Math.abs(dpHeight + inputHeight) : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8355
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8356
		return offset;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8357
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8358
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8359
	/* Find an object's position on the screen. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8360
	_findPos: function(obj) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8361
		var inst = this._getInst(obj);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8362
		var isRTL = this._get(inst, 'isRTL');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8363
        while (obj && (obj.type == 'hidden' || obj.nodeType != 1)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8364
            obj = obj[isRTL ? 'previousSibling' : 'nextSibling'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8365
        }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8366
        var position = $(obj).offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8367
	    return [position.left, position.top];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8368
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8369
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8370
	/* Hide the date picker from view.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8371
	   @param  input  element - the input field attached to the date picker */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8372
	_hideDatepicker: function(input) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8373
		var inst = this._curInst;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8374
		if (!inst || (input && inst != $.data(input, PROP_NAME)))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8375
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8376
		if (this._datepickerShowing) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8377
			var showAnim = this._get(inst, 'showAnim');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8378
			var duration = this._get(inst, 'duration');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8379
			var postProcess = function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8380
				$.datepicker._tidyDialog(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8381
				this._curInst = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8382
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8383
			if ($.effects && $.effects[showAnim])
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8384
				inst.dpDiv.hide(showAnim, $.datepicker._get(inst, 'showOptions'), duration, postProcess);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8385
			else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8386
				inst.dpDiv[(showAnim == 'slideDown' ? 'slideUp' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8387
					(showAnim == 'fadeIn' ? 'fadeOut' : 'hide'))]((showAnim ? duration : null), postProcess);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8388
			if (!showAnim)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8389
				postProcess();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8390
			var onClose = this._get(inst, 'onClose');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8391
			if (onClose)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8392
				onClose.apply((inst.input ? inst.input[0] : null),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8393
					[(inst.input ? inst.input.val() : ''), inst]);  // trigger custom callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8394
			this._datepickerShowing = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8395
			this._lastInput = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8396
			if (this._inDialog) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8397
				this._dialogInput.css({ position: 'absolute', left: '0', top: '-100px' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8398
				if ($.blockUI) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8399
					$.unblockUI();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8400
					$('body').append(this.dpDiv);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8401
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8402
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8403
			this._inDialog = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8404
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8405
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8406
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8407
	/* Tidy up after a dialog display. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8408
	_tidyDialog: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8409
		inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8410
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8411
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8412
	/* Close date picker if clicked elsewhere. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8413
	_checkExternalClick: function(event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8414
		if (!$.datepicker._curInst)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8415
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8416
		var $target = $(event.target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8417
		if ($target[0].id != $.datepicker._mainDivId &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8418
				$target.parents('#' + $.datepicker._mainDivId).length == 0 &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8419
				!$target.hasClass($.datepicker.markerClassName) &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8420
				!$target.hasClass($.datepicker._triggerClass) &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8421
				$.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8422
			$.datepicker._hideDatepicker();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8423
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8424
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8425
	/* Adjust one of the date sub-fields. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8426
	_adjustDate: function(id, offset, period) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8427
		var target = $(id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8428
		var inst = this._getInst(target[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8429
		if (this._isDisabledDatepicker(target[0])) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8430
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8431
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8432
		this._adjustInstDate(inst, offset +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8433
			(period == 'M' ? this._get(inst, 'showCurrentAtPos') : 0), // undo positioning
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8434
			period);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8435
		this._updateDatepicker(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8436
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8437
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8438
	/* Action for current link. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8439
	_gotoToday: function(id) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8440
		var target = $(id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8441
		var inst = this._getInst(target[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8442
		if (this._get(inst, 'gotoCurrent') && inst.currentDay) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8443
			inst.selectedDay = inst.currentDay;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8444
			inst.drawMonth = inst.selectedMonth = inst.currentMonth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8445
			inst.drawYear = inst.selectedYear = inst.currentYear;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8446
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8447
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8448
			var date = new Date();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8449
			inst.selectedDay = date.getDate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8450
			inst.drawMonth = inst.selectedMonth = date.getMonth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8451
			inst.drawYear = inst.selectedYear = date.getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8452
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8453
		this._notifyChange(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8454
		this._adjustDate(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8455
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8456
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8457
	/* Action for selecting a new month/year. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8458
	_selectMonthYear: function(id, select, period) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8459
		var target = $(id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8460
		var inst = this._getInst(target[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8461
		inst._selectingMonthYear = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8462
		inst['selected' + (period == 'M' ? 'Month' : 'Year')] =
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8463
		inst['draw' + (period == 'M' ? 'Month' : 'Year')] =
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8464
			parseInt(select.options[select.selectedIndex].value,10);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8465
		this._notifyChange(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8466
		this._adjustDate(target);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8467
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8468
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8469
	/* Restore input focus after not changing month/year. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8470
	_clickMonthYear: function(id) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8471
		var target = $(id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8472
		var inst = this._getInst(target[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8473
		if (inst.input && inst._selectingMonthYear && !$.browser.msie)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8474
			inst.input.focus();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8475
		inst._selectingMonthYear = !inst._selectingMonthYear;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8476
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8477
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8478
	/* Action for selecting a day. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8479
	_selectDay: function(id, month, year, td) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8480
		var target = $(id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8481
		if ($(td).hasClass(this._unselectableClass) || this._isDisabledDatepicker(target[0])) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8482
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8483
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8484
		var inst = this._getInst(target[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8485
		inst.selectedDay = inst.currentDay = $('a', td).html();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8486
		inst.selectedMonth = inst.currentMonth = month;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8487
		inst.selectedYear = inst.currentYear = year;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8488
		this._selectDate(id, this._formatDate(inst,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8489
			inst.currentDay, inst.currentMonth, inst.currentYear));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8490
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8491
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8492
	/* Erase the input field and hide the date picker. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8493
	_clearDate: function(id) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8494
		var target = $(id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8495
		var inst = this._getInst(target[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8496
		this._selectDate(target, '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8497
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8498
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8499
	/* Update the input field with the selected date. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8500
	_selectDate: function(id, dateStr) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8501
		var target = $(id);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8502
		var inst = this._getInst(target[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8503
		dateStr = (dateStr != null ? dateStr : this._formatDate(inst));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8504
		if (inst.input)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8505
			inst.input.val(dateStr);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8506
		this._updateAlternate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8507
		var onSelect = this._get(inst, 'onSelect');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8508
		if (onSelect)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8509
			onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]);  // trigger custom callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8510
		else if (inst.input)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8511
			inst.input.trigger('change'); // fire the change event
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8512
		if (inst.inline)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8513
			this._updateDatepicker(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8514
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8515
			this._hideDatepicker();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8516
			this._lastInput = inst.input[0];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8517
			if (typeof(inst.input[0]) != 'object')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8518
				inst.input.focus(); // restore focus
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8519
			this._lastInput = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8520
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8521
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8522
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8523
	/* Update any alternate field to synchronise with the main field. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8524
	_updateAlternate: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8525
		var altField = this._get(inst, 'altField');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8526
		if (altField) { // update alternate field too
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8527
			var altFormat = this._get(inst, 'altFormat') || this._get(inst, 'dateFormat');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8528
			var date = this._getDate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8529
			var dateStr = this.formatDate(altFormat, date, this._getFormatConfig(inst));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8530
			$(altField).each(function() { $(this).val(dateStr); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8531
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8532
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8533
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8534
	/* Set as beforeShowDay function to prevent selection of weekends.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8535
	   @param  date  Date - the date to customise
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8536
	   @return [boolean, string] - is this date selectable?, what is its CSS class? */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8537
	noWeekends: function(date) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8538
		var day = date.getDay();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8539
		return [(day > 0 && day < 6), ''];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8540
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8541
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8542
	/* Set as calculateWeek to determine the week of the year based on the ISO 8601 definition.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8543
	   @param  date  Date - the date to get the week for
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8544
	   @return  number - the number of the week within the year that contains this date */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8545
	iso8601Week: function(date) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8546
		var checkDate = new Date(date.getTime());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8547
		// Find Thursday of this week starting on Monday
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8548
		checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay() || 7));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8549
		var time = checkDate.getTime();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8550
		checkDate.setMonth(0); // Compare with Jan 1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8551
		checkDate.setDate(1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8552
		return Math.floor(Math.round((time - checkDate) / 86400000) / 7) + 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8553
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8554
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8555
	/* Parse a string value into a date object.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8556
	   See formatDate below for the possible formats.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8557
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8558
	   @param  format    string - the expected format of the date
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8559
	   @param  value     string - the date in the above format
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8560
	   @param  settings  Object - attributes include:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8561
	                     shortYearCutoff  number - the cutoff year for determining the century (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8562
	                     dayNamesShort    string[7] - abbreviated names of the days from Sunday (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8563
	                     dayNames         string[7] - names of the days from Sunday (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8564
	                     monthNamesShort  string[12] - abbreviated names of the months (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8565
	                     monthNames       string[12] - names of the months (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8566
	   @return  Date - the extracted date value or null if value is blank */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8567
	parseDate: function (format, value, settings) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8568
		if (format == null || value == null)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8569
			throw 'Invalid arguments';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8570
		value = (typeof value == 'object' ? value.toString() : value + '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8571
		if (value == '')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8572
			return null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8573
		var shortYearCutoff = (settings ? settings.shortYearCutoff : null) || this._defaults.shortYearCutoff;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8574
		var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8575
		var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8576
		var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8577
		var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8578
		var year = -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8579
		var month = -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8580
		var day = -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8581
		var doy = -1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8582
		var literal = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8583
		// Check whether a format character is doubled
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8584
		var lookAhead = function(match) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8585
			var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8586
			if (matches)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8587
				iFormat++;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8588
			return matches;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8589
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8590
		// Extract a number from the string value
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8591
		var getNumber = function(match) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8592
			lookAhead(match);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8593
			var size = (match == '@' ? 14 : (match == '!' ? 20 :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8594
				(match == 'y' ? 4 : (match == 'o' ? 3 : 2))));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8595
			var digits = new RegExp('^\\d{1,' + size + '}');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8596
			var num = value.substring(iValue).match(digits);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8597
			if (!num)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8598
				throw 'Missing number at position ' + iValue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8599
			iValue += num[0].length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8600
			return parseInt(num[0], 10);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8601
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8602
		// Extract a name from the string value and convert to an index
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8603
		var getName = function(match, shortNames, longNames) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8604
			var names = (lookAhead(match) ? longNames : shortNames);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8605
			for (var i = 0; i < names.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8606
				if (value.substr(iValue, names[i].length) == names[i]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8607
					iValue += names[i].length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8608
					return i + 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8609
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8610
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8611
			throw 'Unknown name at position ' + iValue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8612
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8613
		// Confirm that a literal character matches the string value
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8614
		var checkLiteral = function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8615
			if (value.charAt(iValue) != format.charAt(iFormat))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8616
				throw 'Unexpected literal at position ' + iValue;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8617
			iValue++;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8618
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8619
		var iValue = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8620
		for (var iFormat = 0; iFormat < format.length; iFormat++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8621
			if (literal)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8622
				if (format.charAt(iFormat) == "'" && !lookAhead("'"))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8623
					literal = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8624
				else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8625
					checkLiteral();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8626
			else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8627
				switch (format.charAt(iFormat)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8628
					case 'd':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8629
						day = getNumber('d');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8630
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8631
					case 'D':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8632
						getName('D', dayNamesShort, dayNames);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8633
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8634
					case 'o':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8635
						doy = getNumber('o');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8636
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8637
					case 'm':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8638
						month = getNumber('m');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8639
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8640
					case 'M':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8641
						month = getName('M', monthNamesShort, monthNames);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8642
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8643
					case 'y':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8644
						year = getNumber('y');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8645
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8646
					case '@':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8647
						var date = new Date(getNumber('@'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8648
						year = date.getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8649
						month = date.getMonth() + 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8650
						day = date.getDate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8651
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8652
					case '!':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8653
						var date = new Date((getNumber('!') - this._ticksTo1970) / 10000);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8654
						year = date.getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8655
						month = date.getMonth() + 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8656
						day = date.getDate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8657
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8658
					case "'":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8659
						if (lookAhead("'"))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8660
							checkLiteral();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8661
						else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8662
							literal = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8663
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8664
					default:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8665
						checkLiteral();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8666
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8667
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8668
		if (year == -1)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8669
			year = new Date().getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8670
		else if (year < 100)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8671
			year += new Date().getFullYear() - new Date().getFullYear() % 100 +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8672
				(year <= shortYearCutoff ? 0 : -100);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8673
		if (doy > -1) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8674
			month = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8675
			day = doy;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8676
			do {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8677
				var dim = this._getDaysInMonth(year, month - 1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8678
				if (day <= dim)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8679
					break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8680
				month++;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8681
				day -= dim;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8682
			} while (true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8683
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8684
		var date = this._daylightSavingAdjust(new Date(year, month - 1, day));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8685
		if (date.getFullYear() != year || date.getMonth() + 1 != month || date.getDate() != day)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8686
			throw 'Invalid date'; // E.g. 31/02/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8687
		return date;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8688
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8689
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8690
	/* Standard date formats. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8691
	ATOM: 'yy-mm-dd', // RFC 3339 (ISO 8601)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8692
	COOKIE: 'D, dd M yy',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8693
	ISO_8601: 'yy-mm-dd',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8694
	RFC_822: 'D, d M y',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8695
	RFC_850: 'DD, dd-M-y',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8696
	RFC_1036: 'D, d M y',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8697
	RFC_1123: 'D, d M yy',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8698
	RFC_2822: 'D, d M yy',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8699
	RSS: 'D, d M y', // RFC 822
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8700
	TICKS: '!',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8701
	TIMESTAMP: '@',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8702
	W3C: 'yy-mm-dd', // ISO 8601
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8703
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8704
	_ticksTo1970: (((1970 - 1) * 365 + Math.floor(1970 / 4) - Math.floor(1970 / 100) +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8705
		Math.floor(1970 / 400)) * 24 * 60 * 60 * 10000000),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8706
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8707
	/* Format a date object into a string value.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8708
	   The format can be combinations of the following:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8709
	   d  - day of month (no leading zero)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8710
	   dd - day of month (two digit)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8711
	   o  - day of year (no leading zeros)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8712
	   oo - day of year (three digit)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8713
	   D  - day name short
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8714
	   DD - day name long
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8715
	   m  - month of year (no leading zero)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8716
	   mm - month of year (two digit)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8717
	   M  - month name short
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8718
	   MM - month name long
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8719
	   y  - year (two digit)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8720
	   yy - year (four digit)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8721
	   @ - Unix timestamp (ms since 01/01/1970)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8722
	   ! - Windows ticks (100ns since 01/01/0001)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8723
	   '...' - literal text
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8724
	   '' - single quote
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8725
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8726
	   @param  format    string - the desired format of the date
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8727
	   @param  date      Date - the date value to format
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8728
	   @param  settings  Object - attributes include:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8729
	                     dayNamesShort    string[7] - abbreviated names of the days from Sunday (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8730
	                     dayNames         string[7] - names of the days from Sunday (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8731
	                     monthNamesShort  string[12] - abbreviated names of the months (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8732
	                     monthNames       string[12] - names of the months (optional)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8733
	   @return  string - the date in the above format */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8734
	formatDate: function (format, date, settings) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8735
		if (!date)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8736
			return '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8737
		var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8738
		var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8739
		var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8740
		var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8741
		// Check whether a format character is doubled
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8742
		var lookAhead = function(match) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8743
			var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8744
			if (matches)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8745
				iFormat++;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8746
			return matches;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8747
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8748
		// Format a number, with leading zero if necessary
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8749
		var formatNumber = function(match, value, len) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8750
			var num = '' + value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8751
			if (lookAhead(match))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8752
				while (num.length < len)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8753
					num = '0' + num;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8754
			return num;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8755
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8756
		// Format a name, short or long as requested
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8757
		var formatName = function(match, value, shortNames, longNames) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8758
			return (lookAhead(match) ? longNames[value] : shortNames[value]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8759
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8760
		var output = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8761
		var literal = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8762
		if (date)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8763
			for (var iFormat = 0; iFormat < format.length; iFormat++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8764
				if (literal)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8765
					if (format.charAt(iFormat) == "'" && !lookAhead("'"))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8766
						literal = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8767
					else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8768
						output += format.charAt(iFormat);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8769
				else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8770
					switch (format.charAt(iFormat)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8771
						case 'd':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8772
							output += formatNumber('d', date.getDate(), 2);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8773
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8774
						case 'D':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8775
							output += formatName('D', date.getDay(), dayNamesShort, dayNames);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8776
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8777
						case 'o':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8778
							output += formatNumber('o',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8779
								(date.getTime() - new Date(date.getFullYear(), 0, 0).getTime()) / 86400000, 3);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8780
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8781
						case 'm':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8782
							output += formatNumber('m', date.getMonth() + 1, 2);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8783
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8784
						case 'M':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8785
							output += formatName('M', date.getMonth(), monthNamesShort, monthNames);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8786
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8787
						case 'y':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8788
							output += (lookAhead('y') ? date.getFullYear() :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8789
								(date.getYear() % 100 < 10 ? '0' : '') + date.getYear() % 100);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8790
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8791
						case '@':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8792
							output += date.getTime();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8793
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8794
						case '!':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8795
							output += date.getTime() * 10000 + this._ticksTo1970;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8796
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8797
						case "'":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8798
							if (lookAhead("'"))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8799
								output += "'";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8800
							else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8801
								literal = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8802
							break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8803
						default:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8804
							output += format.charAt(iFormat);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8805
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8806
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8807
		return output;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8808
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8809
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8810
	/* Extract all possible characters from the date format. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8811
	_possibleChars: function (format) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8812
		var chars = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8813
		var literal = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8814
		// Check whether a format character is doubled
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8815
		var lookAhead = function(match) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8816
			var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8817
			if (matches)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8818
				iFormat++;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8819
			return matches;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8820
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8821
		for (var iFormat = 0; iFormat < format.length; iFormat++)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8822
			if (literal)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8823
				if (format.charAt(iFormat) == "'" && !lookAhead("'"))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8824
					literal = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8825
				else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8826
					chars += format.charAt(iFormat);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8827
			else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8828
				switch (format.charAt(iFormat)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8829
					case 'd': case 'm': case 'y': case '@':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8830
						chars += '0123456789';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8831
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8832
					case 'D': case 'M':
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8833
						return null; // Accept anything
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8834
					case "'":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8835
						if (lookAhead("'"))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8836
							chars += "'";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8837
						else
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8838
							literal = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8839
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8840
					default:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8841
						chars += format.charAt(iFormat);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8842
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8843
		return chars;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8844
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8845
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8846
	/* Get a setting value, defaulting if necessary. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8847
	_get: function(inst, name) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8848
		return inst.settings[name] !== undefined ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8849
			inst.settings[name] : this._defaults[name];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8850
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8851
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8852
	/* Parse existing date and initialise date picker. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8853
	_setDateFromField: function(inst, noDefault) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8854
		if (inst.input.val() == inst.lastVal) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8855
			return;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8856
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8857
		var dateFormat = this._get(inst, 'dateFormat');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8858
		var dates = inst.lastVal = inst.input ? inst.input.val() : null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8859
		var date, defaultDate;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8860
		date = defaultDate = this._getDefaultDate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8861
		var settings = this._getFormatConfig(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8862
		try {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8863
			date = this.parseDate(dateFormat, dates, settings) || defaultDate;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8864
		} catch (event) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8865
			this.log(event);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8866
			dates = (noDefault ? '' : dates);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8867
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8868
		inst.selectedDay = date.getDate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8869
		inst.drawMonth = inst.selectedMonth = date.getMonth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8870
		inst.drawYear = inst.selectedYear = date.getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8871
		inst.currentDay = (dates ? date.getDate() : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8872
		inst.currentMonth = (dates ? date.getMonth() : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8873
		inst.currentYear = (dates ? date.getFullYear() : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8874
		this._adjustInstDate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8875
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8876
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8877
	/* Retrieve the default date shown on opening. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8878
	_getDefaultDate: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8879
		return this._restrictMinMax(inst,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8880
			this._determineDate(inst, this._get(inst, 'defaultDate'), new Date()));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8881
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8882
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8883
	/* A date may be specified as an exact value or a relative one. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8884
	_determineDate: function(inst, date, defaultDate) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8885
		var offsetNumeric = function(offset) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8886
			var date = new Date();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8887
			date.setDate(date.getDate() + offset);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8888
			return date;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8889
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8890
		var offsetString = function(offset) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8891
			try {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8892
				return $.datepicker.parseDate($.datepicker._get(inst, 'dateFormat'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8893
					offset, $.datepicker._getFormatConfig(inst));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8894
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8895
			catch (e) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8896
				// Ignore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8897
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8898
			var date = (offset.toLowerCase().match(/^c/) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8899
				$.datepicker._getDate(inst) : null) || new Date();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8900
			var year = date.getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8901
			var month = date.getMonth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8902
			var day = date.getDate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8903
			var pattern = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8904
			var matches = pattern.exec(offset);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8905
			while (matches) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8906
				switch (matches[2] || 'd') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8907
					case 'd' : case 'D' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8908
						day += parseInt(matches[1],10); break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8909
					case 'w' : case 'W' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8910
						day += parseInt(matches[1],10) * 7; break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8911
					case 'm' : case 'M' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8912
						month += parseInt(matches[1],10);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8913
						day = Math.min(day, $.datepicker._getDaysInMonth(year, month));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8914
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8915
					case 'y': case 'Y' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8916
						year += parseInt(matches[1],10);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8917
						day = Math.min(day, $.datepicker._getDaysInMonth(year, month));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8918
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8919
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8920
				matches = pattern.exec(offset);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8921
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8922
			return new Date(year, month, day);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8923
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8924
		date = (date == null ? defaultDate : (typeof date == 'string' ? offsetString(date) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8925
			(typeof date == 'number' ? (isNaN(date) ? defaultDate : offsetNumeric(date)) : date)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8926
		date = (date && date.toString() == 'Invalid Date' ? defaultDate : date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8927
		if (date) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8928
			date.setHours(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8929
			date.setMinutes(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8930
			date.setSeconds(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8931
			date.setMilliseconds(0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8932
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8933
		return this._daylightSavingAdjust(date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8934
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8935
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8936
	/* Handle switch to/from daylight saving.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8937
	   Hours may be non-zero on daylight saving cut-over:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8938
	   > 12 when midnight changeover, but then cannot generate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8939
	   midnight datetime, so jump to 1AM, otherwise reset.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8940
	   @param  date  (Date) the date to check
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8941
	   @return  (Date) the corrected date */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8942
	_daylightSavingAdjust: function(date) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8943
		if (!date) return null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8944
		date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8945
		return date;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8946
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8947
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8948
	/* Set the date(s) directly. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8949
	_setDate: function(inst, date, noChange) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8950
		var clear = !(date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8951
		var origMonth = inst.selectedMonth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8952
		var origYear = inst.selectedYear;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8953
		date = this._restrictMinMax(inst, this._determineDate(inst, date, new Date()));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8954
		inst.selectedDay = inst.currentDay = date.getDate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8955
		inst.drawMonth = inst.selectedMonth = inst.currentMonth = date.getMonth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8956
		inst.drawYear = inst.selectedYear = inst.currentYear = date.getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8957
		if ((origMonth != inst.selectedMonth || origYear != inst.selectedYear) && !noChange)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8958
			this._notifyChange(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8959
		this._adjustInstDate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8960
		if (inst.input) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8961
			inst.input.val(clear ? '' : this._formatDate(inst));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8962
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8963
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8964
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8965
	/* Retrieve the date(s) directly. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8966
	_getDate: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8967
		var startDate = (!inst.currentYear || (inst.input && inst.input.val() == '') ? null :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8968
			this._daylightSavingAdjust(new Date(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8969
			inst.currentYear, inst.currentMonth, inst.currentDay)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8970
			return startDate;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8971
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8972
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8973
	/* Generate the HTML for the current state of the date picker. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8974
	_generateHTML: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8975
		var today = new Date();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8976
		today = this._daylightSavingAdjust(
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8977
			new Date(today.getFullYear(), today.getMonth(), today.getDate())); // clear time
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8978
		var isRTL = this._get(inst, 'isRTL');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8979
		var showButtonPanel = this._get(inst, 'showButtonPanel');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8980
		var hideIfNoPrevNext = this._get(inst, 'hideIfNoPrevNext');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8981
		var navigationAsDateFormat = this._get(inst, 'navigationAsDateFormat');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8982
		var numMonths = this._getNumberOfMonths(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8983
		var showCurrentAtPos = this._get(inst, 'showCurrentAtPos');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8984
		var stepMonths = this._get(inst, 'stepMonths');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8985
		var isMultiMonth = (numMonths[0] != 1 || numMonths[1] != 1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8986
		var currentDate = this._daylightSavingAdjust((!inst.currentDay ? new Date(9999, 9, 9) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8987
			new Date(inst.currentYear, inst.currentMonth, inst.currentDay)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8988
		var minDate = this._getMinMaxDate(inst, 'min');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8989
		var maxDate = this._getMinMaxDate(inst, 'max');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8990
		var drawMonth = inst.drawMonth - showCurrentAtPos;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8991
		var drawYear = inst.drawYear;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8992
		if (drawMonth < 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8993
			drawMonth += 12;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8994
			drawYear--;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8995
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8996
		if (maxDate) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8997
			var maxDraw = this._daylightSavingAdjust(new Date(maxDate.getFullYear(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8998
				maxDate.getMonth() - (numMonths[0] * numMonths[1]) + 1, maxDate.getDate()));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  8999
			maxDraw = (minDate && maxDraw < minDate ? minDate : maxDraw);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9000
			while (this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1)) > maxDraw) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9001
				drawMonth--;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9002
				if (drawMonth < 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9003
					drawMonth = 11;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9004
					drawYear--;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9005
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9006
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9007
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9008
		inst.drawMonth = drawMonth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9009
		inst.drawYear = drawYear;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9010
		var prevText = this._get(inst, 'prevText');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9011
		prevText = (!navigationAsDateFormat ? prevText : this.formatDate(prevText,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9012
			this._daylightSavingAdjust(new Date(drawYear, drawMonth - stepMonths, 1)),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9013
			this._getFormatConfig(inst)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9014
		var prev = (this._canAdjustMonth(inst, -1, drawYear, drawMonth) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9015
			'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_' + dpuuid +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9016
			'.datepicker._adjustDate(\'#' + inst.id + '\', -' + stepMonths + ', \'M\');"' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9017
			' title="' + prevText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9018
			(hideIfNoPrevNext ? '' : '<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+ prevText +'"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9019
		var nextText = this._get(inst, 'nextText');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9020
		nextText = (!navigationAsDateFormat ? nextText : this.formatDate(nextText,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9021
			this._daylightSavingAdjust(new Date(drawYear, drawMonth + stepMonths, 1)),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9022
			this._getFormatConfig(inst)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9023
		var next = (this._canAdjustMonth(inst, +1, drawYear, drawMonth) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9024
			'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_' + dpuuid +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9025
			'.datepicker._adjustDate(\'#' + inst.id + '\', +' + stepMonths + ', \'M\');"' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9026
			' title="' + nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>' :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9027
			(hideIfNoPrevNext ? '' : '<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+ nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9028
		var currentText = this._get(inst, 'currentText');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9029
		var gotoDate = (this._get(inst, 'gotoCurrent') && inst.currentDay ? currentDate : today);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9030
		currentText = (!navigationAsDateFormat ? currentText :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9031
			this.formatDate(currentText, gotoDate, this._getFormatConfig(inst)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9032
		var controls = (!inst.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_' + dpuuid +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9033
			'.datepicker._hideDatepicker();">' + this._get(inst, 'closeText') + '</button>' : '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9034
		var buttonPanel = (showButtonPanel) ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (isRTL ? controls : '') +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9035
			(this._isInRange(inst, gotoDate) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_' + dpuuid +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9036
			'.datepicker._gotoToday(\'#' + inst.id + '\');"' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9037
			'>' + currentText + '</button>' : '') + (isRTL ? '' : controls) + '</div>' : '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9038
		var firstDay = parseInt(this._get(inst, 'firstDay'),10);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9039
		firstDay = (isNaN(firstDay) ? 0 : firstDay);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9040
		var showWeek = this._get(inst, 'showWeek');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9041
		var dayNames = this._get(inst, 'dayNames');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9042
		var dayNamesShort = this._get(inst, 'dayNamesShort');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9043
		var dayNamesMin = this._get(inst, 'dayNamesMin');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9044
		var monthNames = this._get(inst, 'monthNames');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9045
		var monthNamesShort = this._get(inst, 'monthNamesShort');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9046
		var beforeShowDay = this._get(inst, 'beforeShowDay');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9047
		var showOtherMonths = this._get(inst, 'showOtherMonths');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9048
		var selectOtherMonths = this._get(inst, 'selectOtherMonths');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9049
		var calculateWeek = this._get(inst, 'calculateWeek') || this.iso8601Week;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9050
		var defaultDate = this._getDefaultDate(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9051
		var html = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9052
		for (var row = 0; row < numMonths[0]; row++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9053
			var group = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9054
			for (var col = 0; col < numMonths[1]; col++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9055
				var selectedDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, inst.selectedDay));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9056
				var cornerClass = ' ui-corner-all';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9057
				var calender = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9058
				if (isMultiMonth) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9059
					calender += '<div class="ui-datepicker-group';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9060
					if (numMonths[1] > 1)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9061
						switch (col) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9062
							case 0: calender += ' ui-datepicker-group-first';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9063
								cornerClass = ' ui-corner-' + (isRTL ? 'right' : 'left'); break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9064
							case numMonths[1]-1: calender += ' ui-datepicker-group-last';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9065
								cornerClass = ' ui-corner-' + (isRTL ? 'left' : 'right'); break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9066
							default: calender += ' ui-datepicker-group-middle'; cornerClass = ''; break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9067
						}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9068
					calender += '">';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9069
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9070
				calender += '<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix' + cornerClass + '">' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9071
					(/all|left/.test(cornerClass) && row == 0 ? (isRTL ? next : prev) : '') +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9072
					(/all|right/.test(cornerClass) && row == 0 ? (isRTL ? prev : next) : '') +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9073
					this._generateMonthYearHeader(inst, drawMonth, drawYear, minDate, maxDate,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9074
					row > 0 || col > 0, monthNames, monthNamesShort) + // draw month headers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9075
					'</div><table class="ui-datepicker-calendar"><thead>' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9076
					'<tr>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9077
				var thead = (showWeek ? '<th class="ui-datepicker-week-col">' + this._get(inst, 'weekHeader') + '</th>' : '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9078
				for (var dow = 0; dow < 7; dow++) { // days of the week
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9079
					var day = (dow + firstDay) % 7;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9080
					thead += '<th' + ((dow + firstDay + 6) % 7 >= 5 ? ' class="ui-datepicker-week-end"' : '') + '>' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9081
						'<span title="' + dayNames[day] + '">' + dayNamesMin[day] + '</span></th>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9082
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9083
				calender += thead + '</tr></thead><tbody>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9084
				var daysInMonth = this._getDaysInMonth(drawYear, drawMonth);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9085
				if (drawYear == inst.selectedYear && drawMonth == inst.selectedMonth)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9086
					inst.selectedDay = Math.min(inst.selectedDay, daysInMonth);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9087
				var leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9088
				var numRows = (isMultiMonth ? 6 : Math.ceil((leadDays + daysInMonth) / 7)); // calculate the number of rows to generate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9089
				var printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9090
				for (var dRow = 0; dRow < numRows; dRow++) { // create date picker rows
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9091
					calender += '<tr>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9092
					var tbody = (!showWeek ? '' : '<td class="ui-datepicker-week-col">' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9093
						this._get(inst, 'calculateWeek')(printDate) + '</td>');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9094
					for (var dow = 0; dow < 7; dow++) { // create date picker days
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9095
						var daySettings = (beforeShowDay ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9096
							beforeShowDay.apply((inst.input ? inst.input[0] : null), [printDate]) : [true, '']);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9097
						var otherMonth = (printDate.getMonth() != drawMonth);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9098
						var unselectable = (otherMonth && !selectOtherMonths) || !daySettings[0] ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9099
							(minDate && printDate < minDate) || (maxDate && printDate > maxDate);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9100
						tbody += '<td class="' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9101
							((dow + firstDay + 6) % 7 >= 5 ? ' ui-datepicker-week-end' : '') + // highlight weekends
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9102
							(otherMonth ? ' ui-datepicker-other-month' : '') + // highlight days from other months
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9103
							((printDate.getTime() == selectedDate.getTime() && drawMonth == inst.selectedMonth && inst._keyEvent) || // user pressed key
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9104
							(defaultDate.getTime() == printDate.getTime() && defaultDate.getTime() == selectedDate.getTime()) ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9105
							// or defaultDate is current printedDate and defaultDate is selectedDate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9106
							' ' + this._dayOverClass : '') + // highlight selected day
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9107
							(unselectable ? ' ' + this._unselectableClass + ' ui-state-disabled': '') +  // highlight unselectable days
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9108
							(otherMonth && !showOtherMonths ? '' : ' ' + daySettings[1] + // highlight custom dates
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9109
							(printDate.getTime() == currentDate.getTime() ? ' ' + this._currentClass : '') + // highlight selected day
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9110
							(printDate.getTime() == today.getTime() ? ' ui-datepicker-today' : '')) + '"' + // highlight today (if different)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9111
							((!otherMonth || showOtherMonths) && daySettings[2] ? ' title="' + daySettings[2] + '"' : '') + // cell title
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9112
							(unselectable ? '' : ' onclick="DP_jQuery_' + dpuuid + '.datepicker._selectDay(\'#' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9113
							inst.id + '\',' + printDate.getMonth() + ',' + printDate.getFullYear() + ', this);return false;"') + '>' + // actions
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9114
							(otherMonth && !showOtherMonths ? '&#xa0;' : // display for other months
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9115
							(unselectable ? '<span class="ui-state-default">' + printDate.getDate() + '</span>' : '<a class="ui-state-default' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9116
							(printDate.getTime() == today.getTime() ? ' ui-state-highlight' : '') +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9117
							(printDate.getTime() == currentDate.getTime() ? ' ui-state-active' : '') + // highlight selected day
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9118
							(otherMonth ? ' ui-priority-secondary' : '') + // distinguish dates from other months
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9119
							'" href="#">' + printDate.getDate() + '</a>')) + '</td>'; // display selectable date
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9120
						printDate.setDate(printDate.getDate() + 1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9121
						printDate = this._daylightSavingAdjust(printDate);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9122
					}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9123
					calender += tbody + '</tr>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9124
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9125
				drawMonth++;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9126
				if (drawMonth > 11) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9127
					drawMonth = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9128
					drawYear++;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9129
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9130
				calender += '</tbody></table>' + (isMultiMonth ? '</div>' + 
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9131
							((numMonths[0] > 0 && col == numMonths[1]-1) ? '<div class="ui-datepicker-row-break"></div>' : '') : '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9132
				group += calender;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9133
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9134
			html += group;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9135
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9136
		html += buttonPanel + ($.browser.msie && parseInt($.browser.version,10) < 7 && !inst.inline ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9137
			'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>' : '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9138
		inst._keyEvent = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9139
		return html;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9140
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9141
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9142
	/* Generate the month and year header. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9143
	_generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9144
			secondary, monthNames, monthNamesShort) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9145
		var changeMonth = this._get(inst, 'changeMonth');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9146
		var changeYear = this._get(inst, 'changeYear');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9147
		var showMonthAfterYear = this._get(inst, 'showMonthAfterYear');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9148
		var html = '<div class="ui-datepicker-title">';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9149
		var monthHtml = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9150
		// month selection
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9151
		if (secondary || !changeMonth)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9152
			monthHtml += '<span class="ui-datepicker-month">' + monthNames[drawMonth] + '</span>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9153
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9154
			var inMinYear = (minDate && minDate.getFullYear() == drawYear);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9155
			var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9156
			monthHtml += '<select class="ui-datepicker-month" ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9157
				'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'M\');" ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9158
				'onclick="DP_jQuery_' + dpuuid + '.datepicker._clickMonthYear(\'#' + inst.id + '\');"' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9159
			 	'>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9160
			for (var month = 0; month < 12; month++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9161
				if ((!inMinYear || month >= minDate.getMonth()) &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9162
						(!inMaxYear || month <= maxDate.getMonth()))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9163
					monthHtml += '<option value="' + month + '"' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9164
						(month == drawMonth ? ' selected="selected"' : '') +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9165
						'>' + monthNamesShort[month] + '</option>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9166
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9167
			monthHtml += '</select>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9168
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9169
		if (!showMonthAfterYear)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9170
			html += monthHtml + (secondary || !(changeMonth && changeYear) ? '&#xa0;' : '');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9171
		// year selection
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9172
		if (secondary || !changeYear)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9173
			html += '<span class="ui-datepicker-year">' + drawYear + '</span>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9174
		else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9175
			// determine range of years to display
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9176
			var years = this._get(inst, 'yearRange').split(':');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9177
			var thisYear = new Date().getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9178
			var determineYear = function(value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9179
				var year = (value.match(/c[+-].*/) ? drawYear + parseInt(value.substring(1), 10) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9180
					(value.match(/[+-].*/) ? thisYear + parseInt(value, 10) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9181
					parseInt(value, 10)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9182
				return (isNaN(year) ? thisYear : year);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9183
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9184
			var year = determineYear(years[0]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9185
			var endYear = Math.max(year, determineYear(years[1] || ''));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9186
			year = (minDate ? Math.max(year, minDate.getFullYear()) : year);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9187
			endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9188
			html += '<select class="ui-datepicker-year" ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9189
				'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'Y\');" ' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9190
				'onclick="DP_jQuery_' + dpuuid + '.datepicker._clickMonthYear(\'#' + inst.id + '\');"' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9191
				'>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9192
			for (; year <= endYear; year++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9193
				html += '<option value="' + year + '"' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9194
					(year == drawYear ? ' selected="selected"' : '') +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9195
					'>' + year + '</option>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9196
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9197
			html += '</select>';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9198
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9199
		html += this._get(inst, 'yearSuffix');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9200
		if (showMonthAfterYear)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9201
			html += (secondary || !(changeMonth && changeYear) ? '&#xa0;' : '') + monthHtml;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9202
		html += '</div>'; // Close datepicker_header
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9203
		return html;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9204
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9205
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9206
	/* Adjust one of the date sub-fields. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9207
	_adjustInstDate: function(inst, offset, period) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9208
		var year = inst.drawYear + (period == 'Y' ? offset : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9209
		var month = inst.drawMonth + (period == 'M' ? offset : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9210
		var day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9211
			(period == 'D' ? offset : 0);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9212
		var date = this._restrictMinMax(inst,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9213
			this._daylightSavingAdjust(new Date(year, month, day)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9214
		inst.selectedDay = date.getDate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9215
		inst.drawMonth = inst.selectedMonth = date.getMonth();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9216
		inst.drawYear = inst.selectedYear = date.getFullYear();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9217
		if (period == 'M' || period == 'Y')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9218
			this._notifyChange(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9219
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9220
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9221
	/* Ensure a date is within any min/max bounds. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9222
	_restrictMinMax: function(inst, date) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9223
		var minDate = this._getMinMaxDate(inst, 'min');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9224
		var maxDate = this._getMinMaxDate(inst, 'max');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9225
		date = (minDate && date < minDate ? minDate : date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9226
		date = (maxDate && date > maxDate ? maxDate : date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9227
		return date;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9228
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9229
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9230
	/* Notify change of month/year. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9231
	_notifyChange: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9232
		var onChange = this._get(inst, 'onChangeMonthYear');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9233
		if (onChange)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9234
			onChange.apply((inst.input ? inst.input[0] : null),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9235
				[inst.selectedYear, inst.selectedMonth + 1, inst]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9236
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9237
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9238
	/* Determine the number of months to show. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9239
	_getNumberOfMonths: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9240
		var numMonths = this._get(inst, 'numberOfMonths');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9241
		return (numMonths == null ? [1, 1] : (typeof numMonths == 'number' ? [1, numMonths] : numMonths));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9242
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9243
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9244
	/* Determine the current maximum date - ensure no time components are set. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9245
	_getMinMaxDate: function(inst, minMax) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9246
		return this._determineDate(inst, this._get(inst, minMax + 'Date'), null);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9247
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9248
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9249
	/* Find the number of days in a given month. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9250
	_getDaysInMonth: function(year, month) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9251
		return 32 - new Date(year, month, 32).getDate();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9252
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9253
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9254
	/* Find the day of the week of the first of a month. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9255
	_getFirstDayOfMonth: function(year, month) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9256
		return new Date(year, month, 1).getDay();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9257
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9258
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9259
	/* Determines if we should allow a "next/prev" month display change. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9260
	_canAdjustMonth: function(inst, offset, curYear, curMonth) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9261
		var numMonths = this._getNumberOfMonths(inst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9262
		var date = this._daylightSavingAdjust(new Date(curYear,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9263
			curMonth + (offset < 0 ? offset : numMonths[0] * numMonths[1]), 1));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9264
		if (offset < 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9265
			date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth()));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9266
		return this._isInRange(inst, date);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9267
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9268
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9269
	/* Is the given date in the accepted range? */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9270
	_isInRange: function(inst, date) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9271
		var minDate = this._getMinMaxDate(inst, 'min');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9272
		var maxDate = this._getMinMaxDate(inst, 'max');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9273
		return ((!minDate || date.getTime() >= minDate.getTime()) &&
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9274
			(!maxDate || date.getTime() <= maxDate.getTime()));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9275
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9276
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9277
	/* Provide the configuration settings for formatting/parsing. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9278
	_getFormatConfig: function(inst) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9279
		var shortYearCutoff = this._get(inst, 'shortYearCutoff');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9280
		shortYearCutoff = (typeof shortYearCutoff != 'string' ? shortYearCutoff :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9281
			new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9282
		return {shortYearCutoff: shortYearCutoff,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9283
			dayNamesShort: this._get(inst, 'dayNamesShort'), dayNames: this._get(inst, 'dayNames'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9284
			monthNamesShort: this._get(inst, 'monthNamesShort'), monthNames: this._get(inst, 'monthNames')};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9285
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9286
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9287
	/* Format the given date for display. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9288
	_formatDate: function(inst, day, month, year) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9289
		if (!day) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9290
			inst.currentDay = inst.selectedDay;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9291
			inst.currentMonth = inst.selectedMonth;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9292
			inst.currentYear = inst.selectedYear;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9293
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9294
		var date = (day ? (typeof day == 'object' ? day :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9295
			this._daylightSavingAdjust(new Date(year, month, day))) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9296
			this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay)));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9297
		return this.formatDate(this._get(inst, 'dateFormat'), date, this._getFormatConfig(inst));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9298
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9299
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9300
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9301
/* jQuery extend now ignores nulls! */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9302
function extendRemove(target, props) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9303
	$.extend(target, props);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9304
	for (var name in props)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9305
		if (props[name] == null || props[name] == undefined)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9306
			target[name] = props[name];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9307
	return target;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9308
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9309
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9310
/* Determine whether an object is an array. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9311
function isArray(a) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9312
	return (a && (($.browser.safari && typeof a == 'object' && a.length) ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9313
		(a.constructor && a.constructor.toString().match(/\Array\(\)/))));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9314
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9315
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9316
/* Invoke the datepicker functionality.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9317
   @param  options  string - a command, optionally followed by additional parameters or
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9318
                    Object - settings for attaching new datepicker functionality
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9319
   @return  jQuery object */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9320
$.fn.datepicker = function(options){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9321
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9322
	/* Initialise the date picker. */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9323
	if (!$.datepicker.initialized) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9324
		$(document).mousedown($.datepicker._checkExternalClick).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9325
			find('body').append($.datepicker.dpDiv);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9326
		$.datepicker.initialized = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9327
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9328
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9329
	var otherArgs = Array.prototype.slice.call(arguments, 1);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9330
	if (typeof options == 'string' && (options == 'isDisabled' || options == 'getDate' || options == 'widget'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9331
		return $.datepicker['_' + options + 'Datepicker'].
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9332
			apply($.datepicker, [this[0]].concat(otherArgs));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9333
	if (options == 'option' && arguments.length == 2 && typeof arguments[1] == 'string')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9334
		return $.datepicker['_' + options + 'Datepicker'].
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9335
			apply($.datepicker, [this[0]].concat(otherArgs));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9336
	return this.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9337
		typeof options == 'string' ?
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9338
			$.datepicker['_' + options + 'Datepicker'].
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9339
				apply($.datepicker, [this].concat(otherArgs)) :
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9340
			$.datepicker._attachDatepicker(this, options);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9341
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9342
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9343
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9344
$.datepicker = new Datepicker(); // singleton instance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9345
$.datepicker.initialized = false;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9346
$.datepicker.uuid = new Date().getTime();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9347
$.datepicker.version = "1.8.1";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9348
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9349
// Workaround for #4055
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9350
// Add another global to avoid noConflict issues with inline event handlers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9351
window['DP_jQuery_' + dpuuid] = $;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9352
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9353
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9354
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9355
 * jQuery UI Progressbar 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9356
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9357
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9358
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9359
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9360
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9361
 * http://docs.jquery.com/UI/Progressbar
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9362
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9363
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9364
 *   jquery.ui.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9365
 *   jquery.ui.widget.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9366
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9367
(function( $ ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9368
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9369
$.widget( "ui.progressbar", {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9370
	options: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9371
		value: 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9372
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9373
	_create: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9374
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9375
			.addClass( "ui-progressbar ui-widget ui-widget-content ui-corner-all" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9376
			.attr({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9377
				role: "progressbar",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9378
				"aria-valuemin": this._valueMin(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9379
				"aria-valuemax": this._valueMax(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9380
				"aria-valuenow": this._value()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9381
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9382
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9383
		this.valueDiv = $( "<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9384
			.appendTo( this.element );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9385
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9386
		this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9387
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9388
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9389
	destroy: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9390
		this.element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9391
			.removeClass( "ui-progressbar ui-widget ui-widget-content ui-corner-all" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9392
			.removeAttr( "role" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9393
			.removeAttr( "aria-valuemin" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9394
			.removeAttr( "aria-valuemax" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9395
			.removeAttr( "aria-valuenow" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9396
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9397
		this.valueDiv.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9398
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9399
		$.Widget.prototype.destroy.apply( this, arguments );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9400
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9401
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9402
	value: function( newValue ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9403
		if ( newValue === undefined ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9404
			return this._value();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9405
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9406
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9407
		this._setOption( "value", newValue );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9408
		return this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9409
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9410
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9411
	_setOption: function( key, value ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9412
		switch ( key ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9413
			case "value":
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9414
				this.options.value = value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9415
				this._refreshValue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9416
				this._trigger( "change" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9417
				break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9418
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9419
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9420
		$.Widget.prototype._setOption.apply( this, arguments );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9421
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9422
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9423
	_value: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9424
		var val = this.options.value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9425
		// normalize invalid value
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9426
		if ( typeof val !== "number" ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9427
			val = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9428
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9429
		if ( val < this._valueMin() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9430
			val = this._valueMin();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9431
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9432
		if ( val > this._valueMax() ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9433
			val = this._valueMax();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9434
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9435
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9436
		return val;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9437
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9438
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9439
	_valueMin: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9440
		return 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9441
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9442
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9443
	_valueMax: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9444
		return 100;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9445
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9446
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9447
	_refreshValue: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9448
		var value = this.value();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9449
		this.valueDiv
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9450
			[ value === this._valueMax() ? "addClass" : "removeClass"]( "ui-corner-right" )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9451
			.width( value + "%" );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9452
		this.element.attr( "aria-valuenow", value );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9453
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9454
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9455
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9456
$.extend( $.ui.progressbar, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9457
	version: "1.8.1"
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9458
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9459
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9460
})( jQuery );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9461
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9462
 * jQuery UI Effects 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9463
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9464
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9465
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9466
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9467
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9468
 * http://docs.jquery.com/UI/Effects/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9469
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9470
;jQuery.effects || (function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9471
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9472
$.effects = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9473
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9474
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9475
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9476
/******************************************************************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9477
/****************************** COLOR ANIMATIONS ******************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9478
/******************************************************************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9479
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9480
// override the animation for color styles
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9481
$.each(['backgroundColor', 'borderBottomColor', 'borderLeftColor',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9482
	'borderRightColor', 'borderTopColor', 'color', 'outlineColor'],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9483
function(i, attr) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9484
	$.fx.step[attr] = function(fx) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9485
		if (!fx.colorInit) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9486
			fx.start = getColor(fx.elem, attr);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9487
			fx.end = getRGB(fx.end);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9488
			fx.colorInit = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9489
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9490
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9491
		fx.elem.style[attr] = 'rgb(' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9492
			Math.max(Math.min(parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0], 10), 255), 0) + ',' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9493
			Math.max(Math.min(parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1], 10), 255), 0) + ',' +
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9494
			Math.max(Math.min(parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2], 10), 255), 0) + ')';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9495
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9496
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9497
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9498
// Color Conversion functions from highlightFade
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9499
// By Blair Mitchelmore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9500
// http://jquery.offput.ca/highlightFade/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9501
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9502
// Parse strings looking for color tuples [255,255,255]
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9503
function getRGB(color) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9504
		var result;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9505
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9506
		// Check if we're already dealing with an array of colors
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9507
		if ( color && color.constructor == Array && color.length == 3 )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9508
				return color;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9509
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9510
		// Look for rgb(num,num,num)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9511
		if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9512
				return [parseInt(result[1],10), parseInt(result[2],10), parseInt(result[3],10)];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9513
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9514
		// Look for rgb(num%,num%,num%)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9515
		if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9516
				return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9517
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9518
		// Look for #a0b1c2
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9519
		if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9520
				return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9521
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9522
		// Look for #fff
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9523
		if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9524
				return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9525
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9526
		// Look for rgba(0, 0, 0, 0) == transparent in Safari 3
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9527
		if (result = /rgba\(0, 0, 0, 0\)/.exec(color))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9528
				return colors['transparent'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9529
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9530
		// Otherwise, we're most likely dealing with a named color
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9531
		return colors[$.trim(color).toLowerCase()];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9532
}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9533
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9534
function getColor(elem, attr) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9535
		var color;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9536
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9537
		do {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9538
				color = $.curCSS(elem, attr);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9539
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9540
				// Keep going until we find an element that has color, or we hit the body
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9541
				if ( color != '' && color != 'transparent' || $.nodeName(elem, "body") )
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9542
						break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9543
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9544
				attr = "backgroundColor";
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9545
		} while ( elem = elem.parentNode );
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9546
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9547
		return getRGB(color);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9548
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9549
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9550
// Some named colors to work with
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9551
// From Interface by Stefan Petre
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9552
// http://interface.eyecon.ro/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9553
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9554
var colors = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9555
	aqua:[0,255,255],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9556
	azure:[240,255,255],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9557
	beige:[245,245,220],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9558
	black:[0,0,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9559
	blue:[0,0,255],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9560
	brown:[165,42,42],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9561
	cyan:[0,255,255],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9562
	darkblue:[0,0,139],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9563
	darkcyan:[0,139,139],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9564
	darkgrey:[169,169,169],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9565
	darkgreen:[0,100,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9566
	darkkhaki:[189,183,107],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9567
	darkmagenta:[139,0,139],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9568
	darkolivegreen:[85,107,47],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9569
	darkorange:[255,140,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9570
	darkorchid:[153,50,204],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9571
	darkred:[139,0,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9572
	darksalmon:[233,150,122],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9573
	darkviolet:[148,0,211],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9574
	fuchsia:[255,0,255],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9575
	gold:[255,215,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9576
	green:[0,128,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9577
	indigo:[75,0,130],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9578
	khaki:[240,230,140],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9579
	lightblue:[173,216,230],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9580
	lightcyan:[224,255,255],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9581
	lightgreen:[144,238,144],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9582
	lightgrey:[211,211,211],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9583
	lightpink:[255,182,193],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9584
	lightyellow:[255,255,224],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9585
	lime:[0,255,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9586
	magenta:[255,0,255],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9587
	maroon:[128,0,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9588
	navy:[0,0,128],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9589
	olive:[128,128,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9590
	orange:[255,165,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9591
	pink:[255,192,203],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9592
	purple:[128,0,128],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9593
	violet:[128,0,128],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9594
	red:[255,0,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9595
	silver:[192,192,192],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9596
	white:[255,255,255],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9597
	yellow:[255,255,0],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9598
	transparent: [255,255,255]
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9599
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9600
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9601
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9602
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9603
/******************************************************************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9604
/****************************** CLASS ANIMATIONS ******************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9605
/******************************************************************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9606
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9607
var classAnimationActions = ['add', 'remove', 'toggle'],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9608
	shorthandStyles = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9609
		border: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9610
		borderBottom: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9611
		borderColor: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9612
		borderLeft: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9613
		borderRight: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9614
		borderTop: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9615
		borderWidth: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9616
		margin: 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9617
		padding: 1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9618
	};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9619
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9620
function getElementStyles() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9621
	var style = document.defaultView
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9622
			? document.defaultView.getComputedStyle(this, null)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9623
			: this.currentStyle,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9624
		newStyle = {},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9625
		key,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9626
		camelCase;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9627
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9628
	// webkit enumerates style porperties
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9629
	if (style && style.length && style[0] && style[style[0]]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9630
		var len = style.length;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9631
		while (len--) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9632
			key = style[len];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9633
			if (typeof style[key] == 'string') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9634
				camelCase = key.replace(/\-(\w)/g, function(all, letter){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9635
					return letter.toUpperCase();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9636
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9637
				newStyle[camelCase] = style[key];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9638
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9639
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9640
	} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9641
		for (key in style) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9642
			if (typeof style[key] === 'string') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9643
				newStyle[key] = style[key];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9644
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9645
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9646
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9647
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9648
	return newStyle;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9649
}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9650
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9651
function filterStyles(styles) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9652
	var name, value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9653
	for (name in styles) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9654
		value = styles[name];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9655
		if (
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9656
			// ignore null and undefined values
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9657
			value == null ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9658
			// ignore functions (when does this occur?)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9659
			$.isFunction(value) ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9660
			// shorthand styles that need to be expanded
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9661
			name in shorthandStyles ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9662
			// ignore scrollbars (break in IE)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9663
			(/scrollbar/).test(name) ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9664
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9665
			// only colors or values that can be converted to numbers
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9666
			(!(/color/i).test(name) && isNaN(parseFloat(value)))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9667
		) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9668
			delete styles[name];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9669
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9670
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9671
	
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9672
	return styles;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9673
}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9674
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9675
function styleDifference(oldStyle, newStyle) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9676
	var diff = { _: 0 }, // http://dev.jquery.com/ticket/5459
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9677
		name;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9678
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9679
	for (name in newStyle) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9680
		if (oldStyle[name] != newStyle[name]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9681
			diff[name] = newStyle[name];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9682
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9683
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9684
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9685
	return diff;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9686
}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9687
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9688
$.effects.animateClass = function(value, duration, easing, callback) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9689
	if ($.isFunction(easing)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9690
		callback = easing;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9691
		easing = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9692
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9693
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9694
	return this.each(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9695
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9696
		var that = $(this),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9697
			originalStyleAttr = that.attr('style') || ' ',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9698
			originalStyle = filterStyles(getElementStyles.call(this)),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9699
			newStyle,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9700
			className = that.attr('className');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9701
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9702
		$.each(classAnimationActions, function(i, action) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9703
			if (value[action]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9704
				that[action + 'Class'](value[action]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9705
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9706
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9707
		newStyle = filterStyles(getElementStyles.call(this));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9708
		that.attr('className', className);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9709
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9710
		that.animate(styleDifference(originalStyle, newStyle), duration, easing, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9711
			$.each(classAnimationActions, function(i, action) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9712
				if (value[action]) { that[action + 'Class'](value[action]); }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9713
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9714
			// work around bug in IE by clearing the cssText before setting it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9715
			if (typeof that.attr('style') == 'object') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9716
				that.attr('style').cssText = '';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9717
				that.attr('style').cssText = originalStyleAttr;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9718
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9719
				that.attr('style', originalStyleAttr);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9720
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9721
			if (callback) { callback.apply(this, arguments); }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9722
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9723
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9724
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9725
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9726
$.fn.extend({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9727
	_addClass: $.fn.addClass,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9728
	addClass: function(classNames, speed, easing, callback) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9729
		return speed ? $.effects.animateClass.apply(this, [{ add: classNames },speed,easing,callback]) : this._addClass(classNames);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9730
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9731
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9732
	_removeClass: $.fn.removeClass,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9733
	removeClass: function(classNames,speed,easing,callback) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9734
		return speed ? $.effects.animateClass.apply(this, [{ remove: classNames },speed,easing,callback]) : this._removeClass(classNames);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9735
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9736
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9737
	_toggleClass: $.fn.toggleClass,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9738
	toggleClass: function(classNames, force, speed, easing, callback) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9739
		if ( typeof force == "boolean" || force === undefined ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9740
			if ( !speed ) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9741
				// without speed parameter;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9742
				return this._toggleClass(classNames, force);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9743
			} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9744
				return $.effects.animateClass.apply(this, [(force?{add:classNames}:{remove:classNames}),speed,easing,callback]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9745
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9746
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9747
			// without switch parameter;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9748
			return $.effects.animateClass.apply(this, [{ toggle: classNames },force,speed,easing]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9749
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9750
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9751
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9752
	switchClass: function(remove,add,speed,easing,callback) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9753
		return $.effects.animateClass.apply(this, [{ add: add, remove: remove },speed,easing,callback]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9754
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9755
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9756
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9757
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9758
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9759
/******************************************************************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9760
/*********************************** EFFECTS **********************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9761
/******************************************************************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9762
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9763
$.extend($.effects, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9764
	version: "1.8.1",
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9765
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9766
	// Saves a set of properties in a data storage
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9767
	save: function(element, set) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9768
		for(var i=0; i < set.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9769
			if(set[i] !== null) element.data("ec.storage."+set[i], element[0].style[set[i]]);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9770
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9771
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9772
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9773
	// Restores a set of previously saved properties from a data storage
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9774
	restore: function(element, set) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9775
		for(var i=0; i < set.length; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9776
			if(set[i] !== null) element.css(set[i], element.data("ec.storage."+set[i]));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9777
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9778
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9779
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9780
	setMode: function(el, mode) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9781
		if (mode == 'toggle') mode = el.is(':hidden') ? 'show' : 'hide'; // Set for toggle
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9782
		return mode;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9783
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9784
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9785
	getBaseline: function(origin, original) { // Translates a [top,left] array into a baseline value
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9786
		// this should be a little more flexible in the future to handle a string & hash
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9787
		var y, x;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9788
		switch (origin[0]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9789
			case 'top': y = 0; break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9790
			case 'middle': y = 0.5; break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9791
			case 'bottom': y = 1; break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9792
			default: y = origin[0] / original.height;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9793
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9794
		switch (origin[1]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9795
			case 'left': x = 0; break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9796
			case 'center': x = 0.5; break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9797
			case 'right': x = 1; break;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9798
			default: x = origin[1] / original.width;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9799
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9800
		return {x: x, y: y};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9801
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9802
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9803
	// Wraps the element around a wrapper that copies position properties
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9804
	createWrapper: function(element) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9805
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9806
		// if the element is already wrapped, return it
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9807
		if (element.parent().is('.ui-effects-wrapper')) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9808
			return element.parent();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9809
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9810
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9811
		// wrap the element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9812
		var props = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9813
				width: element.outerWidth(true),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9814
				height: element.outerHeight(true),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9815
				'float': element.css('float')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9816
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9817
			wrapper = $('<div></div>')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9818
				.addClass('ui-effects-wrapper')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9819
				.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9820
					fontSize: '100%',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9821
					background: 'transparent',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9822
					border: 'none',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9823
					margin: 0,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9824
					padding: 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9825
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9826
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9827
		element.wrap(wrapper);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9828
		wrapper = element.parent(); //Hotfix for jQuery 1.4 since some change in wrap() seems to actually loose the reference to the wrapped element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9829
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9830
		// transfer positioning properties to the wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9831
		if (element.css('position') == 'static') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9832
			wrapper.css({ position: 'relative' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9833
			element.css({ position: 'relative' });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9834
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9835
			$.extend(props, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9836
				position: element.css('position'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9837
				zIndex: element.css('z-index')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9838
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9839
			$.each(['top', 'left', 'bottom', 'right'], function(i, pos) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9840
				props[pos] = element.css(pos);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9841
				if (isNaN(parseInt(props[pos], 10))) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9842
					props[pos] = 'auto';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9843
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9844
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9845
			element.css({position: 'relative', top: 0, left: 0 });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9846
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9847
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9848
		return wrapper.css(props).show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9849
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9850
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9851
	removeWrapper: function(element) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9852
		if (element.parent().is('.ui-effects-wrapper'))
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9853
			return element.parent().replaceWith(element);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9854
		return element;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9855
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9856
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9857
	setTransition: function(element, list, factor, value) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9858
		value = value || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9859
		$.each(list, function(i, x){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9860
			unit = element.cssUnit(x);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9861
			if (unit[0] > 0) value[x] = unit[0] * factor + unit[1];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9862
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9863
		return value;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9864
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9865
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9866
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9867
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9868
function _normalizeArguments(effect, options, speed, callback) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9869
	// shift params for method overloading
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9870
	if (typeof effect == 'object') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9871
		callback = options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9872
		speed = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9873
		options = effect;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9874
		effect = options.effect;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9875
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9876
	if ($.isFunction(options)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9877
		callback = options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9878
		speed = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9879
		options = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9880
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9881
	if ($.isFunction(speed)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9882
		callback = speed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9883
		speed = null;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9884
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9885
	if (typeof options == 'number' || $.fx.speeds[options]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9886
		callback = speed;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9887
		speed = options;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9888
		options = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9889
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9890
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9891
	options = options || {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9892
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9893
	speed = speed || options.duration;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9894
	speed = $.fx.off ? 0 : typeof speed == 'number'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9895
		? speed : $.fx.speeds[speed] || $.fx.speeds._default;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9896
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9897
	callback = callback || options.complete;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9898
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9899
	return [effect, options, speed, callback];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9900
}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9901
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9902
$.fn.extend({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9903
	effect: function(effect, options, speed, callback) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9904
		var args = _normalizeArguments.apply(this, arguments),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9905
			// TODO: make effects takes actual parameters instead of a hash
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9906
			args2 = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9907
				options: args[1],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9908
				duration: args[2],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9909
				callback: args[3]
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9910
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9911
			effectMethod = $.effects[effect];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9912
		
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9913
		return effectMethod && !$.fx.off ? effectMethod.call(this, args2) : this;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9914
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9915
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9916
	_show: $.fn.show,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9917
	show: function(speed) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9918
		if (!speed || typeof speed == 'number' || $.fx.speeds[speed]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9919
			return this._show.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9920
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9921
			var args = _normalizeArguments.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9922
			args[1].mode = 'show';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9923
			return this.effect.apply(this, args);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9924
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9925
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9926
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9927
	_hide: $.fn.hide,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9928
	hide: function(speed) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9929
		if (!speed || typeof speed == 'number' || $.fx.speeds[speed]) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9930
			return this._hide.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9931
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9932
			var args = _normalizeArguments.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9933
			args[1].mode = 'hide';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9934
			return this.effect.apply(this, args);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9935
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9936
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9937
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9938
	// jQuery core overloads toggle and create _toggle
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9939
	__toggle: $.fn.toggle,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9940
	toggle: function(speed) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9941
		if (!speed || typeof speed == 'number' || $.fx.speeds[speed] ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9942
			typeof speed == 'boolean' || $.isFunction(speed)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9943
			return this.__toggle.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9944
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9945
			var args = _normalizeArguments.apply(this, arguments);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9946
			args[1].mode = 'toggle';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9947
			return this.effect.apply(this, args);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9948
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9949
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9950
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9951
	// helper functions
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9952
	cssUnit: function(key) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9953
		var style = this.css(key), val = [];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9954
		$.each( ['em','px','%','pt'], function(i, unit){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9955
			if(style.indexOf(unit) > 0)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9956
				val = [parseFloat(style), unit];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9957
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9958
		return val;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9959
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9960
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9961
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9962
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9963
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9964
/******************************************************************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9965
/*********************************** EASING ***********************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9966
/******************************************************************************/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9967
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9968
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9969
 * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9970
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9971
 * Uses the built in easing capabilities added In jQuery 1.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9972
 * to offer multiple easing options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9973
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9974
 * TERMS OF USE - jQuery Easing
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9975
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9976
 * Open source under the BSD License.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9977
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9978
 * Copyright 2008 George McGinley Smith
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9979
 * All rights reserved.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9980
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9981
 * Redistribution and use in source and binary forms, with or without modification,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9982
 * are permitted provided that the following conditions are met:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9983
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9984
 * Redistributions of source code must retain the above copyright notice, this list of
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9985
 * conditions and the following disclaimer.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9986
 * Redistributions in binary form must reproduce the above copyright notice, this list
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9987
 * of conditions and the following disclaimer in the documentation and/or other materials
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9988
 * provided with the distribution.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9989
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9990
 * Neither the name of the author nor the names of contributors may be used to endorse
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9991
 * or promote products derived from this software without specific prior written permission.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9992
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9993
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9994
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9995
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9996
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9997
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9998
 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
  9999
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10000
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10001
 * OF THE POSSIBILITY OF SUCH DAMAGE.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10002
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10003
*/
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10004
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10005
// t: current time, b: begInnIng value, c: change In value, d: duration
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10006
$.easing.jswing = $.easing.swing;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10007
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10008
$.extend($.easing,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10009
{
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10010
	def: 'easeOutQuad',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10011
	swing: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10012
		//alert($.easing.default);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10013
		return $.easing[$.easing.def](x, t, b, c, d);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10014
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10015
	easeInQuad: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10016
		return c*(t/=d)*t + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10017
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10018
	easeOutQuad: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10019
		return -c *(t/=d)*(t-2) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10020
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10021
	easeInOutQuad: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10022
		if ((t/=d/2) < 1) return c/2*t*t + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10023
		return -c/2 * ((--t)*(t-2) - 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10024
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10025
	easeInCubic: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10026
		return c*(t/=d)*t*t + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10027
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10028
	easeOutCubic: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10029
		return c*((t=t/d-1)*t*t + 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10030
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10031
	easeInOutCubic: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10032
		if ((t/=d/2) < 1) return c/2*t*t*t + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10033
		return c/2*((t-=2)*t*t + 2) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10034
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10035
	easeInQuart: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10036
		return c*(t/=d)*t*t*t + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10037
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10038
	easeOutQuart: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10039
		return -c * ((t=t/d-1)*t*t*t - 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10040
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10041
	easeInOutQuart: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10042
		if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10043
		return -c/2 * ((t-=2)*t*t*t - 2) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10044
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10045
	easeInQuint: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10046
		return c*(t/=d)*t*t*t*t + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10047
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10048
	easeOutQuint: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10049
		return c*((t=t/d-1)*t*t*t*t + 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10050
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10051
	easeInOutQuint: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10052
		if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10053
		return c/2*((t-=2)*t*t*t*t + 2) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10054
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10055
	easeInSine: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10056
		return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10057
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10058
	easeOutSine: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10059
		return c * Math.sin(t/d * (Math.PI/2)) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10060
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10061
	easeInOutSine: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10062
		return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10063
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10064
	easeInExpo: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10065
		return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10066
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10067
	easeOutExpo: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10068
		return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10069
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10070
	easeInOutExpo: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10071
		if (t==0) return b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10072
		if (t==d) return b+c;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10073
		if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10074
		return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10075
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10076
	easeInCirc: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10077
		return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10078
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10079
	easeOutCirc: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10080
		return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10081
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10082
	easeInOutCirc: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10083
		if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10084
		return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10085
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10086
	easeInElastic: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10087
		var s=1.70158;var p=0;var a=c;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10088
		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10089
		if (a < Math.abs(c)) { a=c; var s=p/4; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10090
		else var s = p/(2*Math.PI) * Math.asin (c/a);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10091
		return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10092
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10093
	easeOutElastic: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10094
		var s=1.70158;var p=0;var a=c;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10095
		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10096
		if (a < Math.abs(c)) { a=c; var s=p/4; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10097
		else var s = p/(2*Math.PI) * Math.asin (c/a);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10098
		return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10099
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10100
	easeInOutElastic: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10101
		var s=1.70158;var p=0;var a=c;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10102
		if (t==0) return b;  if ((t/=d/2)==2) return b+c;  if (!p) p=d*(.3*1.5);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10103
		if (a < Math.abs(c)) { a=c; var s=p/4; }
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10104
		else var s = p/(2*Math.PI) * Math.asin (c/a);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10105
		if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10106
		return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10107
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10108
	easeInBack: function (x, t, b, c, d, s) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10109
		if (s == undefined) s = 1.70158;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10110
		return c*(t/=d)*t*((s+1)*t - s) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10111
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10112
	easeOutBack: function (x, t, b, c, d, s) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10113
		if (s == undefined) s = 1.70158;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10114
		return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10115
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10116
	easeInOutBack: function (x, t, b, c, d, s) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10117
		if (s == undefined) s = 1.70158;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10118
		if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10119
		return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10120
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10121
	easeInBounce: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10122
		return c - $.easing.easeOutBounce (x, d-t, 0, c, d) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10123
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10124
	easeOutBounce: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10125
		if ((t/=d) < (1/2.75)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10126
			return c*(7.5625*t*t) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10127
		} else if (t < (2/2.75)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10128
			return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10129
		} else if (t < (2.5/2.75)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10130
			return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10131
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10132
			return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10133
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10134
	},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10135
	easeInOutBounce: function (x, t, b, c, d) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10136
		if (t < d/2) return $.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10137
		return $.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10138
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10139
});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10140
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10141
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10142
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10143
 * TERMS OF USE - EASING EQUATIONS
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10144
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10145
 * Open source under the BSD License.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10146
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10147
 * Copyright 2001 Robert Penner
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10148
 * All rights reserved.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10149
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10150
 * Redistribution and use in source and binary forms, with or without modification,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10151
 * are permitted provided that the following conditions are met:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10152
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10153
 * Redistributions of source code must retain the above copyright notice, this list of
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10154
 * conditions and the following disclaimer.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10155
 * Redistributions in binary form must reproduce the above copyright notice, this list
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10156
 * of conditions and the following disclaimer in the documentation and/or other materials
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10157
 * provided with the distribution.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10158
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10159
 * Neither the name of the author nor the names of contributors may be used to endorse
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10160
 * or promote products derived from this software without specific prior written permission.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10161
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10162
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10163
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10164
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10165
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10166
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10167
 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10168
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10169
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10170
 * OF THE POSSIBILITY OF SUCH DAMAGE.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10171
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10172
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10173
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10174
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10175
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10176
 * jQuery UI Effects Blind 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10177
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10178
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10179
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10180
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10181
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10182
 * http://docs.jquery.com/UI/Effects/Blind
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10183
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10184
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10185
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10186
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10187
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10188
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10189
$.effects.blind = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10190
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10191
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10192
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10193
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10194
		var el = $(this), props = ['position','top','left'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10195
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10196
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10197
		var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10198
		var direction = o.options.direction || 'vertical'; // Default direction
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10199
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10200
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10201
		$.effects.save(el, props); el.show(); // Save & Show
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10202
		var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10203
		var ref = (direction == 'vertical') ? 'height' : 'width';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10204
		var distance = (direction == 'vertical') ? wrapper.height() : wrapper.width();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10205
		if(mode == 'show') wrapper.css(ref, 0); // Shift
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10206
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10207
		// Animation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10208
		var animation = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10209
		animation[ref] = mode == 'show' ? distance : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10210
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10211
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10212
		wrapper.animate(animation, o.duration, o.options.easing, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10213
			if(mode == 'hide') el.hide(); // Hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10214
			$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10215
			if(o.callback) o.callback.apply(el[0], arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10216
			el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10217
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10218
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10219
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10220
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10221
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10222
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10223
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10224
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10225
 * jQuery UI Effects Bounce 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10226
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10227
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10228
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10229
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10230
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10231
 * http://docs.jquery.com/UI/Effects/Bounce
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10232
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10233
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10234
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10235
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10236
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10237
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10238
$.effects.bounce = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10239
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10240
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10241
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10242
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10243
		var el = $(this), props = ['position','top','left'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10244
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10245
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10246
		var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10247
		var direction = o.options.direction || 'up'; // Default direction
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10248
		var distance = o.options.distance || 20; // Default distance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10249
		var times = o.options.times || 5; // Default # of times
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10250
		var speed = o.duration || 250; // Default speed per bounce
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10251
		if (/show|hide/.test(mode)) props.push('opacity'); // Avoid touching opacity to prevent clearType and PNG issues in IE
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10252
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10253
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10254
		$.effects.save(el, props); el.show(); // Save & Show
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10255
		$.effects.createWrapper(el); // Create Wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10256
		var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10257
		var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10258
		var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 3 : el.outerWidth({margin:true}) / 3);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10259
		if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10260
		if (mode == 'hide') distance = distance / (times * 2);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10261
		if (mode != 'hide') times--;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10262
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10263
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10264
		if (mode == 'show') { // Show Bounce
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10265
			var animation = {opacity: 1};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10266
			animation[ref] = (motion == 'pos' ? '+=' : '-=') + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10267
			el.animate(animation, speed / 2, o.options.easing);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10268
			distance = distance / 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10269
			times--;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10270
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10271
		for (var i = 0; i < times; i++) { // Bounces
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10272
			var animation1 = {}, animation2 = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10273
			animation1[ref] = (motion == 'pos' ? '-=' : '+=') + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10274
			animation2[ref] = (motion == 'pos' ? '+=' : '-=') + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10275
			el.animate(animation1, speed / 2, o.options.easing).animate(animation2, speed / 2, o.options.easing);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10276
			distance = (mode == 'hide') ? distance * 2 : distance / 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10277
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10278
		if (mode == 'hide') { // Last Bounce
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10279
			var animation = {opacity: 0};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10280
			animation[ref] = (motion == 'pos' ? '-=' : '+=')  + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10281
			el.animate(animation, speed / 2, o.options.easing, function(){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10282
				el.hide(); // Hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10283
				$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10284
				if(o.callback) o.callback.apply(this, arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10285
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10286
		} else {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10287
			var animation1 = {}, animation2 = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10288
			animation1[ref] = (motion == 'pos' ? '-=' : '+=') + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10289
			animation2[ref] = (motion == 'pos' ? '+=' : '-=') + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10290
			el.animate(animation1, speed / 2, o.options.easing).animate(animation2, speed / 2, o.options.easing, function(){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10291
				$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10292
				if(o.callback) o.callback.apply(this, arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10293
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10294
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10295
		el.queue('fx', function() { el.dequeue(); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10296
		el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10297
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10298
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10299
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10300
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10301
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10302
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10303
 * jQuery UI Effects Clip 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10304
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10305
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10306
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10307
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10308
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10309
 * http://docs.jquery.com/UI/Effects/Clip
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10310
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10311
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10312
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10313
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10314
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10315
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10316
$.effects.clip = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10317
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10318
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10319
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10320
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10321
		var el = $(this), props = ['position','top','left','height','width'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10322
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10323
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10324
		var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10325
		var direction = o.options.direction || 'vertical'; // Default direction
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10326
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10327
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10328
		$.effects.save(el, props); el.show(); // Save & Show
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10329
		var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10330
		var animate = el[0].tagName == 'IMG' ? wrapper : el;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10331
		var ref = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10332
			size: (direction == 'vertical') ? 'height' : 'width',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10333
			position: (direction == 'vertical') ? 'top' : 'left'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10334
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10335
		var distance = (direction == 'vertical') ? animate.height() : animate.width();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10336
		if(mode == 'show') { animate.css(ref.size, 0); animate.css(ref.position, distance / 2); } // Shift
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10337
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10338
		// Animation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10339
		var animation = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10340
		animation[ref.size] = mode == 'show' ? distance : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10341
		animation[ref.position] = mode == 'show' ? 0 : distance / 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10342
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10343
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10344
		animate.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10345
			if(mode == 'hide') el.hide(); // Hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10346
			$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10347
			if(o.callback) o.callback.apply(el[0], arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10348
			el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10349
		}});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10350
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10351
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10352
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10353
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10354
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10355
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10356
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10357
 * jQuery UI Effects Drop 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10358
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10359
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10360
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10361
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10362
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10363
 * http://docs.jquery.com/UI/Effects/Drop
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10364
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10365
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10366
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10367
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10368
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10369
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10370
$.effects.drop = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10371
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10372
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10373
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10374
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10375
		var el = $(this), props = ['position','top','left','opacity'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10376
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10377
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10378
		var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10379
		var direction = o.options.direction || 'left'; // Default Direction
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10380
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10381
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10382
		$.effects.save(el, props); el.show(); // Save & Show
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10383
		$.effects.createWrapper(el); // Create Wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10384
		var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10385
		var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10386
		var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 2 : el.outerWidth({margin:true}) / 2);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10387
		if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10388
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10389
		// Animation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10390
		var animation = {opacity: mode == 'show' ? 1 : 0};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10391
		animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10392
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10393
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10394
		el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10395
			if(mode == 'hide') el.hide(); // Hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10396
			$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10397
			if(o.callback) o.callback.apply(this, arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10398
			el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10399
		}});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10400
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10401
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10402
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10403
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10404
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10405
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10406
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10407
 * jQuery UI Effects Explode 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10408
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10409
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10410
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10411
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10412
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10413
 * http://docs.jquery.com/UI/Effects/Explode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10414
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10415
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10416
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10417
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10418
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10419
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10420
$.effects.explode = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10421
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10422
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10423
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10424
	var rows = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10425
	var cells = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10426
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10427
	o.options.mode = o.options.mode == 'toggle' ? ($(this).is(':visible') ? 'hide' : 'show') : o.options.mode;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10428
	var el = $(this).show().css('visibility', 'hidden');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10429
	var offset = el.offset();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10430
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10431
	//Substract the margins - not fixing the problem yet.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10432
	offset.top -= parseInt(el.css("marginTop"),10) || 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10433
	offset.left -= parseInt(el.css("marginLeft"),10) || 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10434
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10435
	var width = el.outerWidth(true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10436
	var height = el.outerHeight(true);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10437
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10438
	for(var i=0;i<rows;i++) { // =
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10439
		for(var j=0;j<cells;j++) { // ||
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10440
			el
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10441
				.clone()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10442
				.appendTo('body')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10443
				.wrap('<div></div>')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10444
				.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10445
					position: 'absolute',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10446
					visibility: 'visible',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10447
					left: -j*(width/cells),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10448
					top: -i*(height/rows)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10449
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10450
				.parent()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10451
				.addClass('ui-effects-explode')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10452
				.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10453
					position: 'absolute',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10454
					overflow: 'hidden',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10455
					width: width/cells,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10456
					height: height/rows,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10457
					left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? (j-Math.floor(cells/2))*(width/cells) : 0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10458
					top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? (i-Math.floor(rows/2))*(height/rows) : 0),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10459
					opacity: o.options.mode == 'show' ? 0 : 1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10460
				}).animate({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10461
					left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? 0 : (j-Math.floor(cells/2))*(width/cells)),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10462
					top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? 0 : (i-Math.floor(rows/2))*(height/rows)),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10463
					opacity: o.options.mode == 'show' ? 1 : 0
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10464
				}, o.duration || 500);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10465
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10466
	}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10467
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10468
	// Set a timeout, to call the callback approx. when the other animations have finished
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10469
	setTimeout(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10470
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10471
		o.options.mode == 'show' ? el.css({ visibility: 'visible' }) : el.css({ visibility: 'visible' }).hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10472
				if(o.callback) o.callback.apply(el[0]); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10473
				el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10474
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10475
				$('div.ui-effects-explode').remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10476
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10477
	}, o.duration || 500);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10478
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10479
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10480
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10481
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10482
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10483
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10484
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10485
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10486
 * jQuery UI Effects Fold 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10487
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10488
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10489
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10490
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10491
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10492
 * http://docs.jquery.com/UI/Effects/Fold
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10493
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10494
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10495
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10496
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10497
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10498
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10499
$.effects.fold = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10500
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10501
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10502
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10503
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10504
		var el = $(this), props = ['position','top','left'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10505
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10506
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10507
		var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10508
		var size = o.options.size || 15; // Default fold size
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10509
		var horizFirst = !(!o.options.horizFirst); // Ensure a boolean value
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10510
		var duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10511
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10512
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10513
		$.effects.save(el, props); el.show(); // Save & Show
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10514
		var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10515
		var widthFirst = ((mode == 'show') != horizFirst);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10516
		var ref = widthFirst ? ['width', 'height'] : ['height', 'width'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10517
		var distance = widthFirst ? [wrapper.width(), wrapper.height()] : [wrapper.height(), wrapper.width()];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10518
		var percent = /([0-9]+)%/.exec(size);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10519
		if(percent) size = parseInt(percent[1],10) / 100 * distance[mode == 'hide' ? 0 : 1];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10520
		if(mode == 'show') wrapper.css(horizFirst ? {height: 0, width: size} : {height: size, width: 0}); // Shift
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10521
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10522
		// Animation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10523
		var animation1 = {}, animation2 = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10524
		animation1[ref[0]] = mode == 'show' ? distance[0] : size;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10525
		animation2[ref[1]] = mode == 'show' ? distance[1] : 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10526
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10527
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10528
		wrapper.animate(animation1, duration, o.options.easing)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10529
		.animate(animation2, duration, o.options.easing, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10530
			if(mode == 'hide') el.hide(); // Hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10531
			$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10532
			if(o.callback) o.callback.apply(el[0], arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10533
			el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10534
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10535
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10536
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10537
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10538
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10539
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10540
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10541
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10542
 * jQuery UI Effects Highlight 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10543
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10544
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10545
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10546
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10547
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10548
 * http://docs.jquery.com/UI/Effects/Highlight
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10549
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10550
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10551
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10552
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10553
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10554
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10555
$.effects.highlight = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10556
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10557
		var elem = $(this),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10558
			props = ['backgroundImage', 'backgroundColor', 'opacity'],
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10559
			mode = $.effects.setMode(elem, o.options.mode || 'show'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10560
			animation = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10561
				backgroundColor: elem.css('backgroundColor')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10562
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10563
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10564
		if (mode == 'hide') {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10565
			animation.opacity = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10566
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10567
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10568
		$.effects.save(elem, props);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10569
		elem
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10570
			.show()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10571
			.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10572
				backgroundImage: 'none',
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10573
				backgroundColor: o.options.color || '#ffff99'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10574
			})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10575
			.animate(animation, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10576
				queue: false,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10577
				duration: o.duration,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10578
				easing: o.options.easing,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10579
				complete: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10580
					(mode == 'hide' && elem.hide());
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10581
					$.effects.restore(elem, props);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10582
					(mode == 'show' && !$.support.opacity && this.style.removeAttribute('filter'));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10583
					(o.callback && o.callback.apply(this, arguments));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10584
					elem.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10585
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10586
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10587
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10588
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10589
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10590
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10591
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10592
 * jQuery UI Effects Pulsate 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10593
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10594
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10595
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10596
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10597
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10598
 * http://docs.jquery.com/UI/Effects/Pulsate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10599
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10600
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10601
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10602
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10603
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10604
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10605
$.effects.pulsate = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10606
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10607
		var elem = $(this),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10608
			mode = $.effects.setMode(elem, o.options.mode || 'show');
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10609
			times = ((o.options.times || 5) * 2) - 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10610
			duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10611
			isVisible = elem.is(':visible'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10612
			animateTo = 0;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10613
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10614
		if (!isVisible) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10615
			elem.css('opacity', 0).show();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10616
			animateTo = 1;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10617
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10618
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10619
		if ((mode == 'hide' && isVisible) || (mode == 'show' && !isVisible)) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10620
			times--;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10621
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10622
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10623
		for (var i = 0; i < times; i++) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10624
			elem.animate({ opacity: animateTo }, duration, o.options.easing);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10625
			animateTo = (animateTo + 1) % 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10626
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10627
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10628
		elem.animate({ opacity: animateTo }, duration, o.options.easing, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10629
			if (animateTo == 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10630
				elem.hide();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10631
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10632
			(o.callback && o.callback.apply(this, arguments));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10633
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10634
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10635
		elem
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10636
			.queue('fx', function() { elem.dequeue(); })
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10637
			.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10638
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10639
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10640
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10641
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10642
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10643
 * jQuery UI Effects Scale 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10644
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10645
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10646
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10647
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10648
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10649
 * http://docs.jquery.com/UI/Effects/Scale
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10650
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10651
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10652
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10653
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10654
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10655
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10656
$.effects.puff = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10657
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10658
		var elem = $(this),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10659
			mode = $.effects.setMode(elem, o.options.mode || 'hide'),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10660
			percent = parseInt(o.options.percent, 10) || 150,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10661
			factor = percent / 100,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10662
			original = { height: elem.height(), width: elem.width() };
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10663
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10664
		$.extend(o.options, {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10665
			fade: true,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10666
			mode: mode,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10667
			percent: mode == 'hide' ? percent : 100,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10668
			from: mode == 'hide'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10669
				? original
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10670
				: {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10671
					height: original.height * factor,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10672
					width: original.width * factor
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10673
				}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10674
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10675
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10676
		elem.effect('scale', o.options, o.duration, o.callback);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10677
		elem.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10678
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10679
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10680
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10681
$.effects.scale = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10682
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10683
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10684
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10685
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10686
		var el = $(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10687
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10688
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10689
		var options = $.extend(true, {}, o.options);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10690
		var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10691
		var percent = parseInt(o.options.percent,10) || (parseInt(o.options.percent,10) == 0 ? 0 : (mode == 'hide' ? 0 : 100)); // Set default scaling percent
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10692
		var direction = o.options.direction || 'both'; // Set default axis
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10693
		var origin = o.options.origin; // The origin of the scaling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10694
		if (mode != 'effect') { // Set default origin and restore for show/hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10695
			options.origin = origin || ['middle','center'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10696
			options.restore = true;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10697
		}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10698
		var original = {height: el.height(), width: el.width()}; // Save original
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10699
		el.from = o.options.from || (mode == 'show' ? {height: 0, width: 0} : original); // Default from state
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10700
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10701
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10702
		var factor = { // Set scaling factor
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10703
			y: direction != 'horizontal' ? (percent / 100) : 1,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10704
			x: direction != 'vertical' ? (percent / 100) : 1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10705
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10706
		el.to = {height: original.height * factor.y, width: original.width * factor.x}; // Set to state
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10707
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10708
		if (o.options.fade) { // Fade option to support puff
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10709
			if (mode == 'show') {el.from.opacity = 0; el.to.opacity = 1;};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10710
			if (mode == 'hide') {el.from.opacity = 1; el.to.opacity = 0;};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10711
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10712
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10713
		// Animation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10714
		options.from = el.from; options.to = el.to; options.mode = mode;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10715
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10716
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10717
		el.effect('size', options, o.duration, o.callback);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10718
		el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10719
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10720
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10721
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10722
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10723
$.effects.size = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10724
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10725
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10726
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10727
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10728
		var el = $(this), props = ['position','top','left','width','height','overflow','opacity'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10729
		var props1 = ['position','top','left','overflow','opacity']; // Always restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10730
		var props2 = ['width','height','overflow']; // Copy for children
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10731
		var cProps = ['fontSize'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10732
		var vProps = ['borderTopWidth', 'borderBottomWidth', 'paddingTop', 'paddingBottom'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10733
		var hProps = ['borderLeftWidth', 'borderRightWidth', 'paddingLeft', 'paddingRight'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10734
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10735
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10736
		var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10737
		var restore = o.options.restore || false; // Default restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10738
		var scale = o.options.scale || 'both'; // Default scale mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10739
		var origin = o.options.origin; // The origin of the sizing
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10740
		var original = {height: el.height(), width: el.width()}; // Save original
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10741
		el.from = o.options.from || original; // Default from state
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10742
		el.to = o.options.to || original; // Default to state
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10743
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10744
		if (origin) { // Calculate baseline shifts
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10745
			var baseline = $.effects.getBaseline(origin, original);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10746
			el.from.top = (original.height - el.from.height) * baseline.y;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10747
			el.from.left = (original.width - el.from.width) * baseline.x;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10748
			el.to.top = (original.height - el.to.height) * baseline.y;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10749
			el.to.left = (original.width - el.to.width) * baseline.x;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10750
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10751
		var factor = { // Set scaling factor
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10752
			from: {y: el.from.height / original.height, x: el.from.width / original.width},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10753
			to: {y: el.to.height / original.height, x: el.to.width / original.width}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10754
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10755
		if (scale == 'box' || scale == 'both') { // Scale the css box
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10756
			if (factor.from.y != factor.to.y) { // Vertical props scaling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10757
				props = props.concat(vProps);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10758
				el.from = $.effects.setTransition(el, vProps, factor.from.y, el.from);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10759
				el.to = $.effects.setTransition(el, vProps, factor.to.y, el.to);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10760
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10761
			if (factor.from.x != factor.to.x) { // Horizontal props scaling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10762
				props = props.concat(hProps);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10763
				el.from = $.effects.setTransition(el, hProps, factor.from.x, el.from);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10764
				el.to = $.effects.setTransition(el, hProps, factor.to.x, el.to);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10765
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10766
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10767
		if (scale == 'content' || scale == 'both') { // Scale the content
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10768
			if (factor.from.y != factor.to.y) { // Vertical props scaling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10769
				props = props.concat(cProps);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10770
				el.from = $.effects.setTransition(el, cProps, factor.from.y, el.from);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10771
				el.to = $.effects.setTransition(el, cProps, factor.to.y, el.to);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10772
			};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10773
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10774
		$.effects.save(el, restore ? props : props1); el.show(); // Save & Show
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10775
		$.effects.createWrapper(el); // Create Wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10776
		el.css('overflow','hidden').css(el.from); // Shift
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10777
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10778
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10779
		if (scale == 'content' || scale == 'both') { // Scale the children
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10780
			vProps = vProps.concat(['marginTop','marginBottom']).concat(cProps); // Add margins/font-size
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10781
			hProps = hProps.concat(['marginLeft','marginRight']); // Add margins
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10782
			props2 = props.concat(vProps).concat(hProps); // Concat
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10783
			el.find("*[width]").each(function(){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10784
				child = $(this);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10785
				if (restore) $.effects.save(child, props2);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10786
				var c_original = {height: child.height(), width: child.width()}; // Save original
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10787
				child.from = {height: c_original.height * factor.from.y, width: c_original.width * factor.from.x};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10788
				child.to = {height: c_original.height * factor.to.y, width: c_original.width * factor.to.x};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10789
				if (factor.from.y != factor.to.y) { // Vertical props scaling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10790
					child.from = $.effects.setTransition(child, vProps, factor.from.y, child.from);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10791
					child.to = $.effects.setTransition(child, vProps, factor.to.y, child.to);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10792
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10793
				if (factor.from.x != factor.to.x) { // Horizontal props scaling
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10794
					child.from = $.effects.setTransition(child, hProps, factor.from.x, child.from);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10795
					child.to = $.effects.setTransition(child, hProps, factor.to.x, child.to);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10796
				};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10797
				child.css(child.from); // Shift children
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10798
				child.animate(child.to, o.duration, o.options.easing, function(){
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10799
					if (restore) $.effects.restore(child, props2); // Restore children
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10800
				}); // Animate children
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10801
			});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10802
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10803
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10804
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10805
		el.animate(el.to, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10806
			if (el.to.opacity === 0) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10807
				el.css('opacity', el.from.opacity);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10808
			}
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10809
			if(mode == 'hide') el.hide(); // Hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10810
			$.effects.restore(el, restore ? props : props1); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10811
			if(o.callback) o.callback.apply(this, arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10812
			el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10813
		}});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10814
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10815
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10816
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10817
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10818
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10819
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10820
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10821
 * jQuery UI Effects Shake 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10822
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10823
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10824
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10825
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10826
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10827
 * http://docs.jquery.com/UI/Effects/Shake
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10828
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10829
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10830
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10831
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10832
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10833
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10834
$.effects.shake = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10835
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10836
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10837
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10838
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10839
		var el = $(this), props = ['position','top','left'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10840
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10841
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10842
		var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10843
		var direction = o.options.direction || 'left'; // Default direction
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10844
		var distance = o.options.distance || 20; // Default distance
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10845
		var times = o.options.times || 3; // Default # of times
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10846
		var speed = o.duration || o.options.duration || 140; // Default speed per shake
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10847
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10848
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10849
		$.effects.save(el, props); el.show(); // Save & Show
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10850
		$.effects.createWrapper(el); // Create Wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10851
		var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10852
		var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10853
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10854
		// Animation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10855
		var animation = {}, animation1 = {}, animation2 = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10856
		animation[ref] = (motion == 'pos' ? '-=' : '+=')  + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10857
		animation1[ref] = (motion == 'pos' ? '+=' : '-=')  + distance * 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10858
		animation2[ref] = (motion == 'pos' ? '-=' : '+=')  + distance * 2;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10859
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10860
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10861
		el.animate(animation, speed, o.options.easing);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10862
		for (var i = 1; i < times; i++) { // Shakes
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10863
			el.animate(animation1, speed, o.options.easing).animate(animation2, speed, o.options.easing);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10864
		};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10865
		el.animate(animation1, speed, o.options.easing).
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10866
		animate(animation, speed / 2, o.options.easing, function(){ // Last shake
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10867
			$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10868
			if(o.callback) o.callback.apply(this, arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10869
		});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10870
		el.queue('fx', function() { el.dequeue(); });
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10871
		el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10872
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10873
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10874
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10875
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10876
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10877
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10878
 * jQuery UI Effects Slide 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10879
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10880
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10881
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10882
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10883
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10884
 * http://docs.jquery.com/UI/Effects/Slide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10885
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10886
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10887
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10888
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10889
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10890
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10891
$.effects.slide = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10892
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10893
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10894
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10895
		// Create element
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10896
		var el = $(this), props = ['position','top','left'];
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10897
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10898
		// Set options
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10899
		var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10900
		var direction = o.options.direction || 'left'; // Default Direction
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10901
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10902
		// Adjust
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10903
		$.effects.save(el, props); el.show(); // Save & Show
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10904
		$.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10905
		var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10906
		var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10907
		var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) : el.outerWidth({margin:true}));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10908
		if (mode == 'show') el.css(ref, motion == 'pos' ? -distance : distance); // Shift
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10909
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10910
		// Animation
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10911
		var animation = {};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10912
		animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance;
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10913
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10914
		// Animate
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10915
		el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10916
			if(mode == 'hide') el.hide(); // Hide
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10917
			$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10918
			if(o.callback) o.callback.apply(this, arguments); // Callback
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10919
			el.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10920
		}});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10921
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10922
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10923
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10924
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10925
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10926
})(jQuery);
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10927
/*
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10928
 * jQuery UI Effects Transfer 1.8.1
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10929
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10930
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10931
 * Dual licensed under the MIT (MIT-LICENSE.txt)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10932
 * and GPL (GPL-LICENSE.txt) licenses.
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10933
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10934
 * http://docs.jquery.com/UI/Effects/Transfer
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10935
 *
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10936
 * Depends:
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10937
 *	jquery.effects.core.js
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10938
 */
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10939
(function($) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10940
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10941
$.effects.transfer = function(o) {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10942
	return this.queue(function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10943
		var elem = $(this),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10944
			target = $(o.options.to),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10945
			endPosition = target.offset(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10946
			animation = {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10947
				top: endPosition.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10948
				left: endPosition.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10949
				height: target.innerHeight(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10950
				width: target.innerWidth()
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10951
			},
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10952
			startPosition = elem.offset(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10953
			transfer = $('<div class="ui-effects-transfer"></div>')
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10954
				.appendTo(document.body)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10955
				.addClass(o.options.className)
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10956
				.css({
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10957
					top: startPosition.top,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10958
					left: startPosition.left,
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10959
					height: elem.innerHeight(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10960
					width: elem.innerWidth(),
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10961
					position: 'absolute'
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10962
				})
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10963
				.animate(animation, o.duration, o.options.easing, function() {
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10964
					transfer.remove();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10965
					(o.callback && o.callback.apply(elem[0], arguments));
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10966
					elem.dequeue();
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10967
				});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10968
	});
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10969
};
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10970
2d6866072851 fichiers oublier dans le dernier commit
samuel huron <admin@cybunk.com>
parents:
diff changeset
 10971
})(jQuery);