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,377 @@
{
"fields": {
"name": {
"type": "varchar",
"maxLength": 249,
"required": true,
"pattern": "$noBadCharacters",
"audited": true
},
"website": {
"type": "url",
"strip": true
},
"emailAddress": {
"type": "email",
"isPersonalData": true
},
"phoneNumber": {
"type": "phone",
"typeList": ["Office", "Mobile", "Fax", "Other"],
"defaultType": "Office"
},
"type": {
"type": "enum",
"options": ["", "Customer", "Investor", "Partner", "Reseller"],
"customizationOptionsReferenceDisabled": true
},
"industry": {
"type": "enum",
"options": [
"",
"Advertising",
"Aerospace",
"Agriculture",
"Apparel & Accessories",
"Architecture",
"Automotive",
"Banking",
"Biotechnology",
"Building Materials & Equipment",
"Chemical",
"Construction",
"Consulting",
"Computer",
"Culture",
"Creative",
"Defense",
"Education",
"Electronics",
"Electric Power",
"Energy",
"Entertainment & Leisure",
"Finance",
"Food & Beverage",
"Grocery",
"Healthcare",
"Hospitality",
"Insurance",
"Legal",
"Manufacturing",
"Mass Media",
"Marketing",
"Mining",
"Music",
"Publishing",
"Petroleum",
"Real Estate",
"Retail",
"Service",
"Sports",
"Software",
"Support",
"Shipping",
"Travel",
"Technology",
"Telecommunications",
"Television",
"Transportation",
"Testing, Inspection & Certification",
"Venture Capital",
"Wholesale",
"Water"
],
"isSorted": true,
"customizationOptionsReferenceDisabled": true
},
"sicCode": {
"type": "varchar",
"maxLength": 40,
"pattern": "$noBadCharacters",
"noSpellCheck": true
},
"contactRole": {
"type": "varchar",
"notStorable": true,
"utility": true,
"orderDisabled": true,
"maxLength": 100,
"pattern": "$noBadCharacters",
"layoutMassUpdateDisabled": true,
"layoutListDisabled": true,
"layoutDetailDisabled": true,
"layoutSearchDisabled": true,
"fieldManagerParamList": [
"pattern"
]
},
"contactIsInactive": {
"type": "bool",
"notStorable": true,
"orderDisabled": true,
"default": false,
"utility": true
},
"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"
},
"description": {
"type": "text"
},
"campaign": {
"type": "link"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"targetLists": {
"type": "linkMultiple",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"importDisabled": true,
"exportDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"noLoad": true
},
"targetList": {
"type": "link",
"notStorable": true,
"orderDisabled": true,
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"layoutMassUpdateDisabled": true,
"layoutFiltersDisabled": true,
"entity": "TargetList",
"directAccessDisabled": true
},
"originalLead": {
"type": "linkOne",
"readOnly": true,
"view": "views/fields/link-one"
},
"targetListIsOptedOut": {
"type": "bool",
"notStorable": true,
"orderDisabled": true,
"readOnly": true,
"utility": true
}
},
"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
},
"contacts": {
"type": "hasMany",
"entity": "Contact",
"foreign": "accounts",
"columnAttributeMap": {
"role": "contactRole",
"isInactive": "contactIsInactive"
}
},
"contactsPrimary": {
"type": "hasMany",
"entity": "Contact",
"foreign": "account",
"layoutRelationshipsDisabled": true
},
"opportunities": {
"type": "hasMany",
"entity": "Opportunity",
"foreign": "account"
},
"cases": {
"type": "hasMany",
"entity": "Case",
"foreign": "account"
},
"documents": {
"type": "hasMany",
"entity": "Document",
"foreign": "accounts",
"audited": true
},
"meetingsPrimary": {
"type": "hasMany",
"entity": "Meeting",
"foreign": "account",
"layoutRelationshipsDisabled": true
},
"emailsPrimary": {
"type": "hasMany",
"entity": "Email",
"foreign": "account",
"layoutRelationshipsDisabled": true
},
"callsPrimary": {
"type": "hasMany",
"entity": "Call",
"foreign": "account",
"layoutRelationshipsDisabled": true
},
"tasksPrimary": {
"type": "hasMany",
"entity": "Task",
"foreign": "account",
"layoutRelationshipsDisabled": true
},
"meetings": {
"type": "hasChildren",
"entity": "Meeting",
"foreign": "parent",
"audited": true
},
"calls": {
"type": "hasChildren",
"entity": "Call",
"foreign": "parent",
"audited": true
},
"tasks": {
"type": "hasChildren",
"entity": "Task",
"foreign": "parent"
},
"emails": {
"type": "hasChildren",
"entity": "Email",
"foreign": "parent",
"layoutRelationshipsDisabled": true
},
"campaign": {
"type": "belongsTo",
"entity": "Campaign",
"foreign": "accounts"
},
"campaignLogRecords": {
"type": "hasChildren",
"entity": "CampaignLogRecord",
"foreign": "parent"
},
"targetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "accounts",
"columnAttributeMap": {
"optedOut": "targetListIsOptedOut"
}
},
"portalUsers": {
"type": "hasMany",
"entity": "User",
"foreign": "accounts"
},
"originalLead": {
"type": "hasOne",
"entity": "Lead",
"foreign": "createdAccount"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc",
"textFilterFields": ["name", "emailAddress"]
},
"indexes": {
"createdAt": {
"columns": ["createdAt", "deleted"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
},
"name": {
"columns": ["name", "deleted"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
}
},
"optimisticConcurrencyControl": true
}

View File

@@ -0,0 +1,434 @@
{
"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,
"customizationOptionsReferenceDisabled": true
},
"dateStart": {
"type": "datetime",
"required": true,
"default": "javascript: return this.dateTime.getNow(15);",
"audited": true,
"view": "crm:views/call/fields/date-start"
},
"dateEnd": {
"type": "datetime",
"required": true,
"after": "dateStart",
"afterOrEqual": true
},
"duration": {
"type": "duration",
"start": "dateStart",
"end": "dateEnd",
"options": [300, 600, 900, 1800, 2700, 3600, 7200],
"default": 300,
"notStorable": true,
"select": {
"select": "TIMESTAMPDIFF_SECOND:(dateStart, dateEnd)"
},
"order": {
"order": [
["TIMESTAMPDIFF_SECOND:(dateStart, dateEnd)", "{direction}"]
]
}
},
"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
},
"direction": {
"type": "enum",
"options": ["Outbound", "Inbound"],
"default": "Outbound"
},
"description": {
"type": "text"
},
"parent": {
"type": "linkParent",
"entityList": ["Account", "Lead", "Contact", "Opportunity", "Case"]
},
"account": {
"type": "link",
"readOnly": true,
"customizationReadOnlyDisabled": true
},
"uid": {
"type": "varchar",
"maxLength": 255,
"index": true,
"readOnly": true,
"duplicateIgnore": true
},
"acceptanceStatus": {
"type": "enum",
"notStorable": true,
"options": ["None", "Accepted", "Tentative", "Declined"],
"style": {
"Accepted": "success",
"Declined": "danger",
"Tentative": "warning"
},
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true,
"orderDisabled": true,
"importDisabled": true,
"exportDisabled": true,
"customizationDefaultDisabled": true,
"customizationRequiredDisabled": true,
"customizationIsSortedDisabled": true,
"customizationReadOnlyDisabled": true,
"customizationAuditedDisabled": true,
"customizationOptionsReferenceDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"where": {
"=": {
"whereClause": {
"OR": [
{
"id=s": {
"from": "CallContact",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id=s": {
"from": "CallLead",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id=s": {
"from": "CallUser",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
}
]
}
},
"<>": {
"whereClause": {
"AND": [
{
"id!=s": {
"from": "CallContact",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id!=s": {
"from": "CallLead",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id!=s": {
"from": "CallUser",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
}
]
}
},
"IN": {
"whereClause": {
"OR": [
{
"id=s": {
"from": "CallContact",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id=s": {
"from": "CallLead",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id=s": {
"from": "CallUser",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
}
]
}
},
"NOT IN": {
"whereClause": {
"AND": [
{
"id!=s": {
"from": "CallContact",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id!=s": {
"from": "CallLead",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id!=s": {
"from": "CallUser",
"select": ["callId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
}
]
}
}
},
"view": "crm:views/meeting/fields/acceptance-status"
},
"users": {
"type": "linkMultiple",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"view": "crm:views/meeting/fields/users",
"columns": {
"status": "acceptanceStatus"
},
"additionalAttributeList": ["columns"],
"orderBy": "name",
"duplicatorClassName": "Espo\\Modules\\Crm\\Classes\\FieldDuplicators\\Meeting\\Attendees",
"audited": true
},
"contacts": {
"type": "linkMultiple",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"view": "crm:views/call/fields/contacts",
"columns": {
"status": "acceptanceStatus"
},
"additionalAttributeList": ["columns"],
"orderBy": "name",
"duplicatorClassName": "Espo\\Modules\\Crm\\Classes\\FieldDuplicators\\Meeting\\Attendees",
"audited": true
},
"leads": {
"type": "linkMultiple",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"view": "crm:views/call/fields/leads",
"columns": {
"status": "acceptanceStatus"
},
"additionalAttributeList": ["columns"],
"orderBy": "name",
"duplicatorClassName": "Espo\\Modules\\Crm\\Classes\\FieldDuplicators\\Meeting\\Attendees",
"audited": true
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"phoneNumbersMap": {
"type": "jsonObject",
"notStorable": true,
"orderDisabled": true,
"utility": true,
"customizationDisabled": true
},
"assignedUser": {
"type": "link",
"required": true,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
"account": {
"type": "belongsTo",
"entity": "Account"
},
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"users": {
"type": "hasMany",
"entity": "User",
"foreign": "calls",
"additionalColumns": {
"status": {
"type": "varchar",
"len": "36",
"default": "None"
}
},
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"contacts": {
"type": "hasMany",
"entity": "Contact",
"foreign": "calls",
"additionalColumns": {
"status": {
"type": "varchar",
"len": "36",
"default": "None"
}
},
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"leads": {
"type": "hasMany",
"entity": "Lead",
"foreign": "calls",
"additionalColumns": {
"status": {
"type": "varchar",
"len": "36",
"default": "None"
}
},
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"parent": {
"type": "belongsToParent",
"foreign": "calls"
}
},
"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"]
}
},
"repositoryClassName": "Espo\\Core\\Repositories\\Event"
}

View File

@@ -0,0 +1,357 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"status": {
"type": "enum",
"options": [
"Planning",
"Active",
"Inactive",
"Complete"
],
"default": "Planning",
"style": {
"Active": "primary",
"Inactive": "info",
"Complete": "success"
},
"displayAsLabel": true,
"labelType": "state",
"customizationOptionsDisabled": true,
"customizationOptionsReferenceDisabled": true
},
"type": {
"type": "enum",
"options": [
"Email",
"Newsletter",
"Informational Email",
"Web",
"Television",
"Radio",
"Mail"
],
"default": "Email",
"maxLength": 64,
"customizationOptionsDisabled": true,
"customizationOptionsReferenceDisabled": true
},
"startDate": {
"type": "date",
"validatorClassNameList": [
"Espo\\Modules\\Crm\\Classes\\FieldValidators\\Campaign\\StartDate\\BeforeEndDate"
]
},
"endDate": {
"type": "date",
"validatorClassNameList": [
"Espo\\Modules\\Crm\\Classes\\FieldValidators\\Campaign\\EndDate\\AfterStartDate"
]
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"targetLists": {
"type": "linkMultiple",
"tooltip": true
},
"excludingTargetLists": {
"type": "linkMultiple",
"tooltip": true
},
"sentCount": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"openedCount": {
"view": "crm:views/campaign/fields/int-with-percentage",
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"clickedCount": {
"view": "crm:views/campaign/fields/int-with-percentage",
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"optedInCount": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"optedOutCount": {
"view": "crm:views/campaign/fields/int-with-percentage",
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"bouncedCount": {
"view": "crm:views/campaign/fields/int-with-percentage",
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"hardBouncedCount": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"softBouncedCount": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"leadCreatedCount": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"openedPercentage": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"utility": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"clickedPercentage": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"utility": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"optedOutPercentage": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"utility": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"bouncedPercentage": {
"type": "int",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"utility": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"revenue": {
"type": "currency",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"directUpdateDisabled": true,
"readOnly": true,
"loaderClassName": "Espo\\Modules\\Crm\\Classes\\FieldProcessing\\Campaign\\StatsLoader"
},
"budget": {
"type": "currency"
},
"contactsTemplate": {
"type": "link",
"view": "crm:views/campaign/fields/template",
"targetEntityType": "Contact"
},
"leadsTemplate": {
"type": "link",
"view": "crm:views/campaign/fields/template",
"targetEntityType": "Lead"
},
"accountsTemplate": {
"type": "link",
"view": "crm:views/campaign/fields/template",
"targetEntityType": "Account"
},
"usersTemplate": {
"type": "link",
"view": "crm:views/campaign/fields/template",
"targetEntityType": "User"
},
"mailMergeOnlyWithAddress": {
"type": "bool",
"default": true
}
},
"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
},
"targetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "campaigns"
},
"excludingTargetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "campaignsExcluding",
"relationName": "campaignTargetListExcluding"
},
"accounts": {
"type": "hasMany",
"entity": "Account",
"foreign": "campaign"
},
"contacts": {
"type": "hasMany",
"entity": "Contact",
"foreign": "campaign"
},
"leads": {
"type": "hasMany",
"entity": "Lead",
"foreign": "campaign"
},
"opportunities": {
"type": "hasMany",
"entity": "Opportunity",
"foreign": "campaign"
},
"campaignLogRecords": {
"type": "hasMany",
"entity": "CampaignLogRecord",
"foreign": "campaign"
},
"trackingUrls": {
"type": "hasMany",
"entity": "CampaignTrackingUrl",
"foreign": "campaign"
},
"massEmails": {
"type": "hasMany",
"entity": "MassEmail",
"foreign": "campaign"
},
"contactsTemplate": {
"type": "belongsTo",
"entity": "Template",
"noJoin": true
},
"leadsTemplate": {
"type": "belongsTo",
"entity": "Template",
"noJoin": true
},
"accountsTemplate": {
"type": "belongsTo",
"entity": "Template",
"noJoin": true
},
"usersTemplate": {
"type": "belongsTo",
"entity": "Template",
"noJoin": true
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"createdAt": {
"columns": ["createdAt", "deleted"]
}
}
}

View File

@@ -0,0 +1,97 @@
{
"fields": {
"action": {
"type": "enum",
"required": true,
"maxLength": 50,
"options": ["Sent", "Opened", "Opted Out", "Bounced", "Clicked", "Opted In", "Lead Created"]
},
"actionDate": {
"type": "datetime",
"required": true
},
"data": {
"type": "jsonObject",
"view": "crm:views/campaign-log-record/fields/data"
},
"stringData": {
"type": "varchar",
"maxLength": 100
},
"stringAdditionalData": {
"type": "varchar",
"maxLength": 100
},
"application": {
"type": "varchar",
"required": true,
"maxLength": 36,
"default": "Espo"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
},
"campaign": {
"type": "link"
},
"parent": {
"type": "linkParent"
},
"object": {
"type": "linkParent"
},
"queueItem": {
"type": "link"
},
"isTest": {
"type": "bool",
"default": false
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"campaign": {
"type": "belongsTo",
"entity": "Campaign",
"foreign": "campaignLogRecords"
},
"queueItem": {
"type": "belongsTo",
"entity": "EmailQueueItem",
"noJoin": true
},
"parent": {
"type": "belongsToParent",
"entityList": ["Account", "Contact", "Lead", "Opportunity", "User"]
},
"object": {
"type": "belongsToParent",
"entityList": ["Email", "CampaignTrackingUrl"]
}
},
"collection": {
"textFilterFields": ["queueItem.id", "queueItem.emailAddress"],
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"actionDate": {
"columns": ["actionDate", "deleted"]
},
"action": {
"columns": ["action", "deleted"]
}
}
}

View File

@@ -0,0 +1,79 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true
},
"url": {
"type": "url",
"tooltip": true
},
"urlToUse": {
"type": "varchar",
"notStorable": true,
"orderDisabled": true,
"readOnly": true,
"copyToClipboard": true
},
"campaign": {
"type": "link",
"readOnlyAfterCreate": true
},
"action": {
"type": "enum",
"options": [
"Redirect",
"Show Message"
],
"default": "Redirect",
"maxLength": 12
},
"message": {
"type": "text",
"tooltip": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"campaign": {
"type": "belongsTo",
"entity": "Campaign",
"foreign": "trackingUrls"
}
},
"collection": {
"orderBy": "name",
"order": "asc"
}
}

View File

@@ -0,0 +1,225 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"number": {
"type": "autoincrement",
"index": true
},
"status": {
"type": "enum",
"options": ["New", "Assigned", "Pending", "Closed", "Rejected", "Duplicate"],
"default": "New",
"style": {
"Closed": "success",
"Assigned": "primary",
"Duplicate": "info",
"Pending": "warning",
"Rejected": "info"
},
"audited": true,
"displayAsLabel": true,
"labelType": "state",
"fieldManagerAdditionalParamList": [
{
"name": "notActualOptions",
"view": "views/admin/field-manager/fields/not-actual-options"
}
],
"notActualOptions": ["Closed", "Rejected", "Duplicate"],
"customizationOptionsReferenceDisabled": true
},
"priority": {
"type": "enum",
"options": ["Low", "Normal", "High", "Urgent"],
"default": "Normal",
"displayAsLabel": true,
"style": {
"High": "warning",
"Urgent": "danger"
},
"audited": true,
"customizationOptionsReferenceDisabled": true
},
"type": {
"type": "enum",
"options": ["", "Question", "Incident", "Problem"],
"audited": true,
"customizationOptionsReferenceDisabled": true
},
"description": {
"type": "text",
"preview": true,
"attachmentField": "attachments",
"cutHeight": 500
},
"account": {
"type": "link"
},
"lead": {
"type": "link"
},
"contact": {
"type": "link"
},
"contacts": {
"type": "linkMultiple",
"view": "views/fields/link-multiple-with-primary",
"orderBy": "name",
"detailLayoutIncompatibleFieldList": ["contact"],
"primaryLink": "contact"
},
"inboundEmail": {
"type": "link",
"readOnly": true
},
"originalEmail": {
"type": "link",
"notStorable": true,
"orderDisabled": true,
"entity": "Email",
"customizationDisabled": true,
"layoutAvailabilityList": [],
"directAccessDisabled": true
},
"isInternal": {
"type": "bool"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"attachments": {
"type": "attachmentMultiple"
}
},
"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
},
"inboundEmail": {
"type": "belongsTo",
"entity": "InboundEmail"
},
"account": {
"type": "belongsTo",
"entity": "Account",
"foreign": "cases",
"deferredLoad": true
},
"lead": {
"type": "belongsTo",
"entity": "Lead",
"foreign": "cases",
"deferredLoad": true
},
"contact": {
"type": "belongsTo",
"entity": "Contact",
"foreign": "casesPrimary",
"deferredLoad": true
},
"contacts": {
"type": "hasMany",
"entity": "Contact",
"foreign": "cases",
"layoutRelationshipsDisabled": true
},
"meetings": {
"type": "hasChildren",
"entity": "Meeting",
"foreign": "parent",
"audited": true
},
"calls": {
"type": "hasChildren",
"entity": "Call",
"foreign": "parent",
"audited": true
},
"tasks": {
"type": "hasChildren",
"entity": "Task",
"foreign": "parent",
"audited": true
},
"emails": {
"type": "hasChildren",
"entity": "Email",
"foreign": "parent",
"layoutRelationshipsDisabled": true
},
"articles": {
"type": "hasMany",
"entity": "KnowledgeBaseArticle",
"foreign": "cases",
"audited": true
}
},
"collection": {
"orderBy": "number",
"order": "desc",
"textFilterFields": ["name", "number", "description"],
"fullTextSearch": true
},
"indexes": {
"status": {
"columns": ["status", "deleted"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"assignedUserStatus": {
"columns": ["assignedUserId", "status"]
}
},
"optimisticConcurrencyControl": true
}

View File

@@ -0,0 +1,723 @@
{
"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
},
"accountAnyId": {
"notStorable": true,
"orderDisabled": true,
"customizationDisabled": true,
"utility": true,
"type": "varchar",
"where": {
"=": {
"whereClause": {
"id=s": {
"from": "AccountContact",
"select": ["contactId"],
"whereClause": {
"deleted": false,
"accountId": "{value}"
}
}
}
},
"<>": {
"whereClause": {
"id!=s": {
"from": "AccountContact",
"select": ["contactId"],
"whereClause": {
"deleted": false,
"accountId": "{value}"
}
}
}
},
"IN": {
"whereClause": {
"id=s": {
"from": "AccountContact",
"select": ["contactId"],
"whereClause": {
"deleted": false,
"accountId": "{value}"
}
}
}
},
"NOT IN": {
"whereClause": {
"id!=s": {
"from": "AccountContact",
"select": ["contactId"],
"whereClause": {
"deleted": false,
"accountId": "{value}"
}
}
}
},
"IS NULL": {
"whereClause": {
"accountId": null
}
},
"IS NOT NULL": {
"whereClause": {
"accountId!=": null
}
}
}
},
"title": {
"type": "varchar",
"maxLength": 100,
"view": "crm:views/contact/fields/title",
"directUpdateDisabled": true,
"notStorable": true,
"select": {
"select": "accountContactPrimary.role",
"leftJoins": [
[
"AccountContact",
"accountContactPrimary",
{
"contact.id:": "accountContactPrimary.contactId",
"contact.accountId:": "accountContactPrimary.accountId",
"accountContactPrimary.deleted": false
}
]
]
},
"order": {
"order": [
["accountContactPrimary.role", "{direction}"]
],
"leftJoins": [
[
"AccountContact",
"accountContactPrimary",
{
"contact.id:": "accountContactPrimary.contactId",
"contact.accountId:": "accountContactPrimary.accountId",
"accountContactPrimary.deleted": false
}
]
]
},
"where": {
"LIKE": {
"whereClause": {
"id=s": {
"from": "AccountContact",
"select": ["contactId"],
"whereClause": {
"deleted": false,
"role*": "{value}"
}
}
}
},
"NOT LIKE": {
"whereClause": {
"id!=s": {
"from": "AccountContact",
"select": ["contactId"],
"whereClause": {
"deleted": false,
"role*": "{value}"
}
}
}
},
"=": {
"whereClause": {
"id=s": {
"from": "AccountContact",
"select": ["contactId"],
"whereClause": {
"deleted": false,
"role": "{value}"
}
}
}
},
"<>": {
"whereClause": {
"id!=s": {
"from": "AccountContact",
"select": ["contactId"],
"whereClause": {
"deleted": false,
"role": "{value}"
}
}
}
},
"IS NULL": {
"whereClause": {
"NOT": {
"EXISTS": {
"from": "Contact",
"fromAlias": "sq",
"select": ["id"],
"leftJoins": [
[
"accounts",
"m",
{},
{"onlyMiddle": true}
]
],
"whereClause": {
"AND": [
{"m.role!=": null},
{"m.role!=": ""},
{"sq.id:": "contact.id"}
]
}
}
}
}
},
"IS NOT NULL": {
"whereClause": {
"EXISTS": {
"from": "Contact",
"fromAlias": "sq",
"select": ["id"],
"leftJoins": [
[
"accounts",
"m",
{},
{"onlyMiddle": true}
]
],
"whereClause": {
"AND": [
{"m.role!=": null},
{"m.role!=": ""},
{"sq.id:": "contact.id"}
]
}
}
}
}
},
"customizationOptionsDisabled": true,
"textFilterDisabled": true
},
"description": {
"type": "text"
},
"emailAddress": {
"type": "email",
"isPersonalData": true
},
"phoneNumber": {
"type": "phone",
"typeList": ["Mobile", "Office", "Home", "Fax", "Other"],
"defaultType": "Mobile",
"isPersonalData": true
},
"doNotCall": {
"type": "bool"
},
"address": {
"type": "address",
"isPersonalData": true
},
"addressStreet": {
"type": "text",
"maxLength": 255,
"dbType": "varchar"
},
"addressCity": {
"type": "varchar"
},
"addressState": {
"type": "varchar"
},
"addressCountry": {
"type": "varchar"
},
"addressPostalCode": {
"type": "varchar"
},
"account": {
"type": "link",
"view": "crm:views/contact/fields/account"
},
"accounts": {
"type": "linkMultiple",
"view": "crm:views/contact/fields/accounts",
"columns": {
"role": "contactRole",
"isInactive": "contactIsInactive"
},
"additionalAttributeList": ["columns"],
"orderBy": "name",
"detailLayoutIncompatibleFieldList": ["account"]
},
"accountRole": {
"type": "varchar",
"notStorable": true,
"orderDisabled": true,
"directUpdateDisabled": true,
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true,
"layoutFiltersDisabled": true,
"layoutAvailabilityList": ["listForAccount"],
"exportDisabled": true,
"importDisabled": true,
"view": "crm:views/contact/fields/account-role",
"customizationOptionsDisabled": true,
"textFilterDisabled": true
},
"accountIsInactive": {
"type": "bool",
"notStorable": true,
"mergeDisabled": true,
"foreignAccessDisabled": true,
"select": {
"select": "accountContactPrimary.isInactive",
"leftJoins": [
[
"AccountContact",
"accountContactPrimary",
{
"contact.id:": "accountContactPrimary.contactId",
"contact.accountId:": "accountContactPrimary.accountId",
"accountContactPrimary.deleted": false
}
]
]
},
"order": {
"order": [
["accountContactPrimary.isInactive", "{direction}"]
],
"leftJoins": [
[
"AccountContact",
"accountContactPrimary",
{
"contact.id:": "accountContactPrimary.contactId",
"contact.accountId:": "accountContactPrimary.accountId",
"accountContactPrimary.deleted": false
}
]
]
},
"where": {
"= TRUE": {
"leftJoins": [
[
"AccountContact",
"accountContactFilterIsInactive",
{
"accountContactFilterIsInactive.contactId:": "id",
"accountContactFilterIsInactive.accountId:": "accountId",
"accountContactFilterIsInactive.deleted": false
}
]
],
"whereClause": {
"accountContactFilterIsInactive.isInactive": true
}
},
"= FALSE": {
"leftJoins": [
[
"AccountContact",
"accountContactFilterIsInactive",
{
"accountContactFilterIsInactive.contactId:": "id",
"accountContactFilterIsInactive.accountId:": "accountId",
"accountContactFilterIsInactive.deleted": false
}
]
],
"whereClause": {
"OR": [
{
"accountContactFilterIsInactive.isInactive!=": true
},
{
"accountContactFilterIsInactive.isInactive=": null
}
]
}
}
},
"layoutListDisabled": true,
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true
},
"accountType": {
"type": "foreign",
"link": "account",
"field": "type",
"readOnly": true,
"view": "views/fields/foreign-enum"
},
"opportunityRole": {
"type": "enum",
"notStorable": true,
"orderDisabled": true,
"options": ["", "Decision Maker", "Evaluator", "Influencer"],
"layoutMassUpdateDisabled": true,
"layoutListDisabled": true,
"layoutDetailDisabled": true,
"customizationRequiredDisabled": true,
"customizationIsSortedDisabled": true,
"customizationAuditedDisabled": true,
"customizationReadOnlyDisabled": true,
"converterClassName": "Espo\\Classes\\FieldConverters\\RelationshipRole",
"converterData": {
"column": "role",
"link": "opportunities",
"relationName": "contactOpportunity",
"nearKey": "contactId"
},
"view": "crm:views/contact/fields/opportunity-role"
},
"acceptanceStatus": {
"type": "varchar",
"notStorable": true,
"orderDisabled": true,
"exportDisabled": true,
"utility": true,
"fieldManagerParamList": []
},
"acceptanceStatusMeetings": {
"type": "enum",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"directUpdateDisabled": true,
"layoutAvailabilityList": ["filters"],
"importDisabled": true,
"exportDisabled": true,
"view": "crm:views/lead/fields/acceptance-status",
"link": "meetings",
"column": "status",
"fieldManagerParamList": []
},
"acceptanceStatusCalls": {
"type": "enum",
"notStorable": true,
"orderDisabled": true,
"directUpdateDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"layoutAvailabilityList": ["filters"],
"importDisabled": true,
"exportDisabled": true,
"view": "crm:views/lead/fields/acceptance-status",
"link": "calls",
"column": "status",
"fieldManagerParamList": []
},
"campaign": {
"type": "link"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"targetLists": {
"type": "linkMultiple",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"importDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"noLoad": true
},
"targetList": {
"type": "link",
"notStorable": true,
"orderDisabled": true,
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"layoutMassUpdateDisabled": true,
"layoutFiltersDisabled": true,
"exportDisabled": true,
"entity": "TargetList",
"directAccessDisabled": true
},
"portalUser": {
"type": "linkOne",
"readOnly": true,
"notStorable": true,
"view": "views/fields/link-one"
},
"hasPortalUser": {
"type": "bool",
"notStorable": true,
"readOnly": true,
"mergeDisabled": true,
"customizationDefaultDisabled": true,
"customizationReadOnlyDisabled": true,
"foreignAccessDisabled": true,
"select": {
"select": "IS_NOT_NULL:(portalUser.id)",
"leftJoins": [["portalUser", "portalUser"]]
},
"where": {
"= TRUE": {
"whereClause": {
"portalUser.id!=": null
},
"leftJoins": [["portalUser", "portalUser"]]
},
"= FALSE": {
"whereClause": {
"portalUser.id=": null
},
"leftJoins": [["portalUser", "portalUser"]]
}
},
"order": {
"order": [
["portalUser.id", "{direction}"]
],
"leftJoins": [["portalUser", "portalUser"]],
"additionalSelect": ["portalUser.id"]
}
},
"originalLead": {
"type": "linkOne",
"readOnly": true,
"view": "views/fields/link-one"
},
"targetListIsOptedOut": {
"type": "bool",
"notStorable": true,
"orderDisabled": true,
"readOnly": true,
"utility": true
},
"originalEmail": {
"type": "link",
"notStorable": true,
"orderDisabled": true,
"entity": "Email",
"customizationDisabled": true,
"layoutAvailabilityList": [],
"directAccessDisabled": true
}
},
"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
},
"account": {
"type": "belongsTo",
"entity": "Account",
"deferredLoad": true
},
"accounts": {
"type": "hasMany",
"entity": "Account",
"foreign": "contacts",
"additionalColumns": {
"role": {
"type": "varchar",
"len": 100
},
"isInactive": {
"type": "bool",
"default": false
}
},
"additionalAttributeList": ["columns"],
"layoutRelationshipsDisabled": true,
"columnAttributeMap": {
"role": "accountRole",
"isInactive": "accountIsInactive"
}
},
"opportunities": {
"type": "hasMany",
"entity": "Opportunity",
"foreign": "contacts",
"columnAttributeMap": {
"role": "opportunityRole"
}
},
"opportunitiesPrimary": {
"type": "hasMany",
"entity": "Opportunity",
"foreign": "contact",
"layoutRelationshipsDisabled": true
},
"casesPrimary": {
"type": "hasMany",
"entity": "Case",
"foreign": "contact",
"layoutRelationshipsDisabled": true
},
"cases": {
"type": "hasMany",
"entity": "Case",
"foreign": "contacts"
},
"meetings": {
"type": "hasMany",
"entity": "Meeting",
"foreign": "contacts",
"audited": true,
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"calls": {
"type": "hasMany",
"entity": "Call",
"foreign": "contacts",
"audited": true,
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"tasks": {
"type": "hasChildren",
"entity": "Task",
"foreign": "parent",
"audited": true
},
"emails": {
"type": "hasChildren",
"entity": "Email",
"foreign": "parent",
"layoutRelationshipsDisabled": true
},
"campaign": {
"type": "belongsTo",
"entity": "Campaign",
"foreign": "contacts"
},
"campaignLogRecords": {
"type": "hasChildren",
"entity": "CampaignLogRecord",
"foreign": "parent"
},
"targetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "contacts",
"columnAttributeMap": {
"optedOut": "targetListIsOptedOut"
}
},
"portalUser": {
"type": "hasOne",
"entity": "User",
"foreign": "contact"
},
"originalLead": {
"type": "hasOne",
"entity": "Lead",
"foreign": "createdContact"
},
"documents": {
"type": "hasMany",
"entity": "Document",
"foreign": "contacts",
"audited": true
},
"tasksPrimary": {
"type": "hasMany",
"entity": "Task",
"foreign": "contact",
"layoutRelationshipsDisabled": true
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc",
"textFilterFields": ["name", "emailAddress"]
},
"indexes": {
"createdAt": {
"columns": ["createdAt", "deleted"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
},
"firstName": {
"columns": ["firstName", "deleted"]
},
"name": {
"columns": ["firstName", "lastName"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
}
}
}

View File

@@ -0,0 +1,171 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"view": "crm:views/document/fields/name",
"pattern": "$noBadCharacters"
},
"file": {
"type": "file",
"required": true,
"view": "crm:views/document/fields/file",
"accept": [
".pdf",
".odt",
".ods",
".odp",
".docx",
".xlsx",
".pptx",
".doc",
".xls",
".ppt",
".rtf",
".csv",
".md",
".txt"
]
},
"status": {
"type": "enum",
"options": [
"Draft",
"Active",
"Canceled",
"Expired"
],
"style": {
"Active": "primary",
"Canceled": "info",
"Expired": "danger"
},
"displayAsLabel": true,
"labelType": "state",
"default": "Active",
"audited": true,
"fieldManagerAdditionalParamList": [
{
"name": "activeOptions",
"view": "views/admin/field-manager/fields/not-actual-options"
}
],
"activeOptions": ["Active"],
"customizationOptionsReferenceDisabled": true
},
"type": {
"type": "enum",
"options": ["", "Contract", "NDA", "EULA", "License Agreement"],
"customizationOptionsReferenceDisabled": true
},
"publishDate": {
"type": "date",
"required": true,
"default": "javascript: return this.dateTime.getToday();"
},
"expirationDate": {
"type": "date",
"after": "publishDate"
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"accounts": {
"type": "linkMultiple",
"importDisabled": true,
"exportDisabled": true,
"noLoad": true,
"directUpdateDisabled": true,
"layoutAvailabilityList": [
"filters"
]
},
"folder": {
"type": "link",
"view": "views/fields/link-category-tree"
}
},
"links": {
"accounts": {
"type": "hasMany",
"entity": "Account",
"foreign": "documents"
},
"opportunities": {
"type": "hasMany",
"entity": "Opportunity",
"foreign": "documents"
},
"leads": {
"type": "hasMany",
"entity": "Lead",
"foreign": "documents"
},
"contacts": {
"type": "hasMany",
"entity": "Contact",
"foreign": "documents"
},
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"folder": {
"type": "belongsTo",
"foreign": "documents",
"entity": "DocumentFolder"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
}
}

View File

@@ -0,0 +1,106 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"parent": {
"type": "link",
"view": "views/fields/link-category-tree"
},
"childList": {
"type": "jsonArray",
"notStorable": 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": "DocumentFolder"
},
"children": {
"type": "hasMany",
"foreign": "parent",
"entity": "DocumentFolder",
"readOnly": true
},
"documents": {
"type": "hasMany",
"foreign": "folder",
"entity": "Document"
}
},
"collection": {
"orderBy": "name",
"order": "asc"
},
"additionalTables": {
"DocumentFolderPath": {
"attributes": {
"id": {
"type": "id",
"dbType": "integer",
"len": 11,
"autoincrement": true
},
"ascendorId": {
"type": "foreignId",
"index": true
},
"descendorId" : {
"type": "foreignId",
"index": true
}
}
}
},
"repositoryClassName": "Espo\\Core\\Repositories\\CategoryTree"
}

View File

@@ -0,0 +1,32 @@
{
"fields": {
"account": {
"type": "link",
"readOnly": true,
"customizationDisabled": true
},
"parent": {
"entityList": ["Account", "Lead", "Contact", "Opportunity", "Case"]
},
"tasks": {
"type": "linkMultiple",
"readOnly": true,
"columns": {
"status": "status"
},
"view": "crm:views/task/fields/tasks",
"customizationDefaultDisabled": true
}
},
"links": {
"account": {
"type": "belongsTo",
"entity": "Account"
},
"tasks": {
"type": "hasMany",
"entity": "Task",
"foreign": "email"
}
}
}

View File

@@ -0,0 +1,53 @@
{
"fields": {
"massEmail": {
"type": "link",
"readOnly": true
},
"status": {
"type": "enum",
"options": ["Pending", "Sent", "Failed", "Sending"],
"readOnly": true
},
"attemptCount": {
"type": "int",
"readOnly": true,
"default": 0
},
"target": {
"type": "linkParent",
"readOnly": true
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"sentAt": {
"type": "datetime",
"readOnly": true,
"index": true
},
"emailAddress": {
"type": "varchar",
"readOnly": true
},
"isTest": {
"type": "bool"
}
},
"links": {
"massEmail": {
"type": "belongsTo",
"entity": "MassEmail",
"foreign": "queueItems"
},
"target": {
"type": "belongsToParent"
}
},
"collection": {
"textFilterFields": ["id", "emailAddress"],
"orderBy": "createdAt",
"order": "desc"
}
}

View File

@@ -0,0 +1,157 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"status": {
"type": "enum",
"options": [
"Draft",
"In Review",
"Published",
"Archived"
],
"style": {
"Published": "primary",
"Archived": "info"
},
"displayAsLabel": true,
"labelType": "state",
"view": "crm:views/knowledge-base-article/fields/status",
"default": "Draft",
"fieldManagerAdditionalParamList": [
{
"name": "activeOptions",
"view": "views/admin/field-manager/fields/not-actual-options"
}
],
"activeOptions": ["Published"],
"customizationOptionsReferenceDisabled": true
},
"language": {
"type": "enum",
"view": "crm:views/knowledge-base-article/fields/language",
"customizationOptionsDisabled": true,
"customizationOptionsReferenceDisabled": true
},
"type": {
"type": "enum",
"options": ["Article"],
"default": "Article"
},
"portals": {
"type": "linkMultiple",
"tooltip": true
},
"publishDate": {
"type": "date"
},
"expirationDate": {
"type": "date",
"after": "publishDate"
},
"order": {
"type": "int",
"disableFormatting": true,
"textFilterDisabled": true
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"categories": {
"type": "linkMultiple",
"view": "views/fields/link-multiple-category-tree"
},
"attachments": {
"type": "attachmentMultiple"
},
"body": {
"type": "wysiwyg"
},
"bodyPlain": {
"type": "text",
"readOnly": true,
"directUpdateDisabled": true,
"fieldManagerParamList": []
}
},
"links": {
"cases": {
"type": "hasMany",
"entity": "Case",
"foreign": "articles"
},
"portals": {
"type": "hasMany",
"entity": "Portal",
"foreign": "articles"
},
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"categories": {
"type": "hasMany",
"foreign": "articles",
"entity": "KnowledgeBaseCategory"
}
},
"collection": {
"orderBy": "order",
"order": "asc",
"textFilterFields": [
"name",
"bodyPlain"
],
"fullTextSearch": true
},
"optimisticConcurrencyControl": true
}

View File

@@ -0,0 +1,113 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"fieldManagerParamList": []
},
"order": {
"type": "int",
"minValue": 1,
"readOnly": true,
"disableFormatting": true,
"textFilterDisabled": true
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"parent": {
"type": "link",
"view": "views/fields/link-category-tree"
},
"childList": {
"type": "jsonArray",
"notStorable": 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": "KnowledgeBaseCategory"
},
"children": {
"type": "hasMany",
"foreign": "parent",
"entity": "KnowledgeBaseCategory"
},
"articles": {
"type": "hasMany",
"foreign": "categories",
"entity": "KnowledgeBaseArticle"
}
},
"collection": {
"orderBy": "parent",
"orderByColumn": "parentId",
"order": "asc"
},
"additionalTables": {
"KnowledgeBaseCategoryPath": {
"attributes": {
"id": {
"type": "id",
"dbType": "integer",
"len": 11,
"autoincrement": true
},
"ascendorId": {
"type": "foreignId",
"index": true
},
"descendorId" : {
"type": "foreignId",
"index": true
}
}
}
},
"repositoryClassName": "Espo\\Core\\Repositories\\CategoryTree"
}

