bootstrap-table-rails 1.8.2 → 1.8.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +68 -29
  3. data/bootstrap-table-rails-1.8.2.gem +0 -0
  4. data/lib/bootstrap-table-rails/version.rb +1 -1
  5. data/vendor/assets/javascripts/bootstrap-table-all.js +5177 -9
  6. data/vendor/assets/javascripts/bootstrap-table-locale-all.js +1500 -6
  7. data/vendor/assets/javascripts/bootstrap-table.js +2506 -8
  8. data/vendor/assets/javascripts/extensions/bootstrap-table-angular.js +105 -7
  9. data/vendor/assets/javascripts/extensions/bootstrap-table-cookie.js +318 -7
  10. data/vendor/assets/javascripts/extensions/bootstrap-table-editable.js +107 -7
  11. data/vendor/assets/javascripts/extensions/bootstrap-table-export.js +103 -7
  12. data/vendor/assets/javascripts/extensions/bootstrap-table-filter-control.js +458 -7
  13. data/vendor/assets/javascripts/extensions/bootstrap-table-filter.js +67 -7
  14. data/vendor/assets/javascripts/extensions/bootstrap-table-flat-json.js +62 -7
  15. data/vendor/assets/javascripts/extensions/bootstrap-table-group-by.js +228 -0
  16. data/vendor/assets/javascripts/extensions/bootstrap-table-key-events.js +80 -7
  17. data/vendor/assets/javascripts/extensions/bootstrap-table-mobile.js +142 -7
  18. data/vendor/assets/javascripts/extensions/bootstrap-table-multiple-sort.js +378 -7
  19. data/vendor/assets/javascripts/extensions/bootstrap-table-natural-sorting.js +47 -7
  20. data/vendor/assets/javascripts/extensions/bootstrap-table-reorder-columns.js +130 -7
  21. data/vendor/assets/javascripts/extensions/bootstrap-table-reorder-rows.js +115 -7
  22. data/vendor/assets/javascripts/extensions/bootstrap-table-resizable.js +74 -7
  23. data/vendor/assets/javascripts/extensions/bootstrap-table-toolbar.js +245 -7
  24. data/vendor/assets/javascripts/locale/bootstrap-table-ar-SA.js +40 -0
  25. data/vendor/assets/javascripts/locale/bootstrap-table-ca-ES.js +43 -0
  26. data/vendor/assets/javascripts/locale/bootstrap-table-cs-CZ.js +44 -0
  27. data/vendor/assets/javascripts/locale/bootstrap-table-da-DK.js +37 -0
  28. data/vendor/assets/javascripts/locale/bootstrap-table-de-DE.js +37 -0
  29. data/vendor/assets/javascripts/locale/bootstrap-table-el-GR.js +28 -0
  30. data/vendor/assets/javascripts/locale/bootstrap-table-en-US.js +43 -0
  31. data/vendor/assets/javascripts/locale/bootstrap-table-es-AR.js +31 -0
  32. data/vendor/assets/javascripts/locale/bootstrap-table-es-CR.js +40 -0
  33. data/vendor/assets/javascripts/locale/bootstrap-table-es-ES.js +43 -0
  34. data/vendor/assets/javascripts/locale/bootstrap-table-es-MX.js +32 -0
  35. data/vendor/assets/javascripts/locale/bootstrap-table-es-NI.js +40 -0
  36. data/vendor/assets/javascripts/locale/bootstrap-table-es-SP.js +40 -0
  37. data/vendor/assets/javascripts/locale/bootstrap-table-fa-IR.js +43 -0
  38. data/vendor/assets/javascripts/locale/bootstrap-table-fr-BE.js +28 -0
  39. data/vendor/assets/javascripts/locale/bootstrap-table-fr-FR.js +41 -0
  40. data/vendor/assets/javascripts/locale/bootstrap-table-hr-HR.js +44 -0
  41. data/vendor/assets/javascripts/locale/bootstrap-table-hu-HU.js +43 -0
  42. data/vendor/assets/javascripts/locale/bootstrap-table-it-IT.js +37 -0
  43. data/vendor/assets/javascripts/locale/bootstrap-table-ja-JP.js +40 -0
  44. data/vendor/assets/javascripts/locale/bootstrap-table-ka-GE.js +40 -0
  45. data/vendor/assets/javascripts/locale/bootstrap-table-ko-KR.js +37 -0
  46. data/vendor/assets/javascripts/locale/bootstrap-table-ms-MY.js +40 -0
  47. data/vendor/assets/javascripts/locale/bootstrap-table-nb-NO.js +37 -0
  48. data/vendor/assets/javascripts/locale/bootstrap-table-nl-NL.js +28 -0
  49. data/vendor/assets/javascripts/locale/bootstrap-table-pl-PL.js +37 -0
  50. data/vendor/assets/javascripts/locale/bootstrap-table-pt-BR.js +41 -0
  51. data/vendor/assets/javascripts/locale/bootstrap-table-pt-PT.js +28 -0
  52. data/vendor/assets/javascripts/locale/bootstrap-table-ro-RO.js +43 -0
  53. data/vendor/assets/javascripts/locale/bootstrap-table-ru-RU.js +36 -0
  54. data/vendor/assets/javascripts/locale/bootstrap-table-sk-SK.js +37 -0
  55. data/vendor/assets/javascripts/locale/bootstrap-table-sv-SE.js +37 -0
  56. data/vendor/assets/javascripts/locale/bootstrap-table-th-TH.js +37 -0
  57. data/vendor/assets/javascripts/locale/bootstrap-table-tr-TR.js +41 -0
  58. data/vendor/assets/javascripts/locale/bootstrap-table-uk-UA.js +37 -0
  59. data/vendor/assets/javascripts/locale/bootstrap-table-ur-PK.js +37 -0
  60. data/vendor/assets/javascripts/locale/bootstrap-table-vi-VN.js +28 -0
  61. data/vendor/assets/javascripts/locale/bootstrap-table-zh-CN.js +40 -0
  62. data/vendor/assets/javascripts/locale/bootstrap-table-zh-TW.js +40 -0
  63. data/vendor/assets/stylesheets/bootstrap-table.css +297 -1
  64. data/vendor/assets/stylesheets/extensions/bootstrap-table-group-by.css +53 -0
  65. metadata +44 -2
