some big beautiful update

This commit is contained in:
2026-03-08 19:18:17 +01:00
parent 845a55d170
commit 218b6e0d97
96 changed files with 171864 additions and 465 deletions

View File

@@ -0,0 +1,193 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"emailAddress": {
"type": "varchar",
"required": true,
"maxLength": 100,
"tooltip": true,
"view": "views/email-account/fields/email-address"
},
"status": {
"type": "enum",
"options": ["Active", "Inactive"],
"style": {
"Inactive": "info"
},
"default": "Active"
},
"host": {
"type": "varchar"
},
"port": {
"type": "int",
"min": 0,
"max": 65535,
"default": 993,
"disableFormatting": true
},
"security": {
"type": "enum",
"default": "SSL",
"options": ["", "SSL", "TLS"]
},
"username": {
"type": "varchar"
},
"password": {
"type": "password"
},
"monitoredFolders": {
"type": "array",
"default": ["INBOX"],
"view": "views/email-account/fields/folders",
"displayAsList": true,
"noEmptyString": true,
"duplicateIgnore": true,
"tooltip": true,
"fullNameAdditionalAttributeList": ["folderMap"]
},
"sentFolder": {
"type": "varchar",
"view": "views/email-account/fields/folder",
"duplicateIgnore": true
},
"folderMap": {
"type": "jsonObject",
"validatorClassNameList": [
"Espo\\Classes\\FieldValidators\\EmailAccount\\FolderMap\\Valid"
]
},
"storeSentEmails": {
"type": "bool",
"tooltip": true
},
"keepFetchedEmailsUnread": {
"type": "bool"
},
"fetchSince": {
"type": "date",
"validatorClassNameList": [
"Espo\\Classes\\FieldValidators\\InboundEmail\\FetchSince\\Required"
],
"forceValidation": true
},
"fetchData": {
"type": "jsonObject",
"readOnly": true,
"duplicateIgnore": true
},
"emailFolder": {
"type": "link",
"view": "views/email-account/fields/email-folder",
"duplicateIgnore": true
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"assignedUser": {
"type": "link",
"required": true,
"view": "views/fields/assigned-user"
},
"connectedAt": {
"type": "datetime",
"readOnly": true
},
"useImap": {
"type": "bool",
"default": true
},
"useSmtp": {
"type": "bool",
"tooltip": true
},
"smtpHost": {
"type": "varchar"
},
"smtpPort": {
"type": "int",
"min": 0,
"max": 65535,
"default": 587,
"disableFormatting": true
},
"smtpAuth": {
"type": "bool",
"default": true
},
"smtpSecurity": {
"type": "enum",
"default": "TLS",
"options": ["", "SSL", "TLS"]
},
"smtpUsername": {
"type": "varchar"
},
"smtpPassword": {
"type": "password"
},
"smtpAuthMechanism": {
"type": "enum",
"options": ["login", "crammd5", "plain"],
"default": "login"
},
"imapHandler": {
"type": "varchar",
"readOnly": true
},
"smtpHandler": {
"type": "varchar",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true
},
"modifiedBy": {
"type": "link",
"readOnly": true
}
},
"links": {
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"filters": {
"type": "hasChildren",
"foreign": "parent",
"entity": "EmailFilter"
},
"emails": {
"type": "hasMany",
"entity": "Email",
"foreign": "emailAccounts"
},
"emailFolder": {
"type": "belongsTo",
"entity": "EmailFolder"
}
},
"collection": {
"orderBy": "name",
"order": "asc"
}
}

View File