View File

@@ -0,0 +1,417 @@
{
"fields": {
"name": {
"type": "personName",
"isPersonalData": true,
"dependeeAttributeList": [
"emailAddress",
"phoneNumber",
"accountName"
]
},
"salutationName": {
"type": "enum",
"options": ["", "Mr.", "Ms.", "Mrs.", "Dr."]
},
"firstName": {
"type": "varchar",
"maxLength": 100
},
"lastName": {
"type": "varchar",
"maxLength": 100
},
"title": {
"type": "varchar",
"maxLength": 100,
"pattern": "$noBadCharacters"
},
"status": {
"type": "enum",
"options": [
"New",
"Assigned",
"In Process",
"Converted",
"Recycled",
"Dead"
],
"default": "New",
"style": {
"In Process": "primary",
"Converted": "success",
"Recycled": "info",
"Dead": "info"
},
"displayAsLabel": true,
"labelType": "state",
"audited": true,
"fieldManagerAdditionalParamList": [
{
"name": "notActualOptions",
"view": "views/admin/field-manager/fields/not-actual-options"
}
],
"notActualOptions": ["Converted", "Recycled", "Dead"],
"customizationOptionsReferenceDisabled": true
},
"source": {
"type": "enum",
"options": [
"",
"Call",
"Email",
"Existing Customer",
"Partner",
"Public Relations",
"Web Site",
"Campaign",
"Other"
],
"customizationOptionsReferenceDisabled": true
},
"industry": {
"type": "enum",
"view": "crm:views/lead/fields/industry",
"customizationOptionsDisabled": true,
"optionsReference": "Account.industry",
"isSorted": true
},
"opportunityAmount": {
"type": "currency",
"min": 0,
"decimal": false,
"audited": true
},
"opportunityAmountConverted": {
"type": "currencyConverted",
"readOnly": true
},
"website": {
"type": "url",
"strip": 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"
},
"emailAddress": {
"type": "email",
"isPersonalData": true
},
"phoneNumber": {
"type": "phone",
"typeList": ["Mobile", "Office", "Home", "Fax", "Other"],
"defaultType": "Mobile",
"isPersonalData": true
},
"doNotCall": {
"type": "bool"
},
"description": {
"type": "text"
},
"convertedAt": {
"type": "datetime",
"layoutMassUpdateDisabled": true,
"readOnly": true
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"accountName": {
"type": "varchar",
"pattern": "$noBadCharacters"
},
"assignedUser": {
"type": "link",
"view": "views/fields/assigned-user"
},
"acceptanceStatus": {
"type": "varchar",
"notStorable": true,
"orderDisabled": true,
"exportDisabled": true,
"utility": true,
"fieldManagerParamList": []
},
"acceptanceStatusMeetings": {
"type": "enum",
"notStorable": true,
"orderDisabled": true,
"directUpdateDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"layoutAvailabilityList": ["filters"],
"importDisabled": true,
"exportDisabled": true,
"view": "crm:views/lead/fields/acceptance-status",
"link": "meetings",
"column": "status",
"fieldManagerParamList": []
},
"acceptanceStatusCalls": {
"type": "enum",
"notStorable": true,
"orderDisabled": true,
"directUpdateDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"layoutAvailabilityList": ["filters"],
"importDisabled": true,
"exportDisabled": true,
"view": "crm:views/lead/fields/acceptance-status",
"link": "calls",
"column": "status",
"fieldManagerParamList": []
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"campaign": {
"type": "link"
},
"createdAccount": {
"type": "link",
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true
},
"createdContact": {
"type": "link",
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true,
"view": "crm:views/lead/fields/created-contact"
},
"createdOpportunity": {
"type": "link",
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true,
"view": "crm:views/lead/fields/created-opportunity"
},
"targetLists": {
"type": "linkMultiple",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"importDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"noLoad": true
},
"targetList": {
"type": "link",
"notStorable": true,
"orderDisabled": true,
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"layoutMassUpdateDisabled": true,
"layoutFiltersDisabled": true,
"entity": "TargetList",
"directAccessDisabled": true
},
"targetListIsOptedOut": {
"type": "bool",
"notStorable": true,
"orderDisabled": true,
"readOnly": true,
"utility": true
},
"originalEmail": {
"type": "link",
"notStorable": true,
"orderDisabled": true,
"entity": "Email",
"customizationDisabled": true,
"layoutAvailabilityList": [],
"directAccessDisabled": true
}
},
"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": "leads",
"audited": true,
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"calls": {
"type": "hasMany",
"entity": "Call",
"foreign": "leads",
"audited": true,
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"tasks": {
"type": "hasChildren",
"entity": "Task",
"foreign": "parent",
"audited": true
},
"cases": {
"type": "hasMany",
"entity": "Case",
"foreign": "lead",
"audited": true
},
"emails": {
"type": "hasChildren",
"entity": "Email",
"foreign": "parent",
"layoutRelationshipsDisabled": true
},
"createdAccount": {
"type": "belongsTo",
"entity": "Account",
"foreign": "originalLead"
},
"createdContact": {
"type": "belongsTo",
"entity": "Contact",
"foreign": "originalLead"
},
"createdOpportunity": {
"type": "belongsTo",
"entity": "Opportunity",
"foreign": "originalLead"
},
"campaign": {
"type": "belongsTo",
"entity": "Campaign",
"foreign": "leads"
},
"campaignLogRecords": {
"type": "hasChildren",
"entity": "CampaignLogRecord",
"foreign": "parent"
},
"targetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "leads",
"columnAttributeMap": {
"optedOut": "targetListIsOptedOut"
}
},
"documents": {
"type": "hasMany",
"entity": "Document",
"foreign": "leads",
"audited": true
}
},
"convertEntityList": [
"Account",
"Contact",
"Opportunity"
],
"convertFields": {
"Contact": {
},
"Account": {
"name": "accountName",
"billingAddressStreet": "addressStreet",
"billingAddressCity": "addressCity",
"billingAddressState": "addressState",
"billingAddressPostalCode": "addressPostalCode",
"billingAddressCountry": "addressCountry"
},
"Opportunity": {
"amount": "opportunityAmount",
"leadSource": "source"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc",
"textFilterFields": ["name", "accountName", "emailAddress"]
},
"indexes": {
"firstName": {
"columns": ["firstName", "deleted"]
},
"name": {
"columns": ["firstName", "lastName"]
},
"status": {
"columns": ["status", "deleted"]
},
"createdAt": {
"columns": ["createdAt", "deleted"]
},
"createdAtStatus": {
"columns": ["createdAt", "status"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"assignedUserStatus": {
"columns": ["assignedUserId", "status"]
}
}
}

View File

@@ -0,0 +1,140 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"status": {
"type": "enum",
"options": [
"Draft",
"Pending",
"Complete",
"In Process",
"Failed"
],
"style": {
"In Process": "warning",
"Pending": "primary",
"Failed": "danger",
"Complete": "success"
},
"default": "Pending"
},
"storeSentEmails": {
"type": "bool",
"default": false,
"tooltip": true
},
"optOutEntirely": {
"type": "bool",
"default": false,
"tooltip": true
},
"fromAddress": {
"type": "varchar",
"view": "crm:views/mass-email/fields/from-address"
},
"fromName": {
"type": "varchar"
},
"replyToAddress": {
"type": "varchar"
},
"replyToName": {
"type": "varchar"
},
"startAt": {
"type": "datetime",
"required": true
},
"emailTemplate": {
"type": "link",
"required": true,
"createButton": true,
"view": "crm:views/mass-email/fields/email-template"
},
"campaign": {
"type": "link",
"readOnlyAfterCreate": true
},
"targetLists": {
"type": "linkMultiple",
"required": true,
"tooltip": true
},
"excludingTargetLists": {
"type": "linkMultiple",
"tooltip": true
},
"inboundEmail": {
"type": "link"
},
"smtpAccount": {
"type": "base",
"notStorable": true,
"orderDisabled": true,
"view": "crm:views/mass-email/fields/smtp-account"
},
"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"
},
"emailTemplate": {
"type": "belongsTo",
"entity": "EmailTemplate"
},
"campaign": {
"type": "belongsTo",
"entity": "Campaign",
"foreign": "massEmails"
},
"targetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "massEmails"
},
"excludingTargetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "massEmailsExcluding",
"relationName": "massEmailTargetListExcluding"
},
"inboundEmail": {
"type": "belongsTo",
"entity": "InboundEmail"
},
"queueItems": {
"type": "hasMany",
"entity": "EmailQueueItem",
"foreign": "massEmail"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
}
}

