bootstrap-table-rails 1.12.1 → 1.15.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -7
- data/README.md +137 -100
- data/lib/bootstrap-table-rails/version.rb +1 -1
- data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-locale-all.js +5378 -0
- data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.esm.js +1809 -0
- data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.js +1817 -0
- data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.css +296 -0
- data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.js +6959 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/accent-neutralise/bootstrap-table-accent-neutralise.js +1757 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/addrbar/bootstrap-table-addrbar.js +1485 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/auto-refresh/bootstrap-table-auto-refresh.js +1020 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/cell-input/bootstrap-table-cell-input.css +12 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/cell-input/bootstrap-table-cell-input.js +2087 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/cookie/bootstrap-table-cookie.js +1934 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/copy-rows/bootstrap-table-copy-rows.js +1042 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/defer-url/bootstrap-table-defer-url.js +779 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/editable/bootstrap-table-editable.js +1451 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/export/bootstrap-table-export.js +2500 -0
- data/vendor/assets/{stylesheets/extensions → javascripts/bootstrap-table/extensions/filter-control}/bootstrap-table-filter-control.css +3 -3
- data/vendor/assets/javascripts/bootstrap-table/extensions/filter-control/bootstrap-table-filter-control.js +2502 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.css +27 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.js +1378 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/group-by-v2/bootstrap-table-group-by.css +7 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/group-by-v2/bootstrap-table-group-by.js +1478 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/i18n-enhance/bootstrap-table-i18n-enhance.js +125 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/key-events/bootstrap-table-key-events.js +1243 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/mobile/bootstrap-table-mobile.js +1162 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/multiple-sort/bootstrap-table-multiple-sort.js +1905 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/natural-sorting/bootstrap-table-natural-sorting.js +1265 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/page-jump-to/bootstrap-table-page-jump-to.css +11 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/page-jump-to/bootstrap-table-page-jump-to.js +971 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/pipeline/bootstrap-table-pipeline.js +1128 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/print/bootstrap-table-print.js +1960 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-columns/bootstrap-table-reorder-columns.js +1015 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-rows/bootstrap-table-reorder-rows.css +14 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-rows/bootstrap-table-reorder-rows.js +774 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/resizable/bootstrap-table-resizable.js +676 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/sticky-header/bootstrap-table-sticky-header.css +22 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/sticky-header/bootstrap-table-sticky-header.js +1023 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/toolbar/bootstrap-table-toolbar.js +2297 -0
- data/vendor/assets/javascripts/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js +1817 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-af-ZA.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ar-SA.js +722 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ca-ES.js +722 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-cs-CZ.js +722 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-da-DK.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-de-DE.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-el-GR.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-en-US.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-AR.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CL.js +722 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CR.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-ES.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-MX.js +723 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-NI.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-SP.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-et-EE.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-eu-EU.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fa-IR.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fi-FI.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-BE.js +722 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-CH.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-FR.js +723 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-LU.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-he-IL.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hr-HR.js +722 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hu-HU.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-id-ID.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-it-IT.js +723 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ja-JP.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ka-GE.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ko-KR.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ms-MY.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nb-NO.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-BE.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-NL.js +722 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pl-PL.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-BR.js +723 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-PT.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ro-RO.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ru-RU.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sk-SK.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Cyrl-RS.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Latn-RS.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sv-SE.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-th-TH.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-tr-TR.js +722 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uk-UA.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ur-PK.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uz-Latn-UZ.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-vi-VN.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-CN.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-TW.js +721 -0
- data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.css +352 -0
- data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.js +943 -0
- data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.css +329 -0
- data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.js +950 -0
- data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.css +326 -0
- data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.js +946 -0
- data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.css +336 -0
- data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.js +920 -0
- metadata +149 -140
- data/vendor/assets/images/icon.png +0 -0
- data/vendor/assets/javascripts/bootstrap-table-locale-all.js +0 -2066
- data/vendor/assets/javascripts/bootstrap-table.js +0 -3295
- data/vendor/assets/javascripts/extensions/bootstrap-table-accent-neutralise.js +0 -182
- data/vendor/assets/javascripts/extensions/bootstrap-table-angular.js +0 -107
- data/vendor/assets/javascripts/extensions/bootstrap-table-auto-refresh.js +0 -84
- data/vendor/assets/javascripts/extensions/bootstrap-table-click-edit-row.js +0 -142
- data/vendor/assets/javascripts/extensions/bootstrap-table-cookie.js +0 -413
- data/vendor/assets/javascripts/extensions/bootstrap-table-copy-rows.js +0 -102
- data/vendor/assets/javascripts/extensions/bootstrap-table-defer-url.js +0 -32
- data/vendor/assets/javascripts/extensions/bootstrap-table-editable.js +0 -146
- data/vendor/assets/javascripts/extensions/bootstrap-table-export.js +0 -179
- data/vendor/assets/javascripts/extensions/bootstrap-table-filter-control.js +0 -744
- data/vendor/assets/javascripts/extensions/bootstrap-table-filter.js +0 -67
- data/vendor/assets/javascripts/extensions/bootstrap-table-flat-json.js +0 -62
- data/vendor/assets/javascripts/extensions/bootstrap-table-group-by-v2.js +0 -226
- data/vendor/assets/javascripts/extensions/bootstrap-table-group-by.js +0 -243
- data/vendor/assets/javascripts/extensions/bootstrap-table-i18n-enhance.js +0 -35
- data/vendor/assets/javascripts/extensions/bootstrap-table-jumpto.js +0 -50
- data/vendor/assets/javascripts/extensions/bootstrap-table-key-events.js +0 -80
- data/vendor/assets/javascripts/extensions/bootstrap-table-mobile.js +0 -136
- data/vendor/assets/javascripts/extensions/bootstrap-table-multi-toggle.js +0 -88
- data/vendor/assets/javascripts/extensions/bootstrap-table-multiple-search.js +0 -71
- data/vendor/assets/javascripts/extensions/bootstrap-table-multiple-selection-row.js +0 -127
- data/vendor/assets/javascripts/extensions/bootstrap-table-multiple-sort.js +0 -412
- data/vendor/assets/javascripts/extensions/bootstrap-table-natural-sorting.js +0 -67
- data/vendor/assets/javascripts/extensions/bootstrap-table-print.js +0 -149
- data/vendor/assets/javascripts/extensions/bootstrap-table-reorder-columns.js +0 -181
- data/vendor/assets/javascripts/extensions/bootstrap-table-reorder-rows.js +0 -118
- data/vendor/assets/javascripts/extensions/bootstrap-table-resizable.js +0 -75
- data/vendor/assets/javascripts/extensions/bootstrap-table-select2-filter.js +0 -332
- data/vendor/assets/javascripts/extensions/bootstrap-table-sticky-header.js +0 -118
- data/vendor/assets/javascripts/extensions/bootstrap-table-toolbar.js +0 -211
- data/vendor/assets/javascripts/extensions/bootstrap-table-tree-column.js +0 -130
- data/vendor/assets/javascripts/extensions/bootstrap-table-treegrid.js +0 -95
- data/vendor/assets/javascripts/locale/bootstrap-table-af-ZA.js +0 -40
- data/vendor/assets/javascripts/locale/bootstrap-table-ar-SA.js +0 -40
- data/vendor/assets/javascripts/locale/bootstrap-table-ca-ES.js +0 -44
- data/vendor/assets/javascripts/locale/bootstrap-table-cs-CZ.js +0 -44
- data/vendor/assets/javascripts/locale/bootstrap-table-da-DK.js +0 -37
- data/vendor/assets/javascripts/locale/bootstrap-table-de-DE.js +0 -52
- data/vendor/assets/javascripts/locale/bootstrap-table-el-GR.js +0 -28
- data/vendor/assets/javascripts/locale/bootstrap-table-en-US.js +0 -49
- data/vendor/assets/javascripts/locale/bootstrap-table-es-AR.js +0 -31
- data/vendor/assets/javascripts/locale/bootstrap-table-es-CL.js +0 -44
- data/vendor/assets/javascripts/locale/bootstrap-table-es-CR.js +0 -40
- data/vendor/assets/javascripts/locale/bootstrap-table-es-ES.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-es-MX.js +0 -51
- data/vendor/assets/javascripts/locale/bootstrap-table-es-NI.js +0 -40
- data/vendor/assets/javascripts/locale/bootstrap-table-es-SP.js +0 -40
- data/vendor/assets/javascripts/locale/bootstrap-table-et-EE.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-eu-EU.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-fa-IR.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-fr-BE.js +0 -28
- data/vendor/assets/javascripts/locale/bootstrap-table-fr-FR.js +0 -95
- data/vendor/assets/javascripts/locale/bootstrap-table-he-IL.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-hr-HR.js +0 -44
- data/vendor/assets/javascripts/locale/bootstrap-table-hu-HU.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-id-ID.js +0 -49
- data/vendor/assets/javascripts/locale/bootstrap-table-it-IT.js +0 -52
- data/vendor/assets/javascripts/locale/bootstrap-table-ja-JP.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-ka-GE.js +0 -40
- data/vendor/assets/javascripts/locale/bootstrap-table-ko-KR.js +0 -37
- data/vendor/assets/javascripts/locale/bootstrap-table-ms-MY.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-nb-NO.js +0 -37
- data/vendor/assets/javascripts/locale/bootstrap-table-nl-NL.js +0 -52
- data/vendor/assets/javascripts/locale/bootstrap-table-pl-PL.js +0 -37
- data/vendor/assets/javascripts/locale/bootstrap-table-pt-BR.js +0 -41
- data/vendor/assets/javascripts/locale/bootstrap-table-pt-PT.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-ro-RO.js +0 -43
- data/vendor/assets/javascripts/locale/bootstrap-table-ru-RU.js +0 -72
- data/vendor/assets/javascripts/locale/bootstrap-table-sk-SK.js +0 -49
- data/vendor/assets/javascripts/locale/bootstrap-table-sv-SE.js +0 -37
- data/vendor/assets/javascripts/locale/bootstrap-table-th-TH.js +0 -37
- data/vendor/assets/javascripts/locale/bootstrap-table-tr-TR.js +0 -41
- data/vendor/assets/javascripts/locale/bootstrap-table-uk-UA.js +0 -73
- data/vendor/assets/javascripts/locale/bootstrap-table-ur-PK.js +0 -37
- data/vendor/assets/javascripts/locale/bootstrap-table-uz-Latn-UZ.js +0 -49
- data/vendor/assets/javascripts/locale/bootstrap-table-vi-VN.js +0 -28
- data/vendor/assets/javascripts/locale/bootstrap-table-zh-CN.js +0 -46
- data/vendor/assets/javascripts/locale/bootstrap-table-zh-TW.js +0 -40
- data/vendor/assets/stylesheets/bootstrap-table.css +0 -318
- data/vendor/assets/stylesheets/extensions/bootstrap-table-auto-refresh.css +0 -3
- data/vendor/assets/stylesheets/extensions/bootstrap-table-click-edit-row.css +0 -21
- data/vendor/assets/stylesheets/extensions/bootstrap-table-group-by-v2.css +0 -7
- data/vendor/assets/stylesheets/extensions/bootstrap-table-group-by.css +0 -53
- data/vendor/assets/stylesheets/extensions/bootstrap-table-jumpto.css +0 -8
- data/vendor/assets/stylesheets/extensions/bootstrap-table-multiple-selection-row.css +0 -17
- data/vendor/assets/stylesheets/extensions/bootstrap-table-reorder-rows.css +0 -14
- data/vendor/assets/stylesheets/extensions/bootstrap-table-sticky-header.css +0 -22
- data/vendor/assets/stylesheets/extensions/bootstrap-table-tree-column.css +0 -1
@@ -1,413 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @author: Dennis Hernández
|
3
|
-
* @webSite: http://djhvscf.github.io/Blog
|
4
|
-
* @version: v1.2.3
|
5
|
-
*
|
6
|
-
* @update zhixin wen <wenzhixin2010@gmail.com>
|
7
|
-
*/
|
8
|
-
|
9
|
-
(function ($) {
|
10
|
-
'use strict';
|
11
|
-
|
12
|
-
var cookieIds = {
|
13
|
-
sortOrder: 'bs.table.sortOrder',
|
14
|
-
sortName: 'bs.table.sortName',
|
15
|
-
pageNumber: 'bs.table.pageNumber',
|
16
|
-
pageList: 'bs.table.pageList',
|
17
|
-
columns: 'bs.table.columns',
|
18
|
-
searchText: 'bs.table.searchText',
|
19
|
-
filterControl: 'bs.table.filterControl'
|
20
|
-
};
|
21
|
-
|
22
|
-
var getCurrentHeader = function (that) {
|
23
|
-
var header = that.$header;
|
24
|
-
if (that.options.height) {
|
25
|
-
header = that.$tableHeader;
|
26
|
-
}
|
27
|
-
|
28
|
-
return header;
|
29
|
-
};
|
30
|
-
|
31
|
-
var getCurrentSearchControls = function (that) {
|
32
|
-
var searchControls = 'select, input';
|
33
|
-
if (that.options.height) {
|
34
|
-
searchControls = 'table select, table input';
|
35
|
-
}
|
36
|
-
|
37
|
-
return searchControls;
|
38
|
-
};
|
39
|
-
|
40
|
-
var cookieEnabled = function () {
|
41
|
-
return !!(navigator.cookieEnabled);
|
42
|
-
};
|
43
|
-
|
44
|
-
var inArrayCookiesEnabled = function (cookieName, cookiesEnabled) {
|
45
|
-
var index = -1;
|
46
|
-
|
47
|
-
for (var i = 0; i < cookiesEnabled.length; i++) {
|
48
|
-
if (cookieName.toLowerCase() === cookiesEnabled[i].toLowerCase()) {
|
49
|
-
index = i;
|
50
|
-
break;
|
51
|
-
}
|
52
|
-
}
|
53
|
-
|
54
|
-
return index;
|
55
|
-
};
|
56
|
-
|
57
|
-
var setCookie = function (that, cookieName, cookieValue) {
|
58
|
-
if ((!that.options.cookie) || (!cookieEnabled()) || (that.options.cookieIdTable === '')) {
|
59
|
-
return;
|
60
|
-
}
|
61
|
-
|
62
|
-
if (inArrayCookiesEnabled(cookieName, that.options.cookiesEnabled) === -1) {
|
63
|
-
return;
|
64
|
-
}
|
65
|
-
|
66
|
-
cookieName = that.options.cookieIdTable + '.' + cookieName;
|
67
|
-
|
68
|
-
switch(that.options.cookieStorage) {
|
69
|
-
case 'cookieStorage':
|
70
|
-
document.cookie = [
|
71
|
-
cookieName, '=', cookieValue,
|
72
|
-
'; expires=' + calculateExpiration(that.options.cookieExpire),
|
73
|
-
that.options.cookiePath ? '; path=' + that.options.cookiePath : '',
|
74
|
-
that.options.cookieDomain ? '; domain=' + that.options.cookieDomain : '',
|
75
|
-
that.options.cookieSecure ? '; secure' : ''
|
76
|
-
].join('');
|
77
|
-
case 'localStorage':
|
78
|
-
localStorage.setItem(cookieName, cookieValue);
|
79
|
-
break;
|
80
|
-
case 'sessionStorage':
|
81
|
-
sessionStorage.setItem(cookieName, cookieValue);
|
82
|
-
break;
|
83
|
-
default:
|
84
|
-
return false;
|
85
|
-
}
|
86
|
-
|
87
|
-
return true;
|
88
|
-
};
|
89
|
-
|
90
|
-
var getCookie = function (that, tableName, cookieName) {
|
91
|
-
if (!cookieName) {
|
92
|
-
return null;
|
93
|
-
}
|
94
|
-
|
95
|
-
if (inArrayCookiesEnabled(cookieName, that.options.cookiesEnabled) === -1) {
|
96
|
-
return null;
|
97
|
-
}
|
98
|
-
|
99
|
-
cookieName = tableName + '.' + cookieName;
|
100
|
-
|
101
|
-
switch(that.options.cookieStorage) {
|
102
|
-
case 'cookieStorage':
|
103
|
-
var value = '; ' + document.cookie;
|
104
|
-
var parts = value.split('; ' + cookieName + '=');
|
105
|
-
return parts.length === 2 ? parts.pop().split(';').shift() : null;
|
106
|
-
case 'localStorage':
|
107
|
-
return localStorage.getItem(cookieName);
|
108
|
-
case 'sessionStorage':
|
109
|
-
return sessionStorage.getItem(cookieName);
|
110
|
-
default:
|
111
|
-
return null;
|
112
|
-
}
|
113
|
-
};
|
114
|
-
|
115
|
-
var deleteCookie = function (that, tableName, cookieName) {
|
116
|
-
cookieName = tableName + '.' + cookieName;
|
117
|
-
|
118
|
-
switch(that.options.cookieStorage) {
|
119
|
-
case 'cookieStorage':
|
120
|
-
document.cookie = [
|
121
|
-
encodeURIComponent(cookieName), '=',
|
122
|
-
'; expires=Thu, 01 Jan 1970 00:00:00 GMT',
|
123
|
-
that.options.cookiePath ? '; path=' + that.options.cookiePath : '',
|
124
|
-
that.options.cookieDomain ? '; domain=' + that.options.cookieDomain : '',
|
125
|
-
].join('');
|
126
|
-
break;
|
127
|
-
case 'localStorage':
|
128
|
-
localStorage.removeItem(cookieName);
|
129
|
-
break;
|
130
|
-
case 'sessionStorage':
|
131
|
-
sessionStorage.removeItem(cookieName);
|
132
|
-
break;
|
133
|
-
|
134
|
-
}
|
135
|
-
return true;
|
136
|
-
};
|
137
|
-
|
138
|
-
var calculateExpiration = function(cookieExpire) {
|
139
|
-
var time = cookieExpire.replace(/[0-9]*/, ''); //s,mi,h,d,m,y
|
140
|
-
cookieExpire = cookieExpire.replace(/[A-Za-z]{1,2}/, ''); //number
|
141
|
-
|
142
|
-
switch (time.toLowerCase()) {
|
143
|
-
case 's':
|
144
|
-
cookieExpire = +cookieExpire;
|
145
|
-
break;
|
146
|
-
case 'mi':
|
147
|
-
cookieExpire = cookieExpire * 60;
|
148
|
-
break;
|
149
|
-
case 'h':
|
150
|
-
cookieExpire = cookieExpire * 60 * 60;
|
151
|
-
break;
|
152
|
-
case 'd':
|
153
|
-
cookieExpire = cookieExpire * 24 * 60 * 60;
|
154
|
-
break;
|
155
|
-
case 'm':
|
156
|
-
cookieExpire = cookieExpire * 30 * 24 * 60 * 60;
|
157
|
-
break;
|
158
|
-
case 'y':
|
159
|
-
cookieExpire = cookieExpire * 365 * 24 * 60 * 60;
|
160
|
-
break;
|
161
|
-
default:
|
162
|
-
cookieExpire = undefined;
|
163
|
-
break;
|
164
|
-
}
|
165
|
-
if (!cookieExpire) {
|
166
|
-
return '';
|
167
|
-
}
|
168
|
-
var d = new Date();
|
169
|
-
d.setTime(d.getTime() + cookieExpire * 1000);
|
170
|
-
return d.toGMTString();
|
171
|
-
};
|
172
|
-
|
173
|
-
var initCookieFilters = function (bootstrapTable) {
|
174
|
-
setTimeout(function () {
|
175
|
-
var parsedCookieFilters = JSON.parse(getCookie(bootstrapTable, bootstrapTable.options.cookieIdTable, cookieIds.filterControl));
|
176
|
-
|
177
|
-
if (!bootstrapTable.options.filterControlValuesLoaded && parsedCookieFilters) {
|
178
|
-
|
179
|
-
var cachedFilters = {},
|
180
|
-
header = getCurrentHeader(bootstrapTable),
|
181
|
-
searchControls = getCurrentSearchControls(bootstrapTable),
|
182
|
-
|
183
|
-
applyCookieFilters = function (element, filteredCookies) {
|
184
|
-
$(filteredCookies).each(function (i, cookie) {
|
185
|
-
if (cookie.text !== '') {
|
186
|
-
$(element).val(cookie.text);
|
187
|
-
cachedFilters[cookie.field] = cookie.text;
|
188
|
-
}
|
189
|
-
});
|
190
|
-
};
|
191
|
-
|
192
|
-
header.find(searchControls).each(function () {
|
193
|
-
var field = $(this).closest('[data-field]').data('field'),
|
194
|
-
filteredCookies = $.grep(parsedCookieFilters, function (cookie) {
|
195
|
-
return cookie.field === field;
|
196
|
-
});
|
197
|
-
|
198
|
-
applyCookieFilters(this, filteredCookies);
|
199
|
-
});
|
200
|
-
|
201
|
-
bootstrapTable.initColumnSearch(cachedFilters);
|
202
|
-
bootstrapTable.options.filterControlValuesLoaded = true;
|
203
|
-
bootstrapTable.initServer();
|
204
|
-
}
|
205
|
-
}, 250);
|
206
|
-
};
|
207
|
-
|
208
|
-
$.extend($.fn.bootstrapTable.defaults, {
|
209
|
-
cookie: false,
|
210
|
-
cookieExpire: '2h',
|
211
|
-
cookiePath: null,
|
212
|
-
cookieDomain: null,
|
213
|
-
cookieSecure: null,
|
214
|
-
cookieIdTable: '',
|
215
|
-
cookiesEnabled: [
|
216
|
-
'bs.table.sortOrder', 'bs.table.sortName',
|
217
|
-
'bs.table.pageNumber', 'bs.table.pageList',
|
218
|
-
'bs.table.columns', 'bs.table.searchText',
|
219
|
-
'bs.table.filterControl'
|
220
|
-
],
|
221
|
-
cookieStorage: 'cookieStorage', //localStorage, sessionStorage
|
222
|
-
//internal variable
|
223
|
-
filterControls: [],
|
224
|
-
filterControlValuesLoaded: false
|
225
|
-
});
|
226
|
-
|
227
|
-
$.fn.bootstrapTable.methods.push('getCookies');
|
228
|
-
$.fn.bootstrapTable.methods.push('deleteCookie');
|
229
|
-
|
230
|
-
$.extend($.fn.bootstrapTable.utils, {
|
231
|
-
setCookie: setCookie,
|
232
|
-
getCookie: getCookie
|
233
|
-
});
|
234
|
-
|
235
|
-
var BootstrapTable = $.fn.bootstrapTable.Constructor,
|
236
|
-
_init = BootstrapTable.prototype.init,
|
237
|
-
_initTable = BootstrapTable.prototype.initTable,
|
238
|
-
_initServer = BootstrapTable.prototype.initServer,
|
239
|
-
_onSort = BootstrapTable.prototype.onSort,
|
240
|
-
_onPageNumber = BootstrapTable.prototype.onPageNumber,
|
241
|
-
_onPageListChange = BootstrapTable.prototype.onPageListChange,
|
242
|
-
_onPagePre = BootstrapTable.prototype.onPagePre,
|
243
|
-
_onPageNext = BootstrapTable.prototype.onPageNext,
|
244
|
-
_toggleColumn = BootstrapTable.prototype.toggleColumn,
|
245
|
-
_selectPage = BootstrapTable.prototype.selectPage,
|
246
|
-
_onSearch = BootstrapTable.prototype.onSearch;
|
247
|
-
|
248
|
-
BootstrapTable.prototype.init = function () {
|
249
|
-
this.options.filterControls = [];
|
250
|
-
this.options.filterControlValuesLoaded = false;
|
251
|
-
|
252
|
-
this.options.cookiesEnabled = typeof this.options.cookiesEnabled === 'string' ?
|
253
|
-
this.options.cookiesEnabled.replace('[', '').replace(']', '')
|
254
|
-
.replace(/ /g, '').toLowerCase().split(',') :
|
255
|
-
this.options.cookiesEnabled;
|
256
|
-
|
257
|
-
if (this.options.filterControl) {
|
258
|
-
var that = this;
|
259
|
-
this.$el.on('column-search.bs.table', function (e, field, text) {
|
260
|
-
var isNewField = true;
|
261
|
-
|
262
|
-
for (var i = 0; i < that.options.filterControls.length; i++) {
|
263
|
-
if (that.options.filterControls[i].field === field) {
|
264
|
-
that.options.filterControls[i].text = text;
|
265
|
-
isNewField = false;
|
266
|
-
break;
|
267
|
-
}
|
268
|
-
}
|
269
|
-
if (isNewField) {
|
270
|
-
that.options.filterControls.push({
|
271
|
-
field: field,
|
272
|
-
text: text
|
273
|
-
});
|
274
|
-
}
|
275
|
-
|
276
|
-
setCookie(that, cookieIds.filterControl, JSON.stringify(that.options.filterControls));
|
277
|
-
}).on('post-body.bs.table', initCookieFilters(that));
|
278
|
-
}
|
279
|
-
_init.apply(this, Array.prototype.slice.apply(arguments));
|
280
|
-
};
|
281
|
-
|
282
|
-
BootstrapTable.prototype.initServer = function () {
|
283
|
-
var bootstrapTable = this;
|
284
|
-
if (bootstrapTable.options.cookie && bootstrapTable.options.filterControl && !bootstrapTable.options.filterControlValuesLoaded) {
|
285
|
-
var cookie = JSON.parse(getCookie(bootstrapTable, bootstrapTable.options.cookieIdTable, cookieIds.filterControl));
|
286
|
-
if (cookie)
|
287
|
-
return;
|
288
|
-
}
|
289
|
-
_initServer.apply(this, Array.prototype.slice.apply(arguments));
|
290
|
-
};
|
291
|
-
|
292
|
-
|
293
|
-
BootstrapTable.prototype.initTable = function () {
|
294
|
-
_initTable.apply(this, Array.prototype.slice.apply(arguments));
|
295
|
-
this.initCookie();
|
296
|
-
};
|
297
|
-
|
298
|
-
BootstrapTable.prototype.initCookie = function () {
|
299
|
-
if (!this.options.cookie) {
|
300
|
-
return;
|
301
|
-
}
|
302
|
-
|
303
|
-
if ((this.options.cookieIdTable === '') || (this.options.cookieExpire === '') || (!cookieEnabled())) {
|
304
|
-
console.error("Configuration error. Please review the cookieIdTable, cookieExpire properties, if those properties are ok, then this browser does not support the cookies");
|
305
|
-
this.options.cookie = false; //Make sure that the cookie extension is disabled
|
306
|
-
return;
|
307
|
-
}
|
308
|
-
|
309
|
-
var sortOrderCookie = getCookie(this, this.options.cookieIdTable, cookieIds.sortOrder),
|
310
|
-
sortOrderNameCookie = getCookie(this, this.options.cookieIdTable, cookieIds.sortName),
|
311
|
-
pageNumberCookie = getCookie(this, this.options.cookieIdTable, cookieIds.pageNumber),
|
312
|
-
pageListCookie = getCookie(this, this.options.cookieIdTable, cookieIds.pageList),
|
313
|
-
columnsCookie = JSON.parse(getCookie(this, this.options.cookieIdTable, cookieIds.columns)),
|
314
|
-
searchTextCookie = getCookie(this, this.options.cookieIdTable, cookieIds.searchText);
|
315
|
-
|
316
|
-
//sortOrder
|
317
|
-
this.options.sortOrder = sortOrderCookie ? sortOrderCookie : this.options.sortOrder;
|
318
|
-
//sortName
|
319
|
-
this.options.sortName = sortOrderNameCookie ? sortOrderNameCookie : this.options.sortName;
|
320
|
-
//pageNumber
|
321
|
-
this.options.pageNumber = pageNumberCookie ? +pageNumberCookie : this.options.pageNumber;
|
322
|
-
//pageSize
|
323
|
-
this.options.pageSize = pageListCookie ? pageListCookie === this.options.formatAllRows() ? pageListCookie : +pageListCookie : this.options.pageSize;
|
324
|
-
//searchText
|
325
|
-
this.options.searchText = searchTextCookie ? searchTextCookie : '';
|
326
|
-
|
327
|
-
if (columnsCookie) {
|
328
|
-
$.each(this.columns, function (i, column) {
|
329
|
-
column.visible = $.inArray(column.field, columnsCookie) !== -1;
|
330
|
-
});
|
331
|
-
}
|
332
|
-
};
|
333
|
-
|
334
|
-
BootstrapTable.prototype.onSort = function () {
|
335
|
-
_onSort.apply(this, Array.prototype.slice.apply(arguments));
|
336
|
-
setCookie(this, cookieIds.sortOrder, this.options.sortOrder);
|
337
|
-
setCookie(this, cookieIds.sortName, this.options.sortName);
|
338
|
-
};
|
339
|
-
|
340
|
-
BootstrapTable.prototype.onPageNumber = function () {
|
341
|
-
_onPageNumber.apply(this, Array.prototype.slice.apply(arguments));
|
342
|
-
setCookie(this, cookieIds.pageNumber, this.options.pageNumber);
|
343
|
-
return false;
|
344
|
-
};
|
345
|
-
|
346
|
-
BootstrapTable.prototype.onPageListChange = function () {
|
347
|
-
_onPageListChange.apply(this, Array.prototype.slice.apply(arguments));
|
348
|
-
setCookie(this, cookieIds.pageList, this.options.pageSize);
|
349
|
-
setCookie(this, cookieIds.pageNumber, this.options.pageNumber);
|
350
|
-
return false;
|
351
|
-
};
|
352
|
-
|
353
|
-
BootstrapTable.prototype.onPagePre = function () {
|
354
|
-
_onPagePre.apply(this, Array.prototype.slice.apply(arguments));
|
355
|
-
setCookie(this, cookieIds.pageNumber, this.options.pageNumber);
|
356
|
-
return false;
|
357
|
-
};
|
358
|
-
|
359
|
-
BootstrapTable.prototype.onPageNext = function () {
|
360
|
-
_onPageNext.apply(this, Array.prototype.slice.apply(arguments));
|
361
|
-
setCookie(this, cookieIds.pageNumber, this.options.pageNumber);
|
362
|
-
return false;
|
363
|
-
};
|
364
|
-
|
365
|
-
BootstrapTable.prototype.toggleColumn = function () {
|
366
|
-
_toggleColumn.apply(this, Array.prototype.slice.apply(arguments));
|
367
|
-
|
368
|
-
var visibleColumns = [];
|
369
|
-
|
370
|
-
$.each(this.columns, function (i, column) {
|
371
|
-
if (column.visible) {
|
372
|
-
visibleColumns.push(column.field);
|
373
|
-
}
|
374
|
-
});
|
375
|
-
|
376
|
-
setCookie(this, cookieIds.columns, JSON.stringify(visibleColumns));
|
377
|
-
};
|
378
|
-
|
379
|
-
BootstrapTable.prototype.selectPage = function (page) {
|
380
|
-
_selectPage.apply(this, Array.prototype.slice.apply(arguments));
|
381
|
-
setCookie(this, cookieIds.pageNumber, page);
|
382
|
-
};
|
383
|
-
|
384
|
-
BootstrapTable.prototype.onSearch = function () {
|
385
|
-
var target = Array.prototype.slice.apply(arguments);
|
386
|
-
_onSearch.apply(this, target);
|
387
|
-
|
388
|
-
if ($(target[0].currentTarget).parent().hasClass('search')) {
|
389
|
-
setCookie(this, cookieIds.searchText, this.searchText);
|
390
|
-
}
|
391
|
-
setCookie(this, cookieIds.pageNumber, this.options.pageNumber);
|
392
|
-
};
|
393
|
-
|
394
|
-
BootstrapTable.prototype.getCookies = function () {
|
395
|
-
var bootstrapTable = this;
|
396
|
-
var cookies = {};
|
397
|
-
$.each(cookieIds, function(key, value) {
|
398
|
-
cookies[key] = getCookie(bootstrapTable, bootstrapTable.options.cookieIdTable, value);
|
399
|
-
if (key === 'columns') {
|
400
|
-
cookies[key] = JSON.parse(cookies[key]);
|
401
|
-
}
|
402
|
-
});
|
403
|
-
return cookies;
|
404
|
-
};
|
405
|
-
|
406
|
-
BootstrapTable.prototype.deleteCookie = function (cookieName) {
|
407
|
-
if ((cookieName === '') || (!cookieEnabled())) {
|
408
|
-
return;
|
409
|
-
}
|
410
|
-
|
411
|
-
deleteCookie(this, this.options.cookieIdTable, cookieIds[cookieName]);
|
412
|
-
};
|
413
|
-
})(jQuery);
|
@@ -1,102 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @author Homer Glascock <HopGlascock@gmail.com>
|
3
|
-
* @version: v1.0.0
|
4
|
-
*/
|
5
|
-
|
6
|
-
!function ($) {
|
7
|
-
"use strict";
|
8
|
-
|
9
|
-
var calculateObjectValue = $.fn.bootstrapTable.utils.calculateObjectValue,
|
10
|
-
sprintf = $.fn.bootstrapTable.utils.sprintf;
|
11
|
-
|
12
|
-
var copytext = function (text) {
|
13
|
-
var textField = document.createElement('textarea');
|
14
|
-
$(textField).html(text);
|
15
|
-
document.body.appendChild(textField);
|
16
|
-
textField.select();
|
17
|
-
|
18
|
-
try {
|
19
|
-
document.execCommand('copy');
|
20
|
-
}
|
21
|
-
catch (e) {
|
22
|
-
console.log("Oops, unable to copy");
|
23
|
-
}
|
24
|
-
$(textField).remove();
|
25
|
-
};
|
26
|
-
|
27
|
-
$.extend($.fn.bootstrapTable.defaults, {
|
28
|
-
copyBtn: false,
|
29
|
-
copyWHiddenBtn: false,
|
30
|
-
copyDelemeter: ", "
|
31
|
-
});
|
32
|
-
|
33
|
-
$.fn.bootstrapTable.methods.push('copyColumnsToClipboard', 'copyColumnsToClipboardWithHidden');
|
34
|
-
|
35
|
-
var BootstrapTable = $.fn.bootstrapTable.Constructor,
|
36
|
-
_initToolbar = BootstrapTable.prototype.initToolbar;
|
37
|
-
|
38
|
-
BootstrapTable.prototype.initToolbar = function () {
|
39
|
-
|
40
|
-
_initToolbar.apply(this, Array.prototype.slice.apply(arguments));
|
41
|
-
|
42
|
-
var that = this,
|
43
|
-
$btnGroup = this.$toolbar.find('>.btn-group');
|
44
|
-
|
45
|
-
if (this.options.clickToSelect || this.options.singleSelect) {
|
46
|
-
|
47
|
-
if (this.options.copyBtn) {
|
48
|
-
var copybtn = "<button class='btn btn-default' id='copyBtn'><span class='glyphicon glyphicon-copy icon-pencil'></span></button>";
|
49
|
-
$btnGroup.append(copybtn);
|
50
|
-
$btnGroup.find('#copyBtn').click(function () { that.copyColumnsToClipboard(); });
|
51
|
-
}
|
52
|
-
|
53
|
-
if (this.options.copyWHiddenBtn) {
|
54
|
-
var copyhiddenbtn = "<button class='btn btn-default' id='copyWHiddenBtn'><span class='badge'><span class='glyphicon glyphicon-copy icon-pencil'></span></span></button>";
|
55
|
-
$btnGroup.append(copyhiddenbtn);
|
56
|
-
$btnGroup.find('#copyWHiddenBtn').click(function () { that.copyColumnsToClipboardWithHidden(); });
|
57
|
-
}
|
58
|
-
}
|
59
|
-
};
|
60
|
-
|
61
|
-
BootstrapTable.prototype.copyColumnsToClipboard = function () {
|
62
|
-
var that = this,
|
63
|
-
ret = "",
|
64
|
-
delimet = this.options.copyDelemeter;
|
65
|
-
|
66
|
-
$.each(that.getSelections(), function (index, row) {
|
67
|
-
$.each(that.options.columns[0], function (indy, column) {
|
68
|
-
if (column.field !== "state" && column.field !== "RowNumber" && column.visible) {
|
69
|
-
if (row[column.field] !== null) {
|
70
|
-
ret += calculateObjectValue(column, that.header.formatters[indy], [row[column.field], row, index], row[column.field]);
|
71
|
-
}
|
72
|
-
ret += delimet;
|
73
|
-
}
|
74
|
-
});
|
75
|
-
|
76
|
-
ret += "\r\n";
|
77
|
-
});
|
78
|
-
|
79
|
-
copytext(ret);
|
80
|
-
};
|
81
|
-
|
82
|
-
BootstrapTable.prototype.copyColumnsToClipboardWithHidden = function () {
|
83
|
-
var that = this,
|
84
|
-
ret = "",
|
85
|
-
delimet = this.options.copyDelemeter;
|
86
|
-
|
87
|
-
$.each(that.getSelections(), function (index, row) {
|
88
|
-
$.each(that.options.columns[0], function (indy, column) {
|
89
|
-
if (column.field != "state" && column.field !== "RowNumber") {
|
90
|
-
if (row[column.field] !== null) {
|
91
|
-
ret += calculateObjectValue(column, that.header.formatters[indy], [row[column.field], row, index], row[column.field]);
|
92
|
-
}
|
93
|
-
ret += delimet;
|
94
|
-
}
|
95
|
-
});
|
96
|
-
|
97
|
-
ret += "\r\n";
|
98
|
-
});
|
99
|
-
|
100
|
-
copytext(ret);
|
101
|
-
};
|
102
|
-
}(jQuery);
|
@@ -1,32 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* When using server-side processing, the default mode of operation for
|
3
|
-
* bootstrap-table is to simply throw away any data that currently exists in the
|
4
|
-
* table and make a request to the server to get the first page of data to
|
5
|
-
* display. This is fine for an empty table, but if you already have the first
|
6
|
-
* page of data displayed in the plain HTML, it is a waste of resources. As
|
7
|
-
* such, you can use data-defer-url instead of data-url to allow you to instruct
|
8
|
-
* bootstrap-table to not make that initial request, rather it will use the data
|
9
|
-
* already on the page.
|
10
|
-
*
|
11
|
-
* @author: Ruben Suarez
|
12
|
-
* @webSite: http://rubensa.eu.org
|
13
|
-
* @version: v1.0.0
|
14
|
-
*/
|
15
|
-
|
16
|
-
(function($) {
|
17
|
-
'use strict';
|
18
|
-
|
19
|
-
$.extend($.fn.bootstrapTable.defaults, {
|
20
|
-
deferUrl : undefined
|
21
|
-
});
|
22
|
-
|
23
|
-
var BootstrapTable = $.fn.bootstrapTable.Constructor, _init = BootstrapTable.prototype.init;
|
24
|
-
|
25
|
-
BootstrapTable.prototype.init = function() {
|
26
|
-
_init.apply(this, Array.prototype.slice.apply(arguments));
|
27
|
-
|
28
|
-
if (this.options.deferUrl) {
|
29
|
-
this.options.url = this.options.deferUrl;
|
30
|
-
}
|
31
|
-
}
|
32
|
-
})(jQuery);
|
@@ -1,146 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @author zhixin wen <wenzhixin2010@gmail.com>
|
3
|
-
* extensions: https://github.com/vitalets/x-editable
|
4
|
-
*/
|
5
|
-
|
6
|
-
(function($) {
|
7
|
-
|
8
|
-
'use strict';
|
9
|
-
|
10
|
-
$.extend($.fn.bootstrapTable.defaults, {
|
11
|
-
editable: true,
|
12
|
-
onEditableInit: function() {
|
13
|
-
return false;
|
14
|
-
},
|
15
|
-
onEditableSave: function(field, row, oldValue, $el) {
|
16
|
-
return false;
|
17
|
-
},
|
18
|
-
onEditableShown: function(field, row, $el, editable) {
|
19
|
-
return false;
|
20
|
-
},
|
21
|
-
onEditableHidden: function(field, row, $el, reason) {
|
22
|
-
return false;
|
23
|
-
}
|
24
|
-
});
|
25
|
-
|
26
|
-
$.extend($.fn.bootstrapTable.Constructor.EVENTS, {
|
27
|
-
'editable-init.bs.table': 'onEditableInit',
|
28
|
-
'editable-save.bs.table': 'onEditableSave',
|
29
|
-
'editable-shown.bs.table': 'onEditableShown',
|
30
|
-
'editable-hidden.bs.table': 'onEditableHidden'
|
31
|
-
});
|
32
|
-
|
33
|
-
var BootstrapTable = $.fn.bootstrapTable.Constructor,
|
34
|
-
_initTable = BootstrapTable.prototype.initTable,
|
35
|
-
_initBody = BootstrapTable.prototype.initBody;
|
36
|
-
|
37
|
-
BootstrapTable.prototype.initTable = function() {
|
38
|
-
var that = this;
|
39
|
-
_initTable.apply(this, Array.prototype.slice.apply(arguments));
|
40
|
-
|
41
|
-
if (!this.options.editable) {
|
42
|
-
return;
|
43
|
-
}
|
44
|
-
|
45
|
-
$.each(this.columns, function(i, column) {
|
46
|
-
if (!column.editable) {
|
47
|
-
return;
|
48
|
-
}
|
49
|
-
|
50
|
-
var editableOptions = {},
|
51
|
-
editableDataMarkup = [],
|
52
|
-
editableDataPrefix = 'editable-';
|
53
|
-
|
54
|
-
var processDataOptions = function(key, value) {
|
55
|
-
// Replace camel case with dashes.
|
56
|
-
var dashKey = key.replace(/([A-Z])/g, function($1) {
|
57
|
-
return "-" + $1.toLowerCase();
|
58
|
-
});
|
59
|
-
if (dashKey.slice(0, editableDataPrefix.length) == editableDataPrefix) {
|
60
|
-
var dataKey = dashKey.replace(editableDataPrefix, 'data-');
|
61
|
-
editableOptions[dataKey] = value;
|
62
|
-
}
|
63
|
-
};
|
64
|
-
|
65
|
-
$.each(that.options, processDataOptions);
|
66
|
-
|
67
|
-
column.formatter = column.formatter || function(value, row, index) {
|
68
|
-
return value;
|
69
|
-
};
|
70
|
-
column._formatter = column._formatter ? column._formatter : column.formatter;
|
71
|
-
column.formatter = function(value, row, index) {
|
72
|
-
var result = column._formatter ? column._formatter(value, row, index) : value;
|
73
|
-
|
74
|
-
$.each(column, processDataOptions);
|
75
|
-
|
76
|
-
$.each(editableOptions, function(key, value) {
|
77
|
-
editableDataMarkup.push(' ' + key + '="' + value + '"');
|
78
|
-
});
|
79
|
-
|
80
|
-
var _dont_edit_formatter = false;
|
81
|
-
if (column.editable.hasOwnProperty('noeditFormatter')) {
|
82
|
-
_dont_edit_formatter = column.editable.noeditFormatter(value, row, index);
|
83
|
-
}
|
84
|
-
|
85
|
-
if (_dont_edit_formatter === false) {
|
86
|
-
return ['<a href="javascript:void(0)"',
|
87
|
-
' data-name="' + column.field + '"',
|
88
|
-
' data-pk="' + row[that.options.idField] + '"',
|
89
|
-
' data-value="' + result + '"',
|
90
|
-
editableDataMarkup.join(''),
|
91
|
-
'>' + '</a>'
|
92
|
-
].join('');
|
93
|
-
} else {
|
94
|
-
return _dont_edit_formatter;
|
95
|
-
}
|
96
|
-
|
97
|
-
};
|
98
|
-
});
|
99
|
-
};
|
100
|
-
|
101
|
-
BootstrapTable.prototype.initBody = function() {
|
102
|
-
var that = this;
|
103
|
-
_initBody.apply(this, Array.prototype.slice.apply(arguments));
|
104
|
-
|
105
|
-
if (!this.options.editable) {
|
106
|
-
return;
|
107
|
-
}
|
108
|
-
|
109
|
-
$.each(this.columns, function(i, column) {
|
110
|
-
if (!column.editable) {
|
111
|
-
return;
|
112
|
-
}
|
113
|
-
|
114
|
-
that.$body.find('a[data-name="' + column.field + '"]').editable(column.editable)
|
115
|
-
.off('save').on('save', function(e, params) {
|
116
|
-
var data = that.getData(),
|
117
|
-
index = $(this).parents('tr[data-index]').data('index'),
|
118
|
-
row = data[index],
|
119
|
-
oldValue = row[column.field];
|
120
|
-
|
121
|
-
$(this).data('value', params.submitValue);
|
122
|
-
row[column.field] = params.submitValue;
|
123
|
-
that.trigger('editable-save', column.field, row, oldValue, $(this));
|
124
|
-
that.resetFooter();
|
125
|
-
});
|
126
|
-
that.$body.find('a[data-name="' + column.field + '"]').editable(column.editable)
|
127
|
-
.off('shown').on('shown', function(e, editable) {
|
128
|
-
var data = that.getData(),
|
129
|
-
index = $(this).parents('tr[data-index]').data('index'),
|
130
|
-
row = data[index];
|
131
|
-
|
132
|
-
that.trigger('editable-shown', column.field, row, $(this), editable);
|
133
|
-
});
|
134
|
-
that.$body.find('a[data-name="' + column.field + '"]').editable(column.editable)
|
135
|
-
.off('hidden').on('hidden', function(e, reason) {
|
136
|
-
var data = that.getData(),
|
137
|
-
index = $(this).parents('tr[data-index]').data('index'),
|
138
|
-
row = data[index];
|
139
|
-
|
140
|
-
that.trigger('editable-hidden', column.field, row, $(this), reason);
|
141
|
-
});
|
142
|
-
});
|
143
|
-
this.trigger('editable-init');
|
144
|
-
};
|
145
|
-
|
146
|
-
})(jQuery);
|