jsxgrid 2.0.0

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.
Files changed (83) hide show
  1. package/LICENSE +23 -0
  2. package/README.md +2329 -0
  3. package/dist/fields/jsgrid.field.XDateTimeField.min.js +6 -0
  4. package/dist/fields/jsgrid.field.XRowSelectField.min.js +6 -0
  5. package/dist/fields/jsgrid.field.Xcheckbox.min.js +6 -0
  6. package/dist/fields/jsgrid.field.XimgField.min.js +6 -0
  7. package/dist/fields/jsgrid.field.Xjsoneditor.min.js +6 -0
  8. package/dist/fields/jsgrid.field.Xselect.min.js +6 -0
  9. package/dist/fields/jsgrid.field.Xtextarea.min.js +6 -0
  10. package/dist/fields/lib/jsGridSummaryPlugin.min.js +6 -0
  11. package/dist/fields/lib/jsgrid.popup.basic.min.js +6 -0
  12. package/dist/i18n/jsgrid-Ko.js +46 -0
  13. package/dist/i18n/jsgrid-cs.js +46 -0
  14. package/dist/i18n/jsgrid-de.js +46 -0
  15. package/dist/i18n/jsgrid-el.js +46 -0
  16. package/dist/i18n/jsgrid-es.js +46 -0
  17. package/dist/i18n/jsgrid-fa.js +46 -0
  18. package/dist/i18n/jsgrid-fr.js +47 -0
  19. package/dist/i18n/jsgrid-he.js +46 -0
  20. package/dist/i18n/jsgrid-it.js +47 -0
  21. package/dist/i18n/jsgrid-ja.js +46 -0
  22. package/dist/i18n/jsgrid-ka.js +46 -0
  23. package/dist/i18n/jsgrid-lt.js +47 -0
  24. package/dist/i18n/jsgrid-pl.js +62 -0
  25. package/dist/i18n/jsgrid-pt-br.js +46 -0
  26. package/dist/i18n/jsgrid-pt.js +46 -0
  27. package/dist/i18n/jsgrid-ru.js +47 -0
  28. package/dist/i18n/jsgrid-tr.js +47 -0
  29. package/dist/i18n/jsgrid-zh-cn.js +46 -0
  30. package/dist/i18n/jsgrid-zh-tw.js +46 -0
  31. package/dist/icons-2x.png +0 -0
  32. package/dist/icons.png +0 -0
  33. package/dist/jsxgrid-fields.js +606 -0
  34. package/dist/jsxgrid-fields.min.js +6 -0
  35. package/dist/jsxgrid-theme.css +258 -0
  36. package/dist/jsxgrid-theme.min.css +1 -0
  37. package/dist/jsxgrid-xfields.js +979 -0
  38. package/dist/jsxgrid-xfields.min.js +6 -0
  39. package/dist/jsxgrid.css +126 -0
  40. package/dist/jsxgrid.js +2137 -0
  41. package/dist/jsxgrid.min.css +1 -0
  42. package/dist/jsxgrid.min.js +6 -0
  43. package/package.json +57 -0
  44. package/src/fields/jsgrid.field.XDateTimeField.js +122 -0
  45. package/src/fields/jsgrid.field.XRowSelectField.js +62 -0
  46. package/src/fields/jsgrid.field.Xcheckbox.js +108 -0
  47. package/src/fields/jsgrid.field.XimgField.js +99 -0
  48. package/src/fields/jsgrid.field.Xjsoneditor.js +165 -0
  49. package/src/fields/jsgrid.field.Xselect.js +176 -0
  50. package/src/fields/jsgrid.field.Xtextarea.js +97 -0
  51. package/src/fields/jsgrid.field.checkbox.js +97 -0
  52. package/src/fields/jsgrid.field.control.js +224 -0
  53. package/src/fields/jsgrid.field.number.js +41 -0
  54. package/src/fields/jsgrid.field.select.js +130 -0
  55. package/src/fields/jsgrid.field.text.js +69 -0
  56. package/src/fields/jsgrid.field.textarea.js +34 -0
  57. package/src/i18n/Ko.js +46 -0
  58. package/src/i18n/cs.js +46 -0
  59. package/src/i18n/de.js +46 -0
  60. package/src/i18n/el.js +46 -0
  61. package/src/i18n/es.js +46 -0
  62. package/src/i18n/fa.js +46 -0
  63. package/src/i18n/fr.js +47 -0
  64. package/src/i18n/he.js +46 -0
  65. package/src/i18n/it.js +47 -0
  66. package/src/i18n/ja.js +46 -0
  67. package/src/i18n/ka.js +46 -0
  68. package/src/i18n/lt.js +47 -0
  69. package/src/i18n/pl.js +62 -0
  70. package/src/i18n/pt-br.js +46 -0
  71. package/src/i18n/pt.js +46 -0
  72. package/src/i18n/ru.js +47 -0
  73. package/src/i18n/tr.js +47 -0
  74. package/src/i18n/zh-cn.js +46 -0
  75. package/src/i18n/zh-tw.js +46 -0
  76. package/src/jsgrid.core.js +1655 -0
  77. package/src/jsgrid.field.js +74 -0
  78. package/src/jsgrid.load-indicator.js +82 -0
  79. package/src/jsgrid.load-strategies.js +131 -0
  80. package/src/jsgrid.sort-strategies.js +49 -0
  81. package/src/jsgrid.validation.js +135 -0
  82. package/src/lib/jsGridSummaryPlugin.js +37 -0
  83. package/src/lib/jsgrid.popup.basic.js +107 -0