View File

@@ -0,0 +1,452 @@
{
"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,
"customizationOptionsReferenceDisabled": 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": [900, 1800, 3600, 7200, 10800, 86400],
"default": 3600,
"notStorable": true,
"select": {
"select": "TIMESTAMPDIFF_SECOND:(dateStart, dateEnd)"
},
"order": {
"order": [
["TIMESTAMPDIFF_SECOND:(dateStart, dateEnd)", "{direction}"]
]
}
},
"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
},
"description": {
"type": "text"
},
"parent": {
"type": "linkParent",
"entityList": ["Account", "Lead", "Contact", "Opportunity", "Case"]
},
"account": {
"type": "link",
"readOnly": true,
"customizationReadOnlyDisabled": true
},
"uid": {
"type": "varchar",
"maxLength": 255,
"index": true,
"readOnly": true,
"duplicateIgnore": true
},
"joinUrl": {
"type": "url",
"dbType": "text",
"maxLength": 320,
"readOnly": true,
"copyToClipboard": true,
"duplicateIgnore": true,
"default": null,
"customizationDefaultDisabled": true
},
"acceptanceStatus": {
"type": "enum",
"notStorable": true,
"orderDisabled": true,
"options": ["None", "Accepted", "Tentative", "Declined"],
"style": {
"Accepted": "success",
"Declined": "danger",
"Tentative": "warning"
},
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true,
"importDisabled": true,
"exportDisabled": true,
"customizationDefaultDisabled": true,
"customizationRequiredDisabled": true,
"customizationIsSortedDisabled": true,
"customizationReadOnlyDisabled": true,
"customizationAuditedDisabled": true,
"customizationOptionsReferenceDisabled": true,
"directAccessDisabled": true,
"filtersEnabled": true,
"where": {
"=": {
"whereClause": {
"OR": [
{
"id=s": {
"from": "ContactMeeting",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id=s": {
"from": "LeadMeeting",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id=s": {
"from": "MeetingUser",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
}
]
}
},
"<>": {
"whereClause": {
"AND": [
{
"id!=s": {
"from": "ContactMeeting",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id!=s": {
"from": "LeadMeeting",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id!=s": {
"from": "MeetingUser",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
}
]
}
},
"IN": {
"whereClause": {
"OR": [
{
"id=s": {
"from": "ContactMeeting",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id=s": {
"from": "LeadMeeting",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id=s": {
"from": "MeetingUser",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
}
]
}
},
"NOT IN": {
"whereClause": {
"AND": [
{
"id!=s": {
"from": "ContactMeeting",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id!=s": {
"from": "LeadMeeting",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
},
{
"id!=s": {
"from": "MeetingUser",
"select": ["meetingId"],
"whereClause": {
"deleted": false,
"status": "{value}"
}
}
}
]
}
}
},
"view": "crm:views/meeting/fields/acceptance-status"
},
"users": {
"type": "linkMultiple",
"view": "crm:views/meeting/fields/users",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"columns": {
"status": "acceptanceStatus"
},
"additionalAttributeList": ["columns"],
"orderBy": "name",
"audited": true,
"duplicatorClassName": "Espo\\Modules\\Crm\\Classes\\FieldDuplicators\\Meeting\\Attendees"
},
"contacts": {
"type": "linkMultiple",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"view": "crm:views/meeting/fields/contacts",
"columns": {
"status": "acceptanceStatus"
},
"additionalAttributeList": ["columns"],
"orderBy": "name",
"audited": true,
"duplicatorClassName": "Espo\\Modules\\Crm\\Classes\\FieldDuplicators\\Meeting\\Attendees"
},
"leads": {
"type": "linkMultiple",
"view": "crm:views/meeting/fields/attendees",
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"columns": {
"status": "acceptanceStatus"
},
"additionalAttributeList": ["columns"],
"orderBy": "name",
"audited": true,
"duplicatorClassName": "Espo\\Modules\\Crm\\Classes\\FieldDuplicators\\Meeting\\Attendees"
},
"sourceEmail": {
"type": "link",
"notStorable": true,
"orderDisabled": true,
"layoutDetailDisabled": true,
"layoutListDisabled": true,
"layoutMassUpdateDisabled": true,
"layoutFiltersDisabled": true,
"exportDisabled": true,
"importDisabled": true,
"entity": "Email",
"directAccessDisabled": true
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"required": true,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
}
},
"links": {
"account": {
"type": "belongsTo",
"entity": "Account"
},
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"users": {
"type": "hasMany",
"entity": "User",
"foreign": "meetings",
"additionalColumns": {
"status": {
"type": "varchar",
"len": "36",
"default": "None"
}
},
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"contacts": {
"type": "hasMany",
"entity": "Contact",
"foreign": "meetings",
"additionalColumns": {
"status": {
"type": "varchar",
"len": "36",
"default": "None"
}
},
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"leads": {
"type": "hasMany",
"entity": "Lead",
"foreign": "meetings",
"additionalColumns": {
"status": {
"type": "varchar",
"len": "36",
"default": "None"
}
},
"columnAttributeMap": {
"status": "acceptanceStatus"
}
},
"parent": {
"type": "belongsToParent",
"foreign": "meetings"
}
},
"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"]
}
},
"repositoryClassName": "Espo\\Core\\Repositories\\Event"
}

View File

@@ -0,0 +1,399 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"amount": {
"type": "currency",
"required": true,
"min": 0,
"decimal": false,
"audited": true
},
"amountConverted": {
"type": "currencyConverted",
"readOnly": true
},
"amountWeightedConverted": {
"type": "float",
"readOnly": true,
"notStorable": true,
"select": {
"select": "DIV:(MUL:(amount, probability, amountCurrencyRate.rate), 100)",
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
"where": {
"=": {
"whereClause": {
"DIV:(MUL:(amount, probability, amountCurrencyRate.rate), 100)=": "{value}"
},
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
"<": {
"whereClause": {
"DIV:(MUL:(amount, probability, amountCurrencyRate.rate), 100)<": "{value}"
},
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
">": {
"whereClause": {
"DIV:(MUL:(amount, probability, amountCurrencyRate.rate), 100)>": "{value}"
},
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
"<=": {
"whereClause": {
"DIV:(MUL:(amount, probability, amountCurrencyRate.rate), 100)<=": "{value}"
},
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
">=": {
"whereClause": {
"DIV:(MUL:(amount, probability, amountCurrencyRate.rate), 100)>=": "{value}"
},
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
"<>": {
"whereClause": {
"DIV:(MUL:(amount, probability, amountCurrencyRate.rate), 100)!=": "{value}"
},
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
"IS NULL": {
"whereClause": {
"IS_NULL:(amount)": true
},
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
"IS NOT NULL": {
"whereClause": {
"IS_NOT_NULL:(amount)": true
},
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
}
},
"order": {
"order": [
["DIV:(MUL:(amount, probability, amountCurrencyRate.rate), 100)", "{direction}"]
],
"leftJoins": [
[
"Currency",
"amountCurrencyRate",
{"amountCurrencyRate.id:": "amountCurrency"}
]
]
},
"view": "views/fields/currency-converted"
},
"account": {
"type": "link"
},
"contacts": {
"type": "linkMultiple",
"view": "crm:views/opportunity/fields/contacts",
"columns": {
"role": "opportunityRole"
},
"additionalAttributeList": ["columns"],
"primaryLink": "contact",
"orderBy": "name",
"detailLayoutIncompatibleFieldList": ["contact"]
},
"contact": {
"type": "link"
},
"stage": {
"type": "enum",
"options": ["Prospecting", "Qualification", "Proposal", "Negotiation", "Closed Won", "Closed Lost"],
"view": "crm:views/opportunity/fields/stage",
"default": "Prospecting",
"audited": true,
"probabilityMap": {
"Prospecting": 10,
"Qualification": 20,
"Proposal": 50,
"Negotiation": 80,
"Closed Won": 100,
"Closed Lost": 0
},
"style": {
"Proposal": "primary",
"Negotiation": "warning",
"Closed Won": "success",
"Closed Lost": "info"
},
"displayAsLabel": true,
"labelType": "state",
"fieldManagerAdditionalParamList": [
{
"name": "probabilityMap",
"view": "crm:views/opportunity/admin/field-manager/fields/probability-map"
}
],
"customizationOptionsReferenceDisabled": true
},
"lastStage": {
"type": "enum",
"view": "crm:views/opportunity/fields/last-stage",
"customizationOptionsDisabled": true,
"customizationDefaultDisabled": true,
"customizationOptionsReferenceDisabled": true
},
"probability": {
"type": "int",
"min": 0,
"max": 100
},
"leadSource": {
"type": "enum",
"view": "crm:views/opportunity/fields/lead-source",
"customizationOptionsDisabled": true,
"optionsReference": "Lead.source"
},
"closeDate": {
"type": "date",
"required": true,
"audited": true
},
"description": {
"type": "text"
},
"campaign": {
"type": "link"
},
"originalLead": {
"type": "linkOne",
"readOnly": true,
"view": "views/fields/link-one"
},
"contactRole": {
"type": "enum",
"notStorable": true,
"orderDisabled": true,
"directUpdateDisabled": true,
"layoutMassUpdateDisabled": true,
"layoutDetailDisabled": true,
"layoutAvailabilityList": ["listForContact"],
"customizationDefaultDisabled": true,
"customizationRequiredDisabled": true,
"customizationIsSortedDisabled": true,
"customizationAuditedDisabled": true,
"customizationReadOnlyDisabled": true,
"customizationOptionsDisabled": true,
"converterClassName": "Espo\\Classes\\FieldConverters\\RelationshipRole",
"converterData": {
"column": "role",
"link": "contacts",
"relationName": "contactOpportunity",
"nearKey": "opportunityId"
},
"view": "crm:views/opportunity/fields/contact-role",
"optionsReference": "Contact.opportunityRole"
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"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
},
"account": {
"type": "belongsTo",
"entity": "Account",
"foreign": "opportunities"
},
"contacts": {
"type": "hasMany",
"entity": "Contact",
"foreign": "opportunities",
"additionalColumns": {
"role": {
"type": "varchar",
"len": 50
}
},
"columnAttributeMap": {
"role": "contactRole"
}
},
"contact": {
"type": "belongsTo",
"entity": "Contact",
"foreign": "opportunitiesPrimary"
},
"meetings": {
"type": "hasChildren",
"entity": "Meeting",
"foreign": "parent",
"audited": true
},
"calls": {
"type": "hasChildren",
"entity": "Call",
"foreign": "parent",
"audited": true
},
"tasks": {
"type": "hasChildren",
"entity": "Task",
"foreign": "parent",
"audited": true
},
"emails": {
"type": "hasChildren",
"entity": "Email",
"foreign": "parent",
"layoutRelationshipsDisabled": true
},
"documents": {
"type": "hasMany",
"entity": "Document",
"foreign": "opportunities",
"audited": true
},
"campaign": {
"type": "belongsTo",
"entity": "Campaign",
"foreign": "opportunities"
},
"originalLead": {
"type": "hasOne",
"entity": "Lead",
"foreign": "createdOpportunity"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"stage": {
"columns": ["stage", "deleted"]
},
"lastStage": {
"columns": ["lastStage"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"createdAt": {
"columns": ["createdAt", "deleted"]
},
"createdAtStage": {
"columns": ["createdAt", "stage"]
},
"createdAtId": {
"unique": true,
"columns": ["createdAt", "id"]
},
"assignedUserStage": {
"columns": ["assignedUserId", "stage"]
}
},
"optimisticConcurrencyControl": true
}

View File

@@ -0,0 +1,9 @@
{
"links": {
"articles": {
"type": "hasMany",
"entity": "KnowledgeBaseArticle",
"foreign": "portals"
}
}
}

View File

@@ -0,0 +1,49 @@
{
"fields": {
"remindAt": {
"type": "datetime",
"index": true
},
"startAt": {
"type": "datetime",
"index": true
},
"type": {
"type": "enum",
"options": [
"Popup",
"Email"
],
"maxLength": 36,
"index": true,
"default": "Popup"
},
"seconds": {
"type": "enumInt",
"options": [0, 60, 120, 300, 600, 900, 1800, 3600, 7200, 18000, 86400, 604800],
"default": 0
},
"user": {
"type": "link"
},
"entity": {
"type": "linkParent"
},
"isSubmitted": {
"type": "bool"
}
},
"links": {
"user": {
"type": "belongsTo",
"entity": "User"
},
"entity": {
"type": "belongsToParent"
}
},
"collection": {
"orderBy": "remindAt",
"order": "desc"
}
}

View File

@@ -0,0 +1,13 @@
{
"jobSchedulingMap": {
"ProcessMassEmail": "10,30,50 * * * *",
"ControlKnowledgeBaseArticleStatus": "10 1 * * *"
},
"jobs": {
"SubmitPopupReminders": {
"name": "Submit Popup Reminders",
"isSystem": true,
"scheduling": "* * * * *"
}
}
}

View File

@@ -0,0 +1,128 @@
{
"fields": {
"name": {
"type": "personName"
},
"salutationName": {
"type": "enum",
"options": ["", "Mr.", "Mrs.", "Ms.", "Dr.", "Drs."]
},
"firstName": {
"type": "varchar",
"maxLength": 100,
"default":""
},
"lastName": {
"type": "varchar",
"maxLength": 100,
"required": true,
"default":""
},
"title": {
"type": "varchar",
"maxLength": 100
},
"accountName": {
"type": "varchar",
"maxLength": 100
},
"website": {
"type": "url"
},
"address": {
"type": "address"
},
"addressStreet": {
"type": "text",
"maxLength": 255,
"dbType": "varchar"
},
"addressCity": {
"type": "varchar"
},
"addressState": {
"type": "varchar"
},
"addressCountry": {
"type": "varchar"
},
"addressPostalCode": {
"type": "varchar"
},
"emailAddress": {
"type": "email"
},
"phoneNumber": {
"type": "phone",
"typeList": ["Mobile", "Office", "Home", "Fax", "Other"],
"defaultType": "Mobile"
},
"doNotCall": {
"type": "bool"
},
"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",
"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": {
"firstName": {
"columns": ["firstName", "deleted"]
},
"name": {
"columns": ["firstName", "lastName"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
}
}
}

View File

@@ -0,0 +1,231 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"category": {
"type": "link",
"view": "views/fields/link-category-tree"
},
"entryCount": {
"type": "int",
"readOnly": true,
"notStorable": true,
"orderDisabled": true,
"layoutFiltersDisabled": true,
"layoutMassUpdateDisabled": true
},
"optedOutCount": {
"type": "int",
"readOnly": true,
"notStorable": true,
"orderDisabled": true,
"layoutListDisabled": true,
"layoutFiltersDisabled": true,
"layoutMassUpdateDisabled": true
},
"description": {
"type": "text"
},
"sourceCampaign": {
"type": "link",
"notStorable": true,
"orderDisabled": true,
"directAccessDisabled": true,
"customizationDisabled": true,
"layoutAvailabilityList": []
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"includingActionList": {
"type": "multiEnum",
"view": "crm:views/target-list/fields/including-action-list",
"layoutDetailDisabled": true,
"layoutFiltersDisabled": true,
"layoutLinkDisabled": true,
"notStorable": true,
"orderDisabled": true,
"utility": true
},
"excludingActionList": {
"type": "multiEnum",
"view": "crm:views/target-list/fields/including-action-list",
"layoutDetailDisabled": true,
"layoutFiltersDisabled": true,
"layoutLinkDisabled": true,
"notStorable": true,
"orderDisabled": true,
"utility": true
},
"targetStatus": {
"type": "enum",
"options": ["Listed", "Opted Out"],
"notStorable": true,
"orderDisabled": true,
"readOnly": true,
"layoutListDisabled": true,
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true,
"layoutFiltersDisabled": true,
"exportDisabled": true,
"importDisabled": true,
"view": "crm:views/target-list/fields/target-status"
},
"isOptedOut": {
"type": "bool",
"notStorable": true,
"orderDisabled": true,
"readOnly": true,
"layoutListDisabled": true,
"layoutDetailDisabled": true,
"layoutMassUpdateDisabled": true,
"layoutFiltersDisabled": true,
"exportDisabled": true,
"importDisabled": true
}
},
"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
},
"category": {
"type": "belongsTo",
"foreign": "category",
"entity": "TargetListCategory"
},
"campaigns": {
"type": "hasMany",
"entity": "Campaign",
"foreign": "targetLists",
"layoutRelationshipsDisabled": true
},
"massEmails": {
"type": "hasMany",
"entity": "MassEmail",
"foreign": "targetLists",
"layoutRelationshipsDisabled": true
},
"campaignsExcluding": {
"type": "hasMany",
"entity": "Campaign",
"foreign": "excludingTargetLists",
"layoutRelationshipsDisabled": true
},
"massEmailsExcluding": {
"type": "hasMany",
"entity": "MassEmail",
"foreign": "excludingTargetLists",
"layoutRelationshipsDisabled": true
},
"accounts": {
"type": "hasMany",
"entity": "Account",
"foreign": "targetLists",
"additionalColumns": {
"optedOut": {
"type": "bool"
}
},
"columnAttributeMap": {
"optedOut": "isOptedOut"
}
},
"contacts": {
"type": "hasMany",
"entity": "Contact",
"foreign": "targetLists",
"additionalColumns": {
"optedOut": {
"type": "bool"
}
},
"columnAttributeMap": {
"optedOut": "isOptedOut"
}
},
"leads": {
"type": "hasMany",
"entity": "Lead",
"foreign": "targetLists",
"additionalColumns": {
"optedOut": {
"type": "bool"
}
},
"columnAttributeMap": {
"optedOut": "isOptedOut"
}
},
"users": {
"type": "hasMany",
"entity": "User",
"foreign": "targetLists",
"additionalColumns": {
"optedOut": {
"type": "bool"
}
},
"columnAttributeMap": {
"optedOut": "isOptedOut"
}
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"createdAt": {
"columns": ["createdAt", "deleted"]
}
}
}

View File

@@ -0,0 +1,101 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true
},
"order": {
"type": "int",
"minValue": 1,
"readOnly": true,
"textFilterDisabled": true
},
"description": {
"type": "text"
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true
},
"modifiedBy": {
"type": "link",
"readOnly": true
},
"teams": {
"type": "linkMultiple"
},
"parent": {
"type": "link",
"view": "views/fields/link-category-tree"
},
"childList": {
"type": "jsonArray",
"notStorable": 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": "TargetListCategory"
},
"children": {
"type": "hasMany",
"foreign": "parent",
"entity": "TargetListCategory",
"readOnly": true
},
"targetLists": {
"type": "hasMany",
"foreign": "category",
"entity": "TargetList"
}
},
"collection": {
"orderBy": "parent",
"order": "asc"
},
"additionalTables": {
"TargetListCategoryPath": {
"attributes": {
"id": {
"type": "id",
"dbType": "integer",
"len": 11,
"autoincrement": true
},
"ascendorId": {
"type": "foreignId",
"index": true
},
"descendorId" : {
"type": "foreignId",
"index": true
}
}
}
},
"repositoryClassName": "Espo\\Core\\Repositories\\CategoryTree"
}

View File

@@ -0,0 +1,228 @@
{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"status": {
"type": "enum",
"options": [
"Not Started",
"Started",
"Completed",
"Canceled",
"Deferred"
],
"style": {
"Completed": "success",
"Started": "primary",
"Canceled": "info"
},
"default": "Not Started",
"displayAsLabel": true,
"labelType": "state",
"audited": true,
"fieldManagerAdditionalParamList": [
{
"name": "notActualOptions",
"view": "views/admin/field-manager/fields/not-actual-options"
}
],
"notActualOptions": ["Completed", "Canceled", "Deferred"],
"customizationOptionsReferenceDisabled": true
},
"priority": {
"type": "enum",
"options": [
"Low",
"Normal",
"High",
"Urgent"
],
"default": "Normal",
"displayAsLabel": true,
"style": {
"High": "warning",
"Urgent": "danger"
},
"audited": true,
"customizationOptionsReferenceDisabled": true
},
"dateStart": {
"type": "datetimeOptional",
"before": "dateEnd"
},
"dateEnd": {
"type": "datetimeOptional",
"after": "dateStart",
"view": "crm:views/task/fields/date-end",
"audited": true
},
"dateStartDate": {
"type": "date",
"utility": true
},
"dateEndDate": {
"type": "date",
"utility": true
},
"dateCompleted": {
"type": "datetime",
"readOnly": true
},
"isOverdue": {
"type": "bool",
"readOnly": true,
"notStorable": true,
"orderDisabled": true,
"view": "crm:views/task/fields/is-overdue",
"utility": true
},
"reminders": {
"type": "jsonArray",
"notStorable": true,
"orderDisabled": true,
"view": "crm:views/meeting/fields/reminders",
"dateField": "dateEnd",
"validatorClassNameList": [
"Espo\\Modules\\Crm\\Classes\\FieldValidators\\Event\\Reminders\\Valid",
"Espo\\Modules\\Crm\\Classes\\FieldValidators\\Event\\Reminders\\MaxCount"
],
"duplicateIgnore": true,
"dynamicLogicDisabled": true
},
"description": {
"type": "text",
"preview": true,
"attachmentField": "attachments",
"cutHeight": 500
},
"parent": {
"type": "linkParent",
"entityList": ["Account", "Contact", "Lead", "Opportunity", "Case"]
},
"account": {
"type": "link",
"readOnly": true,
"customizationReadOnlyDisabled": true
},
"contact": {
"type": "link",
"readOnly": true,
"customizationReadOnlyDisabled": true
},
"originalEmail": {
"type": "link",
"notStorable": true,
"entity": "Email",
"utility": true,
"orderDisabled": true,
"directAccessDisabled": true
},
"createdAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"modifiedAt": {
"type": "datetime",
"readOnly": true,
"fieldManagerParamList": [
"useNumericFormat"
]
},
"createdBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"modifiedBy": {
"type": "link",
"readOnly": true,
"view": "views/fields/user",
"fieldManagerParamList": []
},
"assignedUser": {
"type": "link",
"required": true,
"view": "views/fields/assigned-user"
},
"teams": {
"type": "linkMultiple",
"view": "views/fields/teams"
},
"attachments": {
"type": "attachmentMultiple",
"sourceList": ["Document"]
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"assignedUser": {
"type": "belongsTo",
"entity": "User",
"foreign": "tasks"
},
"teams": {
"type": "hasMany",
"entity": "Team",
"relationName": "entityTeam",
"layoutRelationshipsDisabled": true
},
"parent": {
"type": "belongsToParent",
"foreign": "tasks"
},
"account": {
"type": "belongsTo",
"entity": "Account"
},
"contact": {
"type": "belongsTo",
"entity": "Contact"
},
"email": {
"type": "belongsTo",
"entity": "Email",
"foreign": "tasks",
"noForeignName": true
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
},
"indexes": {
"dateStartStatus": {
"columns": ["dateStart", "status"]
},
"dateEndStatus": {
"columns": ["dateEnd", "status"]
},
"dateStart": {
"columns": ["dateStart", "deleted"]
},
"status": {
"columns": ["status", "deleted"]
},
"assignedUser": {
"columns": ["assignedUserId", "deleted"]
},
"assignedUserStatus": {
"columns": ["assignedUserId", "status"]
}
},
"repositoryClassName": "Espo\\Core\\Repositories\\Event",
"optimisticConcurrencyControl": true
}

View File

@@ -0,0 +1,22 @@
{
"fields": {
"targetListIsOptedOut": {
"type": "bool",
"notStorable": true,
"orderDisabled": true,
"readOnly": true,
"utility": true,
"fieldManagerParamList": []
}
},
"links": {
"targetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "users",
"columnAttributeMap": {
"optedOut": "targetListIsOptedOut"
}
}
}
}