From 1a359622877ce8c507d44cb664275563cfa9fe91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Grie=C3=9Fbach?= Date: Fri, 7 Dec 2018 10:43:38 +0100 Subject: [PATCH 1/6] [TASK] changes kayalshri/tableExport.jquery.plugin to fork hhurz/tableExport.jquery.plugin [TASK] updates BootstrapTableExportAssetBundle with new path and file names [TASK] adds 'pdf' to data-export-types again --- bundles/BootstrapTableExportAssetBundle.php | 13 +++++++------ composer.json | 2 +- widgets/BootstrapTable.php | 2 +- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/bundles/BootstrapTableExportAssetBundle.php b/bundles/BootstrapTableExportAssetBundle.php index 43e3d2b..475a575 100644 --- a/bundles/BootstrapTableExportAssetBundle.php +++ b/bundles/BootstrapTableExportAssetBundle.php @@ -16,17 +16,18 @@ class BootstrapTableExportAssetBundle extends AssetBundle /** * @var string */ - public $sourcePath = '@vendor/kayalshri/tableExport.jquery.plugin'; + public $sourcePath = '@vendor/hhurz/tableExport.jquery.plugin'; /** * @var array js assets */ public $js = [ - 'tableExport.js', - 'jquery.base64.js', - 'jspdf/libs/sprintf.js', - 'jspdf/jspdf.js', - 'jspdf/libs/base64.js' + 'libs/FileSaver/FileSaver.min.js', + 'libs/js-xlsx/xlsx.core.min.js', + 'libs/jspdf/jspdf.min.js', + 'libs/jsPDF-AutoTable/jspdf.plugin.autotable.js', +// 'tableExport.min.js', + 'tableExport.js', ]; /** diff --git a/composer.json b/composer.json index 077144f..aae116e 100644 --- a/composer.json +++ b/composer.json @@ -26,7 +26,7 @@ "bower-asset/bootstrap-table": "1.11.1", "demogorgorn/yii2-ajax-submit-button": "dev-master", "composer/installers": "dev-master", - "kayalshri/tableExport.jquery.plugin": "dev-master", + "hhurz/tableExport.jquery.plugin": "^1.10.1", "akottr/dragtable": "dev-master", "kartik-v/yii2-date-range": "^1.6.9", "lavrentiev/yii2-toastr": "^2.0", diff --git a/widgets/BootstrapTable.php b/widgets/BootstrapTable.php index bf4921d..154c45c 100644 --- a/widgets/BootstrapTable.php +++ b/widgets/BootstrapTable.php @@ -26,7 +26,7 @@ class BootstrapTable extends GridView 'data-active-filters' => 'false', 'data-toggle' => 'table', 'data-show-export' => 'true', - 'data-export-types' => ['csv', 'excel'], + 'data-export-types' => ['pdf', 'csv', 'excel'], 'data-export-data-type' => 'all', 'data-show-columns' => 'true', 'data-reorderable-columns' => 'true', From 444bd9c0aefd26a3bcfff784f8955228a93c375f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Grie=C3=9Fbach?= Date: Fri, 7 Dec 2018 11:20:50 +0100 Subject: [PATCH 2/6] [TASK] change tableExport.jquery.plugin to branch hhurz-merge --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index aae116e..0539ca7 100644 --- a/composer.json +++ b/composer.json @@ -26,7 +26,7 @@ "bower-asset/bootstrap-table": "1.11.1", "demogorgorn/yii2-ajax-submit-button": "dev-master", "composer/installers": "dev-master", - "hhurz/tableExport.jquery.plugin": "^1.10.1", + "kayalshri/tableExport.jquery.plugin": "dev-hhurz-merge", "akottr/dragtable": "dev-master", "kartik-v/yii2-date-range": "^1.6.9", "lavrentiev/yii2-toastr": "^2.0", From 178d9744c075088e07dd5a658c6268e37ef11134 Mon Sep 17 00:00:00 2001 From: susgo Date: Wed, 22 Apr 2020 21:51:22 +0200 Subject: [PATCH 3/6] Update composer.json --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index ed89160..e7279be 100644 --- a/composer.json +++ b/composer.json @@ -25,7 +25,7 @@ "bower-asset/bootstrap-table-fixed-columns": "dev-master", "bower-asset/bootstrap-table": "1.11.1", "demogorgorn/yii2-ajax-submit-button": "dev-master", - "kayalshri/tableExport.jquery.plugin": "dev-hhurz-merge", + "hhurz/tableExport.jquery.plugin": "1.10.17", "akottr/dragtable": "dev-master", "kartik-v/yii2-date-range": "^1.6.9", "lavrentiev/yii2-toastr": "^2.0", From 99a15da1e2e249cb50abd2c36c4f70c1a4bc2786 Mon Sep 17 00:00:00 2001 From: susgo Date: Wed, 22 Apr 2020 22:05:18 +0200 Subject: [PATCH 4/6] Update composer.json --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index e7279be..f928989 100644 --- a/composer.json +++ b/composer.json @@ -25,7 +25,7 @@ "bower-asset/bootstrap-table-fixed-columns": "dev-master", "bower-asset/bootstrap-table": "1.11.1", "demogorgorn/yii2-ajax-submit-button": "dev-master", - "hhurz/tableExport.jquery.plugin": "1.10.17", + "kayalshri/tableExport.jquery.plugin": "dev-hhurz-merge", "akottr/dragtable": "dev-master", "kartik-v/yii2-date-range": "^1.6.9", "lavrentiev/yii2-toastr": "^2.0", From cf57d1676380bb28ed431884cae96b3798c48f31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steve=20Schu=CC=88tze?= Date: Wed, 17 Mar 2021 11:39:34 +0100 Subject: [PATCH 5/6] update bootstrap table object to increase readablity --- src/Widgets/BootstrapTable.php | 95 ++++++++++++++-------------------- 1 file changed, 38 insertions(+), 57 deletions(-) diff --git a/src/Widgets/BootstrapTable.php b/src/Widgets/BootstrapTable.php index ddd25e7..51a9dec 100644 --- a/src/Widgets/BootstrapTable.php +++ b/src/Widgets/BootstrapTable.php @@ -4,6 +4,9 @@ use Itexia\BootstrapTable\Bundles\BootstrapTableAsset; use ReflectionClass; +use ReflectionException; +use Yii; +use yii\base\InvalidConfigException; use yii\bootstrap\Html; use yii\grid\GridView; @@ -16,30 +19,29 @@ class BootstrapTable extends GridView * additional table options */ private static $defaultTableOptions = [ - 'data-buttons-class' => 'btn btn-circle', - 'data-filter-control' => 'true', 'data-active-filters' => 'false', - 'data-toggle' => 'table', - 'data-show-export' => 'true', - 'data-export-types' => ['pdf', 'csv', 'excel'], - 'data-export-data-type' => 'all', - 'data-show-columns' => 'true', - 'data-reorderable-columns' => 'true', - 'data-max-moving-rows' => '100', 'data-ajax-url' => 'data', - 'data-click-to-select' => 'true', - 'data-total-field' => 'total', - 'data-side-pagination' => 'server', - 'data-page-size' => '10', - 'data-page-number' => '1', - 'data-infinite-scrolling' => 'true', 'data-append' => 'true', - 'data-method' => 'post', + 'data-buttons-class' => 'btn btn-circle', + 'data-click-to-select' => 'true', 'data-content-type' => 'application/json', - 'data-id-field' => 'id', 'data-cookie' => 'true', 'data-cookie-id-table' => 'saveTableSettings', - 'data-locale' => 'en-GB' + 'data-export-types' => ['csv', 'excel'], + 'data-export-data-type' => 'all', + 'data-filter-control' => 'true', + 'data-id-field' => 'id', + 'data-infinite-scrolling' => 'true', + 'data-max-moving-rows' => '100', + 'data-method' => 'post', + 'data-page-number' => '1', + 'data-page-size' => '10', + 'data-reorderable-columns' => 'true', + 'data-show-columns' => 'true', + 'data-show-export' => 'true', + 'data-side-pagination' => 'server', + 'data-toggle' => 'table', + 'data-total-field' => 'total', ]; /** @@ -49,9 +51,9 @@ class BootstrapTable extends GridView * additional column options. */ private static $defaultHeaderOptions = [ + 'data-filter-control' => 'select', 'data-sortable' => 'true', 'data-switchable' => 'true', - 'data-filter-control' => 'select', ]; /** @@ -60,9 +62,9 @@ class BootstrapTable extends GridView public $rowCheckboxSelect = true; /** - * Inits widget + * @throws InvalidConfigException */ - public function init() + public function init(): void { $this->id = $this->getId(); parent::init(); @@ -72,26 +74,22 @@ public function init() BootstrapTableAsset::register($this->view); } - /** - * Initialize table options. - * - * @return array - */ - private function setTableOptions() + private function setTableOptions(): array { - return $this->tableOptions = array_merge(self::$defaultTableOptions, $this->tableOptions); + $settings = self::$defaultTableOptions; + $settings['data-locale'] = 'en-GB'; + if (!empty(Yii::$app->language)) { + $settings['data-locale'] = Yii::$app->language; + } + + return $this->tableOptions = array_merge($this->tableOptions, $settings); } - /** - * Run widget. - * - * @return string|void - */ - public function run() + public function run(): string { $sHeader = $this->renderTableHeader(); - echo $this->renderTable($sHeader); + return $this->renderTable($sHeader); } public function renderTableHeader(): string @@ -126,27 +124,17 @@ private function addColumnCheckboxSelect(): string } /** - * Renders table header cell. - * - * @param $cell - * - * @return string + * @param mixed $cell */ private function renderTableHeaderCell($cell): string { - return Html::tag( - 'th', - $cell->label, - $cell->headerOptions - ); + return Html::tag('th', $cell->label, $cell->headerOptions); } /** - * Initialize column header options. - * - * @param $column - * + * @param mixed $column * @return mixed + * @throws ReflectionException */ private function setHeaderOptions($column) { @@ -169,14 +157,7 @@ private function setHeaderOptions($column) return $column; } - /** - * Renders table. - * - * @param string $html - * - * @return string - */ - private function renderTable($html = ''): string + private function renderTable(string $html = ''): string { return Html::tag('table', $html, $this->tableOptions); } From 740b5949329bcd3d64eefa7b5f8d82fa15d26522 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steve=20Schu=CC=88tze?= Date: Wed, 17 Mar 2021 11:46:05 +0100 Subject: [PATCH 6/6] prevent eror with invalid package name --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index bb64dc7..661121c 100644 --- a/composer.json +++ b/composer.json @@ -34,7 +34,7 @@ "bower-asset/bootstrap": "~3.3.7", "bower-asset/bootstrap-table": "1.11.1", "demogorgorn/yii2-ajax-submit-button": "1.2.1", - "kayalshri/tableExport.jquery.plugin": "dev-hhurz-merge", + "kayalshri/tableexport.jquery.plugin": "dev-hhurz-merge", "akottr/dragtable": "2.0.16", "kartik-v/yii2-date-range": "^1.6.9", "lavrentiev/yii2-toastr": "^2.0",