@@ -0,0 +1,224 @@
1
+ (function(jsGrid, $, undefined) {
2
+
3
+ var Field = jsGrid.Field;
4
+
5
+ function ControlField(config) {
6
+ Field.call(this, config);
7
+ this.includeInDataExport = false;
8
+ this._configInitialized = false;
9
+ }
10
+
11
+ ControlField.prototype = new Field({
12
+ css: "jsgrid-control-field",
13
+ align: "center",
14
+ width: 50,
15
+ filtering: false,
16
+ inserting: false,
17
+ editing: false,
18
+ sorting: false,
19
+
20
+ buttonClass: "jsgrid-button",
21
+ modeButtonClass: "jsgrid-mode-button",
22
+
23
+ modeOnButtonClass: "jsgrid-mode-on-button",
24
+ searchModeButtonClass: "jsgrid-search-mode-button",
25
+ insertModeButtonClass: "jsgrid-insert-mode-button",
26
+ editButtonClass: "jsgrid-edit-button",
27
+ deleteButtonClass: "jsgrid-delete-button",
28
+ searchButtonClass: "jsgrid-search-button",
29
+ clearFilterButtonClass: "jsgrid-clear-filter-button",
30
+ insertButtonClass: "jsgrid-insert-button",
31
+ updateButtonClass: "jsgrid-update-button",
32
+ cancelEditButtonClass: "jsgrid-cancel-edit-button",
33
+
34
+ searchModeButtonTooltip: "Switch to searching",
35
+ insertModeButtonTooltip: "Switch to inserting",
36
+ editButtonTooltip: "Edit",
37
+ deleteButtonTooltip: "Delete",
38
+ searchButtonTooltip: "Search",
39
+ clearFilterButtonTooltip: "Clear filter",
40
+ insertButtonTooltip: "Insert",
41
+ updateButtonTooltip: "Update",
42
+ cancelEditButtonTooltip: "Cancel edit",
43
+
44
+ editButton: true,
45
+ deleteButton: true,
46
+ clearFilterButton: true,
47
+ modeSwitchButton: true,
48
+
49
+ _initConfig: function() {
50
+ this._hasFiltering = this._grid.filtering;
51
+ this._hasInserting = this._grid.inserting;
52
+
53
+ if(this._hasInserting && this.modeSwitchButton) {
54
+ this._grid.inserting = false;
55
+ }
56
+
57
+ this._configInitialized = true;
58
+ },
59
+
60
+ headerTemplate: function() {
61
+ if(!this._configInitialized) {
62
+ this._initConfig();
63
+ }
64
+
65
+ var hasFiltering = this._hasFiltering;
66
+ var hasInserting = this._hasInserting;
67
+
68
+ if(!this.modeSwitchButton || (!hasFiltering && !hasInserting))
69
+ return "";
70
+
71
+ if(hasFiltering && !hasInserting)
72
+ return this._createFilterSwitchButton();
73
+
74
+ if(hasInserting && !hasFiltering)
75
+ return this._createInsertSwitchButton();
76
+
77
+ return this._createModeSwitchButton();
78
+ },
79
+
80
+ itemTemplate: function(value, item) {
81
+ var $result = $([]);
82
+
83
+ if(this.editButton) {
84
+ $result = $result.add(this._createEditButton(item));
85
+ }
86
+
87
+ if(this.deleteButton) {
88
+ $result = $result.add(this._createDeleteButton(item));
89
+ }
90
+
91
+ return $result;
92
+ },
93
+
94
+ filterTemplate: function() {
95
+ var $result = this._createSearchButton();
96
+ return this.clearFilterButton ? $result.add(this._createClearFilterButton()) : $result;
97
+ },
98
+
99
+ insertTemplate: function() {
100
+ return this._createInsertButton();
101
+ },
102
+
103
+ editTemplate: function() {
104
+ return this._createUpdateButton().add(this._createCancelEditButton());
105
+ },
106
+
107
+ _createFilterSwitchButton: function() {
108
+ return this._createOnOffSwitchButton("filtering", this.searchModeButtonClass, true);
109
+ },
110
+
111
+ _createInsertSwitchButton: function() {
112
+ return this._createOnOffSwitchButton("inserting", this.insertModeButtonClass, false);
113
+ },
114
+
115
+ _createOnOffSwitchButton: function(option, cssClass, isOnInitially) {
116
+ var isOn = isOnInitially;
117
+
118
+ var updateButtonState = $.proxy(function() {
119
+ $button.toggleClass(this.modeOnButtonClass, isOn);
120
+ }, this);
121
+
122
+ var $button = this._createGridButton(this.modeButtonClass + " " + cssClass, "", function(grid) {
123
+ isOn = !isOn;
124
+ grid.option(option, isOn);
125
+ updateButtonState();
126
+ });
127
+
128
+ updateButtonState();
129
+
130
+ return $button;
131
+ },
132
+
133
+ _createModeSwitchButton: function() {
134
+ var isInserting = false;
135
+
136
+ var updateButtonState = $.proxy(function() {
137
+ $button.attr("title", isInserting ? this.searchModeButtonTooltip : this.insertModeButtonTooltip)
138
+ .toggleClass(this.insertModeButtonClass, !isInserting)
139
+ .toggleClass(this.searchModeButtonClass, isInserting);
140
+ }, this);
141
+
142
+ var $button = this._createGridButton(this.modeButtonClass, "", function(grid) {
143
+ isInserting = !isInserting;
144
+ grid.option("inserting", isInserting);
145
+ grid.option("filtering", !isInserting);
146
+ updateButtonState();
147
+ });
148
+
149
+ updateButtonState();
150
+
151
+ return $button;
152
+ },
153
+
154
+ _createEditButton: function(item) {
155
+ return this._createGridButton(this.editButtonClass, this.editButtonTooltip, function(grid, e) {
156
+ grid.editItem(item);
157
+ e.stopPropagation();
158
+ });
159
+ },
160
+
161
+ _createDeleteButton: function(item) {
162
+ return this._createGridButton(this.deleteButtonClass, this.deleteButtonTooltip, function(grid, e) {
163
+ grid.deleteItem(item);
164
+ e.stopPropagation();
165
+ });
166
+ },
167
+
168
+ _createSearchButton: function() {
169
+ return this._createGridButton(this.searchButtonClass, this.searchButtonTooltip, function(grid) {
170
+ grid.search();
171
+ });
172
+ },
173
+
174
+ _createClearFilterButton: function() {
175
+ return this._createGridButton(this.clearFilterButtonClass, this.clearFilterButtonTooltip, function(grid) {
176
+ grid.clearFilter();
177
+ });
178
+ },
179
+
180
+ _createInsertButton: function() {
181
+ return this._createGridButton(this.insertButtonClass, this.insertButtonTooltip, function(grid) {
182
+ grid.insertItem().done(function() {
183
+ grid.clearInsert();
184
+ });
185
+ });
186
+ },
187
+
188
+ _createUpdateButton: function() {
189
+ return this._createGridButton(this.updateButtonClass, this.updateButtonTooltip, function(grid, e) {
190
+ grid.updateItem();
191
+ e.stopPropagation();
192
+ });
193
+ },
194
+
195
+ _createCancelEditButton: function() {
196
+ return this._createGridButton(this.cancelEditButtonClass, this.cancelEditButtonTooltip, function(grid, e) {
197
+ grid.cancelEdit();
198
+ e.stopPropagation();
199
+ });
200
+ },
201
+
202
+ _createGridButton: function(cls, tooltip, clickHandler) {
203
+ var grid = this._grid;
204
+
205
+ return $("<input>").addClass(this.buttonClass)
206
+ .addClass(cls)
207
+ .attr({
208
+ type: "button",
209
+ title: tooltip
210
+ })
211
+ .on("click", function(e) {
212
+ clickHandler(grid, e);
213
+ });
214
+ },
215
+
216
+ editValue: function() {
217
+ return "";
218
+ }
219
+
220
+ });
221
+
222
+ jsGrid.fields.control = jsGrid.ControlField = ControlField;
223
+
224
+ }(jsGrid, jQuery));
@@ -0,0 +1,41 @@
1
+ (function(jsGrid, $, undefined) {
2
+
3
+ var TextField = jsGrid.TextField;
4
+
5
+ function NumberField(config) {
6
+ TextField.call(this, config);
7
+ }
8
+
9
+ NumberField.prototype = new TextField({
10
+
11
+ sorter: "number",
12
+ align: "right",
13
+ readOnly: false,
14
+
15
+ filterValue: function() {
16
+ return this.filterControl.val()
17
+ ? parseInt(this.filterControl.val() || 0, 10)
18
+ : undefined;
19
+ },
20
+
21
+ insertValue: function() {
22
+ return this.insertControl.val()
23
+ ? parseInt(this.insertControl.val() || 0, 10)
24
+ : undefined;
25
+ },
26
+
27
+ editValue: function() {
28
+ return this.editControl.val()
29
+ ? parseInt(this.editControl.val() || 0, 10)
30
+ : undefined;
31
+ },
32
+
33
+ _createTextBox: function() {
34
+ return $("<input>").attr("type", "number")
35
+ .prop("readonly", !!this.readOnly);
36
+ }
37
+ });
38
+
39
+ jsGrid.fields.number = jsGrid.NumberField = NumberField;
40
+
41
+ }(jsGrid, jQuery));
@@ -0,0 +1,130 @@
1
+ (function(jsGrid, $, undefined) {
2
+
3
+ var NumberField = jsGrid.NumberField;
4
+ var numberValueType = "number";
5
+ var stringValueType = "string";
6
+
7
+ function SelectField(config) {
8
+ this.items = [];
9
+ this.selectedIndex = -1;
10
+ this.valueField = "";
11
+ this.textField = "";
12
+
13
+ if(config.valueField && config.items.length) {
14
+ var firstItemValue = config.items[0][config.valueField];
15
+ this.valueType = (typeof firstItemValue) === numberValueType ? numberValueType : stringValueType;
16
+ }
17
+
18
+ this.sorter = this.valueType;
19
+
20
+ NumberField.call(this, config);
21
+ }
22
+
23
+ SelectField.prototype = new NumberField({
24
+
25
+ align: "center",
26
+ valueType: numberValueType,
27
+
28
+ itemTemplate: function(value) {
29
+ var items = this.items,
30
+ valueField = this.valueField,
31
+ textField = this.textField,
32
+ resultItem;
33
+
34
+ if(valueField) {
35
+ if(typeof(value) === "object"){
36
+ resultItem = value;
37
+ }
38
+ else{
39
+ resultItem = $.grep(items, function(item, index) {
40
+ return item[valueField] === value;
41
+ })[0] || {};
42
+ }
43
+ }
44
+ else {
45
+ resultItem = items[value];
46
+ }
47
+
48
+ var result = (textField ? resultItem[textField] : resultItem);
49
+
50
+ return (result === undefined || result === null) ? "" : result;
51
+ },
52
+
53
+ filterTemplate: function() {
54
+ if(!this.filtering)
55
+ return "";
56
+
57
+ var grid = this._grid,
58
+ $result = this.filterControl = this._createSelect();
59
+
60
+ if(this.autosearch) {
61
+ $result.on("change", function(e) {
62
+ grid.search();
63
+ });
64
+ }
65
+
66
+ return $result;
67
+ },
68
+
69
+ insertTemplate: function() {
70
+ if(!this.inserting)
71
+ return "";
72
+
73
+ return this.insertControl = this._createSelect();
74
+ },
75
+
76
+ editTemplate: function(value) {
77
+ if(!this.editing)
78
+ return this.itemTemplate.apply(this, arguments);
79
+
80
+ var $result = this.editControl = this._createSelect();
81
+ var editValue = value;
82
+ if(typeof(value) === "object"){
83
+ editValue = value[this.valueField];
84
+ }
85
+ (editValue !== undefined) && $result.val(editValue);
86
+ return $result;
87
+ },
88
+
89
+ filterValue: function() {
90
+ var val = this.filterControl.val();
91
+ return this.valueType === numberValueType ? parseInt(val || 0, 10) : val;
92
+ },
93
+
94
+ insertValue: function() {
95
+ var val = this.insertControl.val();
96
+ return this.valueType === numberValueType ? parseInt(val || 0, 10) : val;
97
+ },
98
+
99
+ editValue: function() {
100
+ var val = this.editControl.val();
101
+ return this.valueType === numberValueType ? parseInt(val || 0, 10) : val;
102
+ },
103
+
104
+ _createSelect: function() {
105
+ var $result = $("<select>"),
106
+ valueField = this.valueField,
107
+ textField = this.textField,
108
+ selectedIndex = this.selectedIndex;
109
+
110
+ $.each(this.items, function(index, item) {
111
+ var value = valueField ? item[valueField] : index,
112
+ text = textField ? item[textField] : item;
113
+
114
+ var $option = $("<option>")
115
+ .attr("value", value)
116
+ .text(text)
117
+ .appendTo($result);
118
+
119
+ });
120
+
121
+ $result.prop("disabled", !!this.readOnly);
122
+ $result.prop("selectedIndex", selectedIndex);
123
+
124
+ return $result;
125
+ }
126
+ });
127
+
128
+ jsGrid.fields.select = jsGrid.SelectField = SelectField;
129
+
130
+ }(jsGrid, jQuery));
@@ -0,0 +1,69 @@
1
+ (function(jsGrid, $, undefined) {
2
+
3
+ var Field = jsGrid.Field;
4
+
5
+ function TextField(config) {
6
+ Field.call(this, config);
7
+ }
8
+
9
+ TextField.prototype = new Field({
10
+
11
+ autosearch: true,
12
+ readOnly: false,
13
+
14
+ filterTemplate: function() {
15
+ if(!this.filtering)
16
+ return "";
17
+
18
+ var grid = this._grid,
19
+ $result = this.filterControl = this._createTextBox();
20
+
21
+ if(this.autosearch) {
22
+ $result.on("keypress", function(e) {
23
+ if(e.which === 13) {
24
+ grid.search();
25
+ e.preventDefault();
26
+ }
27
+ });
28
+ }
29
+
30
+ return $result;
31
+ },
32
+
33
+ insertTemplate: function() {
34
+ if(!this.inserting)
35
+ return "";
36
+
37
+ return this.insertControl = this._createTextBox();
38
+ },
39
+
40
+ editTemplate: function(value) {
41
+ if(!this.editing)
42
+ return this.itemTemplate.apply(this, arguments);
43
+
44
+ var $result = this.editControl = this._createTextBox();
45
+ $result.val(value);
46
+ return $result;
47
+ },
48
+
49
+ filterValue: function() {
50
+ return this.filterControl.val();
51
+ },
52
+
53
+ insertValue: function() {
54
+ return this.insertControl.val();
55
+ },
56
+
57
+ editValue: function() {
58
+ return this.editControl.val();
59
+ },
60
+
61
+ _createTextBox: function() {
62
+ return $("<input>").attr("type", "text")
63
+ .prop("readonly", !!this.readOnly);
64
+ }
65
+ });
66
+
67
+ jsGrid.fields.text = jsGrid.TextField = TextField;
68
+
69
+ }(jsGrid, jQuery));
@@ -0,0 +1,34 @@
1
+ (function(jsGrid, $, undefined) {
2
+
3
+ var TextField = jsGrid.TextField;
4
+
5
+ function TextAreaField(config) {
6
+ TextField.call(this, config);
7
+ }
8
+
9
+ TextAreaField.prototype = new TextField({
10
+
11
+ insertTemplate: function() {
12
+ if(!this.inserting)
13
+ return "";
14
+
15
+ return this.insertControl = this._createTextArea();
16
+ },
17
+
18
+ editTemplate: function(value) {
19
+ if(!this.editing)
20
+ return this.itemTemplate.apply(this, arguments);
21
+
22
+ var $result = this.editControl = this._createTextArea();
23
+ $result.val(value);
24
+ return $result;
25
+ },
26
+
27
+ _createTextArea: function() {
28
+ return $("<textarea>").prop("readonly", !!this.readOnly);
29
+ }
30
+ });
31
+
32
+ jsGrid.fields.textarea = jsGrid.TextAreaField = TextAreaField;
33
+
34
+ }(jsGrid, jQuery));
package/src/i18n/Ko.js ADDED
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.ko = {
4
+ grid: {
5
+ noDataContent: "데이터가 없습니다.",
6
+ deleteConfirm: "데이터를 삭제 하겠습니까?",
7
+ pagerFormat: "페이지 : {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} / {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "잠시 기다려주세요...",
13
+ invalidMessage: "잘못된 데이터가 입력 되었습니다."
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "처리중..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "검색 모드",
23
+ insertModeButtonTooltip: "등록 모드",
24
+ editButtonTooltip: "수정",
25
+ deleteButtonTooltip: "삭제",
26
+ searchButtonTooltip: "검색",
27
+ clearFilterButtonTooltip: "초기화",
28
+ insertButtonTooltip: "등록",
29
+ updateButtonTooltip: "업데이트",
30
+ cancelEditButtonTooltip: "변경 취소"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "필수 입력" },
36
+ rangeLength: { message: "입력된 값의 길이가 범위를 벗어났습니다." },
37
+ minLength: { message: "입력된 값이 지정된 길이보다 짧습니다." },
38
+ maxLength: { message: "입력된 값의 지정된 길이보다 깁니다." },
39
+ pattern: { message: "입력된 값이 지정된 패턴과 일치하지 않습니다." },
40
+ range: { message: "입력된 값이 범위를 벗어났습니다." },
41
+ min: { message: "입력된 값이 지정된 범위보다 작습니다." },
42
+ max: { message: "입력된 값이 지정된 범위보다 큽니다." }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
package/src/i18n/cs.js ADDED
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.cs = {
4
+ grid: {
5
+ noDataContent: "Nenalezena žádná data",
6
+ deleteConfirm: "Opravdu chcete smazat data?",
7
+ pagerFormat: "Stránky: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} z {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "Čekejte prosím ...",
13
+ invalidMessage: "Vložili jste neplatná data!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Nahrávám..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Přepnout na hledání",
23
+ insertModeButtonTooltip: "Přepnout na vlkádání",
24
+ editButtonTooltip: "Upravit",
25
+ deleteButtonTooltip: "Smazat",
26
+ searchButtonTooltip: "Hledat",
27
+ clearFilterButtonTooltip: "Smazat filtr",
28
+ insertButtonTooltip: "Vložit",
29
+ updateButtonTooltip: "Upravit",
30
+ cancelEditButtonTooltip: "Zrušit editaci"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Povinné pole" },
36
+ rangeLength: { message: "Délka hodnoty je vetší než je definováno" },
37
+ minLength: { message: "Hodnota je příliš krátká" },
38
+ maxLength: { message: "Hodnota je příliš dlouhá" },
39
+ pattern: { message: "Hodnota neodpovídá nadefinovanému vzoru" },
40
+ range: { message: "Hodnota je mimo rozsah" },
41
+ min: { message: "Hodnota je příliš malá" },
42
+ max: { message: "Hodnota je příliš vysoká" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
package/src/i18n/de.js ADDED
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.de = {
4
+ grid: {
5
+ noDataContent: "Die Daten konnten nicht gefunden werden",
6
+ deleteConfirm: "Möchten Sie die Daten unwiederruflich löschen?",
7
+ pagerFormat: "Seiten: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} von {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "Bitte warten...",
13
+ invalidMessage: "Ihre Eingabe ist nicht zulässig!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Lädt..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Suche",
23
+ insertModeButtonTooltip: "Eintrag hinzufügen",
24
+ editButtonTooltip: "Bearbeiten",
25
+ deleteButtonTooltip: "Löschen",
26
+ searchButtonTooltip: "Eintrag finden",
27
+ clearFilterButtonTooltip: "Filter zurücksetzen",
28
+ insertButtonTooltip: "Hinzufügen",
29
+ updateButtonTooltip: "Speichern",
30
+ cancelEditButtonTooltip: "Abbrechen"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Dies ist ein Pflichtfeld" },
36
+ rangeLength: { message: "Die Länge der Eingabe liegt außerhalb des zulässigen Bereichs" },
37
+ minLength: { message: "Die Eingabe ist zu kurz" },
38
+ maxLength: { message: "Die Eingabe ist zu lang" },
39
+ pattern: { message: "Die Eingabe entspricht nicht dem gewünschten Muster" },
40
+ range: { message: "Der eingegebene Wert liegt außerhalb des zulässigen Bereichs" },
41
+ min: { message: "Der eingegebene Wert ist zu niedrig" },
42
+ max: { message: "Der eingegebene Wert ist zu hoch" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));
package/src/i18n/el.js ADDED
@@ -0,0 +1,46 @@
1
+ (function(jsGrid) {
2
+
3
+ jsGrid.locales.el = {
4
+ grid: {
5
+ noDataContent: "Δεν βρέθηκαν δεδομένα",
6
+ deleteConfirm: "Θέλετε σίγουρα να κάνετε οριστική διαγραφή των δεδομένων;",
7
+ pagerFormat: "Σελίδες: {first} {prev} {pages} {next} {last} &nbsp;&nbsp; {pageIndex} από {pageCount}",
8
+ pagePrevText: "<",
9
+ pageNextText: ">",
10
+ pageFirstText: "<<",
11
+ pageLastText: ">>",
12
+ loadMessage: "Παρακαλώ περιμένετε...",
13
+ invalidMessage: "Η τιμή που δώσατε δεν είναι έγκυρη!"
14
+ },
15
+
16
+ loadIndicator: {
17
+ message: "Φόρτωση..."
18
+ },
19
+
20
+ fields: {
21
+ control: {
22
+ searchModeButtonTooltip: "Αναζήτηση",
23
+ insertModeButtonTooltip: "Εισάγετε φίλτρο",
24
+ editButtonTooltip: "Επεξεργασία",
25
+ deleteButtonTooltip: "Διαγραφή",
26
+ searchButtonTooltip: "Εύρεση",
27
+ clearFilterButtonTooltip: "Αφαίρεση φίλτρου",
28
+ insertButtonTooltip: "Εισαγωγή",
29
+ updateButtonTooltip: "Αποθήκευση",
30
+ cancelEditButtonTooltip: "Ακύρωση"
31
+ }
32
+ },
33
+
34
+ validators: {
35
+ required: { message: "Είναι υποχρεωτικό πεδίο" },
36
+ rangeLength: { message: "Το πλήθος των χαρακτήρων είναι εκτός των αποδεκτών ορίων" },
37
+ minLength: { message: "Το πλήθος των χαρακτήρων είναι μικρότερο το ορίου" },
38
+ maxLength: { message: "Το πλήθος των χαρακτήρων ξεπερνάει το όριο" },
39
+ pattern: { message: "Η τιμή που δώσατε δεν είναι έγκυρη" },
40
+ range: { message: "Η τιμή που δώσατε είναι εκτός των αποδεκτών ορίων" },
41
+ min: { message: "Η τιμή που δώσατε είναι πολύ μικρή" },
42
+ max: { message: "Η τιμή που δώσατε είναι πολύ μεγάλη" }
43
+ }
44
+ };
45
+
46
+ }(jsGrid, jQuery));