Skip to content

Commit dd3a9b3

Browse files
Detail view options (#11)
* add detail view option
1 parent b1d53df commit dd3a9b3

File tree

5 files changed

+34
-4
lines changed

5 files changed

+34
-4
lines changed

assets/app.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,14 @@ $(function () {
8282
paginationSwitchUp: 'fa-caret-square-o-up',
8383
columns: 'fa-columns',
8484
refresh: 'fa-sync',
85-
export: 'fa-download'
85+
export: 'fa-download',
86+
detailOpen: 'fa-plus',
87+
detailClose: 'fa-minus',
88+
toggleOff: 'fa-toggle-off',
89+
toggleOn: 'fa-toggle-on',
90+
fullscreen: 'fa-arrows-alt',
91+
search: 'fa-search',
92+
clearSearch: 'fa-trash'
8693
}
8794
});
8895

src/DependencyInjection/Configuration.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,11 @@ private function addTableDatasetOptions()
9797
->booleanNode('show-jump-to')->end()
9898
->booleanNode('show-export')->end()
9999
->scalarNode('export-types')->end()
100+
->booleanNode('detail-view')->end()
101+
->scalarNode('detail-formatter')->end()
102+
->scalarNode('detail-view-align')->end()
103+
->booleanNode('detail-view-icon')->end()
104+
->booleanNode('detail-view-by-click')->end()
100105
->booleanNode('sticky-header')->end()
101106
->integerNode('sticky-header-offset-left')->end()
102107
->integerNode('sticky-header-offset-right')->end()

src/HelloBootstrapTable.php

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,7 @@ public function createView()
142142
//set up table dataset resolver
143143
$tableDatasetResolver = new OptionsResolver();
144144
$this->configureTableDataset($tableDatasetResolver);
145+
$this->tableDataset = $tableDatasetResolver->resolve($this->tableDataset);
145146

146147
//set up table option resolver
147148
$tableOptionResolver = new OptionsResolver();
@@ -161,7 +162,7 @@ public function createView()
161162
return array(
162163
'columns' => $columns,
163164
'tableName' => $this->getTableName(),
164-
'tableDataset' => $tableDatasetResolver->resolve($this->tableDataset),
165+
'tableDataset' => $this->tableDataset,
165166
'tableOptions' => $this->tableOptions,
166167
'callbackUrl' => $this->tableResponse->getCallbackUrl()
167168
);
@@ -233,6 +234,11 @@ protected function configureTableDataset(OptionsResolver $resolver)
233234
"show-footer" => true,
234235
"show-refresh" => true,
235236
"filter-control" => false,
237+
"detail-view" => false,
238+
"detail-formatter" => "",
239+
"detail-view-align" => "left",
240+
"detail-view-icon" => true,
241+
"detail-view-by-click" => false,
236242
"toolbar" => "#toolbar",
237243
"page-list" => "[10, 25, 50, 100, 200, 500, All]",
238244
"page-size" => 25,
@@ -267,6 +273,11 @@ protected function configureTableDataset(OptionsResolver $resolver)
267273
$resolver->setAllowedTypes("search", ["bool"]);
268274
$resolver->setAllowedTypes("show-columns", ["bool"]);
269275
$resolver->setAllowedTypes("show-footer", ["bool"]);
276+
$resolver->setAllowedTypes("detail-view", ["bool"]);
277+
$resolver->setAllowedTypes("detail-formatter", ["string"]);
278+
$resolver->setAllowedTypes("detail-view-align", ["string"]);
279+
$resolver->setAllowedTypes("detail-view-icon", ["bool"]);
280+
$resolver->setAllowedTypes("detail-view-by-click", ["bool"]);
270281
$resolver->setAllowedTypes("show-refresh", ["bool"]);
271282
$resolver->setAllowedTypes("filter-control", ["bool"]);
272283
$resolver->setAllowedTypes("toolbar", ["string", "null"]);

src/Resources/public/bootstrap-table.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Resources/views/table/hello_bootstrap_table.html.twig

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,14 @@
1010
data-columns="{{ table.columns|json_encode }}"
1111
data-url="{{ table.callbackUrl }}"
1212
data-bulk-identifier="{{ table.tableOptions.bulkIdentifier }}"
13+
1314
{% for key, value in table.tableDataset %}
14-
data-{{ key }}="{{ value is iterable ? value|json_encode : value|raw }}"
15+
{% if value is iterable %}
16+
data-{{ key }}="{{ value|json_encode }}"
17+
{% elseif value is same as(true) or value is same as(false) %}
18+
data-{{ key }}="{{ value|json_encode }}"
19+
{% else %}
20+
data-{{ key }}="{{ value }}"
21+
{% endif %}
1522
{% endfor %}
1623
></table>

0 commit comments

Comments
 (0)