chg: [element:generic_index] Added more flexibility in topbar

pull/37/head
mokaddem 2021-01-18 17:25:18 +01:00
parent d974f784b6
commit 2288e8f66f
3 changed files with 14 additions and 7 deletions

View File

@ -2,8 +2,9 @@
if (!isset($data['requirement']) || $data['requirement']) { if (!isset($data['requirement']) || $data['requirement']) {
if (!empty($data['popover_url'])) { if (!empty($data['popover_url'])) {
$onClick = sprintf( $onClick = sprintf(
'onClick="openModalForButton(this, %s)"', 'onClick="openModalForButton(this, \'%s\', \'%s\')"',
sprintf("'%s'", h($data['popover_url'])) h($data['popover_url']),
h(!empty($data['reload_url']) ? $data['reload_url'] : '')
); );
} }
if (empty($onClick)) { if (empty($onClick)) {
@ -69,10 +70,12 @@
?> ?>
<script> <script>
function openModalForButton(clicked, url) { function openModalForButton(clicked, url, reloadUrl='') {
const loadingOverlay = new OverlayFactory(clicked); const loadingOverlay = new OverlayFactory(clicked);
const fallbackReloadUrl = '<?= $this->Url->build(['action' => 'index']); ?>'
reloadUrl = reloadUrl != '' ? reloadUrl : fallbackReloadUrl
loadingOverlay.show() loadingOverlay.show()
UI.openModalFromURL(url, '<?= $this->Url->build(['action' => 'index']); ?>', '<?= $tableRandomValue ?>').finally(() => { UI.openModalFromURL(url, reloadUrl, '<?= $tableRandomValue ?>').finally(() => {
loadingOverlay.hide() loadingOverlay.hide()
}) })
} }

View File

@ -44,7 +44,7 @@
var controller = '<?= $this->request->getParam('controller') ?>'; var controller = '<?= $this->request->getParam('controller') ?>';
var action = '<?= $this->request->getParam('action') ?>'; var action = '<?= $this->request->getParam('action') ?>';
var additionalUrlParams = ''; var additionalUrlParams = '';
var quickFilter = <?= json_encode($quickFilter) ?>; var quickFilter = <?= json_encode(!empty($quickFilter) ? $quickFilter : []) ?>;
<?php <?php
if (!empty($data['additionalUrlParams'])) { if (!empty($data['additionalUrlParams'])) {
echo sprintf( echo sprintf(

View File

@ -7,12 +7,16 @@
</button> </button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<?php if (empty($deletionText)): ?>
<p><?= __('Are you sure you want to delete {0} #{1}?', h(Cake\Utility\Inflector::singularize($this->request->getParam('controller'))), h($id)) ?></p> <p><?= __('Are you sure you want to delete {0} #{1}?', h(Cake\Utility\Inflector::singularize($this->request->getParam('controller'))), h($id)) ?></p>
<?php else: ?>
<p><?= h($deletionText) ?></p>
<?php endif; ?>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<?= $this->Form->postLink( <?= $this->Form->postLink(
'Delete', 'Delete',
['action' => 'delete', $id], (empty($postLinkParameters) ? ['action' => 'delete', $id] : $postLinkParameters),
['class' => 'btn btn-primary button-execute', 'id' => 'submitButton'] ['class' => 'btn btn-primary button-execute', 'id' => 'submitButton']
) )
?> ?>