@@ -0,0 +1,264 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters",
"view": "views/inbound-email/fields/name"
},
"emailAddress": {
"type": "varchar",
"required": true,
"maxLength": 100,
"view": "views/inbound-email/fields/email-address"
},
"status": {
"type": "enum",
"options": ["Active", "Inactive"],
"style": {
"Inactive": "info"
},
"default": "Active"
},
"host": {
"type": "varchar"
},
"port": {
"type": "int",
"min": 0,
"max": 65535,
"default": 993,
"disableFormatting": true
},
"security": {
"type": "enum",
"default": "SSL",
"options": ["", "SSL", "TLS"]
},
"username": {
"type": "varchar"
},
"password": {
"type": "password"
},
"monitoredFolders": {
"type": "array",
"default": ["INBOX"],
"view": "views/inbound-email/fields/folders",
"displayAsList": true,
"noEmptyString": true,
"duplicateIgnore": true
},
"fetchSince": {
"type": "date",
"validatorClassNameList": [
"Espo\\Classes\\FieldValidators\\InboundEmail\\FetchSince\\Required"
],
"forceValidation": true
},
"fetchData": {
"type": "jsonObject",
"readOnly": true,
"duplicateIgnore": true
},
"assignToUser": {
"type": "link",
"tooltip": true
},
"team": {
"type": "link",
"tooltip": true
},
"teams": {
"type": "linkMultiple",
"tooltip": true
},
"addAllTeamUsers": {
"type": "bool",
"tooltip": true,
"default": true
},
"isSystem": {
"type": "bool",
"notStorable": true,
"readOnly": true,
"directAccessDisabled": true,
"tooltip": true
},
"sentFolder": {
"type": "varchar",
"view": "views/inbound-email/fields/folder",
"duplicateIgnore": true
},
"storeSentEmails": {
"type": "bool",
"tooltip": true
},
"keepFetchedEmailsUnread": {
"type": "bool"
},
"connectedAt": {
"type": "datetime",
"readOnly": true
},
"excludeFromReply": {
"type": "bool",
"tooltip": true
},
"useImap": {
"type": "bool",
"default": true
},
"useSmtp": {
"type": "bool",
"tooltip": true
},
"smtpIsShared": {
"type": "bool",
"tooltip": true
},
"smtpIsForMassEmail": {
"type": "bool",
"tooltip": true
},
"smtpHost": {
"type": "varchar"
},
"smtpPort": {
"type": "int",
"min": 0,
"max": 65535,
"default": 587,
"disableFormatting": true
},
"smtpAuth": {
"type": "bool",
"default": true
},
"smtpSecurity": {
"type": "enum",
"default": "TLS",
"options": ["", "SSL", "TLS"]
},
"smtpUsername": {
"type": "varchar"
},
"smtpPassword": {
"type": "password"
},
"smtpAuthMechanism": {
"type": "enum",
"options": ["login", "crammd5", "plain"],
"default": "login"
},
"createCase": {
"type": "bool",
"tooltip": true
},
"caseDistribution": {
"type": "enum",
"options": ["", "Direct-Assignment", "Round-Robin", "Least-Busy"],
"default": "Direct-Assignment",
"tooltip": true
},
"targetUserPosition": {
"type": "enum",
"view": "views/inbound-email/fields/target-user-position",
"tooltip": true
},
"reply": {
"type": "bool",
"tooltip": true
},
"replyEmailTemplate": {
"type": "link"
},
"replyFromAddress": {
"type": "varchar"
},
"replyToAddress": {
"type": "varchar",
"view": "views/fields/email-address",
"tooltip": true
},
"replyFromName": {
"type": "varchar"
},
"fromName": {
"type": "varchar"
},
"groupEmailFolder": {
"type": "link",
"tooltip": true
},
"imapHandler": {
"type": "varchar",
"readOnly": true
},
"smtpHandler": {
"type": "varchar",
"readOnly": true
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true
},
"modifiedBy": {
"type": "link",
"readOnly": true
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"foreign": "inboundEmails"
},
"assignToUser": {
"type": "belongsTo",
"entity": "User"
},
"team": {
"type": "belongsTo",
"entity": "Team"
},
"replyEmailTemplate": {
"type": "belongsTo",
"entity": "EmailTemplate"
},
"filters": {
"type": "hasChildren",
"foreign": "parent",
"entity": "EmailFilter"
},
"emails": {
"type": "hasMany",
"entity": "Email",
"foreign": "inboundEmails"
},
"groupEmailFolder": {
"type": "belongsTo",
"entity": "GroupEmailFolder"
}
},
"collection": {
"orderBy": "name",
"order": "asc"
}
}

View File

@@ -0,0 +1,111 @@
{
"fields": {
"event": {
"type": "varchar",
"maxLength": 100,
"required": true,
"view": "views/webhook/fields/event"
},
"url": {
"type": "varchar",
"maxLength": 512,
"required": true,
"copyToClipboard": true
},
"isActive": {
"type": "bool",
"default": true
},
"user": {
"type": "link",
"view": "views/webhook/fields/user"
},
"entityType": {
"type": "varchar",
"readOnly": true,
"view": "views/fields/entity-type"
},
"type": {
"type": "enum",
"options": [
"create",
"update",
"fieldUpdate",
"delete"
],
"readOnly": true
},
"field": {
"type": "varchar",
"readOnly": true
},
"secretKey": {
"type": "varchar",
"maxLength": 100,
"readOnly": true,
"layoutMassUpdateDisabled": true,
"layoutFiltersDisabled": true,
"layoutListDisabled": true
},
"skipOwn": {
"type": "bool",
"tooltip": true
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true
},
"modifiedBy": {
"type": "link",
"readOnly": true
}
},
"links": {
"user": {
"type": "belongsTo",
"entity": "User"
},
"queueItems": {
"type": "hasMany",
"entity": "WebhookQueueItem",
"foreign": "webhook",
"readOnly": true
},
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc",
"textFilterFields": ["event"]
},
"indexes": {
"event": {
"columns": ["event"]
},
"entityTypeType": {
"columns": ["entityType", "type"]
},
"entityTypeField": {
"columns": ["entityType", "field"]
}
},
"hooksDisabled": true
}

View File

@@ -0,0 +1,23 @@
{
"massActions": {
"update": {
"allowed": true
},
"delete": {
"allowed": true
}
},
"createInputFilterClassNameList": [
"Espo\\Classes\\Record\\InboundEmail\\PasswordsInputFilter"
],
"updateInputFilterClassNameList": [
"Espo\\Classes\\Record\\InboundEmail\\PasswordsInputFilter"
],
"beforeCreateHookClassNameList": [
"Espo\\Classes\\RecordHooks\\EmailAccount\\BeforeCreate",
"Espo\\Classes\\RecordHooks\\EmailAccount\\BeforeSave"
],
"beforeUpdateHookClassNameList": [
"Espo\\Classes\\RecordHooks\\EmailAccount\\BeforeSave"
]
}

View File

@@ -0,0 +1,22 @@
{
"massActions": {
"update": {
"allowed": true
},
"delete": {
"allowed": true
}
},
"createInputFilterClassNameList": [
"Espo\\Classes\\Record\\InboundEmail\\PasswordsInputFilter"
],
"updateInputFilterClassNameList": [
"Espo\\Classes\\Record\\InboundEmail\\PasswordsInputFilter"
],
"readLoaderClassNameList": [
"Espo\\Classes\\FieldProcessing\\InboundEmail\\IsSystemLoader"
],
"listLoaderClassNameList": [
"Espo\\Classes\\FieldProcessing\\InboundEmail\\IsSystemLoader"
]
}