webhook event queue item list view

This commit is contained in:
Yuri Kuznetsov
2025-05-16 15:47:48 +03:00
parent 72794768af
commit fab0efa5e5
12 changed files with 147 additions and 2 deletions
@@ -0,0 +1,61 @@
<?php
/************************************************************************
* This file is part of EspoCRM.
*
* EspoCRM Open Source CRM application.
* Copyright (C) 2014-2025 Yurii Kuznietsov, Taras Machyshyn, Oleksii Avramenko
* Website: https://www.espocrm.com
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
namespace Espo\Controllers;
use Espo\Core\Api\Request;
use Espo\Core\Api\Response;
use Espo\Core\Controllers\RecordBase;
use Espo\Core\Exceptions\Forbidden;
use stdClass;
/**
* @noinspection PhpUnused
*/
class WebhookEventQueueItem extends RecordBase
{
protected function checkAccess(): bool
{
if (!$this->user->isAdmin()) {
return false;
}
return true;
}
public function postActionCreate(Request $request, Response $response): stdClass
{
throw new Forbidden();
}
public function putActionUpdate(Request $request, Response $response): stdClass
{
throw new Forbidden();
}
}
@@ -58,6 +58,7 @@
"LayoutSet": "Layout Set",
"Webhook": "Webhook",
"WebhookQueueItem": "Webhook Queue Item",
"WebhookEventQueueItem": "Webhook Event Queue Item",
"Mass Action": "Mass Action",
"WorkingTimeCalendar": "Working Time Calendar",
"WorkingTimeRange": "Working Time Exception",
@@ -116,6 +117,7 @@
"LayoutSet": "Layout Sets",
"Webhook": "Webhooks",
"WebhookQueueItem": "Webhook Queue Items",
"WebhookEventQueueItem": "Webhook Event Queue Items",
"WorkingTimeCalendar": "Working Time Calendars",
"WorkingTimeRange": "Working Time Exceptions",
"AuthenticationProvider": "Authentication Providers",
@@ -0,0 +1,8 @@
{
"fields": {
"event": "Event",
"target": "Target",
"data": "Data",
"isProcessed": "Is Processed"
}
}
@@ -0,0 +1,17 @@
[
{
"rows": [
[
{"name": "event"},
{"name": "isProcessed"}
],
[
{"name": "target"},
false
],
[
{"name": "data"}
]
]
}
]
@@ -0,0 +1,17 @@
[
{
"rows": [
[
{"name": "event"},
{"name": "isProcessed"}
],
[
{"name": "target"},
false
],
[
{"name": "data"}
]
]
}
]
@@ -0,0 +1,6 @@
[
"event",
"target",
"isProcessed",
"createdAt"
]
@@ -0,0 +1,18 @@
[
{
"name": "event",
"link": true
},
{
"name": "isProcessed",
"width": 12
},
{
"name": "target",
"width": 20
},
{
"name": "createdAt",
"width": 14
}
]
@@ -1,6 +1,7 @@
[
"status",
"webhook",
"event",
"createdAt",
"processedAt"
]
@@ -11,6 +11,11 @@
"labelTranslation": "Global.scopeNamesPlural.WebhookQueueItem",
"link": "#WebhookQueueItem",
"aclScope": "WebhookQueueItem"
},
{
"labelTranslation": "Global.scopeNamesPlural.WebhookEventQueueItem",
"link": "#WebhookEventQueueItem",
"aclScope": "WebhookEventQueueItem"
}
]
}
@@ -0,0 +1,8 @@
{
"controller": "controllers/record",
"createDisabled": true,
"editDisabled": true,
"mergeDisabled": true,
"exportDisabled": true,
"textFilterDisabled": true
}
@@ -7,7 +7,8 @@
"event": {
"type": "varchar",
"maxLength": 100,
"required": true
"required": true,
"view": "views/webhook/fields/event"
},
"target": {
"type": "linkParent"
@@ -7,7 +7,8 @@
"event": {
"type": "varchar",
"maxLength": 100,
"required": true
"required": true,
"view": "views/webhook/fields/event"
},
"webhook": {
"type": "link"