bootswatch_rails 3.3.6.1 → 3.3.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ec924bc586bc2b0b5670d853f6f133cce1d08077
4
- data.tar.gz: d10bfe132e5d73fff157b42d57affb4c087b25d0
3
+ metadata.gz: 14fb638e90bd8c5be5dd3af57eb61af4c906f301
4
+ data.tar.gz: ab14050ce5a5aeb1540991960dbefa700380d7aa
5
5
  SHA512:
6
- metadata.gz: da8230316510d499c3e59d0ccb89ebab031252edd9a0144c15855f7f2c546863dbb702ad1e2bb58db4a6a2cac2590d5ed9c1dfdc2f8c02db2c64b3343635a286
7
- data.tar.gz: 4db9331126b00cf1add0c3c85801eff1e32c3f7fccb7723850126bbef03da3f130358f84ce8243c958efb3fe4de2deccf1bec0ca8b74bff12770ace33bcccd46
6
+ metadata.gz: c9edf1f12a9d517fdaf4f585fc08817ab6b61b39b6e40b9ba5e8960874d49c2c0c6c2d5cf7542e6dfa82144af5122913b04b4d3c54922a72c57d67fe02b252cf
7
+ data.tar.gz: 09b6e32eabc0335fbe12dadb2fd88af82541aa45b27b2be9a7287f0728832bec432b03fda7bcfb3b05050bc294bf111d872e30334b094af22006f9482710593d
Binary file
data/generate.sh CHANGED
@@ -11,8 +11,8 @@
11
11
  set -e
12
12
 
13
13
  # DataTables version
14
- DT_VER="1.10.10"
15
- DT_RESP="2.0.0"
14
+ DT_VER="1.10.11"
15
+ DT_RESP="2.0.2"
16
16
 
17
17
 
18
18
  if [ "$1" != "local" ] ; then
@@ -1,10 +1,10 @@
1
1
  module BootswatchRails
2
2
  BOOTSTRAP = "3.3.6"
3
3
  BOOTSWATCH = "3.3.6"
4
- FONT_AWESOME = "4.5.0"
5
- DATATABLES = "1.10.10"
6
- RESPONSIVE = "2.0.0"
7
- VERSION = "3.3.6.1"
4
+ FONT_AWESOME = "4.6.2"
5
+ DATATABLES = "1.10.11"
6
+ RESPONSIVE = "2.0.2"
7
+ VERSION = "3.3.6.2"
8
8
 
9
9
  THEMES = [:cerulean, :cosmo, :custom, :cyborg, :darkly, :flatly, :journal, :lumen, :paper, :readable, :sandstone, :simplex, :slate, :spacelab, :superhero, :united, :yeti]
10
10
  DEFAULT = 0
@@ -1,15 +1,15 @@
1
- /*! Responsive 2.0.0
2
- * 2014-2015 SpryMedia Ltd - datatables.net/license
1
+ /*! Responsive 2.0.2
2
+ * 2014-2016 SpryMedia Ltd - datatables.net/license
3
3
  */
4
4
 
