Initial commit

This commit is contained in:
root
2026-01-19 17:44:46 +01:00
commit 823af8b11d
8721 changed files with 1130846 additions and 0 deletions

View File

@@ -0,0 +1,4 @@
{
"controller": "controllers/record",
"boolFilterList": ["onlyMy"]
}

View File

@@ -0,0 +1,78 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"assignedUser": {
"type": "link",
"required": false,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"name": {
"columns": ["name", "deleted"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"createdAt": {
"columns": ["createdAt"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
}
}
}

View File

@@ -0,0 +1,3 @@
{
"duplicateWhereBuilderClassName": "Espo\\Classes\\DuplicateWhereBuilders\\General"
}

View File

@@ -0,0 +1,11 @@
{
"entity": true,
"layouts": true,
"tab": true,
"acl": true,
"aclPortal": true,
"aclPortalLevelList": ["all", "account", "contact", "own", "no"],
"customizable": true,
"importable": true,
"notifications": true
}

View File

@@ -0,0 +1,34 @@
{
"controller": "controllers/record",
"boolFilterList": ["onlyMy"],
"sidePanels": {
"detail": [
{
"name": "activities",
"reference": "activities"
},
{
"name": "history",
"reference": "history"
},
{
"name": "tasks",
"reference": "tasks"
}
]
},
"bottomPanels": {
"detail": [
{
"name": "activities",
"reference": "activities",
"disabled": true
},
{
"name": "history",
"reference": "history",
"disabled": true
}
]
}
}

View File

@@ -0,0 +1,99 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"assignedUser": {
"type": "link",
"required": false,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"meetings": {
"type": "hasMany",
"entity": "Meeting",
"foreign": "parent"
},
"calls": {
"type": "hasMany",
"entity": "Call",
"foreign": "parent"
},
"tasks": {
"type": "hasChildren",
"entity": "Task",
"foreign": "parent"
},
"emails": {
"type": "hasChildren",
"entity": "Email",
"foreign": "parent",
"layoutRelationshipsDisabled": true
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"name": {
"columns": ["name", "deleted"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"createdAt": {
"columns": ["createdAt"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
}
}
}

View File

@@ -0,0 +1,3 @@
{
"duplicateWhereBuilderClassName": "Espo\\Classes\\DuplicateWhereBuilders\\General"
}

View File

@@ -0,0 +1,11 @@
{
"entity": true,
"layouts": true,
"tab": true,
"acl": true,
"aclPortal": true,
"aclPortalLevelList": ["all", "account", "contact", "own", "no"],
"customizable": true,
"importable": true,
"notifications": true
}

View File

@@ -0,0 +1,32 @@
{
"controller": "controllers/record-tree",
"collection": "collections/tree",
"menu": {
"listTree": {
"buttons": [
{
"label": "List View",
"link": "#{entityType}/list",
"acl": "read",
"style": "default"
}
]
},
"list": {
"buttons": [
{
"label": "Tree View",
"link": "#{entityType}",
"acl": "read",
"style": "default"
}
]
}
},
"relationshipPanels": {
"children": {
"selectDisabled": true,
"unlinkDisabled": true
}
}
}

View File

@@ -0,0 +1,108 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"order": {
"type": "int",
"minValue": 1
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"teams": {
"type": "linkMultiple"
},
"parent": {
"type": "link"
},
"childList": {
"type": "jsonArray",
"notStorable": true,
"utility": true,
"orderDisabled": true
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"parent": {
"type": "belongsTo",
"foreign": "children",
"entity": "{entityType}",
"isCustom": true
},
"children": {
"type": "hasMany",
"foreign": "parent",
"entity": "{entityType}",
"readOnly": true,
"isCustom": true
}
},
"collection": {
"orderBy": "parent",
"order": "asc"
},
"indexes": {
"name": {
"columns": [
"name",
"deleted"
]
}
},
"additionalTables": {
"{entityType}Path": {
"attributes": {
"id": {
"type": "id",
"dbType": "integer",
"len": 11,
"autoincrement": true,
"unique" : true
},
"ascendorId": {
"type": "foreignId",
"index": true
},
"descendorId": {
"type": "foreignId",
"index": true
}
}
}
}
}

View File

@@ -0,0 +1,10 @@
{
"entity": true,
"layouts": true,
"tab": true,
"acl": true,
"aclPortal": true,
"customizable": true,
"importable": false,
"notifications": false
}

View File

@@ -0,0 +1,34 @@
{
"controller": "controllers/record",
"boolFilterList": ["onlyMy"],
"sidePanels": {
"detail": [
{
"name": "activities",
"reference": "activities"
},
{
"name": "history",
"reference": "history"
},
{
"name": "tasks",
"reference": "tasks"
}
]
},
"bottomPanels": {
"detail": [
{
"name": "activities",
"reference": "activities",
"disabled": true
},
{
"name": "history",
"reference": "history",
"disabled": true
}
]
}
}

View File

@@ -0,0 +1,146 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"description": {
"type": "text"
},
"website": {
"type": "url",
"strip": true
},
"emailAddress": {
"type": "email"
},
"phoneNumber": {
"type": "phone",
"typeList": ["Office", "Mobile", "Fax", "Other"],
"defaultType": "Office"
},
"billingAddress": {
"type": "address"
},
"billingAddressStreet": {
"type": "text",
"maxLength": 255,
"dbType": "varchar"
},
"billingAddressCity": {
"type": "varchar"
},
"billingAddressState": {
"type": "varchar"
},
"billingAddressCountry": {
"type": "varchar"
},
"billingAddressPostalCode": {
"type": "varchar"
},
"shippingAddress": {
"type": "address",
"view": "crm:views/account/fields/shipping-address"
},
"shippingAddressStreet": {
"type": "text",
"maxLength": 255,
"dbType": "varchar"
},
"shippingAddressCity": {
"type": "varchar"
},
"shippingAddressState": {
"type": "varchar"
},
"shippingAddressCountry": {
"type": "varchar"
},
"shippingAddressPostalCode": {
"type": "varchar"
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"assignedUser": {
"type": "link",
"required": false,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"meetings": {
"type": "hasMany",
"entity": "Meeting",
"foreign": "parent"
},
"calls": {
"type": "hasMany",
"entity": "Call",
"foreign": "parent"
},
"tasks": {
"type": "hasChildren",
"entity": "Task",
"foreign": "parent"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"name": {
"columns": ["name", "deleted"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"createdAt": {
"columns": ["createdAt"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
}
}
}

View File

@@ -0,0 +1,3 @@
{
"duplicateWhereBuilderClassName": "Espo\\Classes\\DuplicateWhereBuilders\\General"
}

View File

@@ -0,0 +1,12 @@
{
"entity": true,
"layouts": true,
"tab": true,
"acl": true,
"aclPortal": true,
"aclPortalLevelList": ["all", "account", "contact", "own", "no"],
"customizable": true,
"importable": true,
"notifications": true,
"duplicateCheckFieldList": ["name", "emailAddress"]
}

View File

@@ -0,0 +1,71 @@
{
"controller": "controllers/record",
"boolFilterList": ["onlyMy"],
"recordViews": {
"detail": "views/templates/event/record/detail"
},
"activityDefs": {
"activitiesCreate": true,
"historyCreate": true
},
"viewSetupHandlers": {
"record/detail": [
"__APPEND__",
"crm:handlers/event/reminders-handler"
],
"record/edit": [
"__APPEND__",
"crm:handlers/event/reminders-handler"
]
},
"bottomPanels": {
"detail": [
{
"name": "scheduler",
"label": "Scheduler",
"view": "crm:views/meeting/record/panels/scheduler",
"disabled": true,
"order": 3
}
],
"edit": [
{
"name": "scheduler",
"label": "Scheduler",
"view": "crm:views/meeting/record/panels/scheduler",
"disabled": true,
"order": 1
}
]
},
"filterList": [
{
"name":"planned"
},
{
"name":"held",
"style": "success"
},
{
"name":"todays"
}
],
"forcePatchAttributeDependencyMap": {
"dateEnd": ["dateStart"],
"dateEndDate": ["dateStartDate"]
},
"dynamicLogic":{
"fields":{
"duration": {
"readOnly": {
"conditionGroup": [
{
"type": "isTrue",
"attribute": "isAllDay"
}
]
}
}
}
}
}

View File

@@ -0,0 +1,160 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"status": {
"type": "enum",
"options": [
"Planned",
"Held",
"Not Held"
],
"default": "Planned",
"style": {
"Held": "success",
"Not Held": "info"
},
"displayAsLabel": true,
"labelType": "state",
"audited": true
},
"dateStart": {
"type": "datetimeOptional",
"view": "crm:views/meeting/fields/date-start",
"required": true,
"default": "javascript: return this.dateTime.getNow(15);",
"audited": true
},
"dateEnd": {
"type": "datetimeOptional",
"view": "crm:views/meeting/fields/date-end",
"required": true,
"after": "dateStart",
"suppressValidationList": ["required"]
},
"isAllDay": {
"type": "bool",
"layoutListDisabled": true,
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true
},
"duration": {
"type": "duration",
"start": "dateStart",
"end": "dateEnd",
"options": [300, 600, 900, 1800, 2700, 3600, 7200, 10800],
"default": 300,
"notStorable": true,
"select": {
"select": "TIMESTAMPDIFF_SECOND:(dateStart, dateEnd)"
},
"order": {
"order": [
["TIMESTAMPDIFF_SECOND:(dateStart, dateEnd)", "{direction}"]
]
}
},
"parent": {
"type": "linkParent",
"entityList": ["Account", "Lead", "Contact"]
},
"description": {
"type": "text"
},
"reminders": {
"type": "jsonArray",
"notStorable": true,
"orderDisabled": true,
"view": "crm:views/meeting/fields/reminders",
"layoutListDisabled": true,
"validatorClassNameList": [
"Espo\\Modules\\Crm\\Classes\\FieldValidators\\Event\\Reminders\\Valid",
"Espo\\Modules\\Crm\\Classes\\FieldValidators\\Event\\Reminders\\MaxCount"
],
"dynamicLogicDisabled": true,
"duplicateIgnore": true
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"assignedUser": {
"type": "link",
"required": false,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
"parent": {
"type": "belongsToParent",
"foreign": "{entityTypeLowerFirst}Children"
},
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
}
},
"collection": {
"orderBy": "dateStart",
"order": "desc"
},
"indexes": {
"dateStartStatus": {
"columns": ["dateStart", "status"]
},
"dateStart": {
"columns": ["dateStart", "deleted"]
},
"status": {
"columns": ["status", "deleted"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"assignedUserStatus": {
"columns": ["assignedUserId", "status"]
},
"createdAt": {
"columns": ["createdAt"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
}
}
}

View File

@@ -0,0 +1,12 @@
{
"readLoaderClassNameList": [
"Espo\\Core\\FieldProcessing\\Reminder\\Loader"
],
"saverClassNameList": [
"Espo\\Core\\FieldProcessing\\Reminder\\Saver"
],
"beforeUpdateHookClassNameList": [
"__APPEND__",
"Espo\\Classes\\RecordHooks\\Event\\BeforeUpdatePreserveDuration"
]
}

View File

@@ -0,0 +1,19 @@
{
"entity": true,
"layouts": true,
"tab": true,
"acl": true,
"aclPortal": true,
"aclPortalLevelList": ["all", "account", "contact", "own", "no"],
"customizable": true,
"importable": true,
"calendar": true,
"activity": true,
"notifications": true,
"activityStatusList": ["Planned"],
"historyStatusList": ["Held", "Not Held"],
"completedStatusList": ["Held"],
"canceledStatusList": ["Not Held"],
"statusField": "status",
"statusFieldLocked": true
}

View File

@@ -0,0 +1,16 @@
{
"selectAttributesDependencyMap": {
"duration": [
"dateStart",
"dateEnd"
],
"dateStart": [
"dateEnd"
]
},
"primaryFilterClassNameMap": {
"planned": "Espo\\Classes\\Select\\Event\\PrimaryFilters\\Planned",
"held": "Espo\\Classes\\Select\\Event\\PrimaryFilters\\Held",
"todays": "Espo\\Classes\\Select\\Event\\PrimaryFilters\\Todays"
}
}

View File

@@ -0,0 +1,34 @@
{
"controller": "controllers/record",
"boolFilterList": ["onlyMy"],
"sidePanels": {
"detail": [
{
"name": "activities",
"reference": "activities"
},
{
"name": "history",
"reference": "history"
},
{
"name": "tasks",
"reference": "tasks"
}
]
},
"bottomPanels": {
"detail": [
{
"name": "activities",
"reference": "activities",
"disabled": true
},
{
"name": "history",
"reference": "history",
"disabled": true
}
]
}
}

View File

@@ -0,0 +1,139 @@
{
"fields": {
"name": {
"type": "personName",
"isPersonalData": true
},
"salutationName": {
"type": "enum",
"options": ["", "Mr.", "Ms.", "Mrs.", "Dr."]
},
"firstName": {
"type": "varchar",
"maxLength": 100
},
"lastName": {
"type": "varchar",
"maxLength": 100,
"required": true
},
"description": {
"type": "text"
},
"emailAddress": {
"type": "email",
"isPersonalData": true
},
"phoneNumber": {
"type": "phone",
"typeList": ["Mobile", "Office", "Home", "Fax", "Other"],
"defaultType": "Mobile",
"isPersonalData": true
},
"address": {
"type": "address",
"isPersonalData": true
},
"addressStreet": {
"type": "text",
"maxLength": 255,
"dbType": "varchar"
},
"addressCity": {
"type": "varchar"
},
"addressState": {
"type": "varchar"
},
"addressCountry": {
"type": "varchar"
},
"addressPostalCode": {
"type": "varchar"
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user"
},
"assignedUser": {
"type": "link",
"required": false,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"meetings": {
"type": "hasMany",
"entity": "Meeting",
"foreign": "parent"
},
"calls": {
"type": "hasMany",
"entity": "Call",
"foreign": "parent"
},
"tasks": {
"type": "hasChildren",
"entity": "Task",
"foreign": "parent"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"firstName": {
"columns": ["firstName", "deleted"]
},
"name": {
"columns": ["firstName", "lastName"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"createdAt": {
"columns": ["createdAt"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
}
}
}

View File

@@ -0,0 +1,3 @@
{
"duplicateWhereBuilderClassName": "Espo\\Classes\\DuplicateWhereBuilders\\General"
}

View File

@@ -0,0 +1,13 @@
{
"entity": true,
"layouts": true,
"tab": true,
"acl": true,
"aclPortal": true,
"aclPortalLevelList": ["all", "account", "contact", "own", "no"],
"customizable": true,
"importable": true,
"notifications": true,
"hasPersonalData": true,
"duplicateCheckFieldList": ["name", "emailAddress"]
}