From 0eafe2ba35c3b77235b4b245fc482a0cdd565fba Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Sat, 12 Apr 2025 13:19:39 +0300 Subject: [PATCH] system account color --- .../metadata/entityDefs/InboundEmail.json | 3 +- .../metadata/recordDefs/InboundEmail.json | 3 ++ .../metadata/selectDefs/InboundEmail.json | 9 ++++ client/src/views/inbound-email/fields/name.js | 46 +++++++++++++++++++ 4 files changed, 60 insertions(+), 1 deletion(-) create mode 100644 application/Espo/Resources/metadata/selectDefs/InboundEmail.json create mode 100644 client/src/views/inbound-email/fields/name.js diff --git a/application/Espo/Resources/metadata/entityDefs/InboundEmail.json b/application/Espo/Resources/metadata/entityDefs/InboundEmail.json index 130df7fdc4..f48635fd4e 100644 --- a/application/Espo/Resources/metadata/entityDefs/InboundEmail.json +++ b/application/Espo/Resources/metadata/entityDefs/InboundEmail.json @@ -3,7 +3,8 @@ "name": { "type": "varchar", "required": true, - "pattern": "$noBadCharacters" + "pattern": "$noBadCharacters", + "view": "views/inbound-email/fields/name" }, "emailAddress": { "type": "varchar", diff --git a/application/Espo/Resources/metadata/recordDefs/InboundEmail.json b/application/Espo/Resources/metadata/recordDefs/InboundEmail.json index 4dc70fe109..a7438a6239 100644 --- a/application/Espo/Resources/metadata/recordDefs/InboundEmail.json +++ b/application/Espo/Resources/metadata/recordDefs/InboundEmail.json @@ -15,5 +15,8 @@ ], "readLoaderClassNameList": [ "Espo\\Classes\\FieldProcessing\\InboundEmail\\IsSystemLoader" + ], + "listLoaderClassNameList": [ + "Espo\\Classes\\FieldProcessing\\InboundEmail\\IsSystemLoader" ] } diff --git a/application/Espo/Resources/metadata/selectDefs/InboundEmail.json b/application/Espo/Resources/metadata/selectDefs/InboundEmail.json new file mode 100644 index 0000000000..f6a5735d75 --- /dev/null +++ b/application/Espo/Resources/metadata/selectDefs/InboundEmail.json @@ -0,0 +1,9 @@ +{ + "selectAttributesDependencyMap": { + "name": [ + "emailAddress", + "useSmtp", + "status" + ] + } +} diff --git a/client/src/views/inbound-email/fields/name.js b/client/src/views/inbound-email/fields/name.js new file mode 100644 index 0000000000..cdd01477fc --- /dev/null +++ b/client/src/views/inbound-email/fields/name.js @@ -0,0 +1,46 @@ +/************************************************************************ + * 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 . + * + * 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. + ************************************************************************/ + +import VarcharFieldView from 'views/fields/varchar'; + +export default class extends VarcharFieldView { + + afterRender() { + super.afterRender(); + + if (this.mode === this.MODE_LIST_LINK) { + if (this.model.attributes.isSystem) { + const a = this.element.querySelector('a.link'); + + if (a) { + a.classList.add('text-warning'); + } + } + } + } +}