5
5
  /**
6
6
  * @summary Responsive
7
7
  * @description Responsive tables plug-in for DataTables
8
- * @version 2.0.0
8
+ * @version 2.0.2
9
9
  * @file dataTables.responsive.js
10
10
  * @author SpryMedia Ltd (www.sprymedia.co.uk)
11
11
  * @contact www.sprymedia.co.uk/contact
12
- * @copyright Copyright 2014-2015 SpryMedia Ltd.
12
+ * @copyright Copyright 2014-2016 SpryMedia Ltd.
13
13
  *
14
14
  * This source file is free software, available under the following license:
15
15
  * MIT license - http://datatables.net/license/mit
@@ -113,9 +113,16 @@ var Responsive = function ( settings, opts ) {
113
113
  }
114
114
 
115
115
  // details is an object, but for simplicity the user can give it as a string
116
+ // or a boolean
116
117
  if ( opts && typeof opts.details === 'string' ) {
117
118
  opts.details = { type: opts.details };
118
119
  }
120
+ else if ( opts && opts.details === false ) {
121
+ opts.details = { type: false };
122
+ }
123
+ else if ( opts && opts.details === true ) {
124
+ opts.details = { type: 'inline' };
125
+ }
119
126
 
120
127
  this.c = $.extend( true, {}, Responsive.defaults, DataTable.defaults.responsive, opts );
121
128
  settings.responsive = this;
@@ -137,13 +144,21 @@ $.extend( Responsive.prototype, {
137
144
  var that = this;
138
145
  var dt = this.s.dt;
139
146
  var dtPrivateSettings = dt.settings()[0];
147
+ var oldWindowWidth = $(window).width();
140
148
 
141
149
  dt.settings()[0]._responsive = this;
142
150
 
143
151
  // Use DataTables' throttle function to avoid processor thrashing on
144
152
  // resize
145
153
  $(window).on( 'resize.dtr orientationchange.dtr', DataTable.util.throttle( function () {
146
- that._resize();
154
+ // iOS has a bug whereby resize can fire when only scrolling
155
+ // See: http://stackoverflow.com/questions/8898412
156
+ var width = $(window).width();
157
+
158
+ if ( width !== oldWindowWidth ) {
159
+ that._resize();
160
+ oldWindowWidth = width;
161
+ }
147
162
  } ) );
148
163
 
149
164
  // DataTables doesn't currently trigger an event when a row is added, so
@@ -187,6 +202,7 @@ $.extend( Responsive.prototype, {
187
202
 
188
203
  // Details handler
189
204
  var details = this.c.details;
205
+
190
206
  if ( details.type !== false ) {
191
207
  that._detailsInit();
192
208
 
@@ -209,11 +225,24 @@ $.extend( Responsive.prototype, {
209
225
  }
210
226
 
211
227
  dt.on( 'column-reorder.dtr', function (e, settings, details) {
212
- // This requires ColReorder 1.2.1 or newer
213
- if ( details.drop ) {
214
- that._classLogic();
215
- that._resizeAuto();
216
- that._resize();
228
+ that._classLogic();
229
+ that._resizeAuto();
230
+ that._resize();
231
+ } );
232
+
233
+ // Change in column sizes means we need to calc
234
+ dt.on( 'column-sizing.dtr', function () {
235
+ that._resize();
236
+ });
237
+
238
+ dt.on( 'init.dtr', function (e, settings, details) {
239
+ that._resizeAuto();
240
+ that._resize();
241
+
242
+ // If columns were hidden, then DataTables needs to adjust the
243
+ // column sizing
244
+ if ( $.inArray( false, that.s.current ) ) {
245
+ dt.columns.adjust();
217
246
  }
218
247
  } );
219
248
 
@@ -261,7 +290,6 @@ $.extend( Responsive.prototype, {
261
290
  return a.columnIdx - b.columnIdx;
262
291
  } );
263
292
 
264
-
265
293
  // Class logic - determine which columns are in this breakpoint based
266
294
  // on the classes. If no class control (i.e. `auto`) then `-` is used
267
295
  // to indicate this to the rest of the function
@@ -375,8 +403,10 @@ $.extend( Responsive.prototype, {
375
403
  var priority = dt.settings()[0].aoColumns[i].responsivePriority;
376
404
 
377
405
  if ( priority === undefined ) {
378
- priority = $(column.header).data('priority') !== undefined ?
379
- $(column.header).data('priority') * 1 :
406
+ var dataPriority = $(column.header()).data('priority');
407
+
408
+ priority = dataPriority !== undefined ?
409
+ dataPriority * 1 :
380
410
  10000;
381
411
  }
382
412
 
@@ -509,15 +539,18 @@ $.extend( Responsive.prototype, {
509
539
  {
510
540
  var that = this;
511
541
  var dt = this.s.dt;
542
+ var details = this.c.details;
512
543
 
513
- var res = this.c.details.display( row, update, function () {
514
- return that.c.details.renderer(
515
- dt, row[0], that._detailsObj(row[0])
516
- );
517
- } );
544
+ if ( details && details.type ) {
545
+ var res = details.display( row, update, function () {
546
+ return details.renderer(
547
+ dt, row[0], that._detailsObj(row[0])
548
+ );
549
+ } );
518
550
 
519
- if ( res === true || res === false ) {
520
- $(dt.table().node()).triggerHandler( 'responsive-display.dt', [dt, row, res, update] );
551
+ if ( res === true || res === false ) {
552
+ $(dt.table().node()).triggerHandler( 'responsive-display.dt', [dt, row, res, update] );
553
+ }
521
554
  }
522
555
  },
523
556
 
@@ -535,7 +568,7 @@ $.extend( Responsive.prototype, {
535
568
 
536
569
  // The inline type always uses the first child as the target
537
570
  if ( details.type === 'inline' ) {
538
- details.target = 'td:first-child';
571
+ details.target = 'td:first-child, th:first-child';
539
572
  }
540
573
 
541
574
  // Keyboard accessibility
@@ -544,7 +577,7 @@ $.extend( Responsive.prototype, {
544
577
  } );
545
578
  that._tabIndexes(); // Initial draw has already happened
546
579
 
547
- $( dt.table().body() ).on( 'keyup.dtr', 'td', function (e) {
580
+ $( dt.table().body() ).on( 'keyup.dtr', 'td, th', function (e) {
548
581
  if ( e.keyCode === 13 && $(this).data('dtr-keyboard') ) {
549
582
  $(this).click();
550
583
  }
@@ -552,15 +585,11 @@ $.extend( Responsive.prototype, {
552
585
 
553
586
  // type.target can be a string jQuery selector or a column index
554
587
  var target = details.target;
555
- var selector = typeof target === 'string' ? target : 'td';
588
+ var selector = typeof target === 'string' ? target : 'td, th';
556
589
 
557
590
  // Click handler to show / hide the details rows when they are available
558
591
  $( dt.table().body() )
559
- .on( 'mousedown.dtr', selector, function (e) {
560
- // For mouse users, prevent the focus ring from showing
561
- e.preventDefault();
562
- } )
563
- .on( 'click.dtr', selector, function () {
592
+ .on( 'click.dtr mousedown.dtr mouseup.dtr', selector, function (e) {
564
593
  // If the table is not collapsed (i.e. there is no hidden columns)
565
594
  // then take no action
566
595
  if ( ! $(dt.table().node()).hasClass('collapsed' ) ) {
@@ -587,10 +616,21 @@ $.extend( Responsive.prototype, {
587
616
  // $().closest() includes itself in its check
588
617
  var row = dt.row( $(this).closest('tr') );
589
618
 
590
- // The renderer is given as a function so the caller can execute it
591
- // only when they need (i.e. if hiding there is no point is running
592
- // the renderer)
593
- that._detailsDisplay( row, false );
619
+ // Check event type to do an action
620
+ if ( e.type === 'click' ) {
621
+ // The renderer is given as a function so the caller can execute it
622
+ // only when they need (i.e. if hiding there is no point is running
623
+ // the renderer)
624
+ that._detailsDisplay( row, false );
625
+ }
626
+ else if ( e.type === 'mousedown' ) {
627
+ // For mouse users, prevent the focus ring from showing
628
+ $(this).css('outline', 'none');
629
+ }
630
+ else if ( e.type === 'mouseup' ) {
631
+ // And then re-allow at the end of the click
632
+ $(this).blur().css('outline', '');
633
+ }
594
634
  } );
595
635
  },
596
636
 
@@ -611,9 +651,11 @@ $.extend( Responsive.prototype, {
611
651
  }
612
652
 
613
653
  return {
614
- title: dt.settings()[0].aoColumns[ i ].sTitle,
615
- data: dt.cell( rowIdx, i ).render( that.c.orthogonal ),
616
- hidden: dt.column( i ).visible() && !that.s.current[ i ]
654
+ title: dt.settings()[0].aoColumns[ i ].sTitle,
655
+ data: dt.cell( rowIdx, i ).render( that.c.orthogonal ),
656
+ hidden: dt.column( i ).visible() && !that.s.current[ i ],
657
+ columnIndex: i,
658
+ rowIndex: rowIdx
617
659
  };
618
660
  } );
619
661
  },
@@ -692,7 +734,7 @@ $.extend( Responsive.prototype, {
692
734
  // any columns that are not visible but can be shown
693
735
  var collapsedClass = false;
694
736
  for ( i=0, ien=columns.length ; i<ien ; i++ ) {
695
- if ( columnsVis[i] === false && ! columns[i].never ) {
737
+ if ( columnsVis[i] === false && ! columns[i].never && ! columns[i].control ) {
696
738
  collapsedClass = true;
697
739
  break;
698
740
  }
@@ -711,6 +753,9 @@ $.extend( Responsive.prototype, {
711
753
 
712
754
  if ( changed ) {
713
755
  this._redrawChildren();
756
+
757
+ // Inform listeners of the change
758
+ $(dt.table().node()).trigger( 'responsive-resize.dt', [dt, this.s.current] );
714
759
  }
715
760
  },
716
761
 
@@ -744,7 +789,7 @@ $.extend( Responsive.prototype, {
744
789
  var columnWidths = dt.columns;
745
790
  var clonedTable = dt.table().node().cloneNode( false );
746
791
  var clonedHeader = $( dt.table().header().cloneNode( false ) ).appendTo( clonedTable );
747
- var clonedBody = $( dt.table().body().cloneNode( false ) ).appendTo( clonedTable );
792
+ var clonedBody = $( dt.table().body() ).clone( false, false ).empty().appendTo( clonedTable ); // use jQuery because of IE8
748
793
 
749
794
  // Header
750
795
  var headerCells = dt.columns()
@@ -961,12 +1006,6 @@ Responsive.display = {
961
1006
  )
962
1007
  .appendTo( 'body' );
963
1008
 
964
- if ( options && options.header ) {
965
- modal.find( 'div.dtr-modal-content' ).prepend(
966
- '<h2>'+options.header( row )+'</h2>'
967
- );
968
- }
969
-
970
1009
  $(document).on( 'keyup.dtr', function (e) {
971
1010
  if ( e.keyCode === 27 ) {
972
1011
  e.stopPropagation();
@@ -980,6 +1019,12 @@ Responsive.display = {
980
1019
  .empty()
981
1020
  .append( render() );
982
1021
  }
1022
+
1023
+ if ( options && options.header ) {
1024
+ $('div.dtr-modal-content').prepend(
1025
+ '<h2>'+options.header( row )+'</h2>'
1026
+ );
1027
+ }
983
1028
  };
984
1029
  }
985
1030
  };
@@ -1036,7 +1081,7 @@ Responsive.defaults = {
1036
1081
  renderer: function ( api, rowIdx, columns ) {
1037
1082
  var data = $.map( columns, function ( col, i ) {
1038
1083
  return col.hidden ?
1039
- '<li data-dtr-index="'+i+'">'+
1084
+ '<li data-dtr-index="'+col.columnIndex+'" data-dt-row="'+col.rowIndex+'" data-dt-column="'+col.columnIndex+'">'+
1040
1085
  '<span class="dtr-title">'+
1041
1086
  col.title+
1042
1087
  '</span> '+
@@ -1118,7 +1163,7 @@ Api.register( 'responsive.hasHidden()', function () {
1118
1163
  * @name Responsive.version
1119
1164
  * @static
1120
1165
  */
