jquery-rails 2.0.3 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of jquery-rails might be problematic. Click here for more details.

@@ -1,3 +1,10 @@
1
+ ## 2.1.0 (16 August 2012)
2
+
3
+ - Updated to latest jquery-ujs
4
+ - jQuery 1.8.0 compatibility
5
+ - Updated to jQuery 1.8.0
6
+ - Updated to jQuery UI 1.8.23
7
+
1
8
  ## 2.0.3 (16 August 2012)
2
9
 
3
10
  - Updated to latest jquery-ujs
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- jquery-rails (2.0.3)
4
+ jquery-rails (2.1.0)
5
5
  railties (>= 3.1.0, < 5.0)
6
6
  thor (~> 0.14)
7
7
 
data/README.md CHANGED
@@ -4,8 +4,8 @@ jQuery! For Rails! So great.
4
4
 
5
5
  This gem provides:
6
6
 
7
- * jQuery 1.7.2
8
- * jQuery UI 1.8.18 (javascript only)
7
+ * jQuery 1.8.0
8
+ * jQuery UI 1.8.23 (javascript only)
9
9
  * the jQuery UJS adapter
10
10
  * assert_select_jquery to test jQuery responses in Ruby tests
11
11
 
@@ -1,8 +1,8 @@
1
1
  module Jquery
2
2
  module Rails
3
- VERSION = "2.0.3"
4
- JQUERY_VERSION = "1.7.2"
5
- JQUERY_UI_VERSION = "1.8.18"
6
- JQUERY_UJS_VERSION = "8674fb14552d8c6e394da39dd352c68b25b78142"
3
+ VERSION = "2.1.0"
4
+ JQUERY_VERSION = "1.8.0"
5
+ JQUERY_UI_VERSION = "1.8.23"
6
+ JQUERY_UJS_VERSION = "12da9fc2f175c8e445413b15cf6b685deb271d6e"
7
7
  end
8
8
  end
@@ -1,12 +1,8 @@
1
- /*!
2
- * jQuery UI 1.8.18
3
- *
4
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5
- * Dual licensed under the MIT or GPL Version 2 licenses.
6
- * http://jquery.org/license
7
- *
8
- * http://docs.jquery.com/UI
9
- */
1
+ /*! jQuery UI - v1.8.23 - 2012-08-15
2
+ * https://github.com/jquery/jquery-ui
3
+ * Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.draggable.js, jquery.ui.droppable.js, jquery.ui.resizable.js, jquery.ui.selectable.js, jquery.ui.sortable.js, jquery.effects.core.js, jquery.effects.blind.js, jquery.effects.bounce.js, jquery.effects.clip.js, jquery.effects.drop.js, jquery.effects.explode.js, jquery.effects.fade.js, jquery.effects.fold.js, jquery.effects.highlight.js, jquery.effects.pulsate.js, jquery.effects.scale.js, jquery.effects.shake.js, jquery.effects.slide.js, jquery.effects.transfer.js, jquery.ui.accordion.js, jquery.ui.autocomplete.js, jquery.ui.button.js, jquery.ui.datepicker.js, jquery.ui.dialog.js, jquery.ui.position.js, jquery.ui.progressbar.js, jquery.ui.slider.js, jquery.ui.tabs.js
4
+ * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
5
+
10
6
  (function( $, undefined ) {
11
7
 
12
8
  // prevent duplicate loading
@@ -18,7 +14,7 @@ if ( $.ui.version ) {
18
14
  }
19
15
 
20
16
  $.extend( $.ui, {
21
- version: "1.8.18",
17
+ version: "1.8.23",
22
18
 
23
19
  keyCode: {
24
20
  ALT: 18,
@@ -131,49 +127,52 @@ $.fn.extend({
131
127
  }
132
128
  });
133
129
 
134
- $.each( [ "Width", "Height" ], function( i, name ) {
135
- var side = name === "Width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ],
136
- type = name.toLowerCase(),
137
- orig = {
138
- innerWidth: $.fn.innerWidth,
139
- innerHeight: $.fn.innerHeight,
140
- outerWidth: $.fn.outerWidth,
141
- outerHeight: $.fn.outerHeight
142
- };
143
-
144
- function reduce( elem, size, border, margin ) {
145
- $.each( side, function() {
146
- size -= parseFloat( $.curCSS( elem, "padding" + this, true) ) || 0;
147
- if ( border ) {
148
- size -= parseFloat( $.curCSS( elem, "border" + this + "Width", true) ) || 0;
149
- }
150
- if ( margin ) {
151
- size -= parseFloat( $.curCSS( elem, "margin" + this, true) ) || 0;
152
- }
153
- });
154
- return size;
155
- }
130
+ // support: jQuery <1.8
131
+ if ( !$( "<a>" ).outerWidth( 1 ).jquery ) {
132
+ $.each( [ "Width", "Height" ], function( i, name ) {
133
+ var side = name === "Width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ],
134
+ type = name.toLowerCase(),
135
+ orig = {
136
+ innerWidth: $.fn.innerWidth,
137
+ innerHeight: $.fn.innerHeight,
138
+ outerWidth: $.fn.outerWidth,
139
+ outerHeight: $.fn.outerHeight
140
+ };
156
141
 
157
- $.fn[ "inner" + name ] = function( size ) {
158
- if ( size === undefined ) {
159
- return orig[ "inner" + name ].call( this );
142
+ function reduce( elem, size, border, margin ) {
143
+ $.each( side, function() {
144
+ size -= parseFloat( $.curCSS( elem, "padding" + this, true) ) || 0;
145
+ if ( border ) {
146
+ size -= parseFloat( $.curCSS( elem, "border" + this + "Width", true) ) || 0;
147
+ }
148
+ if ( margin ) {
149
+ size -= parseFloat( $.curCSS( elem, "margin" + this, true) ) || 0;
150
+ }
151
+ });
152
+ return size;
160
153
  }
161
154
 
162
- return this.each(function() {
163
- $( this ).css( type, reduce( this, size ) + "px" );
164
- });
165
- };
155
+ $.fn[ "inner" + name ] = function( size ) {
156
+ if ( size === undefined ) {
157
+ return orig[ "inner" + name ].call( this );
158
+ }
166
159
 
167
- $.fn[ "outer" + name] = function( size, margin ) {
168
- if ( typeof size !== "number" ) {
169
- return orig[ "outer" + name ].call( this, size );
170
- }
160
+ return this.each(function() {
161
+ $( this ).css( type, reduce( this, size ) + "px" );
162
+ });
163
+ };
171
164
 
172
- return this.each(function() {
173
- $( this).css( type, reduce( this, size, true, margin ) + "px" );
174
- });
175
- };
176
- });
165
+ $.fn[ "outer" + name] = function( size, margin ) {
166
+ if ( typeof size !== "number" ) {
167
+ return orig[ "outer" + name ].call( this, size );
168
+ }
169
+
170
+ return this.each(function() {
171
+ $( this).css( type, reduce( this, size, true, margin ) + "px" );
172
+ });
173
+ };
174
+ });
175
+ }
177
176
 
178
177
  // selectors
179
178
  function focusable( element, isTabIndexNotNaN ) {
@@ -205,9 +204,16 @@ function visible( element ) {
205
204
  }
206
205
 
207
206
  $.extend( $.expr[ ":" ], {
208
- data: function( elem, i, match ) {
209
- return !!$.data( elem, match[ 3 ] );
210
- },
207
+ data: $.expr.createPseudo ?
208
+ $.expr.createPseudo(function( dataName ) {
209
+ return function( elem ) {
210
+ return !!$.data( elem, dataName );
211
+ };
212
+ }) :
213
+ // support: jQuery <1.8
214
+ function( elem, i, match ) {
215
+ return !!$.data( elem, match[ 3 ] );
216
+ },
211
217
 
212
218
  focusable: function( element ) {
213
219
  return focusable( element, !isNaN( $.attr( element, "tabindex" ) ) );
@@ -245,6 +251,11 @@ $(function() {
245
251
  body.removeChild( div ).style.display = "none";
246
252
  });
247
253
 
254
+ // jQuery <1.4.3 uses curCSS, in 1.4.3 - 1.7.2 curCSS = css, 1.8+ only has css
255
+ if ( !$.curCSS ) {
256
+ $.curCSS = $.css;
257
+ }
258
+
248
259
 
249
260
 
250
261
 
@@ -317,15 +328,7 @@ $.extend( $.ui, {
317
328
  });
318
329
 
319
330
  })( jQuery );
320
- /*!
321
- * jQuery UI Widget 1.8.18
322
- *
323
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
324
- * Dual licensed under the MIT or GPL Version 2 licenses.
325
- * http://jquery.org/license
326
- *
327
- * http://docs.jquery.com/UI/Widget
328
- */
331
+
329
332
  (function( $, undefined ) {
330
333
 
331
334
  // jQuery 1.4+
@@ -589,18 +592,7 @@ $.Widget.prototype = {
589
592
  };
590
593
 
591
594
  })( jQuery );
