Version Description
/ 10.08.2018 = * Added the ability to create diagrams for cells with formulas and shortcodes * Fix for Preview Loader * Add loader for diagrams * new youtube video * For Source Option added the ability to Export data from an External DB and use SQL Query * Fixed row headers in Editor Tab * Added the ability to build a chart based on data from database tables * Added posibility to place reduction like 1-4, A-D in part shortcode *
Download this release
Release Info
Developer | supsystic.com |
Plugin | Data Tables Generator by Supsystic |
Version | 1.8.8 |
Comparing to | |
See all releases |
Code changes from version 1.8.7 to 1.8.8
- app/SupsysticTables.php +1 -1
- index.php +1 -1
- readme.txt +14 -3
- src/SupsysticTables/Tables/Module.php +35 -2
- src/SupsysticTables/Tables/assets/css/loaders.css +1 -1
- src/SupsysticTables/Tables/assets/css/tables.shortcode.css +3 -1
- src/SupsysticTables/Tables/assets/css/tables.view.css +6 -0
- src/SupsysticTables/Tables/assets/js/editor/tables.editor.js +47 -18
- src/SupsysticTables/Tables/assets/js/editor/tables.editor.toolbar.js +5 -2
- src/SupsysticTables/Tables/assets/js/tables.model.js +7 -1
- src/SupsysticTables/Tables/views/view.twig +14 -14
app/SupsysticTables.php
CHANGED
@@ -18,7 +18,7 @@ class SupsysticTables
|
|
18 |
|
19 |
$menuSlug = 'supsystic-tables';
|
20 |
$pluginPath = dirname(dirname(__FILE__));
|
21 |
-
$environment = new Rsc_Environment('st', '1.8.
|
22 |
|
23 |
/* Configure */
|
24 |
$environment->configure(
|
18 |
|
19 |
$menuSlug = 'supsystic-tables';
|
20 |
$pluginPath = dirname(dirname(__FILE__));
|
21 |
+
$environment = new Rsc_Environment('st', '1.8.8', $pluginPath);
|
22 |
|
23 |
/* Configure */
|
24 |
$environment->configure(
|
index.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Plugin Name: Data Tables Generator by Supsystic
|
5 |
* Plugin URI: http://supsystic.com
|
6 |
* Description: Create and manage beautiful data tables with custom design. No HTML knowledge is required
|
7 |
-
* Version: 1.8.
|
8 |
* Author: supsystic.com
|
9 |
* Author URI: http://supsystic.com
|
10 |
*/
|
4 |
* Plugin Name: Data Tables Generator by Supsystic
|
5 |
* Plugin URI: http://supsystic.com
|
6 |
* Description: Create and manage beautiful data tables with custom design. No HTML knowledge is required
|
7 |
+
* Version: 1.8.8
|
8 |
* Author: supsystic.com
|
9 |
* Author URI: http://supsystic.com
|
10 |
*/
|
readme.txt
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
=== Data Tables Generator by Supsystic ===
|
2 |
Contributors: supsystic.com
|
3 |
Tags: csv, csv file, csv to table, excel, table, tablesorter, post, data table, table, database, html table, table generator, builder, generator, cells, area chart, bar chart, candlestick chart, canvas, chart, charting, charts, column chart, gauge chart, geo chart, google chart, google visualization api, graph, graphing, graphs, html5, line chart, pie chart, scatter chart, spreadsheet, visualisation, visualise data, visualization, visualize data
|
4 |
-
Tested up to: 4.9.
|
5 |
-
Stable tag: 1.8.
|
6 |
|
7 |
Create data tables with charts and graphs. Custom design, navigation, searching and ordering functions. Export to PDF, CSV, Print. Excel spreadsheet
|
8 |
|
@@ -30,7 +30,7 @@ Data Tables Generator is a new plugin created by Supsystic, which allows you to
|
|
30 |
|
31 |
HTML tables responsive and awesome on all devices
|
32 |
|
33 |
-
[youtube https://www.youtube.com/watch?v=
|
34 |
|
35 |
= Data Tables Plugin Support =
|
36 |
|
@@ -194,6 +194,17 @@ Important! Shortcode must be inserted in a text editor page, and not in the visu
|
|
194 |
|
195 |
== Changelog ==
|
196 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
197 |
= 1.8.7 / 24.07.2018 =
|
198 |
* Fix Multisite Installation process
|
199 |
* Fixed the problem: Clicking on the cell raises the table up
|
1 |
=== Data Tables Generator by Supsystic ===
|
2 |
Contributors: supsystic.com
|
3 |
Tags: csv, csv file, csv to table, excel, table, tablesorter, post, data table, table, database, html table, table generator, builder, generator, cells, area chart, bar chart, candlestick chart, canvas, chart, charting, charts, column chart, gauge chart, geo chart, google chart, google visualization api, graph, graphing, graphs, html5, line chart, pie chart, scatter chart, spreadsheet, visualisation, visualise data, visualization, visualize data
|
4 |
+
Tested up to: 4.9.8
|
5 |
+
Stable tag: 1.8.8
|
6 |
|
7 |
Create data tables with charts and graphs. Custom design, navigation, searching and ordering functions. Export to PDF, CSV, Print. Excel spreadsheet
|
8 |
|
30 |
|
31 |
HTML tables responsive and awesome on all devices
|
32 |
|
33 |
+
[youtube https://www.youtube.com/watch?v=RZ2I-aCiLZE]
|
34 |
|
35 |
= Data Tables Plugin Support =
|
36 |
|
194 |
|
195 |
== Changelog ==
|
196 |
|
197 |
+
= 1.8.8 / 10.08.2018 =
|
198 |
+
* Added the ability to create diagrams for cells with formulas and shortcodes
|
199 |
+
* Fix for Preview Loader
|
200 |
+
* Add loader for diagrams
|
201 |
+
* new youtube video
|
202 |
+
* For Source Option added the ability to Export data from an External DB and use SQL Query
|
203 |
+
* Fixed row headers in Editor Tab
|
204 |
+
* Added the ability to build a chart based on data from database tables
|
205 |
+
* Added posibility to place reduction like 1-4, A-D in part shortcode
|
206 |
+
*
|
207 |
+
|
208 |
= 1.8.7 / 24.07.2018 =
|
209 |
* Fix Multisite Installation process
|
210 |
* Fixed the problem: Clicking on the cell raises the table up
|
src/SupsysticTables/Tables/Module.php
CHANGED
@@ -557,9 +557,42 @@ class SupsysticTables_Tables_Module extends SupsysticTables_Core_BaseModule
|
|
557 |
add_action('wp_footer', array($asset, 'load'));
|
558 |
}
|
559 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
560 |
$this->isTablePart = array(
|
561 |
-
'row' =>
|
562 |
-
'col' =>
|
563 |
);
|
564 |
|
565 |
return $this->render((int)$attributes['id']);
|
557 |
add_action('wp_footer', array($asset, 'load'));
|
558 |
}
|
559 |
}
|
560 |
+
|
561 |
+
|
562 |
+
$rowsResult = array();
|
563 |
+
$rows = array_filter(
|
564 |
+
explode(',', $attributes['row'])
|
565 |
+
);
|
566 |
+
foreach ($rows as $row ){
|
567 |
+
if (strpos($row, '-') !== false) {
|
568 |
+
$minMaxVals = explode('-', $row);
|
569 |
+
foreach (range($minMaxVals[0], $minMaxVals[1]) as $item) {
|
570 |
+
$rowsResult[] = (string)$item;
|
571 |
+
}
|
572 |
+
}else{
|
573 |
+
$rowsResult[] = (string)$row;
|
574 |
+
}
|
575 |
+
|
576 |
+
}
|
577 |
+
|
578 |
+
$colsResult = array();
|
579 |
+
$cols = array_filter(
|
580 |
+
explode(',', $attributes['col'])
|
581 |
+
);
|
582 |
+
foreach ($cols as $col ){
|
583 |
+
if (strpos($col, '-') !== false) {
|
584 |
+
$minMaxVals = explode('-', $col);
|
585 |
+
foreach (range($minMaxVals[0], $minMaxVals[1]) as $item) {
|
586 |
+
$colsResult[] = $this->_lettersToNumbers((string)$item);
|
587 |
+
}
|
588 |
+
}else{
|
589 |
+
$colsResult[] = $this->_lettersToNumbers((string)$col);
|
590 |
+
}
|
591 |
+
}
|
592 |
+
|
593 |
$this->isTablePart = array(
|
594 |
+
'row' => $rowsResult,
|
595 |
+
'col' => $colsResult,
|
596 |
);
|
597 |
|
598 |
return $this->render((int)$attributes['id']);
|
src/SupsysticTables/Tables/assets/css/loaders.css
CHANGED
@@ -163,7 +163,7 @@
|
|
163 |
|
164 |
|
165 |
/* Old Default Table Loader */
|
166 |
-
.supsystic-table-loader {
|
167 |
margin: 0 auto;
|
168 |
}
|
169 |
.spinner {
|
163 |
|
164 |
|
165 |
/* Old Default Table Loader */
|
166 |
+
.supsystic-table-loader, .supsystic-diagram-loader {
|
167 |
margin: 0 auto;
|
168 |
}
|
169 |
.spinner {
|
src/SupsysticTables/Tables/assets/css/tables.shortcode.css
CHANGED
@@ -233,7 +233,9 @@ table.oneColumnWithLabels td:after {
|
|
233 |
.supsystic-tables-wrap table {
|
234 |
margin-left: 0 !important;
|
235 |
}
|
236 |
-
|
|
|
|
|
237 |
table.dataTable tfoot input {
|
238 |
width: 100%;
|
239 |
padding: 3px;
|
233 |
.supsystic-tables-wrap table {
|
234 |
margin-left: 0 !important;
|
235 |
}
|
236 |
+
.supsystic-tables-wrap .dataTables_scroll {
|
237 |
+
padding-top: 0 !important;
|
238 |
+
}
|
239 |
table.dataTable tfoot input {
|
240 |
width: 100%;
|
241 |
padding: 3px;
|
src/SupsysticTables/Tables/assets/css/tables.view.css
CHANGED
@@ -422,3 +422,9 @@
|
|
422 |
width: 100%;
|
423 |
}
|
424 |
}
|
|
|
|
|
|
|
|
|
|
|
|
422 |
width: 100%;
|
423 |
}
|
424 |
}
|
425 |
+
.video-container {
|
426 |
+
position:relative;
|
427 |
+
padding-bottom:56.25%;
|
428 |
+
height:0;
|
429 |
+
overflow:hidden;
|
430 |
+
}
|
src/SupsysticTables/Tables/assets/js/editor/tables.editor.js
CHANGED
@@ -319,6 +319,21 @@ var g_stbRowsPerPage = 1;
|
|
319 |
}
|
320 |
updateUndoRedoBtns();
|
321 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
322 |
editor.addHook('afterRemoveRow', function (from, amount) {
|
323 |
generateHeightData();
|
324 |
editor.allHeights.splice(from, amount);
|
@@ -335,6 +350,7 @@ var g_stbRowsPerPage = 1;
|
|
335 |
editor.bufferData.splice(rowForBuffer, amount);
|
336 |
editor.bufferHeights.splice(rowForBuffer, amount);
|
337 |
editor.bufferMeta.splice(rowForBuffer * countCols, amount * countCols);
|
|
|
338 |
|
339 |
for (var i = 0; i < merge.length; i++) {
|
340 |
var row = merge[i].row;
|
@@ -350,18 +366,6 @@ var g_stbRowsPerPage = 1;
|
|
350 |
}
|
351 |
}
|
352 |
editor.bufferMerge = mergeNew;
|
353 |
-
setTimeout(function() {
|
354 |
-
if (amount > 1) {
|
355 |
-
var merge = editor.mergeCells.mergedCellInfoCollection;
|
356 |
-
for (var i = 0; i < merge.length; i++) {
|
357 |
-
if (merge[i].row >= from) {
|
358 |
-
merge[i].row -= (amount - 1);
|
359 |
-
}
|
360 |
-
}
|
361 |
-
}
|
362 |
-
editor.generatePagingLinks();
|
363 |
-
editor.setPageData();
|
364 |
-
}, 10);
|
365 |
} else {
|
366 |
var countRows = editor.countRows(),
|
367 |
plugin = editor.getPlugin('ManualRowResize');
|
@@ -373,12 +377,32 @@ var g_stbRowsPerPage = 1;
|
|
373 |
plugin.setManualSize(i, editor.allHeights[i]);
|
374 |
}
|
375 |
}
|
376 |
-
setTimeout(function() {
|
377 |
-
toolbar.renderTooltips(from, 0);
|
378 |
-
}, 10);
|
379 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
380 |
updateUndoRedoBtns();
|
381 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
382 |
editor.addHook('afterRemoveCol', function(from, amount) {
|
383 |
generateWidthData();
|
384 |
editor.allWidths.splice(from, amount);
|
@@ -716,7 +740,9 @@ var g_stbRowsPerPage = 1;
|
|
716 |
}
|
717 |
}
|
718 |
|
719 |
-
var mergeNew = []
|
|
|
|
|
720 |
for (var i = 0; i < merge.length; i++) {
|
721 |
mergeNew.push({
|
722 |
col: merge[i].col,
|
@@ -727,7 +753,7 @@ var g_stbRowsPerPage = 1;
|
|
727 |
}
|
728 |
for (var i = 0; i < this.bufferMerge.length; i++) {
|
729 |
row = this.bufferMerge[i].row;
|
730 |
-
if (row < start || row > stop) {
|
731 |
mergeNew.push(this.bufferMerge[i]);
|
732 |
}
|
733 |
}
|
@@ -750,6 +776,7 @@ var g_stbRowsPerPage = 1;
|
|
750 |
editor.getSourceDataPagination = (function () {
|
751 |
return function (fromX, fromY, toX, toY) {
|
752 |
this.copyInBuffer();
|
|
|
753 |
var data = this.bufferData,
|
754 |
rangeData = [],
|
755 |
buffer;
|
@@ -776,7 +803,9 @@ var g_stbRowsPerPage = 1;
|
|
776 |
})();
|
777 |
|
778 |
Handsontable.dom.addEvent(window, 'hashchange', function (event) {
|
779 |
-
|
|
|
|
|
780 |
});
|
781 |
});
|
782 |
}(window.jQuery, window.supsystic.Tables));
|
319 |
}
|
320 |
updateUndoRedoBtns();
|
321 |
});
|
322 |
+
editor.addHook('beforeRemoveRow', function (from, amount) {
|
323 |
+
var merge = editor.mergeCells.mergedCellInfoCollection,
|
324 |
+
to = from + amount - 1,
|
325 |
+
cntMerge = merge.length;
|
326 |
+
for (var i = cntMerge - 1; i >= 0; i--) {
|
327 |
+
var row = merge[i].row;
|
328 |
+
if (row >= from) {
|
329 |
+
if (row <= to) {
|
330 |
+
merge.splice(i, 1);
|
331 |
+
} else {
|
332 |
+
merge[i].row -= (amount - 1);
|
333 |
+
}
|
334 |
+
}
|
335 |
+
}
|
336 |
+
});
|
337 |
editor.addHook('afterRemoveRow', function (from, amount) {
|
338 |
generateHeightData();
|
339 |
editor.allHeights.splice(from, amount);
|
350 |
editor.bufferData.splice(rowForBuffer, amount);
|
351 |
editor.bufferHeights.splice(rowForBuffer, amount);
|
352 |
editor.bufferMeta.splice(rowForBuffer * countCols, amount * countCols);
|
353 |
+
editor.pageStop -= amount;
|
354 |
|
355 |
for (var i = 0; i < merge.length; i++) {
|
356 |
var row = merge[i].row;
|
366 |
}
|
367 |
}
|
368 |
editor.bufferMerge = mergeNew;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
369 |
} else {
|
370 |
var countRows = editor.countRows(),
|
371 |
plugin = editor.getPlugin('ManualRowResize');
|
377 |
plugin.setManualSize(i, editor.allHeights[i]);
|
378 |
}
|
379 |
}
|
|
|
|
|
|
|
380 |
}
|
381 |
+
setTimeout(function() {
|
382 |
+
if (g_stbPagination) {
|
383 |
+
editor.generatePagingLinks();
|
384 |
+
editor.setPageData();
|
385 |
+
} else {
|
386 |
+
toolbar.renderTooltips(from, 0);
|
387 |
+
}
|
388 |
+
}, 10);
|
389 |
updateUndoRedoBtns();
|
390 |
});
|
391 |
+
editor.addHook('beforeRemoveCol', function (from, amount) {
|
392 |
+
var merge = editor.mergeCells.mergedCellInfoCollection,
|
393 |
+
to = from + amount - 1,
|
394 |
+
cntMerge = merge.length;
|
395 |
+
for (var i = cntMerge - 1; i >= 0; i--) {
|
396 |
+
var col = merge[i].col;
|
397 |
+
if (col >= from) {
|
398 |
+
if (col <= to) {
|
399 |
+
merge.splice(i, 1);
|
400 |
+
} else {
|
401 |
+
merge[i].col -= (amount - 1);
|
402 |
+
}
|
403 |
+
}
|
404 |
+
}
|
405 |
+
});
|
406 |
editor.addHook('afterRemoveCol', function(from, amount) {
|
407 |
generateWidthData();
|
408 |
editor.allWidths.splice(from, amount);
|
740 |
}
|
741 |
}
|
742 |
|
743 |
+
var mergeNew = [],
|
744 |
+
realCountRows = this.bufferData.length;
|
745 |
+
|
746 |
for (var i = 0; i < merge.length; i++) {
|
747 |
mergeNew.push({
|
748 |
col: merge[i].col,
|
753 |
}
|
754 |
for (var i = 0; i < this.bufferMerge.length; i++) {
|
755 |
row = this.bufferMerge[i].row;
|
756 |
+
if (row < realCountRows && (row < start || row > stop)) {
|
757 |
mergeNew.push(this.bufferMerge[i]);
|
758 |
}
|
759 |
}
|
776 |
editor.getSourceDataPagination = (function () {
|
777 |
return function (fromX, fromY, toX, toY) {
|
778 |
this.copyInBuffer();
|
779 |
+
if (typeof(fromX) == 'undefined') return this.bufferData;
|
780 |
var data = this.bufferData,
|
781 |
rangeData = [],
|
782 |
buffer;
|
803 |
})();
|
804 |
|
805 |
Handsontable.dom.addEvent(window, 'hashchange', function (event) {
|
806 |
+
if (g_stbPagination) {
|
807 |
+
editor.setPageData();
|
808 |
+
}
|
809 |
});
|
810 |
});
|
811 |
}(window.jQuery, window.supsystic.Tables));
|
src/SupsysticTables/Tables/assets/js/editor/tables.editor.toolbar.js
CHANGED
@@ -257,6 +257,9 @@ var g_stbCellBgColorTimeoutSet = false,
|
|
257 |
|
258 |
if(attachment && attachment.url) {
|
259 |
editor.setDataAtCell(highlighted.row, highlighted.col, self.getHtmlForAttachment(attachment));
|
|
|
|
|
|
|
260 |
}
|
261 |
});
|
262 |
}
|
@@ -583,10 +586,10 @@ var g_stbCellBgColorTimeoutSet = false,
|
|
583 |
content = '<img src="' + attachment.url + '" />';
|
584 |
break;
|
585 |
case 'video':
|
586 |
-
content = '<video controls>';
|
587 |
content += '<source src="' + attachment.url + '" ' +
|
588 |
(typeof attachment.mime != 'undefined' ? 'type="' + attachment.mime + '"' : '') + '>';
|
589 |
-
content += '</video>';
|
590 |
break;
|
591 |
case 'audio':
|
592 |
content = '<audio controls>';
|
257 |
|
258 |
if(attachment && attachment.url) {
|
259 |
editor.setDataAtCell(highlighted.row, highlighted.col, self.getHtmlForAttachment(attachment));
|
260 |
+
setTimeout(function(){
|
261 |
+
editor.render();
|
262 |
+
}, 200);
|
263 |
}
|
264 |
});
|
265 |
}
|
586 |
content = '<img src="' + attachment.url + '" />';
|
587 |
break;
|
588 |
case 'video':
|
589 |
+
content = '<div class="video-container"><video controls>';
|
590 |
content += '<source src="' + attachment.url + '" ' +
|
591 |
(typeof attachment.mime != 'undefined' ? 'type="' + attachment.mime + '"' : '') + '>';
|
592 |
+
content += '</video></div>';
|
593 |
break;
|
594 |
case 'audio':
|
595 |
content = '<audio controls>';
|
src/SupsysticTables/Tables/assets/js/tables.model.js
CHANGED
@@ -354,6 +354,12 @@ var g_stbPreviewTimeoutSet = false;
|
|
354 |
comment: cell.comment
|
355 |
});
|
356 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
357 |
cells.push(cell.data);
|
358 |
});
|
359 |
data.push(cells);
|
@@ -452,13 +458,13 @@ var g_stbPreviewTimeoutSet = false;
|
|
452 |
formData.find('input[name="elements[descriptionText]"]').val( formData.find('#descriptionText').val() );
|
453 |
formData.find('input[name="elements[signatureText]"]').val( formData.find('#signatureText').val() );
|
454 |
formData.find('input[name="features[after_table_loaded_script]"]').val(this._b64EncodeUnicode(formData.find('#after-table-loaded-script-text').val()));
|
|
|
455 |
|
456 |
if(preview) {
|
457 |
var tableInstance = app.getTableInstanceById(id);
|
458 |
|
459 |
if(tableInstance) {
|
460 |
tableInstance.api().destroy();
|
461 |
-
$(preview).empty();
|
462 |
}
|
463 |
}
|
464 |
|
354 |
comment: cell.comment
|
355 |
});
|
356 |
}
|
357 |
+
try {
|
358 |
+
if(cell.data[0] !== '=' && $(cell.data).is('video')) {
|
359 |
+
cell.data = '<div class="video-container">' + cell.data + '</div>';
|
360 |
+
}
|
361 |
+
} catch(e) {}
|
362 |
+
|
363 |
cells.push(cell.data);
|
364 |
});
|
365 |
data.push(cells);
|
458 |
formData.find('input[name="elements[descriptionText]"]').val( formData.find('#descriptionText').val() );
|
459 |
formData.find('input[name="elements[signatureText]"]').val( formData.find('#signatureText').val() );
|
460 |
formData.find('input[name="features[after_table_loaded_script]"]').val(this._b64EncodeUnicode(formData.find('#after-table-loaded-script-text').val()));
|
461 |
+
formData.find('input[name="source[dbSQL]"]').val( formData.find('#source-db-sql').val() );
|
462 |
|
463 |
if(preview) {
|
464 |
var tableInstance = app.getTableInstanceById(id);
|
465 |
|
466 |
if(tableInstance) {
|
467 |
tableInstance.api().destroy();
|
|
|
468 |
}
|
469 |
}
|
470 |
|
src/SupsysticTables/Tables/views/view.twig
CHANGED
@@ -1436,26 +1436,26 @@
|
|
1436 |
</div>
|
1437 |
</section>
|
1438 |
<section class="row row-settings-tab" id="row-tab-settings-source">
|
|
|
1439 |
<div class="col-md-6 col-sm-6 col-xs-12">
|
1440 |
<div class="title-place">
|
1441 |
<h3>{{ environment.translate('Database') }}</h3>
|
1442 |
</div>
|
1443 |
-
|
1444 |
-
<div class="setting-
|
1445 |
-
<
|
1446 |
-
|
1447 |
-
|
1448 |
-
|
1449 |
-
|
1450 |
-
<a target="_blank" class="supsystic-pro-feature" href="{{ build_pro_url({ 'utm_medium': 'table-source-database' }) }}">{{ environment.translate('PRO option') }}</a>
|
1451 |
-
</div>
|
1452 |
-
<div class="setting-item col-md-6 col-sm-6 col-xs-12">
|
1453 |
-
<input type="checkbox" disabled="disabled" name="source[database]" id="table-source-database-unavailable" />
|
1454 |
-
</div>
|
1455 |
</div>
|
1456 |
-
|
1457 |
-
|
|
|
|
|
1458 |
</div>
|
|
|
|
|
1459 |
</section>
|
1460 |
</section>
|
1461 |
</form>
|
1436 |
</div>
|
1437 |
</section>
|
1438 |
<section class="row row-settings-tab" id="row-tab-settings-source">
|
1439 |
+
{% if environment.isPro() == false %}
|
1440 |
<div class="col-md-6 col-sm-6 col-xs-12">
|
1441 |
<div class="title-place">
|
1442 |
<h3>{{ environment.translate('Database') }}</h3>
|
1443 |
</div>
|
1444 |
+
<div class="setting-wrapper row">
|
1445 |
+
<div class="setting-item col-md-6 col-sm-6 col-xs-12">
|
1446 |
+
<label for="table-source-database-unavailable">
|
1447 |
+
{{ environment.translate('Data from Database') }}
|
1448 |
+
{{ tooltip.icon('You can retrieve data for table from the database.', 'top', true) }}
|
1449 |
+
</label>
|
1450 |
+
<a target="_blank" class="supsystic-pro-feature" href="{{ build_pro_url({ 'utm_medium': 'table-source-database' }) }}">{{ environment.translate('PRO option') }}</a>
|
|
|
|
|
|
|
|
|
|
|
1451 |
</div>
|
1452 |
+
<div class="setting-item col-md-6 col-sm-6 col-xs-12">
|
1453 |
+
<input type="checkbox" disabled="disabled" name="source[database]" id="table-source-database-unavailable" />
|
1454 |
+
</div>
|
1455 |
+
</div>
|
1456 |
</div>
|
1457 |
+
{% endif %}
|
1458 |
+
{{ environment.getDispatcher().dispatch('tables-view-source', [table]) }}
|
1459 |
</section>
|
1460 |
</section>
|
1461 |
</form>
|