@@ -1,7 +1,67 @@
1
- /*
2
- * bootstrap-table - v1.8.1 - 2015-05-29
3
- * https://github.com/wenzhixin/bootstrap-table
4
- * Copyright (c) 2015 zhixin wen
5
- * Licensed MIT License
6
- */
7
- !function(a){"use strict";a.extend(a.fn.bootstrapTable.defaults,{showFilter:!1});var b=a.fn.bootstrapTable.Constructor,c=b.prototype.init,d=b.prototype.initSearch;b.prototype.init=function(){c.apply(this,Array.prototype.slice.apply(arguments));var b=this;this.$el.on("load-success.bs.table",function(){b.options.showFilter&&a(b.options.toolbar).bootstrapTableFilter({connectTo:b.$el})})},b.prototype.initSearch=function(){d.apply(this,Array.prototype.slice.apply(arguments)),"server"!==this.options.sidePagination&&"function"==typeof this.searchCallback&&(this.data=a.grep(this.options.data,this.searchCallback))},b.prototype.getData=function(){return this.searchText||this.searchCallback?this.data:this.options.data},b.prototype.getColumns=function(){return this.options.columns},b.prototype.registerSearchCallback=function(a){this.searchCallback=a},b.prototype.updateSearch=function(){this.options.pageNumber=1,this.initSearch(),this.updatePagination()},b.prototype.getServerUrl=function(){return"server"===this.options.sidePagination?this.options.url:!1},a.fn.bootstrapTable.methods.push("getColumns","registerSearchCallback","updateSearch","getServerUrl")}(jQuery);
1
+ /**
2
+ * @author zhixin wen <wenzhixin2010@gmail.com>
3
+ * extensions: https://github.com/lukaskral/bootstrap-table-filter
4
+ */
5
+
6
+ !function($) {
7
+
8
+ 'use strict';
9
+
10
+ $.extend($.fn.bootstrapTable.defaults, {
11
+ showFilter: false
12
+ });
13
+
14
+ var BootstrapTable = $.fn.bootstrapTable.Constructor,
15
+ _init = BootstrapTable.prototype.init,
16
+ _initSearch = BootstrapTable.prototype.initSearch;
17
+
18
+ BootstrapTable.prototype.init = function () {
19
+ _init.apply(this, Array.prototype.slice.apply(arguments));
20
+
21
+ var that = this;
22
+ this.$el.on('load-success.bs.table', function () {
23
+ if (that.options.showFilter) {
24
+ $(that.options.toolbar).bootstrapTableFilter({
25
+ connectTo: that.$el
26
+ });
27
+ }
28
+ });
29
+ };
30
+
31
+ BootstrapTable.prototype.initSearch = function () {
32
+ _initSearch.apply(this, Array.prototype.slice.apply(arguments));
33
+
34
+ if (this.options.sidePagination !== 'server') {
35
+ if (typeof this.searchCallback === 'function') {
36
+ this.data = $.grep(this.options.data, this.searchCallback);
37
+ }
38
+ }
39
+ };
40
+
41
+ BootstrapTable.prototype.getData = function () {
42
+ return (this.searchText || this.searchCallback) ? this.data : this.options.data;
43
+ };
44
+
45
+ BootstrapTable.prototype.getColumns = function () {
46
+ return this.columns;
47
+ };
48
+
49
+ BootstrapTable.prototype.registerSearchCallback = function (callback) {
50
+ this.searchCallback = callback;
51
+ };
52
+
53
+ BootstrapTable.prototype.updateSearch = function () {
54
+ this.options.pageNumber = 1;
55
+ this.initSearch();
56
+ this.updatePagination();
57
+ };
58
+
59
+ BootstrapTable.prototype.getServerUrl = function () {
60
+ return (this.options.sidePagination === 'server') ? this.options.url : false;
61
+ };
62
+
63
+ $.fn.bootstrapTable.methods.push('getColumns',
64
+ 'registerSearchCallback', 'updateSearch',
65
+ 'getServerUrl');
66
+
67
+ }(jQuery);
@@ -1,7 +1,62 @@
1
- /*
2
- * bootstrap-table - v1.8.1 - 2015-05-29
3
- * https://github.com/wenzhixin/bootstrap-table
4
- * Copyright (c) 2015 zhixin wen
5
- * Licensed MIT License
6
- */
7
- !function(a){"use strict";a.extend(a.fn.bootstrapTable.defaults,{flat:!1});var b=a.fn.bootstrapTable.Constructor,c=b.prototype.initData;b.prototype.initData=function(a,b){this.options.flat&&(a=void 0===a?this.options.data:a,a=d.flatHelper(a)),c.apply(this,[a,b])};var d={flat:function(b){function c(b,e){if(Object(b)!==b)d[e]=b;else if(a.isArray(b))for(var f=0,g=b.length;g>f;f++)c(b[f],e?e+"."+f:""+f),0==g&&(d[e]=[]);else{var h=!0;for(var i in b)h=!1,c(b[i],e?e+"."+i:i);h&&(d[e]={})}}var d={};return c(b,""),d},flatHelper:function(b){var c=[],e=[];return a.isArray(b)||(e.push(b),b=e),a.each(b,function(a,b){c.push(d.flat(b))}),c}}}(jQuery);
1
+ /**
2
+ * @author: Dennis Hernández
3
+ * @webSite: http://djhvscf.github.io/Blog
4
+ * @version: v1.3.0
5
+ */
6
+
7
+ (function ($) {
8
+ 'use strict';
9
+
10
+ var flat = function (element, that) {
11
+ var result = {};
12
+
13
+ function recurse(cur, prop) {
14
+ if (Object(cur) !== cur) {
15
+ result[prop] = cur;
16
+ } else if ($.isArray(cur)) {
17
+ for (var i = 0, l = cur.length; i < l; i++) {
18
+ recurse(cur[i], prop ? prop + that.options.flatSeparator + i : "" + i);
19
+ if (l == 0) {
20
+ result[prop] = [];
21
+ }
22
+ }
23
+ } else {
24
+ var isEmpty = true;
25
+ for (var p in cur) {
26
+ isEmpty = false;
27
+ recurse(cur[p], prop ? prop + that.options.flatSeparator + p : p);
28
+ }
29
+ if (isEmpty) {
30
+ result[prop] = {};
31
+ }
32
+ }
33
+ }
34
+
35
+ recurse(element, "");
36
+ return result;
37
+ };
38
+
39
+ var flatHelper = function (data, that) {
40
+ var flatArray = [];
41
+
42
+ $.each(!$.isArray(data) ? [data] : data, function (i, element) {
43
+ flatArray.push(flat(element, that));
44
+ });
45
+ return flatArray;
46
+ };
47
+
48
+ $.extend($.fn.bootstrapTable.defaults, {
49
+ flat: false,
50
+ flatSeparator: '.'
51
+ });
52
+
53
+ var BootstrapTable = $.fn.bootstrapTable.Constructor,
54
+ _initData = BootstrapTable.prototype.initData;
55
+
56
+ BootstrapTable.prototype.initData = function (data, type) {
57
+ if (this.options.flat) {
58
+ data = flatHelper(data ? data : this.options.data, this);
59
+ }
60
+ _initData.apply(this, [data, type]);
61
+ };
62
+ })(jQuery);
@@ -0,0 +1,228 @@
1
+ /**
2
+ * @author: Dennis Hernández
3
+ * @webSite: http://djhvscf.github.io/Blog
4
+ * @version: v1.0.0
5
+ */
6
+
7
+ !function ($) {
8
+
9
+ 'use strict';
10
+
11
+ var originalRowAttr,
12
+ dataTTId = 'data-tt-id',
13
+ dataTTParentId = 'data-tt-parent-id',
14
+ obj = {},
15
+ parentId = undefined;
16
+
17
+ var getFieldIndex = function (columns, field) {
18
+ var index = -1;
19
+
20
+ $.each(columns, function (i, column) {
21
+ if (column.field === field) {
22
+ index = i;
23
+ return false;
24
+ }
25
+ return true;
26
+ });
27
+ return index;
28
+ };
29
+
30
+ var getParentRowId = function (that, id) {
31
+ var parentRows = that.$body.find('tr').not('[' + 'data-tt-parent-id]');
32
+
33
+ for (var i = 0; i < parentRows.length; i++) {
34
+ if (i === id) {
35
+ return $(parentRows[i]).attr('data-tt-id');
36
+ }
37
+ }
38
+
39
+ return undefined;
40
+ };
41
+
42
+ var sumData = function (that, data) {
43
+ var sumRow = {};
44
+ $.each(data, function (i, row) {
45
+ for(var prop in row) {
46
+ if (!row.IsParent) {
47
+ if (!isNaN(parseFloat(row[prop]))) {
48
+ if (that.columns[getFieldIndex(that.columns, prop)].groupBySumGroup) {
49
+ if (sumRow[prop] === undefined) {
50
+ sumRow[prop] = 0;
51
+ }
52
+ sumRow[prop] += +row[prop];
53
+ }
54
+ }
55
+ }
56
+ }
57
+ });
58
+ return sumRow;
59
+ };
60
+
61
+ var rowAttr = function (row, index) {
62
+ //Call the User Defined Function
63
+ originalRowAttr.apply([row, index]);
64
+
65
+ obj[dataTTId.toString()] = index;
66
+
67
+ if (!row.IsParent) {
68
+ obj[dataTTParentId.toString()] = parentId === undefined ? index : parentId;
69
+ } else {
70
+ parentId = index;
71
+ delete obj[dataTTParentId.toString()];
72
+ }
73
+
74
+ return obj;
75
+ };
76
+
77
+ var setObjectKeys = function () {
78
+ // From https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys
79
+ Object.keys = function (o) {
80
+ if (o !== Object(o)) {
81
+ throw new TypeError('Object.keys called on a non-object');
82
+ }
83
+ var k = [],
84
+ p;
85
+ for (p in o) {
86
+ if (Object.prototype.hasOwnProperty.call(o, p)) {
87
+ k.push(p);
88
+ }
89
+ }
90
+ return k;
91
+ }
92
+ };
93
+
94
+ var groupBy = function (array , f) {
95
+ var groups = {};
96
+ $.each(array, function(i, o) {
97
+ var group = JSON.stringify(f(o));
98
+ groups[group] = groups[group] || [];
99
+ groups[group].push(o);
100
+ });
101
+ return Object.keys(groups).map(function (group) {
102
+ return groups[group];
103
+ });
104
+ };
105
+
106
+ var makeGrouped = function (that, data) {
107
+ var newRow = {},
108
+ newData = [],
109
+ sumRow = {};
110
+
111
+ var result = groupBy(data, function (item) {
112
+ return [item[that.options.groupByField]];
113
+ });
114
+
115
+ for (var i = 0; i < result.length; i++) {
116
+ newRow[that.options.groupByField.toString()] = result[i][0][that.options.groupByField];
117
+ newRow.IsParent = true;
118
+ result[i].unshift(newRow);
119
+ if (that.options.groupBySumGroup) {
120
+ sumRow = sumData(that, result[i])
121
+ if (!$.isEmptyObject(sumRow)) {
122
+ result[i].push(sumRow);
123
+ }
124
+ }
125
+ newRow = {};
126
+ }
127
+
128
+ newData = newData.concat.apply(newData, result);
129
+
130
+ if (!that.options.loaded && newData.length > 0) {
131
+ that.options.loaded = true;
132
+ that.options.originalData = that.options.data;
133
+ that.options.data = newData;
134
+ }
135
+
136
+ return newData;
137
+ };
138
+
139
+ $.extend($.fn.bootstrapTable.defaults, {
140
+ groupBy: false,
141
+ groupByField: '',
142
+ groupBySumGroup: false,
143
+ groupByInitExpanded: undefined, //node, 'all'
144
+ //internal variables
145
+ loaded: false,
146
+ originalData: undefined
147
+ });
148
+
149
+ $.fn.bootstrapTable.methods.push('collapseAll', 'expandAll');
150
+
151
+ $.extend($.fn.bootstrapTable.COLUMN_DEFAULTS, {
152
+ groupBySumGroup: false
153
+ });
154
+
155
+ var BootstrapTable = $.fn.bootstrapTable.Constructor,
156
+ _init = BootstrapTable.prototype.init,
157
+ _initData = BootstrapTable.prototype.initData;
158
+
159
+ BootstrapTable.prototype.init = function () {
160
+ //Temporal validation
161
+ if (!this.options.sortName) {
162
+ if ((this.options.groupBy) && (this.options.groupByField !== '')) {
163
+ var that = this;
164
+
165
+ // Compatibility: IE < 9 and old browsers
166
+ if (!Object.keys) {
167
+ setObjectKeys();
168
+ }
169
+
170
+ //Make sure that the internal variables are set correctly
171
+ this.options.loaded = false;
172
+ this.options.originalData = undefined;
173
+
174
+ originalRowAttr = this.options.rowAttributes;
175
+ this.options.rowAttributes = rowAttr;
176
+ this.$el.on('post-body.bs.table', function () {
177
+ that.$el.treetable({
178
+ expandable: true,
179
+ onNodeExpand: function () {
180
+ if (that.options.height) {
181
+ that.resetHeader();
182
+ }
183
+ },
184
+ onNodeCollapse: function () {
185
+ if (that.options.height) {
186
+ that.resetHeader();
187
+ }
188
+ }
189
+ }, true);
190
+
191
+ if (that.options.groupByInitExpanded !== undefined) {
192
+ if (typeof that.options.groupByInitExpanded === 'number') {
193
+ that.expandNode(that.options.groupByInitExpanded);
194
+ } else if (that.options.groupByInitExpanded.toLowerCase() === 'all') {
195
+ that.expandAll();
196
+ }
197
+ }
198
+ });
199
+ }
200
+ }
201
+ _init.apply(this, Array.prototype.slice.apply(arguments));
202
+ };
203
+
204
+ BootstrapTable.prototype.initData = function (data, type) {
205
+ //Temporal validation
206
+ if (!this.options.sortName) {
207
+ if ((this.options.groupBy) && (this.options.groupByField !== '')) {
208
+ data = makeGrouped(this, data ? data : this.options.data);
209
+ }
210
+ }
211
+ _initData.apply(this, [data, type]);
212
+ };
213
+
214
+ BootstrapTable.prototype.expandAll = function () {
215
+ this.$el.treetable('expandAll');
216
+ };
217
+
218
+ BootstrapTable.prototype.collapseAll = function () {
219
+ this.$el.treetable('collapseAll');
220
+ };
221
+
222
+ BootstrapTable.prototype.expandNode = function (id) {
223
+ id = getParentRowId(this, id);
224
+ if (id !== undefined) {
225
+ this.$el.treetable('expandNode', id);
226
+ }
227
+ }
228
+ }(jQuery);
@@ -1,7 +1,80 @@
1
- /*
2
- * bootstrap-table - v1.8.1 - 2015-05-29
3
- * https://github.com/wenzhixin/bootstrap-table
4
- * Copyright (c) 2015 zhixin wen
5
- * Licensed MIT License
6
- */
7
- !function(a){"use strict";a.extend(a.fn.bootstrapTable.defaults,{keyEvents:!1});var b=a.fn.bootstrapTable.Constructor,c=b.prototype.init;b.prototype.init=function(){c.apply(this,Array.prototype.slice.apply(arguments)),this.initKeyEvents()},b.prototype.initKeyEvents=function(){if(this.options.keyEvents){var b=this;a(document).off("keydown").on("keydown",function(a){var c=b.$toolbar.find(".search input"),d=b.$toolbar.find('button[name="refresh"]'),e=b.$toolbar.find('button[name="toggle"]'),f=b.$toolbar.find('button[name="paginationtable"]');if(document.activeElement===c.get(0))return!0;table(a.keyCode){case 83:if(!b.options.search)return;return c.focus(),!1;case 82:if(!b.options.showRefresh)return;return d.click(),!1;case 84:if(!b.options.showToggle)return;return e.click(),!1;case 80:if(!b.options.showPaginationtable)return;return f.click(),!1;case 37:if(!b.options.pagination)return;return b.prevPage(),!1;case 39:if(!b.options.pagination)return;return void b.nextPage()}})}}}(jQuery);
1
+ /**
2
+ * @author: Dennis Hernández
3
+ * @webSite: http://djhvscf.github.io/Blog
4
+ * @version: v1.0.0
5
+ *
6
+ * @update zhixin wen <wenzhixin2010@gmail.com>
7
+ */
8
+
9
+ !function ($) {
10
+
11
+ 'use strict';
12
+
13
+ $.extend($.fn.bootstrapTable.defaults, {
14
+ keyEvents: false
15
+ });
16
+
17
+ var BootstrapTable = $.fn.bootstrapTable.Constructor,
18
+ _init = BootstrapTable.prototype.init;
19
+
20
+ BootstrapTable.prototype.init = function () {
21
+ _init.apply(this, Array.prototype.slice.apply(arguments));
22
+ this.initKeyEvents();
23
+ };
24
+
25
+ BootstrapTable.prototype.initKeyEvents = function () {
26
+ if (this.options.keyEvents) {
27
+ var that = this;
28
+
29
+ $(document).off('keydown').on('keydown', function (e) {
30
+ var $search = that.$toolbar.find('.search input'),
31
+ $refresh = that.$toolbar.find('button[name="refresh"]'),
32
+ $toggle = that.$toolbar.find('button[name="toggle"]'),
33
+ $paginationSwitch = that.$toolbar.find('button[name="paginationSwitch"]');
34
+
35
+ if (document.activeElement === $search.get(0)) {
36
+ return true;
37
+ }
38
+
39
+ switch (e.keyCode) {
40
+ case 83: //s
41
+ if (!that.options.search) {
42
+ return;
43
+ }
44
+ $search.focus();
45
+ return false;
46
+ case 82: //r
47
+ if (!that.options.showRefresh) {
48
+ return;
49
+ }
50
+ $refresh.click();
51
+ return false;
52
+ case 84: //t
53
+ if (!that.options.showToggle) {
54
+ return;
55
+ }
56
+ $toggle.click();
57
+ return false;
58
+ case 80: //p
59
+ if (!that.options.showPaginationSwitch) {
60
+ return;
61
+ }
62
+ $paginationSwitch.click();
63
+ return false;
64
+ case 37: // left
65
+ if (!that.options.pagination) {
66
+ return;
67
+ }
68
+ that.prevPage();
69
+ return false;
70
+ case 39: // right
71
+ if (!that.options.pagination) {
72
+ return;
73
+ }
74
+ that.nextPage();
75
+ return;
76
+ }
77
+ });
78
+ }
79
+ };
80
+ }(jQuery);