592
- /*!
593
- * jQuery UI Mouse 1.8.18
594
- *
595
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
596
- * Dual licensed under the MIT or GPL Version 2 licenses.
597
- * http://jquery.org/license
598
- *
599
- * http://docs.jquery.com/UI/Mouse
600
- *
601
- * Depends:
602
- * jquery.ui.widget.js
603
- */
595
+
604
596
  (function( $, undefined ) {
605
597
 
606
598
  var mouseHandled = false;
@@ -636,6 +628,11 @@ $.widget("ui.mouse", {
636
628
  // other instances of mouse
637
629
  _mouseDestroy: function() {
638
630
  this.element.unbind('.'+this.widgetName);
631
+ if ( this._mouseMoveDelegate ) {
632
+ $(document)
633
+ .unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate)
634
+ .unbind('mouseup.'+this.widgetName, this._mouseUpDelegate);
635
+ }
639
636
  },
640
637
 
641
638
  _mouseDown: function(event) {
@@ -751,20 +748,7 @@ $.widget("ui.mouse", {
751
748
  });
752
749
 
753
750
  })(jQuery);
754
- /*
755
- * jQuery UI Draggable 1.8.18
756
- *
757
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
758
- * Dual licensed under the MIT or GPL Version 2 licenses.
759
- * http://jquery.org/license
760
- *
761
- * http://docs.jquery.com/UI/Draggables
762
- *
763
- * Depends:
764
- * jquery.ui.core.js
765
- * jquery.ui.mouse.js
766
- * jquery.ui.widget.js
767
- */
751
+
768
752
  (function( $, undefined ) {
769
753
 
770
754
  $.widget("ui.draggable", $.ui.mouse, {
@@ -856,6 +840,8 @@ $.widget("ui.draggable", $.ui.mouse, {
856
840
  //Create and append the visible helper
857
841
  this.helper = this._createHelper(event);
858
842
 
843
+ this.helper.addClass("ui-draggable-dragging");
844
+
859
845
  //Cache the helper size
860
846
  this._cacheHelperProportions();
861
847
 
@@ -916,7 +902,7 @@ $.widget("ui.draggable", $.ui.mouse, {
916
902
  if ($.ui.ddmanager && !o.dropBehaviour)
917
903
  $.ui.ddmanager.prepareOffsets(this, event);
918
904
 
919
- this.helper.addClass("ui-draggable-dragging");
905
+
920
906
  this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position
921
907
 
922
908
  //If the ddmanager is used for droppables, inform the manager that dragging has started (see #5003)
@@ -961,8 +947,14 @@ $.widget("ui.draggable", $.ui.mouse, {
961
947
  this.dropped = false;
962
948
  }
963
949
 
964
- //if the original element is removed, don't bother to continue if helper is set to "original"
965
- if((!this.element[0] || !this.element[0].parentNode) && this.options.helper == "original")
950
+ //if the original element is no longer in the DOM don't bother to continue (see #8269)
951
+ var element = this.element[0], elementInDom = false;
952
+ while ( element && (element = element.parentNode) ) {
953
+ if (element == document ) {
954
+ elementInDom = true;
955
+ }
956
+ }
957
+ if ( !elementInDom && this.options.helper === "original" )
966
958
  return false;
967
959
 
968
960
  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))) {
@@ -1258,7 +1250,7 @@ $.widget("ui.draggable", $.ui.mouse, {
1258
1250
  });
1259
1251
 
1260
1252
  $.extend($.ui.draggable, {
1261
- version: "1.8.18"
1253
+ version: "1.8.23"
1262
1254
  });
1263
1255
 
1264
1256
  $.ui.plugin.add("draggable", "connectToSortable", {
@@ -1576,21 +1568,7 @@ $.ui.plugin.add("draggable", "zIndex", {
1576
1568
  });
1577
1569
 
1578
1570
  })(jQuery);
1579
- /*
1580
- * jQuery UI Droppable 1.8.18
1581
- *
1582
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
1583
- * Dual licensed under the MIT or GPL Version 2 licenses.
1584
- * http://jquery.org/license
1585
- *
1586
- * http://docs.jquery.com/UI/Droppables
1587
- *
1588
- * Depends:
1589
- * jquery.ui.core.js
1590
- * jquery.ui.widget.js
1591
- * jquery.ui.mouse.js
1592
- * jquery.ui.draggable.js
1593
- */
1571
+
1594
1572
  (function( $, undefined ) {
1595
1573
 
1596
1574
  $.widget("ui.droppable", {
@@ -1725,7 +1703,7 @@ $.widget("ui.droppable", {
1725
1703
  });
1726
1704
 
1727
1705
  $.extend($.ui.droppable, {
1728
- version: "1.8.18"
1706
+ version: "1.8.23"
1729
1707
  });
1730
1708
 
1731
1709
  $.ui.intersect = function(draggable, droppable, toleranceMode) {
@@ -1872,20 +1850,7 @@ $.ui.ddmanager = {
1872
1850
  };
1873
1851
 
1874
1852
  })(jQuery);
1875
- /*
1876
- * jQuery UI Resizable 1.8.18
1877
- *
1878
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
1879
- * Dual licensed under the MIT or GPL Version 2 licenses.
1880
- * http://jquery.org/license
1881
- *
1882
- * http://docs.jquery.com/UI/Resizables
1883
- *
1884
- * Depends:
1885
- * jquery.ui.core.js
1886
- * jquery.ui.mouse.js
1887
- * jquery.ui.widget.js
1888
- */
1853
+
1889
1854
  (function( $, undefined ) {
1890
1855
 
1891
1856
  $.widget("ui.resizable", $.ui.mouse, {
@@ -1972,9 +1937,8 @@ $.widget("ui.resizable", $.ui.mouse, {
1972
1937
  var handle = $.trim(n[i]), hname = 'ui-resizable-'+handle;
1973
1938
  var axis = $('<div class="ui-resizable-handle ' + hname + '"></div>');
1974
1939
 
1975
- // increase zIndex of sw, se, ne, nw axis
1976
- //TODO : this modifies original option
1977
- if(/sw|se|ne|nw/.test(handle)) axis.css({ zIndex: ++o.zIndex });
1940
+ // Apply zIndex to all handles - see #7960
1941
+ axis.css({ zIndex: o.zIndex });
1978
1942
 
1979
1943
  //TODO : What's going on here?
1980
1944
  if ('se' == handle) {
@@ -2415,7 +2379,7 @@ $.widget("ui.resizable", $.ui.mouse, {
2415
2379
  });
2416
2380
 
2417
2381
  $.extend($.ui.resizable, {
2418
- version: "1.8.18"
2382
+ version: "1.8.23"
2419
2383
  });
2420
2384
 
2421
2385
  /*
@@ -2565,13 +2529,13 @@ $.ui.plugin.add("resizable", "containment", {
2565
2529
 
2566
2530
  if (cp.left < (self._helper ? co.left : 0)) {
2567
2531
  self.size.width = self.size.width + (self._helper ? (self.position.left - co.left) : (self.position.left - cop.left));
2568
- if (pRatio) self.size.height = self.size.width / o.aspectRatio;
2532
+ if (pRatio) self.size.height = self.size.width / self.aspectRatio;
2569
2533
  self.position.left = o.helper ? co.left : 0;
2570
2534
  }
2571
2535
 
2572
2536
  if (cp.top < (self._helper ? co.top : 0)) {
2573
2537
  self.size.height = self.size.height + (self._helper ? (self.position.top - co.top) : self.position.top);
2574
- if (pRatio) self.size.width = self.size.height * o.aspectRatio;
2538
+ if (pRatio) self.size.width = self.size.height * self.aspectRatio;
2575
2539
  self.position.top = self._helper ? co.top : 0;
2576
2540
  }
2577
2541
 
@@ -2680,20 +2644,7 @@ var isNumber = function(value) {
2680
2644
  };
2681
2645
 
2682
2646
  })(jQuery);
2683
- /*
2684
- * jQuery UI Selectable 1.8.18
2685
- *
2686
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
2687
- * Dual licensed under the MIT or GPL Version 2 licenses.
2688
- * http://jquery.org/license
2689
- *
2690
- * http://docs.jquery.com/UI/Selectables
2691
- *
2692
- * Depends:
2693
- * jquery.ui.core.js
2694
- * jquery.ui.mouse.js
2695
- * jquery.ui.widget.js
2696
- */
2647
+
2697
2648
  (function( $, undefined ) {
2698
2649
 
2699
2650
  $.widget("ui.selectable", $.ui.mouse, {
@@ -2943,24 +2894,11 @@ $.widget("ui.selectable", $.ui.mouse, {
2943
2894
  });
2944
2895
 
2945
2896
  $.extend($.ui.selectable, {
2946
- version: "1.8.18"
2897
+ version: "1.8.23"
2947
2898
  });
2948
2899
 
2949
2900
  })(jQuery);
2950
- /*
2951
- * jQuery UI Sortable 1.8.18
2952
- *
2953
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
2954
- * Dual licensed under the MIT or GPL Version 2 licenses.
2955
- * http://jquery.org/license
2956
- *
2957
- * http://docs.jquery.com/UI/Sortables
2958
- *
2959
- * Depends:
2960
- * jquery.ui.core.js
2961
- * jquery.ui.mouse.js
2962
- * jquery.ui.widget.js
2963
- */
2901
+
2964
2902
  (function( $, undefined ) {
2965
2903
 
2966
2904
  $.widget("ui.sortable", $.ui.mouse, {
@@ -3104,11 +3042,6 @@ $.widget("ui.sortable", $.ui.mouse, {
3104
3042
  left: this.offset.left - this.margins.left
3105
3043
  };
3106
3044
 
3107
- // Only after we got the offset, we can change the helper's position to absolute
3108
- // TODO: Still need to figure out a way to make relative sorting possible
3109
- this.helper.css("position", "absolute");
3110
- this.cssPosition = this.helper.css("position");
3111
-
3112
3045
  $.extend(this.offset, {
3113
3046
  click: { //Where the click happened, relative to the element
3114
3047
  left: event.pageX - this.offset.left,
@@ -3118,6 +3051,11 @@ $.widget("ui.sortable", $.ui.mouse, {
3118
3051
  relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper
3119
3052
  });
3120
3053
 
3054
+ // Only after we got the offset, we can change the helper's position to absolute
3055
+ // TODO: Still need to figure out a way to make relative sorting possible
3056
+ this.helper.css("position", "absolute");
3057
+ this.cssPosition = this.helper.css("position");
3058
+
3121
3059
  //Generate the original position
3122
3060
  this.originalPosition = this._generatePosition(event);
3123
3061
  this.originalPageX = event.pageX;
@@ -3417,8 +3355,8 @@ $.widget("ui.sortable", $.ui.mouse, {
3417
3355
 
3418
3356
  _intersectsWithPointer: function(item) {
3419
3357
 
3420
- var isOverElementHeight = $.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, item.top, item.height),
3421
- isOverElementWidth = $.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, item.left, item.width),
3358
+ var isOverElementHeight = (this.options.axis === 'x') || $.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, item.top, item.height),
3359
+ isOverElementWidth = (this.options.axis === 'y') || $.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, item.left, item.width),
3422
3360
  isOverElement = isOverElementHeight && isOverElementWidth,
3423
3361
  verticalDirection = this._getDragVerticalDirection(),
3424
3362
  horizontalDirection = this._getDragHorizontalDirection();
@@ -3679,30 +3617,31 @@ $.widget("ui.sortable", $.ui.mouse, {
3679
3617
  if(this.containers.length === 1) {
3680
3618
  this.containers[innermostIndex]._trigger("over", event, this._uiHash(this));
3681
3619
  this.containers[innermostIndex].containerCache.over = 1;
3682
- } else if(this.currentContainer != this.containers[innermostIndex]) {
3683
-
3684
- //When entering a new container, we will find the item with the least distance and append our item near it
3685
- var dist = 10000; var itemWithLeastDistance = null; var base = this.positionAbs[this.containers[innermostIndex].floating ? 'left' : 'top'];
3686
- for (var j = this.items.length - 1; j >= 0; j--) {
3687
- if(!$.ui.contains(this.containers[innermostIndex].element[0], this.items[j].item[0])) continue;
3688
- var cur = this.items[j][this.containers[innermostIndex].floating ? 'left' : 'top'];
3689
- if(Math.abs(cur - base) < dist) {
3690
- dist = Math.abs(cur - base); itemWithLeastDistance = this.items[j];
3691
- }
3692
- }
3620
+ } else if(this.currentContainer != this.containers[innermostIndex]) {
3621
+
3622
+ //When entering a new container, we will find the item with the least distance and append our item near it
3623
+ var dist = 10000; var itemWithLeastDistance = null; var base = this.positionAbs[this.containers[innermostIndex].floating ? 'left' : 'top'];
3624
+ for (var j = this.items.length - 1; j >= 0; j--) {
3625
+ if(!$.ui.contains(this.containers[innermostIndex].element[0], this.items[j].item[0])) continue;
3626
+ var cur = this.containers[innermostIndex].floating ? this.items[j].item.offset().left : this.items[j].item.offset().top;
3627
+ if(Math.abs(cur - base) < dist) {
3628
+ dist = Math.abs(cur - base); itemWithLeastDistance = this.items[j];
3629
+ this.direction = (cur - base > 0) ? 'down' : 'up';
3630
+ }
3631
+ }
3693
3632
 
3694
- if(!itemWithLeastDistance && !this.options.dropOnEmpty) //Check if dropOnEmpty is enabled
3695
- return;
3633
+ if(!itemWithLeastDistance && !this.options.dropOnEmpty) //Check if dropOnEmpty is enabled
3634
+ return;
3696
3635
 
3697
- this.currentContainer = this.containers[innermostIndex];
3698
- itemWithLeastDistance ? this._rearrange(event, itemWithLeastDistance, null, true) : this._rearrange(event, null, this.containers[innermostIndex].element, true);
3699
- this._trigger("change", event, this._uiHash());
3700
- this.containers[innermostIndex]._trigger("change", event, this._uiHash(this));
3636
+ this.currentContainer = this.containers[innermostIndex];
3637
+ itemWithLeastDistance ? this._rearrange(event, itemWithLeastDistance, null, true) : this._rearrange(event, null, this.containers[innermostIndex].element, true);
3638
+ this._trigger("change", event, this._uiHash());
3639
+ this.containers[innermostIndex]._trigger("change", event, this._uiHash(this));
3701
3640
 
3702
- //Update the placeholder
3703
- this.options.placeholder.update(this.currentContainer, this.placeholder);
3704
-
3705
- this.containers[innermostIndex]._trigger("over", event, this._uiHash(this));
3641
+ //Update the placeholder
3642
+ this.options.placeholder.update(this.currentContainer, this.placeholder);
3643
+
3644
+ this.containers[innermostIndex]._trigger("over", event, this._uiHash(this));
3706
3645
  this.containers[innermostIndex].containerCache.over = 1;
3707
3646
  }
3708
3647
 
@@ -3982,6 +3921,8 @@ $.widget("ui.sortable", $.ui.mouse, {
3982
3921
  for (var i=0; i < delayedTriggers.length; i++) { delayedTriggers[i].call(this, event); }; //Trigger all delayed events
3983
3922
  this._trigger("stop", event, this._uiHash());
3984
3923
  }
3924
+
3925
+ this.fromOutside = false;
3985
3926
  return false;
3986
3927
  }
3987
3928
 
@@ -4024,19 +3965,11 @@ $.widget("ui.sortable", $.ui.mouse, {
4024
3965
  });
4025
3966
 
4026
3967
  $.extend($.ui.sortable, {
4027
- version: "1.8.18"
3968
+ version: "1.8.23"
4028
3969
  });
4029
3970
 
4030
3971
  })(jQuery);
4031
- /*
4032
- * jQuery UI Effects 1.8.18
4033
- *
4034
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
4035
- * Dual licensed under the MIT or GPL Version 2 licenses.
4036
- * http://jquery.org/license
4037
- *
4038
- * http://docs.jquery.com/UI/Effects/
4039
- */
3972
+
4040
3973
  ;jQuery.effects || (function($, undefined) {
4041
3974
 
4042
3975
  $.effects = {};
@@ -4105,7 +4038,8 @@ function getColor(elem, attr) {
4105
4038
  var color;
4106
4039
 
4107
4040
  do {
4108
- color = $.curCSS(elem, attr);
4041
+ // jQuery <1.4.3 uses curCSS, in 1.4.3 - 1.7.2 curCSS = css, 1.8+ only has css
4042
+ color = ($.curCSS || $.css)(elem, attr);
4109
4043
 
4110
4044
  // Keep going until we find an element that has color, or we hit the body
4111
4045
  if ( color != '' && color != 'transparent' || $.nodeName(elem, "body") )
@@ -4266,7 +4200,7 @@ $.effects.animateClass = function(value, duration, easing, callback) {
4266
4200
  originalStyleAttr = that.attr('style') || ' ',
4267
4201
  originalStyle = filterStyles(getElementStyles.call(this)),
4268
4202
  newStyle,
4269
- className = that.attr('class');
4203
+ className = that.attr('class') || "";
4270
4204
 
4271
4205
  $.each(classAnimationActions, function(i, action) {
4272
4206
  if (value[action]) {
@@ -4336,7 +4270,7 @@ $.fn.extend({
4336
4270
  /******************************************************************************/
4337
4271
 
4338
4272
  $.extend($.effects, {
4339
- version: "1.8.18",
4273
+ version: "1.8.23",
4340
4274
 
4341
4275
  // Saves a set of properties in a data storage
4342
4276
  save: function(element, set) {
@@ -4400,7 +4334,16 @@ $.extend($.effects, {
4400
4334
  }),
4401
4335
  active = document.activeElement;
4402
4336
 
4403
- element.wrap(wrapper);
4337
+ // support: Firefox
4338
+ // Firefox incorrectly exposes anonymous content
4339
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=561664
4340
+ try {
4341
+ active.id;
4342
+ } catch( e ) {
4343
+ active = document.body;
4344
+ }
4345
+
4346
+ element.wrap( wrapper );
4404
4347
 
4405
4348
  // Fixes #7595 - Elements lose focus when wrapped.
4406
4349
  if ( element[ 0 ] === active || $.contains( element[ 0 ], active ) ) {
@@ -4449,7 +4392,7 @@ $.extend($.effects, {
4449
4392
  setTransition: function(element, list, factor, value) {
4450
4393
  value = value || {};
4451
4394
  $.each(list, function(i, x){
4452
- unit = element.cssUnit(x);
4395
+ var unit = element.cssUnit(x);
4453
4396
  if (unit[0] > 0) value[x] = unit[0] * factor + unit[1];
4454
4397
  });
4455
4398
  return value;
@@ -4584,225 +4527,53 @@ $.fn.extend({
4584
4527
  /*********************************** EASING ***********************************/
4585
4528
  /******************************************************************************/
4586
4529
 
4587
- /*
4588
- * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
4589
- *
4590
- * Uses the built in easing capabilities added In jQuery 1.1
4591
- * to offer multiple easing options
4592
- *
4593
- * TERMS OF USE - jQuery Easing
4594
- *
4595
- * Open source under the BSD License.
4596
- *
4597
- * Copyright 2008 George McGinley Smith
4598
- * All rights reserved.
4599
- *
4600
- * Redistribution and use in source and binary forms, with or without modification,
4601
- * are permitted provided that the following conditions are met:
4602
- *
4603
- * Redistributions of source code must retain the above copyright notice, this list of
4604
- * conditions and the following disclaimer.
4605
- * Redistributions in binary form must reproduce the above copyright notice, this list
4606
- * of conditions and the following disclaimer in the documentation and/or other materials
4607
- * provided with the distribution.
4608
- *
4609
- * Neither the name of the author nor the names of contributors may be used to endorse
4610
- * or promote products derived from this software without specific prior written permission.
4611
- *
4612
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
4613
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
4614
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
4615
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
4616
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
4617
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
4618
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
4619
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
4620
- * OF THE POSSIBILITY OF SUCH DAMAGE.
4621
- *
4622
- */
4530
+ // based on easing equations from Robert Penner (http://www.robertpenner.com/easing)
4623
4531
 
4624
- // t: current time, b: begInnIng value, c: change In value, d: duration
4625
- $.easing.jswing = $.easing.swing;
4532
+ var baseEasings = {};
4626
4533
 
4627
- $.extend($.easing,
4628
- {
4629
- def: 'easeOutQuad',
4630
- swing: function (x, t, b, c, d) {
4631
- //alert($.easing.default);
4632
- return $.easing[$.easing.def](x, t, b, c, d);
4633
- },
4634
- easeInQuad: function (x, t, b, c, d) {
4635
- return c*(t/=d)*t + b;
4636
- },
4637
- easeOutQuad: function (x, t, b, c, d) {
4638
- return -c *(t/=d)*(t-2) + b;
4639
- },
4640
- easeInOutQuad: function (x, t, b, c, d) {
4641
- if ((t/=d/2) < 1) return c/2*t*t + b;
4642
- return -c/2 * ((--t)*(t-2) - 1) + b;
4643
- },
4644
- easeInCubic: function (x, t, b, c, d) {
4645
- return c*(t/=d)*t*t + b;
4646
- },
4647
- easeOutCubic: function (x, t, b, c, d) {
4648
- return c*((t=t/d-1)*t*t + 1) + b;
4649
- },
4650
- easeInOutCubic: function (x, t, b, c, d) {
4651
- if ((t/=d/2) < 1) return c/2*t*t*t + b;
4652
- return c/2*((t-=2)*t*t + 2) + b;
4653
- },
4654
- easeInQuart: function (x, t, b, c, d) {
4655
- return c*(t/=d)*t*t*t + b;
4656
- },
4657
- easeOutQuart: function (x, t, b, c, d) {
4658
- return -c * ((t=t/d-1)*t*t*t - 1) + b;
4659
- },
4660
- easeInOutQuart: function (x, t, b, c, d) {
4661
- if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
4662
- return -c/2 * ((t-=2)*t*t*t - 2) + b;
4663
- },
4664
- easeInQuint: function (x, t, b, c, d) {
4665
- return c*(t/=d)*t*t*t*t + b;
4666
- },
4667
- easeOutQuint: function (x, t, b, c, d) {
4668
- return c*((t=t/d-1)*t*t*t*t + 1) + b;
4669
- },
4670
- easeInOutQuint: function (x, t, b, c, d) {
4671
- if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
4672
- return c/2*((t-=2)*t*t*t*t + 2) + b;
4673
- },
4674
- easeInSine: function (x, t, b, c, d) {
4675
- return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
4676
- },
4677
- easeOutSine: function (x, t, b, c, d) {
4678
- return c * Math.sin(t/d * (Math.PI/2)) + b;
4679
- },
4680
- easeInOutSine: function (x, t, b, c, d) {
4681
- return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
4682
- },
4683
- easeInExpo: function (x, t, b, c, d) {
4684
- return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
4685
- },
4686
- easeOutExpo: function (x, t, b, c, d) {
4687
- return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
4688
- },
4689
- easeInOutExpo: function (x, t, b, c, d) {
4690
- if (t==0) return b;
4691
- if (t==d) return b+c;
4692
- if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
4693
- return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
4694
- },
4695
- easeInCirc: function (x, t, b, c, d) {
4696
- return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
4697
- },
4698
- easeOutCirc: function (x, t, b, c, d) {
4699
- return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
4700
- },
4701
- easeInOutCirc: function (x, t, b, c, d) {
4702
- if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
4703
- return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
4704
- },
4705
- easeInElastic: function (x, t, b, c, d) {
4706
- var s=1.70158;var p=0;var a=c;
4707
- if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
4708
- if (a < Math.abs(c)) { a=c; var s=p/4; }
4709
- else var s = p/(2*Math.PI) * Math.asin (c/a);
4710
- return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
4534
+ $.each( [ "Quad", "Cubic", "Quart", "Quint", "Expo" ], function( i, name ) {
4535
+ baseEasings[ name ] = function( p ) {
4536
+ return Math.pow( p, i + 2 );
4537
+ };
4538
+ });
4539
+
4540
+ $.extend( baseEasings, {
4541
+ Sine: function ( p ) {
4542
+ return 1 - Math.cos( p * Math.PI / 2 );
4711
4543
  },
4712
- easeOutElastic: function (x, t, b, c, d) {
4713
- var s=1.70158;var p=0;var a=c;
4714
- if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
4715
- if (a < Math.abs(c)) { a=c; var s=p/4; }
4716
- else var s = p/(2*Math.PI) * Math.asin (c/a);
4717
- return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
4544
+ Circ: function ( p ) {
4545
+ return 1 - Math.sqrt( 1 - p * p );
4718
4546
  },
4719
- easeInOutElastic: function (x, t, b, c, d) {
4720
- var s=1.70158;var p=0;var a=c;
4721
- if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);
4722
- if (a < Math.abs(c)) { a=c; var s=p/4; }
4723
- else var s = p/(2*Math.PI) * Math.asin (c/a);
4724
- if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
4725
- return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
4726
- },
4727
- easeInBack: function (x, t, b, c, d, s) {
4728
- if (s == undefined) s = 1.70158;
4729
- return c*(t/=d)*t*((s+1)*t - s) + b;
4730
- },
4731
- easeOutBack: function (x, t, b, c, d, s) {
4732
- if (s == undefined) s = 1.70158;
4733
- return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
4734
- },
4735
- easeInOutBack: function (x, t, b, c, d, s) {
4736
- if (s == undefined) s = 1.70158;
4737
- if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
4738
- return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
4547
+ Elastic: function( p ) {
4548
+ return p === 0 || p === 1 ? p :
4549
+ -Math.pow( 2, 8 * (p - 1) ) * Math.sin( ( (p - 1) * 80 - 7.5 ) * Math.PI / 15 );
4739
4550
  },
4740
- easeInBounce: function (x, t, b, c, d) {
4741
- return c - $.easing.easeOutBounce (x, d-t, 0, c, d) + b;
4742
- },
4743
- easeOutBounce: function (x, t, b, c, d) {
4744
- if ((t/=d) < (1/2.75)) {
4745
- return c*(7.5625*t*t) + b;
4746
- } else if (t < (2/2.75)) {
4747
- return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
4748
- } else if (t < (2.5/2.75)) {
4749
- return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
4750
- } else {
4751
- return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
4752
- }
4551
+ Back: function( p ) {
4552
+ return p * p * ( 3 * p - 2 );
4753
4553
  },
4754
- easeInOutBounce: function (x, t, b, c, d) {
4755
- if (t < d/2) return $.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
4756
- return $.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
4554
+ Bounce: function ( p ) {
4555
+ var pow2,
4556
+ bounce = 4;
4557
+
4558
+ while ( p < ( ( pow2 = Math.pow( 2, --bounce ) ) - 1 ) / 11 ) {}
4559
+ return 1 / Math.pow( 4, 3 - bounce ) - 7.5625 * Math.pow( ( pow2 * 3 - 2 ) / 22 - p, 2 );
4757
4560
  }
4758
4561
  });
4759
4562
 
4760
- /*
4761
- *
4762
- * TERMS OF USE - EASING EQUATIONS
4763
- *
4764
- * Open source under the BSD License.
4765
- *
4766
- * Copyright 2001 Robert Penner
4767
- * All rights reserved.
4768
- *
4769
- * Redistribution and use in source and binary forms, with or without modification,
4770
- * are permitted provided that the following conditions are met:
4771
- *
4772
- * Redistributions of source code must retain the above copyright notice, this list of
4773
- * conditions and the following disclaimer.
4774
- * Redistributions in binary form must reproduce the above copyright notice, this list
4775
- * of conditions and the following disclaimer in the documentation and/or other materials
4776
- * provided with the distribution.
4777
- *
4778
- * Neither the name of the author nor the names of contributors may be used to endorse
4779
- * or promote products derived from this software without specific prior written permission.
4780
- *
4781
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
4782
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
4783
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
4784
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
4785
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
4786
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
4787
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
4788
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
4789
- * OF THE POSSIBILITY OF SUCH DAMAGE.
4790
- *
4791
- */
4563
+ $.each( baseEasings, function( name, easeIn ) {
4564
+ $.easing[ "easeIn" + name ] = easeIn;
4565
+ $.easing[ "easeOut" + name ] = function( p ) {
4566
+ return 1 - easeIn( 1 - p );
4567
+ };
4568
+ $.easing[ "easeInOut" + name ] = function( p ) {
4569
+ return p < .5 ?
4570
+ easeIn( p * 2 ) / 2 :
4571
+ easeIn( p * -2 + 2 ) / -2 + 1;
4572
+ };
4573
+ });
4792
4574
 
4793
4575
  })(jQuery);
4794
- /*
4795
- * jQuery UI Effects Blind 1.8.18
4796
- *
4797
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
4798
- * Dual licensed under the MIT or GPL Version 2 licenses.
4799
- * http://jquery.org/license
4800
- *
4801
- * http://docs.jquery.com/UI/Effects/Blind
4802
- *
4803
- * Depends:
4804
- * jquery.effects.core.js
4805
- */
4576
+
4806
4577
  (function( $, undefined ) {
4807
4578
 
4808
4579
  $.effects.blind = function(o) {
@@ -4840,18 +4611,7 @@ $.effects.blind = function(o) {
4840
4611
  };
4841
4612
 
4842
4613
  })(jQuery);
4843
- /*
4844
- * jQuery UI Effects Bounce 1.8.18
4845
- *
4846
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
4847
- * Dual licensed under the MIT or GPL Version 2 licenses.
4848
- * http://jquery.org/license
4849
- *
4850
- * http://docs.jquery.com/UI/Effects/Bounce
4851
- *
4852
- * Depends:
4853
- * jquery.effects.core.js
4854
- */
4614
+
4855
4615
  (function( $, undefined ) {
4856
4616
 
4857
4617
  $.effects.bounce = function(o) {
@@ -4874,7 +4634,7 @@ $.effects.bounce = function(o) {
4874
4634
  $.effects.createWrapper(el); // Create Wrapper
4875
4635
  var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
4876
4636
  var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
4877
- var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 3 : el.outerWidth({margin:true}) / 3);
4637
+ var distance = o.options.distance || (ref == 'top' ? el.outerHeight(true) / 3 : el.outerWidth(true) / 3);
4878
4638
  if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift
4879
4639
  if (mode == 'hide') distance = distance / (times * 2);
4880
4640
  if (mode != 'hide') times--;
@@ -4918,18 +4678,7 @@ $.effects.bounce = function(o) {
4918
4678
  };
4919
4679
 
4920
4680
  })(jQuery);
4921
- /*
4922
- * jQuery UI Effects Clip 1.8.18
4923
- *
4924
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
4925
- * Dual licensed under the MIT or GPL Version 2 licenses.
4926
- * http://jquery.org/license
4927
- *
4928
- * http://docs.jquery.com/UI/Effects/Clip
4929
- *
4930
- * Depends:
4931
- * jquery.effects.core.js
4932
- */
4681
+
4933
4682
  (function( $, undefined ) {
4934
4683
 
4935
4684
  $.effects.clip = function(o) {
@@ -4972,18 +4721,7 @@ $.effects.clip = function(o) {
4972
4721
  };
4973
4722
 
4974
4723
  })(jQuery);
4975
- /*
4976
- * jQuery UI Effects Drop 1.8.18
4977
- *
4978
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
4979
- * Dual licensed under the MIT or GPL Version 2 licenses.
4980
- * http://jquery.org/license
4981
- *
4982
- * http://docs.jquery.com/UI/Effects/Drop
4983
- *
4984
- * Depends:
4985
- * jquery.effects.core.js
4986
- */
4724
+
4987
4725
  (function( $, undefined ) {
4988
4726
 
4989
4727
  $.effects.drop = function(o) {
@@ -5002,7 +4740,7 @@ $.effects.drop = function(o) {
5002
4740
  $.effects.createWrapper(el); // Create Wrapper
5003
4741
  var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
5004
4742
  var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
5005
- var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 2 : el.outerWidth({margin:true}) / 2);
4743
+ var distance = o.options.distance || (ref == 'top' ? el.outerHeight( true ) / 2 : el.outerWidth( true ) / 2);
5006
4744
  if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift
5007
4745
 
5008
4746
  // Animation
@@ -5022,18 +4760,7 @@ $.effects.drop = function(o) {
5022
4760
  };
5023
4761
 
5024
4762
  })(jQuery);
5025
- /*
5026
- * jQuery UI Effects Explode 1.8.18
5027
- *
5028
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5029
- * Dual licensed under the MIT or GPL Version 2 licenses.
5030
- * http://jquery.org/license
5031
- *
5032
- * http://docs.jquery.com/UI/Effects/Explode
5033
- *
5034
- * Depends:
5035
- * jquery.effects.core.js
5036
- */
4763
+
5037
4764
  (function( $, undefined ) {
5038
4765
 
5039
4766
  $.effects.explode = function(o) {
@@ -5101,18 +4828,7 @@ $.effects.explode = function(o) {
5101
4828
  };
5102
4829
 
5103
4830
  })(jQuery);
5104
- /*
5105
- * jQuery UI Effects Fade 1.8.18
5106
- *
5107
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5108
- * Dual licensed under the MIT or GPL Version 2 licenses.
5109
- * http://jquery.org/license
5110
- *
5111
- * http://docs.jquery.com/UI/Effects/Fade
5112
- *
5113
- * Depends:
5114
- * jquery.effects.core.js
5115
- */
4831
+
5116
4832
  (function( $, undefined ) {
5117
4833
 
5118
4834
  $.effects.fade = function(o) {
@@ -5133,18 +4849,7 @@ $.effects.fade = function(o) {
5133
4849
  };
5134
4850
 
5135
4851
  })(jQuery);
5136
- /*
5137
- * jQuery UI Effects Fold 1.8.18
5138
- *
5139
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5140
- * Dual licensed under the MIT or GPL Version 2 licenses.
5141
- * http://jquery.org/license
5142
- *
5143
- * http://docs.jquery.com/UI/Effects/Fold
5144
- *
5145
- * Depends:
5146
- * jquery.effects.core.js
5147
- */
4852
+
5148
4853
  (function( $, undefined ) {
5149
4854
 
5150
4855
  $.effects.fold = function(o) {
@@ -5189,18 +4894,7 @@ $.effects.fold = function(o) {
5189
4894
  };
5190
4895
 
5191
4896
  })(jQuery);
5192
- /*
5193
- * jQuery UI Effects Highlight 1.8.18
5194
- *
5195
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5196
- * Dual licensed under the MIT or GPL Version 2 licenses.
5197
- * http://jquery.org/license
5198
- *
5199
- * http://docs.jquery.com/UI/Effects/Highlight
5200
- *
5201
- * Depends:
5202
- * jquery.effects.core.js
5203
- */
4897
+
5204
4898
  (function( $, undefined ) {
5205
4899
 
5206
4900
  $.effects.highlight = function(o) {
@@ -5239,25 +4933,14 @@ $.effects.highlight = function(o) {
5239
4933
  };
5240
4934
 
5241
4935
  })(jQuery);
5242
- /*
5243
- * jQuery UI Effects Pulsate 1.8.18
5244
- *
5245
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5246
- * Dual licensed under the MIT or GPL Version 2 licenses.
5247
- * http://jquery.org/license
5248
- *
5249
- * http://docs.jquery.com/UI/Effects/Pulsate
5250
- *
5251
- * Depends:
5252
- * jquery.effects.core.js
5253
- */
4936
+
5254
4937
  (function( $, undefined ) {
5255
4938
 
5256
4939
  $.effects.pulsate = function(o) {
5257
4940
  return this.queue(function() {
5258
4941
  var elem = $(this),
5259
- mode = $.effects.setMode(elem, o.options.mode || 'show');
5260
- times = ((o.options.times || 5) * 2) - 1;
4942
+ mode = $.effects.setMode(elem, o.options.mode || 'show'),
4943
+ times = ((o.options.times || 5) * 2) - 1,
5261
4944
  duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2,
5262
4945
  isVisible = elem.is(':visible'),
5263
4946
  animateTo = 0;
@@ -5290,18 +4973,7 @@ $.effects.pulsate = function(o) {
5290
4973
  };
5291
4974
 
5292
4975
  })(jQuery);
5293
- /*
5294
- * jQuery UI Effects Scale 1.8.18
5295
- *
5296
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5297
- * Dual licensed under the MIT or GPL Version 2 licenses.
5298
- * http://jquery.org/license
5299
- *
5300
- * http://docs.jquery.com/UI/Effects/Scale
5301
- *
5302
- * Depends:
5303
- * jquery.effects.core.js
5304
- */
4976
+
5305
4977
  (function( $, undefined ) {
5306
4978
 
5307
4979
  $.effects.puff = function(o) {
@@ -5432,7 +5104,7 @@ $.effects.size = function(o) {
5432
5104
  hProps = hProps.concat(['marginLeft','marginRight']); // Add margins
5433
5105
  props2 = props.concat(vProps).concat(hProps); // Concat
5434
5106
  el.find("*[width]").each(function(){
5435
- child = $(this);
5107
+ var child = $(this);
5436
5108
  if (restore) $.effects.save(child, props2);
5437
5109
  var c_original = {height: child.height(), width: child.width()}; // Save original
5438
5110
  child.from = {height: c_original.height * factor.from.y, width: c_original.width * factor.from.x};
@@ -5468,18 +5140,7 @@ $.effects.size = function(o) {
5468
5140
  };
5469
5141
 
5470
5142
  })(jQuery);
5471
- /*
5472
- * jQuery UI Effects Shake 1.8.18
5473
- *
5474
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5475
- * Dual licensed under the MIT or GPL Version 2 licenses.
5476
- * http://jquery.org/license
5477
- *
5478
- * http://docs.jquery.com/UI/Effects/Shake
5479
- *
5480
- * Depends:
5481
- * jquery.effects.core.js
5482
- */
5143
+
5483
5144
  (function( $, undefined ) {
5484
5145
 
5485
5146
  $.effects.shake = function(o) {
@@ -5525,18 +5186,7 @@ $.effects.shake = function(o) {
5525
5186
  };
5526
5187
 
5527
5188
  })(jQuery);
5528
- /*
5529
- * jQuery UI Effects Slide 1.8.18
5530
- *
5531
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5532
- * Dual licensed under the MIT or GPL Version 2 licenses.
5533
- * http://jquery.org/license
5534
- *
5535
- * http://docs.jquery.com/UI/Effects/Slide
5536
- *
5537
- * Depends:
5538
- * jquery.effects.core.js
5539
- */
5189
+
5540
5190
  (function( $, undefined ) {
5541
5191
 
5542
5192
  $.effects.slide = function(o) {
@@ -5555,7 +5205,7 @@ $.effects.slide = function(o) {
5555
5205
  $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
5556
5206
  var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
5557
5207
  var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
5558
- var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) : el.outerWidth({margin:true}));
5208
+ var distance = o.options.distance || (ref == 'top' ? el.outerHeight( true ) : el.outerWidth( true ));
5559
5209
  if (mode == 'show') el.css(ref, motion == 'pos' ? (isNaN(distance) ? "-" + distance : -distance) : distance); // Shift
5560
5210
 
5561
5211
  // Animation
@@ -5575,18 +5225,7 @@ $.effects.slide = function(o) {
5575
5225
  };
5576
5226
 
5577
5227
  })(jQuery);
5578
- /*
5579
- * jQuery UI Effects Transfer 1.8.18
5580
- *
5581
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5582
- * Dual licensed under the MIT or GPL Version 2 licenses.
5583
- * http://jquery.org/license
5584
- *
5585
- * http://docs.jquery.com/UI/Effects/Transfer
5586
- *
5587
- * Depends:
5588
- * jquery.effects.core.js
5589
- */
5228
+
5590
5229
  (function( $, undefined ) {
5591
5230
 
5592
5231
  $.effects.transfer = function(o) {
@@ -5620,19 +5259,7 @@ $.effects.transfer = function(o) {
5620
5259
  };
5621
5260
 
5622
5261
  })(jQuery);
5623
- /*
5624
- * jQuery UI Accordion 1.8.18
5625
- *
5626
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
5627
- * Dual licensed under the MIT or GPL Version 2 licenses.
5628
- * http://jquery.org/license
5629
- *
5630
- * http://docs.jquery.com/UI/Accordion
5631
- *
5632
- * Depends:
5633
- * jquery.ui.core.js
5634
- * jquery.ui.widget.js
5635
- */
5262
+
5636
5263
  (function( $, undefined ) {
5637
5264
 
5638
5265
  $.widget( "ui.accordion", {
@@ -6140,7 +5767,7 @@ $.widget( "ui.accordion", {
6140
5767
  });
6141
5768
 
6142
5769
  $.extend( $.ui.accordion, {
6143
- version: "1.8.18",
5770
+ version: "1.8.23",
6144
5771
  animations: {
6145
5772
  slide: function( options, additions ) {
6146
5773
  options = $.extend({
@@ -6231,20 +5858,7 @@ $.extend( $.ui.accordion, {
6231
5858
  });
6232
5859
 
6233
5860
  })( jQuery );
6234
- /*
6235
- * jQuery UI Autocomplete 1.8.18
6236
- *
6237
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
6238
- * Dual licensed under the MIT or GPL Version 2 licenses.
6239
- * http://jquery.org/license
6240
- *
6241
- * http://docs.jquery.com/UI/Autocomplete
6242
- *
6243
- * Depends:
6244
- * jquery.ui.core.js
6245
- * jquery.ui.widget.js
6246
- * jquery.ui.position.js
6247
- */
5861
+
6248
5862
  (function( $, undefined ) {
6249
5863
 
6250
5864
  // used to prevent race conditions with remote data sources
@@ -6270,6 +5884,7 @@ $.widget( "ui.autocomplete", {
6270
5884
  var self = this,
6271
5885
  doc = this.element[ 0 ].ownerDocument,
6272
5886
  suppressKeyPress;
5887
+ this.isMultiLine = this.element.is( "textarea" );
6273
5888
 
6274
5889
  this.element
6275
5890
  .addClass( "ui-autocomplete-input" )
@@ -6295,14 +5910,10 @@ $.widget( "ui.autocomplete", {
6295
5910
  self._move( "nextPage", event );
6296
5911
  break;
6297
5912
  case keyCode.UP:
6298
- self._move( "previous", event );
6299
- // prevent moving cursor to beginning of text field in some browsers
6300
- event.preventDefault();
5913
+ self._keyEvent( "previous", event );
6301
5914
  break;
6302
5915
  case keyCode.DOWN:
6303
- self._move( "next", event );
6304
- // prevent moving cursor to end of text field in some browsers
6305
- event.preventDefault();
5916
+ self._keyEvent( "next", event );
6306
5917
  break;
6307
5918
  case keyCode.ENTER:
6308
5919
  case keyCode.NUMPAD_ENTER:
@@ -6364,9 +5975,6 @@ $.widget( "ui.autocomplete", {
6364
5975
  }, 150 );
6365
5976
  });
6366
5977
  this._initSource();
6367
- this.response = function() {
6368
- return self._response.apply( self, arguments );
6369
- };
6370
5978
  this.menu = $( "<ul></ul>" )
6371
5979
  .addClass( "ui-autocomplete" )
6372
5980
  .appendTo( $( this.options.appendTo || "body", doc )[0] )
@@ -6501,18 +6109,11 @@ $.widget( "ui.autocomplete", {
6501
6109
  url: url,
6502
6110
  data: request,
6503
6111
  dataType: "json",
6504
- context: {
6505
- autocompleteRequest: ++requestIndex
6506
- },
6507
6112
  success: function( data, status ) {
6508
- if ( this.autocompleteRequest === requestIndex ) {
6509
- response( data );
6510
- }
6113
+ response( data );
6511
6114
  },
6512
6115
  error: function() {
6513
- if ( this.autocompleteRequest === requestIndex ) {
6514
- response( [] );
6515
- }
6116
+ response( [] );
6516
6117
  }
6517
6118
  });
6518
6119
  };
@@ -6543,10 +6144,26 @@ $.widget( "ui.autocomplete", {
6543
6144
  this.pending++;
6544
6145
  this.element.addClass( "ui-autocomplete-loading" );
6545
6146
 
6546
- this.source( { term: value }, this.response );
6147
+ this.source( { term: value }, this._response() );
6148
+ },
6149
+
6150
+ _response: function() {
6151
+ var that = this,
6152
+ index = ++requestIndex;
6153
+
6154
+ return function( content ) {
6155
+ if ( index === requestIndex ) {
6156
+ that.__response( content );
6157
+ }
6158
+
6159
+ that.pending--;
6160
+ if ( !that.pending ) {
6161
+ that.element.removeClass( "ui-autocomplete-loading" );
6162
+ }
6163
+ };
6547
6164
  },
6548
6165
 
6549
- _response: function( content ) {
6166
+ __response: function( content ) {
6550
6167
  if ( !this.options.disabled && content && content.length ) {
6551
6168
  content = this._normalize( content );
6552
6169
  this._suggest( content );
@@ -6554,10 +6171,6 @@ $.widget( "ui.autocomplete", {
6554
6171
  } else {
6555
6172
  this.close();
6556
6173
  }
6557
- this.pending--;
6558
- if ( !this.pending ) {
6559
- this.element.removeClass( "ui-autocomplete-loading" );
6560
- }
6561
6174
  },
6562
6175
 
6563
6176
  close: function( event ) {
@@ -6655,6 +6268,14 @@ $.widget( "ui.autocomplete", {
6655
6268
 
6656
6269
  widget: function() {
6657
6270
  return this.menu.element;
6271
+ },
6272
+ _keyEvent: function( keyEvent, event ) {
6273
+ if ( !this.isMultiLine || this.menu.element.is( ":visible" ) ) {
6274
+ this._move( keyEvent, event );
6275
+
6276
+ // prevents moving cursor to beginning/end of the text field in some browsers
6277
+ event.preventDefault();
6278
+ }
6658
6279
  }
6659
6280
  });
6660
6281
 
@@ -6827,7 +6448,7 @@ $.widget("ui.menu", {
6827
6448
  }
6828
6449
 
6829
6450
  var base = this.active.offset().top,
6830
- height = this.element.height();
6451
+ height = this.element.height(),
6831
6452
  result = this.element.children(".ui-menu-item").filter(function() {
6832
6453
  var close = $(this).offset().top - base + height - $(this).height();
6833
6454
  // TODO improve approximation
@@ -6855,19 +6476,7 @@ $.widget("ui.menu", {
6855
6476
  });
6856
6477
 
6857
6478
  }(jQuery));
6858
- /*
6859
- * jQuery UI Button 1.8.18
6860
- *
6861
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
6862
- * Dual licensed under the MIT or GPL Version 2 licenses.
6863
- * http://jquery.org/license
6864
- *
6865
- * http://docs.jquery.com/UI/Button
6866
- *
6867
- * Depends:
6868
- * jquery.ui.core.js
6869
- * jquery.ui.widget.js
6870
- */
6479
+
6871
6480
  (function( $, undefined ) {
6872
6481
 
6873
6482
  var lastActive, startXPos, startYPos, clickDragged,
@@ -7269,21 +6878,10 @@ $.widget( "ui.buttonset", {
7269
6878
  });
7270
6879
 
7271
6880
  }( jQuery ) );
7272
- /*
7273
- * jQuery UI Datepicker 1.8.18
7274
- *
7275
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
7276
- * Dual licensed under the MIT or GPL Version 2 licenses.
7277
- * http://jquery.org/license
7278
- *
7279
- * http://docs.jquery.com/UI/Datepicker
7280
- *
7281
- * Depends:
7282
- * jquery.ui.core.js
7283
- */
6881
+
7284
6882
  (function( $, undefined ) {
7285
6883
 
7286
- $.extend($.ui, { datepicker: { version: "1.8.18" } });
6884
+ $.extend($.ui, { datepicker: { version: "1.8.23" } });
7287
6885
 
7288
6886
  var PROP_NAME = 'datepicker';
7289
6887
  var dpuuid = new Date().getTime();
@@ -7579,7 +7177,7 @@ $.extend(Datepicker.prototype, {
7579
7177
  this.uuid += 1;
7580
7178
  var id = 'dp' + this.uuid;
7581
7179
  this._dialogInput = $('<input type="text" id="' + id +
7582
- '" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');
7180
+ '" style="position: absolute; top: -100px; width: 0px;"/>');
7583
7181
  this._dialogInput.keydown(this._doKeyDown);
7584
7182
  $('body').append(this._dialogInput);
7585
7183
  inst = this._dialogInst = this._newInst(this._dialogInput, false);
@@ -7891,8 +7489,8 @@ $.extend(Datepicker.prototype, {
7891
7489
  $.datepicker._updateDatepicker(inst);
7892
7490
  }
7893
7491
  }
7894
- catch (event) {
7895
- $.datepicker.log(event);
7492
+ catch (err) {
7493
+ $.datepicker.log(err);
7896
7494
  }
7897
7495
  }
7898
7496
  return true;
@@ -7985,6 +7583,7 @@ $.extend(Datepicker.prototype, {
7985
7583
  var borders = $.datepicker._getBorders(inst.dpDiv);
7986
7584
  instActive = inst; // for delegate hover events
7987
7585
  inst.dpDiv.empty().append(this._generateHTML(inst));
7586
+ this._attachHandlers(inst);
7988
7587
  var cover = inst.dpDiv.find('iframe.ui-datepicker-cover'); // IE6- only
7989
7588
  if( !!cover.length ){ //avoid call to outerXXXX() when not in IE6
7990
7589
  cover.css({left: -borders[0], top: -borders[1], width: inst.dpDiv.outerWidth(), height: inst.dpDiv.outerHeight()})
@@ -8035,8 +7634,8 @@ $.extend(Datepicker.prototype, {
8035
7634
  var dpHeight = inst.dpDiv.outerHeight();
8036
7635
  var inputWidth = inst.input ? inst.input.outerWidth() : 0;
8037
7636
  var inputHeight = inst.input ? inst.input.outerHeight() : 0;
8038
- var viewWidth = document.documentElement.clientWidth + $(document).scrollLeft();
8039
- var viewHeight = document.documentElement.clientHeight + $(document).scrollTop();
7637
+ var viewWidth = document.documentElement.clientWidth + (isFixed ? 0 : $(document).scrollLeft());
7638
+ var viewHeight = document.documentElement.clientHeight + (isFixed ? 0 : $(document).scrollTop());
8040
7639
 
8041
7640
  offset.left -= (this._get(inst, 'isRTL') ? (dpWidth - inputWidth) : 0);
8042
7641
  offset.left -= (isFixed && offset.left == inst.input.offset().left) ? $(document).scrollLeft() : 0;
@@ -8071,10 +7670,8 @@ $.extend(Datepicker.prototype, {
8071
7670
  if (this._datepickerShowing) {
8072
7671
  var showAnim = this._get(inst, 'showAnim');
8073
7672
  var duration = this._get(inst, 'duration');
8074
- var self = this;
8075
7673
  var postProcess = function() {
8076
7674
  $.datepicker._tidyDialog(inst);
8077
- self._curInst = null;
8078
7675
  };
8079
7676
  if ($.effects && $.effects[showAnim])
8080
7677
  inst.dpDiv.hide(showAnim, $.datepicker._get(inst, 'showOptions'), duration, postProcess);
@@ -8675,6 +8272,43 @@ $.extend(Datepicker.prototype, {
8675
8272
  return startDate;
8676
8273
  },
8677
8274
 
8275
+ /* Attach the onxxx handlers. These are declared statically so
8276
+ * they work with static code transformers like Caja.
8277
+ */
8278
+ _attachHandlers: function(inst) {
8279
+ var stepMonths = this._get(inst, 'stepMonths');
8280
+ var id = '#' + inst.id.replace( /\\\\/g, "\\" );
8281
+ inst.dpDiv.find('[data-handler]').map(function () {
8282
+ var handler = {
8283
+ prev: function () {
8284
+ window['DP_jQuery_' + dpuuid].datepicker._adjustDate(id, -stepMonths, 'M');
8285
+ },
8286
+ next: function () {
8287
+ window['DP_jQuery_' + dpuuid].datepicker._adjustDate(id, +stepMonths, 'M');
8288
+ },
8289
+ hide: function () {
8290
+ window['DP_jQuery_' + dpuuid].datepicker._hideDatepicker();
8291
+ },
8292
+ today: function () {
8293
+ window['DP_jQuery_' + dpuuid].datepicker._gotoToday(id);
8294
+ },
8295
+ selectDay: function () {
8296
+ window['DP_jQuery_' + dpuuid].datepicker._selectDay(id, +this.getAttribute('data-month'), +this.getAttribute('data-year'), this);
8297
+ return false;
8298
+ },
8299
+ selectMonth: function () {
8300
+ window['DP_jQuery_' + dpuuid].datepicker._selectMonthYear(id, this, 'M');
8301
+ return false;
8302
+ },
8303
+ selectYear: function () {
8304
+ window['DP_jQuery_' + dpuuid].datepicker._selectMonthYear(id, this, 'Y');
8305
+ return false;
8306
+ }
8307
+ };
8308
+ $(this).bind(this.getAttribute('data-event'), handler[this.getAttribute('data-handler')]);
8309
+ });
8310
+ },
8311
+
8678
8312
  /* Generate the HTML for the current state of the date picker. */
8679
8313
  _generateHTML: function(inst) {
8680
8314
  var today = new Date();
@@ -8717,8 +8351,7 @@ $.extend(Datepicker.prototype, {
8717
8351
  this._daylightSavingAdjust(new Date(drawYear, drawMonth - stepMonths, 1)),
8718
8352
  this._getFormatConfig(inst)));
8719
8353
  var prev = (this._canAdjustMonth(inst, -1, drawYear, drawMonth) ?
8720
- '<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_' + dpuuid +
8721
- '.datepicker._adjustDate(\'#' + inst.id + '\', -' + stepMonths + ', \'M\');"' +
8354
+ '<a class="ui-datepicker-prev ui-corner-all" data-handler="prev" data-event="click"' +
8722
8355
  ' title="' + prevText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>' :
8723
8356
  (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>'));
8724
8357
  var nextText = this._get(inst, 'nextText');
@@ -8726,19 +8359,17 @@ $.extend(Datepicker.prototype, {
8726
8359
  this._daylightSavingAdjust(new Date(drawYear, drawMonth + stepMonths, 1)),
8727
8360
  this._getFormatConfig(inst)));
8728
8361
  var next = (this._canAdjustMonth(inst, +1, drawYear, drawMonth) ?
8729
- '<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_' + dpuuid +
8730
- '.datepicker._adjustDate(\'#' + inst.id + '\', +' + stepMonths + ', \'M\');"' +
8362
+ '<a class="ui-datepicker-next ui-corner-all" data-handler="next" data-event="click"' +
8731
8363
  ' title="' + nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>' :
8732
8364
  (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>'));
8733
8365
  var currentText = this._get(inst, 'currentText');
8734
8366
  var gotoDate = (this._get(inst, 'gotoCurrent') && inst.currentDay ? currentDate : today);
8735
8367
  currentText = (!navigationAsDateFormat ? currentText :
8736
8368
  this.formatDate(currentText, gotoDate, this._getFormatConfig(inst)));
8737
- var controls = (!inst.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_' + dpuuid +
8738
- '.datepicker._hideDatepicker();">' + this._get(inst, 'closeText') + '</button>' : '');
8369
+ var controls = (!inst.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" data-handler="hide" data-event="click">' +
8370
+ this._get(inst, 'closeText') + '</button>' : '');
8739
8371
  var buttonPanel = (showButtonPanel) ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (isRTL ? controls : '') +
8740
- (this._isInRange(inst, gotoDate) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_' + dpuuid +
8741
- '.datepicker._gotoToday(\'#' + inst.id + '\');"' +
8372
+ (this._isInRange(inst, gotoDate) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" data-handler="today" data-event="click"' +
8742
8373
  '>' + currentText + '</button>' : '') + (isRTL ? '' : controls) + '</div>' : '';
8743
8374
  var firstDay = parseInt(this._get(inst, 'firstDay'),10);
8744
8375
  firstDay = (isNaN(firstDay) ? 0 : firstDay);
@@ -8817,8 +8448,7 @@ $.extend(Datepicker.prototype, {
8817
8448
  (printDate.getTime() == currentDate.getTime() ? ' ' + this._currentClass : '') + // highlight selected day
8818
8449
  (printDate.getTime() == today.getTime() ? ' ui-datepicker-today' : '')) + '"' + // highlight today (if different)
8819
8450
  ((!otherMonth || showOtherMonths) && daySettings[2] ? ' title="' + daySettings[2] + '"' : '') + // cell title
8820
- (unselectable ? '' : ' onclick="DP_jQuery_' + dpuuid + '.datepicker._selectDay(\'#' +
8821
- inst.id + '\',' + printDate.getMonth() + ',' + printDate.getFullYear() + ', this);return false;"') + '>' + // actions
8451
+ (unselectable ? '' : ' data-handler="selectDay" data-event="click" data-month="' + printDate.getMonth() + '" data-year="' + printDate.getFullYear() + '"') + '>' + // actions
8822
8452
  (otherMonth && !showOtherMonths ? '&#xa0;' : // display for other months
8823
8453
  (unselectable ? '<span class="ui-state-default">' + printDate.getDate() + '</span>' : '<a class="ui-state-default' +
8824
8454
  (printDate.getTime() == today.getTime() ? ' ui-state-highlight' : '') +
@@ -8861,9 +8491,7 @@ $.extend(Datepicker.prototype, {
8861
8491
  else {
8862
8492
  var inMinYear = (minDate && minDate.getFullYear() == drawYear);
8863
8493
  var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear);
8864
- monthHtml += '<select class="ui-datepicker-month" ' +
8865
- 'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'M\');" ' +
8866
- '>';
8494
+ monthHtml += '<select class="ui-datepicker-month" data-handler="selectMonth" data-event="change">';
8867
8495
  for (var month = 0; month < 12; month++) {
8868
8496
  if ((!inMinYear || month >= minDate.getMonth()) &&
8869
8497
  (!inMaxYear || month <= maxDate.getMonth()))
@@ -8894,9 +8522,7 @@ $.extend(Datepicker.prototype, {
8894
8522
  var endYear = Math.max(year, determineYear(years[1] || ''));
8895
8523
  year = (minDate ? Math.max(year, minDate.getFullYear()) : year);
8896
8524
  endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear);
8897
- inst.yearshtml += '<select class="ui-datepicker-year" ' +
8898
- 'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'Y\');" ' +
8899
- '>';
8525
+ inst.yearshtml += '<select class="ui-datepicker-year" data-handler="selectYear" data-event="change">';
8900
8526
  for (; year <= endYear; year++) {
8901
8527
  inst.yearshtml += '<option value="' + year + '"' +
8902
8528
  (year == drawYear ? ' selected="selected"' : '') +
@@ -9088,31 +8714,14 @@ $.fn.datepicker = function(options){
9088
8714
  $.datepicker = new Datepicker(); // singleton instance
9089
8715
  $.datepicker.initialized = false;
9090
8716
  $.datepicker.uuid = new Date().getTime();
9091
- $.datepicker.version = "1.8.18";
8717
+ $.datepicker.version = "1.8.23";
9092
8718
 
9093
8719
  // Workaround for #4055
9094
8720
  // Add another global to avoid noConflict issues with inline event handlers
9095
8721
  window['DP_jQuery_' + dpuuid] = $;
9096
8722
 
9097
8723
  })(jQuery);
9098
- /*
9099
- * jQuery UI Dialog 1.8.18
9100
- *
9101
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
9102
- * Dual licensed under the MIT or GPL Version 2 licenses.
9103
- * http://jquery.org/license
9104
- *
9105
- * http://docs.jquery.com/UI/Dialog
9106
- *
9107
- * Depends:
9108
- * jquery.ui.core.js
9109
- * jquery.ui.widget.js
9110
- * jquery.ui.button.js
9111
- * jquery.ui.draggable.js
9112
- * jquery.ui.mouse.js
9113
- * jquery.ui.position.js
9114
- * jquery.ui.resizable.js
9115
- */
8724
+
9116
8725
  (function( $, undefined ) {
9117
8726
 
9118
8727
  var uiDialogClasses =
@@ -9134,18 +8743,6 @@ var uiDialogClasses =
9134
8743
  maxWidth: true,
9135
8744
  minHeight: true,
9136
8745
  minWidth: true
9137
- },
9138
- // support for jQuery 1.3.2 - handle common attrFn methods for dialog
9139
- attrFn = $.attrFn || {
9140
- val: true,
9141
- css: true,
9142
- html: true,
9143
- text: true,
9144
- data: true,
9145
- width: true,
9146
- height: true,
9147
- offset: true,
9148
- click: true
9149
8746
  };
9150
8747
 
9151
8748
  $.widget("ui.dialog", {
@@ -9494,7 +9091,7 @@ $.widget("ui.dialog", {
9494
9091
  if ( key === "click" ) {
9495
9092
  return;
9496
9093
  }
9497
- if ( key in attrFn ) {
9094
+ if ( key in button ) {
9498
9095
  button[ key ]( value );
9499
9096
  } else {
9500
9097
  button.attr( key, value );
@@ -9799,7 +9396,7 @@ $.widget("ui.dialog", {
9799
9396
  });
9800
9397
 
9801
9398
  $.extend($.ui.dialog, {
9802
- version: "1.8.18",
9399
+ version: "1.8.23",
9803
9400
 
9804
9401
  uuid: 0,
9805
9402
  maxZ: 0,
@@ -9973,15 +9570,7 @@ $.extend($.ui.dialog.overlay.prototype, {
9973
9570
  });
9974
9571
 
9975
9572
  }(jQuery));
9976
- /*
9977
- * jQuery UI Position 1.8.18
9978
- *
9979
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
9980
- * Dual licensed under the MIT or GPL Version 2 licenses.
9981
- * http://jquery.org/license
9982
- *
9983
- * http://docs.jquery.com/UI/Position
9984
- */
9573
+
9985
9574
  (function( $, undefined ) {
9986
9575
 
9987
9576
  $.ui = $.ui || {};
@@ -10218,7 +9807,12 @@ if ( !$.offset.setOffset ) {
10218
9807
  $.fn.offset = function( options ) {
10219
9808
  var elem = this[ 0 ];
10220
9809
  if ( !elem || !elem.ownerDocument ) { return null; }
10221
- if ( options ) {
9810
+ if ( options ) {
9811
+ if ( $.isFunction( options ) ) {
9812
+ return this.each(function( i ) {
9813
+ $( this ).offset( options.call( this, i, $( this ).offset() ) );
9814
+ });
9815
+ }
10222
9816
  return this.each(function() {
10223
9817
  $.offset.setOffset( this, options );
10224
9818
  });
@@ -10227,6 +9821,11 @@ if ( !$.offset.setOffset ) {
10227
9821
  };
10228
9822
  }
10229
9823
 
9824
+ // jQuery <1.4.3 uses curCSS, in 1.4.3 - 1.7.2 curCSS = css, 1.8+ only has css
9825
+ if ( !$.curCSS ) {
9826
+ $.curCSS = $.css;
9827
+ }
9828
+
10230
9829
  // fraction support test (older versions of jQuery don't support fractions)
10231
9830
  (function () {
10232
9831
  var body = document.getElementsByTagName( "body" )[ 0 ],
@@ -10271,19 +9870,7 @@ if ( !$.offset.setOffset ) {
10271
9870
  })();
10272
9871
 
10273
9872
  }( jQuery ));
10274
- /*
10275
- * jQuery UI Progressbar 1.8.18
10276
- *
10277
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
10278
- * Dual licensed under the MIT or GPL Version 2 licenses.
10279
- * http://jquery.org/license
10280
- *
10281
- * http://docs.jquery.com/UI/Progressbar
10282
- *
10283
- * Depends:
10284
- * jquery.ui.core.js
10285
- * jquery.ui.widget.js
10286
- */
9873
+
10287
9874
  (function( $, undefined ) {
10288
9875
 
10289
9876
  $.widget( "ui.progressbar", {
@@ -10376,24 +9963,11 @@ $.widget( "ui.progressbar", {
10376
9963
  });
10377
9964
 
10378
9965
  $.extend( $.ui.progressbar, {
10379
- version: "1.8.18"
9966
+ version: "1.8.23"
10380
9967
  });
10381
9968
 
10382
9969
  })( jQuery );
10383
- /*
10384
- * jQuery UI Slider 1.8.18
10385
- *
10386
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
10387
- * Dual licensed under the MIT or GPL Version 2 licenses.
10388
- * http://jquery.org/license
10389
- *
10390
- * http://docs.jquery.com/UI/Slider
10391
- *
10392
- * Depends:
10393
- * jquery.ui.core.js
10394
- * jquery.ui.mouse.js
10395
- * jquery.ui.widget.js
10396
- */
9970
+
10397
9971
  (function( $, undefined ) {
10398
9972
 
10399
9973
  // number of pages in a slider
@@ -11038,23 +10612,11 @@ $.widget( "ui.slider", $.ui.mouse, {
11038
10612
  });
11039
10613
 
11040
10614
  $.extend( $.ui.slider, {
11041
- version: "1.8.18"
10615
+ version: "1.8.23"
11042
10616
  });
11043
10617
 
11044
10618
  }(jQuery));
11045
- /*
11046
- * jQuery UI Tabs 1.8.18
11047
- *
11048
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
11049
- * Dual licensed under the MIT or GPL Version 2 licenses.
11050
- * http://jquery.org/license
11051
- *
11052
- * http://docs.jquery.com/UI/Tabs
11053
- *
11054
- * Depends:
11055
- * jquery.ui.core.js
11056
- * jquery.ui.widget.js
11057
- */
10619
+
11058
10620
  (function( $, undefined ) {
11059
10621
 
11060
10622
  var tabId = 0,
@@ -11471,7 +11033,7 @@ $.widget( "ui.tabs", {
11471
11033
  // meta-function to give users option to provide a href string instead of a numerical index.
11472
11034
  // also sanitizes numerical indexes to valid values.
11473
11035
  if ( typeof index == "string" ) {
11474
- index = this.anchors.index( this.anchors.filter( "[href$=" + index + "]" ) );
11036
+ index = this.anchors.index( this.anchors.filter( "[href$='" + index + "']" ) );
11475
11037
  }
11476
11038
 
11477
11039
  return index;
@@ -11742,7 +11304,7 @@ $.widget( "ui.tabs", {
11742
11304
  });
11743
11305
 
11744
11306
  $.extend( $.ui.tabs, {
11745
- version: "1.8.18"
11307
+ version: "1.8.23"
11746
11308
  });
11747
11309
 
11748
11310
  /*
@@ -11777,7 +11339,6 @@ $.extend( $.ui.tabs.prototype, {
11777
11339
  }
11778
11340
  }
11779
11341
  : function( e ) {
11780
- t = o.selected;
11781
11342
  rotate();
11782
11343
  });
11783
11344