1121
- Responsive.version = '2.0.0';
1166
+ Responsive.version = '2.0.2';
1122
1167
 
1123
1168
 
1124
1169
  $.fn.dataTable.Responsive = Responsive;
@@ -1126,7 +1171,7 @@ $.fn.DataTable.Responsive = Responsive;
1126
1171
 
1127
1172
  // Attach a listener to the document which listens for DataTables initialisation
1128
1173
  // events so we can automatically initialise
1129
- $(document).on( 'init.dt.dtr', function (e, settings, json) {
1174
+ $(document).on( 'preInit.dt.dtr', function (e, settings, json) {
1130
1175
  if ( e.namespace !== 'dt' ) {
1131
1176
  return;
1132
1177
  }
@@ -1,11 +1,11 @@
1
- /*! DataTables 1.10.10
1
+ /*! DataTables 1.10.11
2
2
  * ©2008-2015 SpryMedia Ltd - datatables.net/license
3
3
  */
4
4
 
5
5
  /**
6
6
  * @summary DataTables
7
7
  * @description Paginate, search and order HTML tables
8
- * @version 1.10.10
8
+ * @version 1.10.11
9
9
  * @file jquery.dataTables.js
10
10
  * @author SpryMedia Ltd (www.sprymedia.co.uk)
11
11
  * @contact www.sprymedia.co.uk/contact
@@ -744,6 +744,7 @@
744
744
  oCol._bAttrSrc = $.isPlainObject( mDataSrc ) && (
745
745
  attrTest(mDataSrc.sort) || attrTest(mDataSrc.type) || attrTest(mDataSrc.filter)
746
746
  );
747
+ oCol._setter = null;
747
748
 
748
749
  oCol.fnGetData = function (rowData, type, meta) {
749
750
  var innerData = mData( rowData, type, undefined, meta );
@@ -868,7 +869,7 @@
868
869
  */
869
870
  function _fnVisbleColumns( oSettings )
870
871
  {
871
- return _fnGetColumns( oSettings, 'bVisible' ).length;
872
+ return $( _pluck( oSettings.aoColumns, 'nTh' ) ).filter(':visible').length;
872
873
  }
873
874
 
874
875
 
@@ -1174,8 +1175,9 @@
1174
1175
  return defaultContent;
1175
1176
  }
1176
1177
 
1177
- /* When the data source is null, we can use default column data */
1178
- if ( (cellData === rowData || cellData === null) && defaultContent !== null ) {
1178
+ // When the data source is null and a specific data type is requested (i.e.
1179
+ // not the original data), we can use default column data
1180
+ if ( (cellData === rowData || cellData === null) && defaultContent !== null && type !== undefined ) {
1179
1181
  cellData = defaultContent;
1180
1182
  }
1181
1183
  else if ( typeof cellData === 'function' ) {
@@ -1771,8 +1773,9 @@
1771
1773
  cells.push( nTd );
1772
1774
 
1773
1775
  // Need to create the HTML if new, or if a rendering function is defined
1774
- if ( !nTrIn || oCol.mRender || oCol.mData !== i )
1775
- {
1776
+ if ( (!nTrIn || oCol.mRender || oCol.mData !== i) &&
1777
+ (!$.isPlainObject(oCol.mData) || oCol.mData._ !== i+'.display')
1778
+ ) {
1776
1779
  nTd.innerHTML = _fnGetCellData( oSettings, iRow, i, 'display' );
1777
1780
  }
1778
1781
 
@@ -3876,11 +3879,12 @@
3876
3879
  footer = settings.nTFoot ? $(settings.nTFoot) : null,
3877
3880
  browser = settings.oBrowser,
3878
3881
  ie67 = browser.bScrollOversize,
3882
+ dtHeaderCells = _pluck( settings.aoColumns, 'nTh' ),
3879
3883
  headerTrgEls, footerTrgEls,
3880
3884
  headerSrcEls, footerSrcEls,
3881
3885
  headerCopy, footerCopy,
3882
3886
  headerWidths=[], footerWidths=[],
3883
- headerContent=[],
3887
+ headerContent=[], footerContent=[],
3884
3888
  idx, correction, sanityWidth,
3885
3889
  zeroOut = function(nSizer) {
3886
3890
  var style = nSizer.style;
@@ -3912,18 +3916,18 @@
3912
3916
  // Remove the old minimised thead and tfoot elements in the inner table
3913
3917
  table.children('thead, tfoot').remove();
3914
3918
 
3915
- // Clone the current header and footer elements and then place it into the inner table
3916
- headerCopy = header.clone().prependTo( table );
3917
- headerTrgEls = header.find('tr'); // original header is in its own table
3918
- headerSrcEls = headerCopy.find('tr');
3919
- headerCopy.find('th, td').removeAttr('tabindex');
3920
-
3921
3919
  if ( footer ) {
3922
3920
  footerCopy = footer.clone().prependTo( table );
3923
3921
  footerTrgEls = footer.find('tr'); // the original tfoot is in its own table and must be sized
3924
3922
  footerSrcEls = footerCopy.find('tr');
3925
3923
  }
3926
3924
 
3925
+ // Clone the current header and footer elements and then place it into the inner table
3926
+ headerCopy = header.clone().prependTo( table );
3927
+ headerTrgEls = header.find('tr'); // original header is in its own table
3928
+ headerSrcEls = headerCopy.find('tr');
3929
+ headerCopy.find('th, td').removeAttr('tabindex');
3930
+
3927
3931
 
3928
3932
  /*
3929
3933
  * 2. Take live measurements from the DOM - do not alter the DOM itself!
@@ -3989,7 +3993,11 @@
3989
3993
 
3990
3994
  // Apply all widths in final pass
3991
3995
  _fnApplyToChildren( function(nToSize, i) {
3992
- nToSize.style.width = headerWidths[i];
3996
+ // Only apply widths to the DataTables detected header cells - this
3997
+ // prevents complex headers from having contradictory sizes applied
3998
+ if ( $.inArray( nToSize, dtHeaderCells ) !== -1 ) {
3999
+ nToSize.style.width = headerWidths[i];
4000
+ }
3993
4001
  }, headerTrgEls );
3994
4002
 
3995
4003
  $(headerSrcEls).height(0);
@@ -4000,6 +4008,7 @@
4000
4008
  _fnApplyToChildren( zeroOut, footerSrcEls );
4001
4009
 
4002
4010
  _fnApplyToChildren( function(nSizer) {
4011
+ footerContent.push( nSizer.innerHTML );
4003
4012
  footerWidths.push( _fnStringToCss( $(nSizer).css('width') ) );
4004
4013
  }, footerSrcEls );
4005
4014
 
@@ -4027,7 +4036,7 @@
4027
4036
  if ( footer )
4028
4037
  {
4029
4038
  _fnApplyToChildren( function(nSizer, i) {
4030
- nSizer.innerHTML = "";
4039
+ nSizer.innerHTML = '<div class="dataTables_sizing" style="height:0;overflow:hidden;">'+footerContent[i]+'</div>';
4031
4040
  nSizer.style.width = footerWidths[i];
4032
4041
  }, footerSrcEls );
4033
4042
  }
@@ -4098,6 +4107,9 @@
4098
4107
  divFooterInner[0].style[padding] = bScrolling ? barWidth+"px" : "0px";
4099
4108
  }
4100
4109
 
4110
+ // Correct DOM ordering for colgroup - comes before the thead
4111
+ table.children('colgroup').insertBefore( table.children('thead') );
4112
+
4101
4113
  /* Adjust the position of the header in case we loose the y-scrollbar */
4102
4114
  divBody.scroll();
4103
4115
 
@@ -4271,6 +4283,10 @@
4271
4283
  }
4272
4284
  }
4273
4285
 
4286
+ // Tidy the temporary table - remove name attributes so there aren't
4287
+ // duplicated in the dom (radio elements for example)
4288
+ $('[name]', tmpTable).removeAttr('name');
4289
+
4274
4290
  // Table has been built, attach to the document so we can work with it.
4275
4291
  // A holding element is used, positioned at the top of the container
4276
4292
  // with minimal height, so it has no effect on if the container scrolls
@@ -7789,9 +7805,17 @@
7789
7805
 
7790
7806
  // Selector - node
7791
7807
  if ( sel.nodeName ) {
7792
- if ( $.inArray( sel, nodes ) !== -1 ) {
7793
- return [ sel._DT_RowIndex ]; // sel is a TR node that is in the table
7794
- // and DataTables adds a prop for fast lookup
7808
+ if ( sel._DT_RowIndex !== undefined ) {
7809
+ return [ sel._DT_RowIndex ]; // Property added by DT for fast lookup
7810
+ }
7811
+ else if ( sel._DT_CellIndex ) {
7812
+ return [ sel._DT_CellIndex.row ];
7813
+ }
7814
+ else {
7815
+ var host = $(sel).closest('*[data-dt-row]');
7816
+ return host.length ?
7817
+ [ host.data('dt-row') ] :
7818
+ [];
7795
7819
  }
7796
7820
  }
7797
7821
 
@@ -8351,17 +8375,35 @@
8351
8375
  return $.map( names, function (name, i) {
8352
8376
  return name === match[1] ? i : null;
8353
8377
  } );
8378
+
8379
+ default:
8380
+ return [];
8354
8381
  }
8355
8382
  }
8356
- else {
8357
- // jQuery selector on the TH elements for the columns
8358
- return $( nodes )
8359
- .filter( s )
8360
- .map( function () {
8361
- return $.inArray( this, nodes ); // `nodes` is column index complete and in order
8362
- } )
8363
- .toArray();
8383
+
8384
+ // Cell in the table body
8385
+ if ( s.nodeName && s._DT_CellIndex ) {
8386
+ return [ s._DT_CellIndex.column ];
8364
8387
  }
8388
+
8389
+ // jQuery selector on the TH elements for the columns
8390
+ var jqResult = $( nodes )
8391
+ .filter( s )
8392
+ .map( function () {
8393
+ return $.inArray( this, nodes ); // `nodes` is column index complete and in order
8394
+ } )
8395
+ .toArray();
8396
+
8397
+ if ( jqResult.length || ! s.nodeName ) {
8398
+ return jqResult;
8399
+ }
8400
+
8401
+ // Otherwise a node which might have a `dt-column` data attribute, or be
8402
+ // a child or such an element
8403
+ var host = $(s).closest('*[data-dt-column]');
8404
+ return host.length ?
8405
+ [ host.data('dt-column') ] :
8406
+ [];
8365
8407
  };
8366
8408
 
8367
8409
  return _selector_run( 'column', selector, run, settings, opts );
@@ -8414,11 +8456,6 @@
8414
8456
  if ( recalc === undefined || recalc ) {
8415
8457
  // Automatically adjust column sizing
8416
8458
  _fnAdjustColumnSizing( settings );
8417
-
8418
- // Realign columns for scrolling
8419
- if ( settings.oScroll.sX || settings.oScroll.sY ) {
8420
- _fnScrollDraw( settings );
8421
- }
8422
8459
  }
8423
8460
 
8424
8461
  _fnCallbackFire( settings, null, 'column-visibility', [settings, column, vis, recalc] );
@@ -8579,7 +8616,7 @@
8579
8616
  }
8580
8617
 
8581
8618
  // Selector - jQuery filtered cells
8582
- return allCells
8619
+ var jqResult = allCells
8583
8620
  .filter( s )
8584
8621
  .map( function (i, el) {
8585
8622
  return { // use a new object, in case someone changes the values
@@ -8588,6 +8625,21 @@
8588
8625
  };
8589
8626
  } )
8590
8627
  .toArray();
8628
+
8629
+ if ( jqResult.length || ! s.nodeName ) {
8630
+ return jqResult;
8631
+ }
8632
+
8633
+ // Otherwise the selector is a node, and there is one last option - the
8634
+ // element might be a child of an element which has dt-row and dt-column
8635
+ // data attributes
8636
+ host = $(s).closest('*[data-dt-row]');
8637
+ return host.length ?
8638
+ [ {
8639
+ row: host.data('dt-row'),
8640
+ column: host.data('dt-column')
8641
+ } ] :
8642
+ [];
8591
8643
  };
8592
8644
 
8593
8645
  return _selector_run( 'cell', selector, run, settings, opts );
@@ -8655,9 +8707,10 @@
8655
8707
 
8656
8708
  _api_registerPlural( 'cells().nodes()', 'cell().node()', function () {
8657
8709
  return this.iterator( 'cell', function ( settings, row, column ) {
8658
- var cells = settings.aoData[ row ].anCells;
8659
- return cells ?
8660
- cells[ column ] :
8710
+ var data = settings.aoData[ row ];
8711
+
8712
+ return data && data.anCells ?
8713
+ data.anCells[ column ] :
8661
8714
  undefined;
8662
8715
  }, 1 );
8663
8716
  } );
@@ -9305,7 +9358,7 @@
9305
9358
  * @type string
9306
9359
  * @default Version number
9307
9360
  */
9308
- DataTable.version = "1.10.10";
9361
+ DataTable.version = "1.10.11";
9309
9362
 
9310
9363
  /**
9311
9364
  * Private data store, containing all of the settings objects that are
@@ -14826,6 +14879,12 @@
14826
14879
  * to make working with DataTables a little bit easier.
14827
14880
  */
14828
14881
 
14882
+ var __htmlEscapeEntities = function ( d ) {
14883
+ return typeof d === 'string' ?
14884
+ d.replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;') :
14885
+ d;
14886
+ };
14887
+
14829
14888
  /**
14830
14889
  * Helpers for `columns.render`.
14831
14890
  *
@@ -14864,9 +14923,10 @@
14864
14923
  var flo = parseFloat( d );
14865
14924
 
14866
14925
  // If NaN then there isn't much formatting that we can do - just
14867
- // return immediately
14926
+ // return immediately, escaping any HTML (this was supposed to
14927
+ // be a number after all)
14868
14928
  if ( isNaN( flo ) ) {
14869
- return d;
14929
+ return __htmlEscapeEntities( d );
14870
14930
  }
14871
14931
 
14872
14932
  d = Math.abs( flo );
@@ -14888,11 +14948,7 @@
14888
14948
 
14889
14949
  text: function () {
14890
14950
  return {
14891
- display: function ( d ) {
14892
- return typeof d === 'string' ?
14893
- d.replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;') :
14894
- d;
14895
- }
14951
+ display: __htmlEscapeEntities
14896
14952
  };
14897
14953
  }
14898
14954
  };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * bootswatch v3.3.6
3
3
  * Homepage: http://bootswatch.com
4
- * Copyright 2012-2015 Thomas Park
4
+ * Copyright 2012-2016 Thomas Park
5
5
  * Licensed under MIT
6
6
  * Based on Bootstrap
7
7
  */
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * bootswatch v3.3.6
3
3
  * Homepage: http://bootswatch.com
4
- * Copyright 2012-2015 Thomas Park
4
+ * Copyright 2012-2016 Thomas Park
5
5
  * Licensed under MIT
6
6
  * Based on Bootstrap
7
7
  */
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -4512,7 +4512,7 @@ select[multiple].input-group-sm > .input-group-btn > .btn {
4512
4512
  background-color: transparent;
4513
4513
  }
4514
4514
  .navbar-default .navbar-text {
4515
- color: #777777;
4515
+ color: #ffffff;
4516
4516
  }
4517
4517
  .navbar-default .navbar-nav > li > a {
4518
4518
  color: #ffffff;
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -4512,7 +4512,7 @@ select[multiple].input-group-sm > .input-group-btn > .btn {
4512
4512
  background-color: transparent;
4513
4513
  }
4514
4514
  .navbar-default .navbar-text {
4515
- color: #777777;
4515
+ color: #ffffff;
4516
4516
  }
4517
4517
  .navbar-default .navbar-nav > li > a {
4518
4518
  color: #ffffff;
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -7424,7 +7424,7 @@ input[type="checkbox"]:disabled:checked:after,
7424
7424
  .alert-danger {
7425
7425
  background-color: #e51c23;
7426
7426
  }
7427
- .alert a:not(.close),
7427
+ .alert a:not(.close):not(.btn),
7428
7428
  .alert .alert-link {
7429
7429
  color: #fff;
7430
7430
  font-weight: bold;
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -27,6 +27,7 @@ table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
27
27
  border-radius: 16px;
28
28
  box-shadow: 0 0 3px #444;
29
29
  box-sizing: content-box;
30
+ text-align: left;
30
31
  font-family: 'Courier New', Courier, monospace;
31
32
  text-indent: 4px;
32
33
  line-height: 16px;
@@ -75,6 +76,7 @@ table.dataTable.dtr-column > tbody > tr > th.control:before {
75
76
  border-radius: 16px;
76
77
  box-shadow: 0 0 3px #444;
77
78
  box-sizing: content-box;
79
+ text-align: left;
78
80
  font-family: 'Courier New', Courier, monospace;
79
81
  text-indent: 4px;
80
82
  line-height: 16px;
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -2561,7 +2561,7 @@ output {
2561
2561
  color: #272b30;
2562
2562
  background-color: #ffffff;
2563
2563
  background-image: none;
2564
- border: 1px solid #cccccc;
2564
+ border: 1px solid #000000;
2565
2565
  border-radius: 4px;
2566
2566
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
2567
2567
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
@@ -3909,7 +3909,7 @@ select[multiple].input-group-sm > .input-group-btn > .btn {
3909
3909
  color: #272b30;
3910
3910
  text-align: center;
3911
3911
  background-color: #999999;
3912
- border: 1px solid #cccccc;
3912
+ border: 1px solid rgba(0, 0, 0, 0.6);
3913
3913
  border-radius: 4px;
3914
3914
  }
3915
3915
  .input-group-addon.input-sm {
@@ -7013,8 +7013,8 @@ textarea {
7013
7013
  border-color: #f89406;
7014
7014
  }
7015
7015
  .has-warning .input-group-addon {
7016
- background-color: #272b30;
7017
- border: none;
7016
+ background-color: #3a3f44;
7017
+ border-color: rgba(0, 0, 0, 0.6);
7018
7018
  }
7019
7019
  .has-error .help-block,
7020
7020
  .has-error .control-label,
@@ -7034,8 +7034,8 @@ textarea {
7034
7034
  border-color: #ee5f5b;
7035
7035
  }
7036
7036
  .has-error .input-group-addon {
7037
- background-color: #272b30;
7038
- border: none;
7037
+ background-color: #3a3f44;
7038
+ border-color: rgba(0, 0, 0, 0.6);
7039
7039
  }
7040
7040
  .has-success .help-block,
7041
7041
  .has-success .control-label,
@@ -7055,15 +7055,14 @@ textarea {
7055
7055
  border-color: #62c462;
7056
7056
  }
7057
7057
  .has-success .input-group-addon {
7058
- background-color: #272b30;
7059
- border: none;
7058
+ background-color: #3a3f44;
7059
+ border-color: rgba(0, 0, 0, 0.6);
7060
7060
  }
7061
7061
  legend {
7062
7062
  color: #fff;
7063
7063
  }
7064
7064
  .input-group-addon {
7065
- border-color: rgba(0, 0, 0, 0.6);
7066
- text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
7065
+ background-color: #3a3f44;
7067
7066
  background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
7068
7067
  background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
7069
7068
  background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
@@ -7072,6 +7071,7 @@ legend {
7072
7071
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
7073
7072
  -webkit-filter: none;
7074
7073
  filter: none;
7074
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
7075
7075
  color: #ffffff;
7076
7076
  }
7077
7077
  .nav .open > a,
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -6869,6 +6869,10 @@ label,
6869
6869
  .has-warning .form-control-feedback {
6870
6870
  color: #f0ad4e;
6871
6871
  }
6872
+ .has-warning .form-control,
6873
+ .has-warning .form-control:focus {
6874
+ border: 4px solid #f0ad4e;
6875
+ }
6872
6876
  .has-warning .input-group-addon {
6873
6877
  border: none;
6874
6878
  }
@@ -6885,6 +6889,10 @@ label,
6885
6889
  .has-error .form-control-feedback {
6886
6890
  color: #d9534f;
6887
6891
  }
6892
+ .has-error .form-control,
6893
+ .has-error .form-control:focus {
6894
+ border: 4px solid #d9534f;
6895
+ }
6888
6896
  .has-error .input-group-addon {
6889
6897
  border: none;
6890
6898
  }
@@ -6901,6 +6909,10 @@ label,
6901
6909
  .has-success .form-control-feedback {
6902
6910
  color: #5cb85c;
6903
6911
  }
6912
+ .has-success .form-control,
6913
+ .has-success .form-control:focus {
6914
+ border: 4px solid #5cb85c;
6915
+ }
6904
6916
  .has-success .input-group-addon {
6905
6917
  border: none;
6906
6918
  }
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -2,7 +2,7 @@
2
2
  /*!
3
3
  * bootswatch v3.3.6
4
4
  * Homepage: http://bootswatch.com
5
- * Copyright 2012-2015 Thomas Park
5
+ * Copyright 2012-2016 Thomas Park
6
6
  * Licensed under MIT
7
7
  * Based on Bootstrap
8
8
  */
@@ -6783,6 +6783,10 @@ button.close {
6783
6783
  height: auto;
6784
6784
  padding: 4px 6px;
6785
6785
  }
6786
+ .navbar-text {
6787
+ margin: 12px 15px;
6788
+ line-height: 21px;
6789
+ }
6786
6790
  .navbar .dropdown-menu {
6787
6791
  border: none;
6788
6792
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bootswatch_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.6.1
4
+ version: 3.3.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Volker Wiegand
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-27 00:00:00.000000000 Z
11
+ date: 2016-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -86,6 +86,7 @@ files:
86
86
  - cleditor/jquery.cleditor.js
87
87
  - cleditor/jquery.cleditor.min.js
88
88
  - datatables/DataTables-1.10.10.zip
89
+ - datatables/DataTables-1.10.11.zip
89
90
  - datatables/DataTables-1.10.9.zip
90
91
  - generate.sh
91
92
  - lib/bootswatch_rails.rb
@@ -205,7 +206,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
205
206
  version: '0'
206
207
  requirements: []
207
208
  rubyforge_project:
208
- rubygems_version: 2.5.1
209
+ rubygems_version: 2.6.4
209
210
  signing_key:
210
211
  specification_version: 4
211
212
  summary: Add bootswatch.com themes to the Rails asset pipeline