-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathboot.php
More file actions
61 lines (50 loc) · 2.63 KB
/
Copy pathboot.php
File metadata and controls
61 lines (50 loc) · 2.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
rex_extension::register('PACKAGES_INCLUDED', static function () {
$addon = rex_addon::get('yform_quick_edit');
$isAllowed = rex_extension::registerPoint(new rex_extension_point('YQE_IS_ALLOWED', ('index.php?page=yform/manager/data_edit' === rex_url::currentBackendPage())));
if (rex::isBackend() && null !== rex::getUser() && $isAllowed) {
rex_view::setJsProperty('yform_quick_edit_cancel', $addon->i18n('yform_quick_edit_cancel'));
rex_view::addCssFile($addon->getAssetsUrl('css/styles.css'));
rex_view::addJsFile($addon->getAssetsUrl('js/scripts.js'));
rex_extension::register('YFORM_DATA_LIST', static function (rex_extension_point $ep) {
/** @var rex_list $list */
$list = $ep->getSubject();
/** @var rex_yform_manager_table $table */
$table = $ep->getParam('table');
$listParams = $list->getParams();
/** @var array<string> $formsToIgnore */
$formsToIgnore = rex_extension::registerPoint(new rex_extension_point('YQE_IGNORE_TABLES', []));
if (in_array($listParams['table_name'], $formsToIgnore, true)) {
return;
}
$listParams['rex_yform_manager_popup'] = 1;
$params = [
'func' => 'edit',
'list' => $list->getName(),
'quick_edit' => 'true',
'rex_yform_manager_opener' => 1,
'yqe' => 'true',
];
/**
* add csrf token -> yform >= 4.
*/
$params['_csrf_token'] = rex_csrf_token::factory($table->getCSRFKey())->getValue();
$urlParams = array_merge($listParams, $params);
$link = '<a class="yform-quick-edit rex-link-expanded" style="white-space: nowrap; font-size: 12px; text-decoration: none;" title="QuickEdit" data-id="###id###" href="index.php?'. http_build_query($urlParams) . '&data_id=###id###"><i class="fa fa-pencil"></i> QuickEdit</a>';
$list->addColumn('', $link, 1);
$list->setRowAttributes(['class' => 'quick-edit-row-###id###']);
});
if ('true' === rex_get('yqe')) {
rex_extension::register('YFORM_MANAGER_DATA_PAGE', static function (rex_extension_point $ep) {
/** @var rex_yform_manager $manager */
$manager = $ep->getSubject();
/**
* remove search.
*/
if (($key = array_search('search', $manager->dataPageFunctions, true)) !== false) {
unset($manager->dataPageFunctions[$key]);
}
});
}
}
});