jquery-datatables-rails 1.12.2 → 2.1.10.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/images/dataTables/extras/filler.png +0 -0
- data/app/assets/images/dataTables/extras/loading-background.png +0 -0
- data/app/assets/images/dataTables/sort_asc_disabled.png +0 -0
- data/app/assets/javascripts/dataTables/extras/dataTables.autoFill.js +851 -0
- data/app/assets/javascripts/dataTables/extras/{ColReorder.js → dataTables.colReorder.js} +558 -223
- data/app/assets/javascripts/dataTables/extras/dataTables.colVis.js +1096 -0
- data/app/assets/javascripts/dataTables/extras/{FixedColumns.js → dataTables.fixedColumns.js} +163 -113
- data/app/assets/javascripts/dataTables/extras/{FixedHeader.js → dataTables.fixedHeader.js} +306 -219
- data/app/assets/javascripts/dataTables/extras/{KeyTable.js → dataTables.keyTable.js} +155 -95
- data/app/assets/javascripts/dataTables/extras/{Scroller.js → dataTables.scroller.js} +469 -188
- data/app/assets/javascripts/dataTables/extras/{TableTools.js → dataTables.tableTools.js} +949 -341
- data/app/assets/javascripts/dataTables/jquery.dataTables.foundation.js +4 -4
- data/app/assets/javascripts/dataTables/jquery.dataTables.js +10711 -8427
- data/app/assets/media/dataTables/extras/swf/copy_csv_xls.swf +0 -0
- data/app/assets/media/dataTables/extras/swf/copy_csv_xls_pdf.swf +0 -0
- data/app/assets/stylesheets/dataTables/extras/dataTables.autoFill.css.scss +24 -0
- data/app/assets/stylesheets/dataTables/extras/dataTables.colReorder.css.scss +14 -0
- data/app/assets/stylesheets/dataTables/extras/dataTables.colVis.css.scss +184 -0
- data/app/assets/stylesheets/dataTables/extras/dataTables.colvis.jqueryui.css.scss +23 -0
- data/app/assets/stylesheets/dataTables/extras/dataTables.fixedColumns.css.scss +24 -0
- data/app/assets/stylesheets/dataTables/extras/dataTables.fixedHeader.css.scss +7 -0
- data/app/assets/stylesheets/dataTables/extras/dataTables.keyTable.css.scss +7 -0
- data/app/assets/stylesheets/dataTables/extras/dataTables.scroller.css.scss +44 -0
- data/app/assets/stylesheets/dataTables/extras/{TableTools.css.erb → dataTables.tableTools.css.scss} +30 -15
- data/app/assets/stylesheets/dataTables/jquery.dataTables.bootstrap.css.scss +6 -0
- data/app/assets/stylesheets/dataTables/jquery.dataTables.css.scss +363 -184
- data/app/assets/stylesheets/dataTables/src/jquery.dataTables_themeroller.css +307 -220
- data/lib/jquery/datatables/rails/version.rb +1 -1
- metadata +42 -22
- data/app/assets/javascripts/dataTables/extras/AutoFill.js +0 -820
- data/app/assets/javascripts/dataTables/extras/ColVis.js +0 -1005
- data/app/assets/javascripts/dataTables/extras/TableTools.min.js +0 -77
- data/app/assets/stylesheets/dataTables/extras/ColReorder.css.erb +0 -21
- data/app/assets/stylesheets/dataTables/extras/ColVis.css +0 -76
- data/app/assets/stylesheets/dataTables/extras/ColVisAlt.css.erb +0 -104
@@ -1,26 +1,37 @@
|
|
1
|
-
|
2
|
-
*
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
*
|
7
|
-
*
|
8
|
-
*
|
9
|
-
*
|
10
|
-
*
|
11
|
-
*
|
12
|
-
*
|
1
|
+
/*! KeyTable 1.2.0
|
2
|
+
* ©2010-2014 SpryMedia Ltd - datatables.net/license
|
3
|
+
*/
|
4
|
+
|
5
|
+
/**
|
6
|
+
* @summary KeyTable
|
7
|
+
* @description Spreadsheet like keyboard navigation for DataTables
|
8
|
+
* @version 1.2.0
|
9
|
+
* @file dataTables.keyTable.js
|
10
|
+
* @author SpryMedia Ltd (www.sprymedia.co.uk)
|
11
|
+
* @contact www.sprymedia.co.uk/contact
|
12
|
+
* @copyright Copyright 2009-2014 SpryMedia Ltd.
|
13
13
|
*
|
14
|
-
*
|
14
|
+
* This source file is free software, available under the following license:
|
15
|
+
* MIT license - http://datatables.net/license/mit
|
15
16
|
*
|
16
|
-
* This source file is
|
17
|
-
*
|
18
|
-
*
|
19
|
-
*
|
17
|
+
* This source file is distributed in the hope that it will be useful, but
|
18
|
+
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
19
|
+
* or FITNESS FOR A PARTICULAR PURPOSE. See the license files for details.
|
20
|
+
*
|
21
|
+
* For details please refer to: http://www.datatables.net
|
20
22
|
*/
|
21
23
|
|
24
|
+
// Global scope for KeyTable for backwards compatibility. Will be removed in 1.3
|
25
|
+
var KeyTable;
|
26
|
+
|
27
|
+
|
28
|
+
(function(window, document, undefined) {
|
29
|
+
|
30
|
+
|
31
|
+
var factory = function( $, DataTable ) {
|
32
|
+
"use strict";
|
22
33
|
|
23
|
-
function
|
34
|
+
KeyTable = function ( oInit )
|
24
35
|
{
|
25
36
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
26
37
|
* API parameters
|
@@ -106,6 +117,18 @@ function KeyTable ( oInit )
|
|
106
117
|
};
|
107
118
|
|
108
119
|
|
120
|
+
/*
|
121
|
+
* Function: fnBlur
|
122
|
+
* Purpose: Blur the current focus
|
123
|
+
* Returns: -
|
124
|
+
* Inputs: -
|
125
|
+
*/
|
126
|
+
this.fnBlur = function()
|
127
|
+
{
|
128
|
+
_fnBlur();
|
129
|
+
};
|
130
|
+
|
131
|
+
|
109
132
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
110
133
|
* Private parameters
|
111
134
|
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
@@ -118,8 +141,8 @@ function KeyTable ( oInit )
|
|
118
141
|
var _nBody = null;
|
119
142
|
|
120
143
|
/*
|
121
|
-
* Variable:
|
122
|
-
* Purpose:
|
144
|
+
* Variable:
|
145
|
+
* Purpose:
|
123
146
|
* Scope: KeyTable - private
|
124
147
|
*/
|
125
148
|
var _nOldFocus = null;
|
@@ -167,7 +190,8 @@ function KeyTable ( oInit )
|
|
167
190
|
|
168
191
|
/*
|
169
192
|
* Variable: _oDatatable
|
170
|
-
* Purpose: DataTables object for if we are actually using a
|
193
|
+
* Purpose: DataTables settings object for if we are actually using a
|
194
|
+
* DataTables table
|
171
195
|
* Scope: KeyTable - private
|
172
196
|
*/
|
173
197
|
var _oDatatable = null;
|
@@ -208,8 +232,8 @@ function KeyTable ( oInit )
|
|
208
232
|
*/
|
209
233
|
return function ( x, y, z ) {
|
210
234
|
if ( (x===null || typeof x == "number") &&
|
211
|
-
|
212
|
-
|
235
|
+
(y===null || typeof y == "number") &&
|
236
|
+
typeof z == "function" )
|
213
237
|
{
|
214
238
|
_fnEventAdd( sKey, x, y, z );
|
215
239
|
}
|
@@ -250,7 +274,7 @@ function KeyTable ( oInit )
|
|
250
274
|
*/
|
251
275
|
return function ( x, y, z ) {
|
252
276
|
if ( (x===null || typeof arguments[0] == "number") &&
|
253
|
-
|
277
|
+
(y===null || typeof arguments[1] == "number" ) )
|
254
278
|
{
|
255
279
|
if ( typeof arguments[2] == "function" )
|
256
280
|
{
|
@@ -328,7 +352,7 @@ function KeyTable ( oInit )
|
|
328
352
|
if ( typeof fn != 'undefined' )
|
329
353
|
{
|
330
354
|
if ( _oaoEvents[sType][i-iCorrector].x == x &&
|
331
|
-
|
355
|
+
_oaoEvents[sType][i-iCorrector].y == y &&
|
332
356
|
_oaoEvents[sType][i-iCorrector].fn == fn )
|
333
357
|
{
|
334
358
|
_oaoEvents[sType].splice( i-iCorrector, 1 );
|
@@ -338,7 +362,7 @@ function KeyTable ( oInit )
|
|
338
362
|
else
|
339
363
|
{
|
340
364
|
if ( _oaoEvents[sType][i-iCorrector].x == x &&
|
341
|
-
|
365
|
+
_oaoEvents[sType][i-iCorrector].y == y )
|
342
366
|
{
|
343
367
|
_oaoEvents[sType].splice( i, 1 );
|
344
368
|
return 1;
|
@@ -367,9 +391,9 @@ function KeyTable ( oInit )
|
|
367
391
|
for ( var i=0 ; i<aEvents.length ; i++ )
|
368
392
|
{
|
369
393
|
if ( (aEvents[i].x == x && aEvents[i].y == y ) ||
|
370
|
-
|
371
|
-
|
372
|
-
|
394
|
+
(aEvents[i].x === null && aEvents[i].y == y ) ||
|
395
|
+
(aEvents[i].x == x && aEvents[i].y === null ) ||
|
396
|
+
(aEvents[i].x === null && aEvents[i].y === null )
|
373
397
|
)
|
374
398
|
{
|
375
399
|
aEvents[i].fn( _fnCellFromCoords(x,y), x, y );
|
@@ -412,14 +436,14 @@ function KeyTable ( oInit )
|
|
412
436
|
}
|
413
437
|
|
414
438
|
/* Add the new class to highlight the focused cell */
|
415
|
-
|
416
|
-
|
439
|
+
$(nTarget).addClass( _sFocusClass );
|
440
|
+
$(nTarget).parent().addClass( _sFocusClass );
|
417
441
|
|
418
442
|
/* If it's a DataTable then we need to jump the paging to the relevant page */
|
419
443
|
var oSettings;
|
420
444
|
if ( _oDatatable )
|
421
445
|
{
|
422
|
-
oSettings = _oDatatable
|
446
|
+
oSettings = _oDatatable;
|
423
447
|
var iRow = _fnFindDtCell( nTarget )[1];
|
424
448
|
var bKeyCaptureCache = _bKeyCapture;
|
425
449
|
|
@@ -472,10 +496,10 @@ function KeyTable ( oInit )
|
|
472
496
|
if ( bAutoScroll )
|
473
497
|
{
|
474
498
|
/* Scroll the viewport such that the new cell is fully visible in the rendered window */
|
475
|
-
iViewportHeight =
|
476
|
-
iViewportWidth =
|
477
|
-
iScrollTop = document.
|
478
|
-
iScrollLeft = document.
|
499
|
+
iViewportHeight = $(window).height();
|
500
|
+
iViewportWidth = $(window).width();
|
501
|
+
iScrollTop = $(document).scrollTop();
|
502
|
+
iScrollLeft = $(document).scrollLeft();
|
479
503
|
iHeight = nTarget.offsetHeight;
|
480
504
|
iWidth = nTarget.offsetWidth;
|
481
505
|
aiPos = _fnGetPos( nTarget );
|
@@ -580,8 +604,8 @@ function KeyTable ( oInit )
|
|
580
604
|
*/
|
581
605
|
function _fnRemoveFocus( nTarget )
|
582
606
|
{
|
583
|
-
|
584
|
-
|
607
|
+
$(nTarget).removeClass( _sFocusClass );
|
608
|
+
$(nTarget).parent().removeClass( _sFocusClass );
|
585
609
|
_fnEventFire( "blur", _iOldX, _iOldY );
|
586
610
|
}
|
587
611
|
|
@@ -627,7 +651,7 @@ function KeyTable ( oInit )
|
|
627
651
|
/* If a modifier key is pressed (exapct shift), ignore the event */
|
628
652
|
if ( e.metaKey || e.altKey || e.ctrlKey )
|
629
653
|
{
|
630
|
-
|
654
|
+
return true;
|
631
655
|
}
|
632
656
|
var
|
633
657
|
x, y,
|
@@ -637,13 +661,12 @@ function KeyTable ( oInit )
|
|
637
661
|
/* Get table height and width - done here so as to be dynamic (if table is updated) */
|
638
662
|
if ( _oDatatable )
|
639
663
|
{
|
640
|
-
/*
|
664
|
+
/*
|
641
665
|
* Locate the current node in the DataTable overriding the old positions - the reason for
|
642
666
|
* is is that there might have been some DataTables interaction between the last focus and
|
643
667
|
* now
|
644
668
|
*/
|
645
|
-
|
646
|
-
iTableHeight = oSettings.aiDisplay.length;
|
669
|
+
iTableHeight = _oDatatable.aiDisplay.length;
|
647
670
|
|
648
671
|
var aDtPos = _fnFindDtCell( _nOldFocus );
|
649
672
|
if ( aDtPos === null )
|
@@ -665,8 +688,8 @@ function KeyTable ( oInit )
|
|
665
688
|
switch( iKey )
|
666
689
|
{
|
667
690
|
case 13: /* return */
|
668
|
-
|
669
|
-
|
691
|
+
e.preventDefault();
|
692
|
+
e.stopPropagation();
|
670
693
|
_fnEventFire( "action", _iOldX, _iOldY );
|
671
694
|
return true;
|
672
695
|
|
@@ -699,7 +722,7 @@ function KeyTable ( oInit )
|
|
699
722
|
_bInputFocused = true;
|
700
723
|
_nInput.focus();
|
701
724
|
|
702
|
-
/* This timeout is a little nasty - but IE appears to have some asyhnc behaviour for
|
725
|
+
/* This timeout is a little nasty - but IE appears to have some asyhnc behaviour for
|
703
726
|
* focus
|
704
727
|
*/
|
705
728
|
setTimeout( function(){ _bInputFocused = false; }, 0 );
|
@@ -723,6 +746,19 @@ function KeyTable ( oInit )
|
|
723
746
|
}
|
724
747
|
break;
|
725
748
|
|
749
|
+
case 36: /* home */
|
750
|
+
x = _iOldX;
|
751
|
+
y = 0;
|
752
|
+
break;
|
753
|
+
|
754
|
+
case 33: /* page up */
|
755
|
+
x = _iOldX;
|
756
|
+
y = _iOldY - 10;
|
757
|
+
if (y < 0) {
|
758
|
+
y = 0;
|
759
|
+
}
|
760
|
+
break;
|
761
|
+
|
726
762
|
case 9: /* tab */
|
727
763
|
case 39: /* right arrow */
|
728
764
|
if ( _iOldX < iTableWidth-1 ) {
|
@@ -741,7 +777,7 @@ function KeyTable ( oInit )
|
|
741
777
|
_bInputFocused = true;
|
742
778
|
_nInput.focus();
|
743
779
|
|
744
|
-
/* This timeout is a little nasty - but IE appears to have some asyhnc behaviour for
|
780
|
+
/* This timeout is a little nasty - but IE appears to have some asyhnc behaviour for
|
745
781
|
* focus
|
746
782
|
*/
|
747
783
|
setTimeout( function(){ _bInputFocused = false; }, 0 );
|
@@ -765,6 +801,19 @@ function KeyTable ( oInit )
|
|
765
801
|
}
|
766
802
|
break;
|
767
803
|
|
804
|
+
case 35: /* end */
|
805
|
+
x = _iOldX;
|
806
|
+
y = iTableHeight-1;
|
807
|
+
break;
|
808
|
+
|
809
|
+
case 34: /* page down */
|
810
|
+
x = _iOldX;
|
811
|
+
y = _iOldY+10;
|
812
|
+
if (y > iTableHeight-1) {
|
813
|
+
y = iTableHeight-1;
|
814
|
+
}
|
815
|
+
break;
|
816
|
+
|
768
817
|
default: /* Nothing we are interested in */
|
769
818
|
return true;
|
770
819
|
}
|
@@ -817,10 +866,9 @@ function KeyTable ( oInit )
|
|
817
866
|
{
|
818
867
|
if ( _oDatatable )
|
819
868
|
{
|
820
|
-
|
821
|
-
if ( typeof oSettings.aoData[ oSettings.aiDisplay[ y ] ] != 'undefined' )
|
869
|
+
if ( typeof _oDatatable.aoData[ _oDatatable.aiDisplay[ y ] ] != 'undefined' )
|
822
870
|
{
|
823
|
-
return
|
871
|
+
return _oDatatable.aoData[ _oDatatable.aiDisplay[ y ] ].nTr.getElementsByTagName('td')[x];
|
824
872
|
}
|
825
873
|
else
|
826
874
|
{
|
@@ -829,7 +877,7 @@ function KeyTable ( oInit )
|
|
829
877
|
}
|
830
878
|
else
|
831
879
|
{
|
832
|
-
return
|
880
|
+
return $('tr:eq('+y+')>td:eq('+x+')', _nBody )[0];
|
833
881
|
}
|
834
882
|
}
|
835
883
|
|
@@ -845,17 +893,16 @@ function KeyTable ( oInit )
|
|
845
893
|
{
|
846
894
|
if ( _oDatatable )
|
847
895
|
{
|
848
|
-
var oSettings = _oDatatable.fnSettings();
|
849
896
|
return [
|
850
|
-
|
851
|
-
|
897
|
+
$('td', n.parentNode).index(n),
|
898
|
+
$('tr', n.parentNode.parentNode).index(n.parentNode) + _oDatatable._iDisplayStart
|
852
899
|
];
|
853
900
|
}
|
854
901
|
else
|
855
902
|
{
|
856
903
|
return [
|
857
|
-
|
858
|
-
|
904
|
+
$('td', n.parentNode).index(n),
|
905
|
+
$('tr', n.parentNode.parentNode).index(n.parentNode)
|
859
906
|
];
|
860
907
|
}
|
861
908
|
}
|
@@ -925,10 +972,9 @@ function KeyTable ( oInit )
|
|
925
972
|
*/
|
926
973
|
function _fnFindDtCell( nTarget )
|
927
974
|
{
|
928
|
-
var
|
929
|
-
for ( var i=0, iLen=oSettings.aiDisplay.length ; i<iLen ; i++ )
|
975
|
+
for ( var i=0, iLen=_oDatatable.aiDisplay.length ; i<iLen ; i++ )
|
930
976
|
{
|
931
|
-
var nTr =
|
977
|
+
var nTr = _oDatatable.aoData[ _oDatatable.aiDisplay[i] ].nTr;
|
932
978
|
var nTds = nTr.getElementsByTagName('td');
|
933
979
|
for ( var j=0, jLen=nTds.length ; j<jLen ; j++ )
|
934
980
|
{
|
@@ -961,7 +1007,7 @@ function KeyTable ( oInit )
|
|
961
1007
|
* bool:initScroll - scroll the view port on load, default true
|
962
1008
|
* int:tabIndex - the tab index to give the hidden input element
|
963
1009
|
*/
|
964
|
-
function _fnInit( oInit, that )
|
1010
|
+
function _fnInit( table, datatable, oInit, that )
|
965
1011
|
{
|
966
1012
|
/* Save scope */
|
967
1013
|
_that = that;
|
@@ -975,18 +1021,15 @@ function KeyTable ( oInit )
|
|
975
1021
|
oInit.focus = [0,0];
|
976
1022
|
}
|
977
1023
|
|
978
|
-
|
979
|
-
|
980
|
-
} else {
|
981
|
-
$(oInit.table).addClass('KeyTable');
|
982
|
-
}
|
1024
|
+
oInit.table = table;
|
1025
|
+
$(oInit.table).addClass('KeyTable');
|
983
1026
|
|
984
1027
|
if ( typeof oInit.focusClass != 'undefined' ) {
|
985
1028
|
_sFocusClass = oInit.focusClass;
|
986
1029
|
}
|
987
1030
|
|
988
|
-
if ( typeof
|
989
|
-
_oDatatable =
|
1031
|
+
if ( typeof datatable != 'undefined' ) {
|
1032
|
+
_oDatatable = datatable;
|
990
1033
|
}
|
991
1034
|
|
992
1035
|
if ( typeof oInit.initScroll == 'undefined' ) {
|
@@ -1018,7 +1061,7 @@ function KeyTable ( oInit )
|
|
1018
1061
|
nDiv.appendChild(_nInput);
|
1019
1062
|
oInit.table.parentNode.insertBefore( nDiv, oInit.table.nextSibling );
|
1020
1063
|
|
1021
|
-
|
1064
|
+
$(_nInput).focus( function () {
|
1022
1065
|
/* See if we want to 'tab into' the table or out */
|
1023
1066
|
if ( !_bInputFocused )
|
1024
1067
|
{
|
@@ -1053,41 +1096,20 @@ function KeyTable ( oInit )
|
|
1053
1096
|
_fnCaptureKeys();
|
1054
1097
|
}
|
1055
1098
|
|
1056
|
-
/*
|
1057
|
-
|
1058
|
-
* Well - I hate myself for doing this, but it would appear that key events in browsers are
|
1059
|
-
* a complete mess, particulay when you consider arrow keys, which of course are one of the
|
1060
|
-
* main areas of interest here. So basically for arrow keys, there is no keypress event in
|
1061
|
-
* Safari and IE, while there is in Firefox and Opera. But Firefox and Opera don't repeat the
|
1062
|
-
* keydown event for an arrow key. OUCH. See the following two articles for more:
|
1063
|
-
* http://www.quirksmode.org/dom/events/keys.html
|
1064
|
-
* https://lists.webkit.org/pipermail/webkit-dev/2007-December/002992.html
|
1065
|
-
* http://unixpapa.com/js/key.html
|
1066
|
-
* PPK considers the IE / Safari method correct (good enough for me!) so we (urgh) detect
|
1067
|
-
* Mozilla and Opera and apply keypress for them, while everything else gets keydown. If
|
1068
|
-
* Mozilla or Opera change their implemention in future, this will need to be updated...
|
1069
|
-
* although at the time of writing (14th March 2009) Minefield still uses the 3.0 behaviour.
|
1070
|
-
*/
|
1071
|
-
if ( jQuery.browser.mozilla || jQuery.browser.opera )
|
1072
|
-
{
|
1073
|
-
jQuery(document).bind( "keypress", _fnKey );
|
1074
|
-
}
|
1075
|
-
else
|
1076
|
-
{
|
1077
|
-
jQuery(document).bind( "keydown", _fnKey );
|
1078
|
-
}
|
1099
|
+
/* Add event listeners */
|
1100
|
+
$(document).bind( "keydown", _fnKey );
|
1079
1101
|
|
1080
1102
|
if ( _oDatatable )
|
1081
1103
|
{
|
1082
|
-
|
1104
|
+
$(_oDatatable.nTable).on( 'click', 'td', _fnClick );
|
1083
1105
|
}
|
1084
1106
|
else
|
1085
1107
|
{
|
1086
|
-
|
1108
|
+
$(_nBody).on( 'click', 'td', _fnClick );
|
1087
1109
|
}
|
1088
1110
|
|
1089
1111
|
/* Loose table focus when click outside the table */
|
1090
|
-
|
1112
|
+
$(document).click( function(e) {
|
1091
1113
|
var nTarget = e.target;
|
1092
1114
|
var bTableClick = false;
|
1093
1115
|
while ( nTarget )
|
@@ -1106,6 +1128,44 @@ function KeyTable ( oInit )
|
|
1106
1128
|
} );
|
1107
1129
|
}
|
1108
1130
|
|
1131
|
+
var table, datatable;
|
1132
|
+
|
1133
|
+
if ( oInit === undefined ) {
|
1134
|
+
table = $('table.KeyTable')[0];
|
1135
|
+
datatable = null;
|
1136
|
+
}
|
1137
|
+
else if ( $.isPlainObject( oInit ) ) {
|
1138
|
+
table = oInit.table;
|
1139
|
+
datatable = oInit.datatable;
|
1140
|
+
}
|
1141
|
+
else {
|
1142
|
+
datatable = new $.fn.dataTable.Api( oInit ).settings()[0];
|
1143
|
+
table = datatable.nTable;
|
1144
|
+
}
|
1109
1145
|
/* Initialise our new object */
|
1110
|
-
_fnInit( oInit, this );
|
1111
|
-
}
|
1146
|
+
_fnInit( table, datatable, oInit, this );
|
1147
|
+
};
|
1148
|
+
|
1149
|
+
|
1150
|
+
KeyTable.version = "1.2.0";
|
1151
|
+
|
1152
|
+
|
1153
|
+
$.fn.dataTable.KeyTable = KeyTable;
|
1154
|
+
$.fn.DataTable.KeyTable = KeyTable;
|
1155
|
+
|
1156
|
+
|
1157
|
+
return KeyTable;
|
1158
|
+
}; // /factory
|
1159
|
+
|
1160
|
+
|
1161
|
+
// Define as an AMD module if possible
|
1162
|
+
if ( typeof define === 'function' && define.amd ) {
|
1163
|
+
define( 'datatables-keytable', ['jquery', 'datatables'], factory );
|
1164
|
+
}
|
1165
|
+
else if ( jQuery && !jQuery.fn.dataTable.KeyTable ) {
|
1166
|
+
// Otherwise simply initialise as normal, stopping multiple evaluation
|
1167
|
+
factory( jQuery, jQuery.fn.dataTable );
|
1168
|
+
}
|
1169
|
+
|
1170
|
+
|
1171
|
+
})(window, document);
|