Files
espocrm/tests/unit/testData/Utils/Metadata/ormMetadata.php
2016-09-13 16:20:42 +03:00

4950 lines
104 KiB
PHP

<?php
return array (
'Attachment' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'type' =>
array (
'type' => 'varchar',
'len' => 36,
),
'size' =>
array (
'type' => 'int',
'len' => 11,
),
'parent' =>
array (
'type' => 'linkParent',
'notStorable' => true,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentId' =>
array (
'type' => 'foreignId',
'index' => 'parent',
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentType' =>
array (
'type' => 'foreignType',
'notnull' => false,
'index' => 'parent',
'dbType' => 'varchar',
'len' => 255,
),
'parentName' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'Currency' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'rate' =>
array (
'type' => 'float',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
),
'relations' =>
array (
),
),
'Email' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'subject' =>
array (
'type' => 'varchar',
'notStorable' => true,
'len' => 255,
),
'fromName' =>
array (
'type' => 'varchar',
'len' => 255,
),
'from' =>
array (
'type' => 'varchar',
'notStorable' => true,
'len' => 255,
),
'to' =>
array (
'type' => 'varchar',
'notStorable' => true,
'len' => 255,
),
'cc' =>
array (
'type' => 'varchar',
'notStorable' => true,
'len' => 255,
),
'bcc' =>
array (
'type' => 'varchar',
'notStorable' => true,
'len' => 255,
),
'bodyPlain' =>
array (
'type' => 'text',
),
'body' =>
array (
'type' => 'text',
),
'isHtml' =>
array (
'type' => 'bool',
'default' => true,
),
'status' =>
array (
'type' => 'varchar',
'len' => 255,
),
'parent' =>
array (
'type' => 'linkParent',
'notStorable' => true,
),
'dateSent' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'bccEmailAddressesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'bccEmailAddressesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'ccEmailAddressesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'ccEmailAddressesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'toEmailAddressesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'toEmailAddressesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'fromEmailAddressName' =>
array (
'type' => 'foreign',
'relation' => 'fromEmailAddress',
'foreign' => 'name',
),
'fromEmailAddressId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'attachmentsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'attachmentsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentId' =>
array (
'type' => 'foreignId',
'index' => 'parent',
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentType' =>
array (
'type' => 'foreignType',
'notnull' => false,
'index' => 'parent',
'dbType' => 'varchar',
'len' => 255,
),
'parentName' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'bccEmailAddresses' =>
array (
'type' => 'manyMany',
'entity' => 'EmailAddress',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'emailId',
1 => 'emailAddressId',
),
'relationName' => 'EmailEmailAddress',
'conditions' =>
array (
'addressType' => 'bcc',
),
'additionalColumns' =>
array (
'addressType' =>
array (
'type' => 'varchar',
'len' => '4',
),
),
),
'ccEmailAddresses' =>
array (
'type' => 'manyMany',
'entity' => 'EmailAddress',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'emailId',
1 => 'emailAddressId',
),
'relationName' => 'EmailEmailAddress',
'conditions' =>
array (
'addressType' => 'cc',
),
'additionalColumns' =>
array (
'addressType' =>
array (
'type' => 'varchar',
'len' => '4',
),
),
),
'toEmailAddresses' =>
array (
'type' => 'manyMany',
'entity' => 'EmailAddress',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'emailId',
1 => 'emailAddressId',
),
'relationName' => 'EmailEmailAddress',
'conditions' =>
array (
'addressType' => 'to',
),
'additionalColumns' =>
array (
'addressType' =>
array (
'type' => 'varchar',
'len' => '4',
),
),
),
'fromEmailAddress' =>
array (
'type' => 'belongsTo',
'entity' => 'EmailAddress',
'key' => 'fromEmailAddressId',
'foreignKey' => 'id',
),
'attachments' =>
array (
'type' => 'hasChildren',
'entity' => 'Attachment',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Email',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'EmailAddress' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'lower' =>
array (
'type' => 'varchar',
'len' => 255,
),
'invalid' =>
array (
'type' => 'bool',
'default' => false,
),
'optOut' =>
array (
'type' => 'bool',
'default' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
),
'relations' =>
array (
),
),
'EmailTemplate' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'subject' =>
array (
'type' => 'varchar',
'len' => 255,
),
'body' =>
array (
'type' => 'text',
),
'isHtml' =>
array (
'type' => 'bool',
'default' => true,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'attachmentsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'attachmentsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'EmailTemplate',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'attachments' =>
array (
'type' => 'hasChildren',
'entity' => 'Attachment',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
),
),
'Job' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'status' =>
array (
'type' => 'varchar',
'default' => 'Pending',
'len' => 255,
),
'executeTime' =>
array (
'type' => 'datetime',
),
'serviceName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'method' =>
array (
'type' => 'varchar',
'len' => 100,
),
'data' =>
array (
'type' => 'text',
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'scheduledJobName' =>
array (
'type' => 'foreign',
'relation' => 'scheduledJob',
'foreign' => 'name',
),
'scheduledJobId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
),
'relations' =>
array (
'scheduledJob' =>
array (
'type' => 'belongsTo',
'entity' => 'ScheduledJob',
'key' => 'scheduledJobId',
'foreignKey' => 'id',
),
),
),
'Note' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'message' =>
array (
'type' => 'text',
),
'data' =>
array (
'type' => 'text',
),
'type' =>
array (
'type' => 'varchar',
'len' => 255,
),
'parent' =>
array (
'type' => 'linkParent',
'notStorable' => true,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'attachmentsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'attachmentsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentId' =>
array (
'type' => 'foreignId',
'index' => 'parent',
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentType' =>
array (
'type' => 'foreignType',
'notnull' => false,
'index' => 'parent',
'dbType' => 'varchar',
'len' => 255,
),
'parentName' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'attachments' =>
array (
'type' => 'hasChildren',
'entity' => 'Attachment',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'Notification' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'data' =>
array (
'type' => 'text',
),
'type' =>
array (
'type' => 'varchar',
'len' => 255,
),
'read' =>
array (
'type' => 'bool',
'default' => false,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'userName' =>
array (
'type' => 'foreign',
'relation' => 'user',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'userId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
),
'relations' =>
array (
'user' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'userId',
'foreignKey' => 'id',
),
),
),
'OutboundEmail' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'server' =>
array (
'type' => 'varchar',
'len' => 255,
),
'port' =>
array (
'type' => 'int',
'default' => '25',
'len' => 11,
),
'auth' =>
array (
'type' => 'bool',
'default' => true,
),
'security' =>
array (
'type' => 'varchar',
'len' => 255,
),
'username' =>
array (
'type' => 'varchar',
'len' => 255,
),
'password' =>
array (
'type' => 'password',
),
'fromName' =>
array (
'type' => 'varchar',
'len' => 255,
),
'fromAddress' =>
array (
'type' => 'varchar',
'len' => 255,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'userName' =>
array (
'type' => 'foreign',
'relation' => 'user',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'userId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
),
'relations' =>
array (
'user' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'userId',
'foreignKey' => 'id',
),
),
),
'Preferences' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'timeZone' =>
array (
'type' => 'varchar',
'len' => 255,
),
'dateFormat' =>
array (
'type' => 'varchar',
'default' => 'MM/DD/YYYY',
'len' => 255,
),
'timeFormat' =>
array (
'type' => 'varchar',
'default' => 'HH:mm',
'len' => 255,
),
'weekStart' =>
array (
'type' => 'int',
'default' => '0',
'len' => 11,
),
'thousandSeparator' =>
array (
'type' => 'varchar',
'default' => ',',
'len' => 255,
),
'decimalMark' =>
array (
'type' => 'varchar',
'default' => '.',
'len' => 255,
),
'defaultCurrency' =>
array (
'type' => 'varchar',
'default' => 'USD',
'len' => 255,
),
'dashboardLayout' =>
array (
'type' => 'text',
),
'dashletOptions' =>
array (
'type' => 'text',
),
'smtpServer' =>
array (
'type' => 'varchar',
'len' => 255,
),
'smtpPort' =>
array (
'type' => 'int',
'default' => '25',
'len' => 11,
),
'smtpAuth' =>
array (
'type' => 'bool',
'default' => false,
),
'smtpSecurity' =>
array (
'type' => 'varchar',
'len' => 255,
),
'smtpUsername' =>
array (
'type' => 'varchar',
'len' => 255,
),
'smtpPassword' =>
array (
'type' => 'password',
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
),
'relations' =>
array (
),
),
'Role' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 150,
),
'data' =>
array (
'type' => 'text',
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'usersIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'usersNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'roleTeam',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'roleId',
1 => 'teamId',
),
),
'users' =>
array (
'type' => 'manyMany',
'entity' => 'User',
'relationName' => 'roleUser',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'roleId',
1 => 'userId',
),
),
),
),
'ScheduledJob' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'job' =>
array (
'type' => 'varchar',
'len' => 255,
),
'status' =>
array (
'type' => 'varchar',
'len' => 255,
),
'scheduling' =>
array (
'type' => 'varchar',
'len' => 255,
),
'lastRun' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'logIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'logNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
),
'relations' =>
array (
'log' =>
array (
'type' => 'hasMany',
'entity' => 'ScheduledJobLogRecord',
'foreignKey' => 'scheduledJobId',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'ScheduledJobLogRecord' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'status' =>
array (
'type' => 'varchar',
'len' => 255,
),
'executionTime' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'scheduledJobName' =>
array (
'type' => 'foreign',
'relation' => 'scheduledJob',
'foreign' => 'name',
),
'scheduledJobId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
),
'relations' =>
array (
'scheduledJob' =>
array (
'type' => 'belongsTo',
'entity' => 'ScheduledJob',
'key' => 'scheduledJobId',
'foreignKey' => 'id',
),
),
),
'Settings' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'useCache' =>
array (
'type' => 'bool',
'default' => true,
),
'recordsPerPage' =>
array (
'type' => 'int',
'default' => '20',
'len' => 11,
),
'recordsPerPageSmall' =>
array (
'type' => 'int',
'default' => '10',
'len' => 11,
),
'timeZone' =>
array (
'type' => 'varchar',
'len' => 255,
),
'dateFormat' =>
array (
'type' => 'varchar',
'default' => 'MM/DD/YYYY',
'len' => 255,
),
'timeFormat' =>
array (
'type' => 'varchar',
'default' => 'HH:mm',
'len' => 255,
),
'weekStart' =>
array (
'type' => 'int',
'default' => '0',
'len' => 11,
),
'thousandSeparator' =>
array (
'type' => 'varchar',
'default' => ',',
'len' => 255,
),
'decimalMark' =>
array (
'type' => 'varchar',
'default' => '.',
'len' => 255,
),
'currencyList' =>
array (
'type' => 'json_array',
'default' => '["USD","EUR"]',
),
'defaultCurrency' =>
array (
'type' => 'varchar',
'default' => 'USD',
'len' => 255,
),
'outboundEmailIsShared' =>
array (
'type' => 'bool',
'default' => false,
),
'outboundEmailFromName' =>
array (
'type' => 'varchar',
'default' => 'EspoCRM',
'len' => 255,
),
'outboundEmailFromAddress' =>
array (
'type' => 'varchar',
'default' => 'crm@example.com',
'len' => 255,
),
'smtpServer' =>
array (
'type' => 'varchar',
'len' => 255,
),
'smtpPort' =>
array (
'type' => 'int',
'default' => '25',
'len' => 11,
),
'smtpAuth' =>
array (
'type' => 'bool',
'default' => true,
),
'smtpSecurity' =>
array (
'type' => 'varchar',
'len' => 255,
),
'smtpUsername' =>
array (
'type' => 'varchar',
'len' => 255,
),
'smtpPassword' =>
array (
'type' => 'password',
),
'tabList' =>
array (
'type' => 'json_array',
'default' => '["Account","Contact","Lead","Opportunity","Calendar","Meeting","Call","Task","Case","Prospect"]',
),
'quickCreateList' =>
array (
'type' => 'json_array',
'default' => '["Account","Contact","Lead","Opportunity","Meeting","Call","Task","Case","Prospect"]',
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
),
'relations' =>
array (
),
),
'Team' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 100,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'rolesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'rolesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'usersIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'usersNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'roles' =>
array (
'type' => 'manyMany',
'entity' => 'Role',
'relationName' => 'roleTeam',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'teamId',
1 => 'roleId',
),
),
'users' =>
array (
'type' => 'manyMany',
'entity' => 'User',
'relationName' => 'teamUser',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'teamId',
1 => 'userId',
),
),
),
),
'User' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
'select' => 'TRIM(CONCAT(user.first_name, \' \', user.last_name))',
'where' =>
array (
'LIKE' => '(user.first_name LIKE \'{text}\' OR user.last_name LIKE \'{text}\' OR CONCAT(user.first_name, \' \', user.last_name) LIKE \'{text}\')',
),
'orderBy' => 'user.first_name {direction}, user.last_name {direction}',
),
'isAdmin' =>
array (
'type' => 'bool',
'default' => false,
),
'userName' =>
array (
'type' => 'varchar',
'len' => 50,
'unique' => true,
),
'salutationName' =>
array (
'type' => 'varchar',
'len' => 255,
),
'firstName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'lastName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'password' =>
array (
'type' => 'password',
),
'title' =>
array (
'type' => 'varchar',
'len' => 100,
),
'emailAddress' =>
array (
'type' => 'email',
'notStorable' => true,
'select' => 'email_address.name',
'where' =>
array (
'LIKE' => 'email_address.name LIKE \'{text}\'',
'=' => 'email_address.name = \'{text}\'',
),
'orderBy' => 'email_address.name {direction}',
),
'phone' =>
array (
'type' => 'varchar',
'len' => 50,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'callsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'rolesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'rolesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'defaultTeamName' =>
array (
'type' => 'foreign',
'relation' => 'defaultTeam',
'foreign' => 'name',
),
'defaultTeamId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
),
'relations' =>
array (
'calls' =>
array (
'type' => 'manyMany',
'entity' => 'Call',
'relationName' => 'callUser',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'userId',
1 => 'callId',
),
),
'meetings' =>
array (
'type' => 'manyMany',
'entity' => 'Meeting',
'relationName' => 'meetingUser',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'userId',
1 => 'meetingId',
),
),
'roles' =>
array (
'type' => 'manyMany',
'entity' => 'Role',
'relationName' => 'roleUser',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'userId',
1 => 'roleId',
),
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'teamUser',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'userId',
1 => 'teamId',
),
),
'defaultTeam' =>
array (
'type' => 'belongsTo',
'entity' => 'Team',
'key' => 'defaultTeamId',
'foreignKey' => 'id',
),
'emailAddresses' =>
array (
'type' => 'manyMany',
'entity' => 'EmailAddress',
'relationName' => 'entityEmailAddress',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'email_address_id',
),
'conditions' =>
array (
'entityType' => 'User',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
'primary' =>
array (
'type' => 'bool',
'default' => false,
),
),
),
),
),
'Account' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'website' =>
array (
'type' => 'varchar',
'len' => 255,
),
'emailAddress' =>
array (
'type' => 'email',
'notStorable' => true,
'select' => 'email_address.name',
'where' =>
array (
'LIKE' => 'email_address.name LIKE \'{text}\'',
'=' => 'email_address.name = \'{text}\'',
),
'orderBy' => 'email_address.name {direction}',
),
'phone' =>
array (
'type' => 'varchar',
'len' => 255,
),
'fax' =>
array (
'type' => 'varchar',
'len' => 255,
),
'type' =>
array (
'type' => 'varchar',
'len' => 255,
),
'industry' =>
array (
'type' => 'varchar',
'len' => 255,
),
'sicCode' =>
array (
'type' => 'varchar',
'len' => 40,
),
'billingAddressStreet' =>
array (
'type' => 'varchar',
'len' => 255,
),
'billingAddressCity' =>
array (
'type' => 'varchar',
'len' => 255,
),
'billingAddressState' =>
array (
'type' => 'varchar',
'len' => 255,
),
'billingAddressCountry' =>
array (
'type' => 'varchar',
'len' => 255,
),
'billingAddressPostalCode' =>
array (
'type' => 'varchar',
'len' => 255,
),
'shippingAddressStreet' =>
array (
'type' => 'varchar',
'len' => 255,
),
'shippingAddressCity' =>
array (
'type' => 'varchar',
'len' => 255,
),
'shippingAddressState' =>
array (
'type' => 'varchar',
'len' => 255,
),
'shippingAddressCountry' =>
array (
'type' => 'varchar',
'len' => 255,
),
'shippingAddressPostalCode' =>
array (
'type' => 'varchar',
'len' => 255,
),
'description' =>
array (
'type' => 'text',
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'emailsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'emailsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'tasksIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'tasksNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'casesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'casesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'opportunitiesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'opportunitiesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'isFollowed' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'emails' =>
array (
'type' => 'hasChildren',
'entity' => 'Email',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'tasks' =>
array (
'type' => 'hasChildren',
'entity' => 'Task',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'calls' =>
array (
'type' => 'hasChildren',
'entity' => 'Call',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'meetings' =>
array (
'type' => 'hasChildren',
'entity' => 'Meeting',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'cases' =>
array (
'type' => 'hasMany',
'entity' => 'Case',
'foreignKey' => 'accountId',
),
'opportunities' =>
array (
'type' => 'hasMany',
'entity' => 'Opportunity',
'foreignKey' => 'accountId',
),
'contacts' =>
array (
'type' => 'hasMany',
'entity' => 'Contact',
'foreignKey' => 'accountId',
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Account',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
'emailAddresses' =>
array (
'type' => 'manyMany',
'entity' => 'EmailAddress',
'relationName' => 'entityEmailAddress',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'email_address_id',
),
'conditions' =>
array (
'entityType' => 'Account',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
'primary' =>
array (
'type' => 'bool',
'default' => false,
),
),
),
),
),
'Call' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'status' =>
array (
'type' => 'varchar',
'default' => 'Planned',
'len' => 255,
),
'dateStart' =>
array (
'type' => 'datetime',
),
'dateEnd' =>
array (
'type' => 'datetime',
),
'duration' =>
array (
'type' => 'int',
'default' => '300',
'len' => 11,
),
'direction' =>
array (
'type' => 'varchar',
'default' => 'Outbound',
'len' => 255,
),
'description' =>
array (
'type' => 'text',
),
'parent' =>
array (
'type' => 'linkParent',
'notStorable' => true,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'leadsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'leadsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'usersIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'usersNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentId' =>
array (
'type' => 'foreignId',
'index' => 'parent',
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentType' =>
array (
'type' => 'foreignType',
'notnull' => false,
'index' => 'parent',
'dbType' => 'varchar',
'len' => 255,
),
'parentName' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'leads' =>
array (
'type' => 'manyMany',
'entity' => 'Lead',
'relationName' => 'callLead',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'callId',
1 => 'leadId',
),
),
'contacts' =>
array (
'type' => 'manyMany',
'entity' => 'Contact',
'relationName' => 'callContact',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'callId',
1 => 'contactId',
),
),
'users' =>
array (
'type' => 'manyMany',
'entity' => 'User',
'relationName' => 'callUser',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'callId',
1 => 'userId',
),
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Call',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'Case' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'number' =>
array (
'type' => 'int',
'autoincrement' => true,
'unique' => true,
'len' => 11,
),
'status' =>
array (
'type' => 'varchar',
'default' => 'New',
'len' => 255,
),
'priority' =>
array (
'type' => 'varchar',
'default' => 'Normal',
'len' => 255,
),
'type' =>
array (
'type' => 'varchar',
'len' => 255,
),
'description' =>
array (
'type' => 'text',
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'emailsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'emailsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'tasksIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'tasksNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactName' =>
array (
'type' => 'foreign',
'relation' => 'contact',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'contactId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'accountName' =>
array (
'type' => 'foreign',
'relation' => 'account',
'foreign' => 'name',
),
'accountId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'isFollowed' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'emails' =>
array (
'type' => 'hasChildren',
'entity' => 'Email',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'tasks' =>
array (
'type' => 'hasChildren',
'entity' => 'Task',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'calls' =>
array (
'type' => 'hasChildren',
'entity' => 'Call',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'meetings' =>
array (
'type' => 'hasChildren',
'entity' => 'Meeting',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'contact' =>
array (
'type' => 'belongsTo',
'entity' => 'Contact',
'key' => 'contactId',
'foreignKey' => 'id',
),
'account' =>
array (
'type' => 'belongsTo',
'entity' => 'Account',
'key' => 'accountId',
'foreignKey' => 'id',
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Case',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'Contact' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
'select' => 'TRIM(CONCAT(contact.first_name, \' \', contact.last_name))',
'where' =>
array (
'LIKE' => '(contact.first_name LIKE \'{text}\' OR contact.last_name LIKE \'{text}\' OR CONCAT(contact.first_name, \' \', contact.last_name) LIKE \'{text}\')',
),
'orderBy' => 'contact.first_name {direction}, contact.last_name {direction}',
),
'salutationName' =>
array (
'type' => 'varchar',
'len' => 255,
),
'firstName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'lastName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'title' =>
array (
'type' => 'varchar',
'len' => 100,
),
'description' =>
array (
'type' => 'text',
),
'emailAddress' =>
array (
'type' => 'email',
'notStorable' => true,
'select' => 'email_address.name',
'where' =>
array (
'LIKE' => 'email_address.name LIKE \'{text}\'',
'=' => 'email_address.name = \'{text}\'',
),
'orderBy' => 'email_address.name {direction}',
),
'phone' =>
array (
'type' => 'varchar',
'len' => 50,
),
'fax' =>
array (
'type' => 'varchar',
'len' => 50,
),
'doNotCall' =>
array (
'type' => 'bool',
'default' => false,
),
'phoneOffice' =>
array (
'type' => 'varchar',
'len' => 50,
),
'addressStreet' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressCity' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressState' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressCountry' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressPostalCode' =>
array (
'type' => 'varchar',
'len' => 255,
),
'accountType' =>
array (
'type' => 'foreign',
'relation' => 'account',
'foreign' => 'type',
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'tasksIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'tasksNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'casesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'casesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'opportunitiesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'opportunitiesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'accountName' =>
array (
'type' => 'foreign',
'relation' => 'account',
'foreign' => 'name',
),
'accountId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'isFollowed' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'tasks' =>
array (
'type' => 'hasChildren',
'entity' => 'Task',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'calls' =>
array (
'type' => 'manyMany',
'entity' => 'Call',
'relationName' => 'callContact',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'contactId',
1 => 'callId',
),
),
'meetings' =>
array (
'type' => 'manyMany',
'entity' => 'Meeting',
'relationName' => 'contactMeeting',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'contactId',
1 => 'meetingId',
),
),
'cases' =>
array (
'type' => 'hasMany',
'entity' => 'Case',
'foreignKey' => 'contactId',
),
'opportunities' =>
array (
'type' => 'manyMany',
'entity' => 'Opportunity',
'relationName' => 'contactOpportunity',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'contactId',
1 => 'opportunityId',
),
),
'account' =>
array (
'type' => 'belongsTo',
'entity' => 'Account',
'key' => 'accountId',
'foreignKey' => 'id',
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Contact',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
'emailAddresses' =>
array (
'type' => 'manyMany',
'entity' => 'EmailAddress',
'relationName' => 'entityEmailAddress',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'email_address_id',
),
'conditions' =>
array (
'entityType' => 'Contact',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
'primary' =>
array (
'type' => 'bool',
'default' => false,
),
),
),
),
),
'InboundEmail' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'status' =>
array (
'type' => 'varchar',
'len' => 255,
),
'host' =>
array (
'type' => 'varchar',
'len' => 255,
),
'port' =>
array (
'type' => 'varchar',
'default' => '143',
'len' => 255,
),
'username' =>
array (
'type' => 'varchar',
'len' => 255,
),
'password' =>
array (
'type' => 'password',
),
'monitoredFolders' =>
array (
'type' => 'varchar',
'default' => 'INBOX',
'len' => 255,
),
'trashFolder' =>
array (
'type' => 'varchar',
'default' => 'INBOX.Trash',
'len' => 255,
),
'createCase' =>
array (
'type' => 'bool',
'default' => false,
),
'caseDistribution' =>
array (
'type' => 'varchar',
'default' => 'Direct-Assignment',
'len' => 255,
),
'reply' =>
array (
'type' => 'bool',
'default' => false,
),
'replyFromAddress' =>
array (
'type' => 'varchar',
'len' => 255,
),
'replyFromName' =>
array (
'type' => 'varchar',
'len' => 255,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'replyEmailTemplateName' =>
array (
'type' => 'foreign',
'relation' => 'replyEmailTemplate',
'foreign' => 'name',
),
'replyEmailTemplateId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'teamName' =>
array (
'type' => 'foreign',
'relation' => 'team',
'foreign' => 'name',
),
'teamId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'assignToUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignToUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignToUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
),
'relations' =>
array (
'replyEmailTemplate' =>
array (
'type' => 'belongsTo',
'entity' => 'EmailTemplate',
'key' => 'replyEmailTemplateId',
'foreignKey' => 'id',
),
'team' =>
array (
'type' => 'belongsTo',
'entity' => 'Team',
'key' => 'teamId',
'foreignKey' => 'id',
),
'assignToUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignToUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'Lead' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
'select' => 'TRIM(CONCAT(lead.first_name, \' \', lead.last_name))',
'where' =>
array (
'LIKE' => '(lead.first_name LIKE \'{text}\' OR lead.last_name LIKE \'{text}\' OR CONCAT(lead.first_name, \' \', lead.last_name) LIKE \'{text}\')',
),
'orderBy' => 'lead.first_name {direction}, lead.last_name {direction}',
),
'salutationName' =>
array (
'type' => 'varchar',
'len' => 255,
),
'firstName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'lastName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'title' =>
array (
'type' => 'varchar',
'len' => 100,
),
'status' =>
array (
'type' => 'varchar',
'default' => 'New',
'len' => 255,
),
'source' =>
array (
'type' => 'varchar',
'len' => 255,
),
'opportunityAmountCurrency' =>
array (
'type' => 'varchar',
'len' => 255,
),
'opportunityAmount' =>
array (
'type' => 'float',
'notnull' => false,
),
'website' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressStreet' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressCity' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressState' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressCountry' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressPostalCode' =>
array (
'type' => 'varchar',
'len' => 255,
),
'emailAddress' =>
array (
'type' => 'email',
'notStorable' => true,
'select' => 'email_address.name',
'where' =>
array (
'LIKE' => 'email_address.name LIKE \'{text}\'',
'=' => 'email_address.name = \'{text}\'',
),
'orderBy' => 'email_address.name {direction}',
),
'phone' =>
array (
'type' => 'varchar',
'len' => 50,
),
'fax' =>
array (
'type' => 'varchar',
'len' => 50,
),
'phoneOffice' =>
array (
'type' => 'varchar',
'len' => 50,
),
'doNotCall' =>
array (
'type' => 'bool',
'default' => false,
),
'description' =>
array (
'type' => 'text',
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'accountName' =>
array (
'type' => 'varchar',
'len' => 255,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'createdOpportunityName' =>
array (
'type' => 'foreign',
'relation' => 'createdOpportunity',
'foreign' => 'name',
),
'createdOpportunityId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdContactName' =>
array (
'type' => 'foreign',
'relation' => 'createdContact',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdContactId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdAccountName' =>
array (
'type' => 'foreign',
'relation' => 'createdAccount',
'foreign' => 'name',
),
'createdAccountId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'tasksIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'tasksNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'opportunitiesIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'opportunitiesNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'isFollowed' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'createdOpportunity' =>
array (
'type' => 'belongsTo',
'entity' => 'Opportunity',
'key' => 'createdOpportunityId',
'foreignKey' => 'id',
),
'createdContact' =>
array (
'type' => 'belongsTo',
'entity' => 'Contact',
'key' => 'createdContactId',
'foreignKey' => 'id',
),
'createdAccount' =>
array (
'type' => 'belongsTo',
'entity' => 'Account',
'key' => 'createdAccountId',
'foreignKey' => 'id',
),
'tasks' =>
array (
'type' => 'hasChildren',
'entity' => 'Task',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'calls' =>
array (
'type' => 'manyMany',
'entity' => 'Call',
'relationName' => 'callLead',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'leadId',
1 => 'callId',
),
),
'meetings' =>
array (
'type' => 'manyMany',
'entity' => 'Meeting',
'relationName' => 'leadMeeting',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'leadId',
1 => 'meetingId',
),
),
'opportunities' =>
array (
'type' => 'hasMany',
'entity' => 'Opportunity',
'foreignKey' => 'id',
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Lead',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
'emailAddresses' =>
array (
'type' => 'manyMany',
'entity' => 'EmailAddress',
'relationName' => 'entityEmailAddress',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'email_address_id',
),
'conditions' =>
array (
'entityType' => 'Lead',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
'primary' =>
array (
'type' => 'bool',
'default' => false,
),
),
),
),
),
'Meeting' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'status' =>
array (
'type' => 'varchar',
'default' => 'Planned',
'len' => 255,
),
'dateStart' =>
array (
'type' => 'datetime',
),
'dateEnd' =>
array (
'type' => 'datetime',
),
'duration' =>
array (
'type' => 'int',
'default' => '3600',
'len' => 11,
),
'description' =>
array (
'type' => 'text',
),
'parent' =>
array (
'type' => 'linkParent',
'notStorable' => true,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'leadsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'leadsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'usersIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'usersNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentId' =>
array (
'type' => 'foreignId',
'index' => 'parent',
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentType' =>
array (
'type' => 'foreignType',
'notnull' => false,
'index' => 'parent',
'dbType' => 'varchar',
'len' => 255,
),
'parentName' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'leads' =>
array (
'type' => 'manyMany',
'entity' => 'Lead',
'relationName' => 'leadMeeting',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'meetingId',
1 => 'leadId',
),
),
'contacts' =>
array (
'type' => 'manyMany',
'entity' => 'Contact',
'relationName' => 'contactMeeting',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'meetingId',
1 => 'contactId',
),
),
'users' =>
array (
'type' => 'manyMany',
'entity' => 'User',
'relationName' => 'meetingUser',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'meetingId',
1 => 'userId',
),
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Meeting',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'Opportunity' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'amountCurrency' =>
array (
'type' => 'varchar',
'len' => 255,
),
'amount' =>
array (
'type' => 'float',
'notnull' => false,
),
'stage' =>
array (
'type' => 'varchar',
'default' => 'Prospecting',
'len' => 255,
),
'probability' =>
array (
'type' => 'int',
'len' => 11,
),
'leadSource' =>
array (
'type' => 'varchar',
'len' => 255,
),
'closeDate' =>
array (
'type' => 'date',
),
'description' =>
array (
'type' => 'text',
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'emailsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'emailsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'tasksIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'tasksNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'callsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'meetingsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'contactsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'accountName' =>
array (
'type' => 'foreign',
'relation' => 'account',
'foreign' => 'name',
),
'accountId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'isFollowed' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'emails' =>
array (
'type' => 'hasChildren',
'entity' => 'Email',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'tasks' =>
array (
'type' => 'hasChildren',
'entity' => 'Task',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'calls' =>
array (
'type' => 'hasChildren',
'entity' => 'Call',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'meetings' =>
array (
'type' => 'hasChildren',
'entity' => 'Meeting',
'foreignKey' => 'parentId',
'foreignType' => 'parentType',
),
'contacts' =>
array (
'type' => 'manyMany',
'entity' => 'Contact',
'relationName' => 'contactOpportunity',
'key' => 'id',
'foreignKey' => 'id',
'midKeys' =>
array (
0 => 'opportunityId',
1 => 'contactId',
),
),
'account' =>
array (
'type' => 'belongsTo',
'entity' => 'Account',
'key' => 'accountId',
'foreignKey' => 'id',
),
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Opportunity',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
'Prospect' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'notStorable' => true,
'select' => 'TRIM(CONCAT(prospect.first_name, \' \', prospect.last_name))',
'where' =>
array (
'LIKE' => '(prospect.first_name LIKE \'{text}\' OR prospect.last_name LIKE \'{text}\' OR CONCAT(prospect.first_name, \' \', prospect.last_name) LIKE \'{text}\')',
),
'orderBy' => 'prospect.first_name {direction}, prospect.last_name {direction}',
),
'salutationName' =>
array (
'type' => 'varchar',
'len' => 255,
),
'firstName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'lastName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'title' =>
array (
'type' => 'varchar',
'len' => 100,
),
'accountName' =>
array (
'type' => 'varchar',
'len' => 100,
),
'website' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressStreet' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressCity' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressState' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressCountry' =>
array (
'type' => 'varchar',
'len' => 255,
),
'addressPostalCode' =>
array (
'type' => 'varchar',
'len' => 255,
),
'emailAddress' =>
array (
'type' => 'email',
'notStorable' => true,
'select' => 'email_address.name',
'where' =>
array (
'LIKE' => 'email_address.name LIKE \'{text}\'',
'=' => 'email_address.name = \'{text}\'',
),
'orderBy' => 'email_address.name {direction}',
),
'phone' =>
array (
'type' => 'varchar',
'len' => 50,
),
'fax' =>
array (
'type' => 'varchar',
'len' => 50,
),
'phoneOffice' =>
array (
'type' => 'varchar',
'len' => 50,
),
'doNotCall' =>
array (
'type' => 'bool',
'default' => false,
),
'description' =>
array (
'type' => 'text',
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Prospect',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
'emailAddresses' =>
array (
'type' => 'manyMany',
'entity' => 'EmailAddress',
'relationName' => 'entityEmailAddress',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'email_address_id',
),
'conditions' =>
array (
'entityType' => 'Prospect',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
'primary' =>
array (
'type' => 'bool',
'default' => false,
),
),
),
),
),
'Task' =>
array (
'fields' =>
array (
'id' =>
array (
'type' => 'id',
'dbType' => 'varchar',
'len' => '24',
),
'name' =>
array (
'type' => 'varchar',
'len' => 255,
),
'status' =>
array (
'type' => 'varchar',
'len' => 255,
),
'priority' =>
array (
'type' => 'varchar',
'default' => 'Normal',
'len' => 255,
),
'dateStart' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'dateEnd' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'isOverdue' =>
array (
'type' => 'base',
'notStorable' => true,
),
'description' =>
array (
'type' => 'text',
),
'parent' =>
array (
'type' => 'linkParent',
'notStorable' => true,
),
'createdAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'modifiedAt' =>
array (
'type' => 'datetime',
'notnull' => false,
),
'deleted' =>
array (
'type' => 'bool',
'default' => false,
),
'assignedUserName' =>
array (
'type' => 'foreign',
'relation' => 'assignedUser',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'assignedUserId' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'modifiedByName' =>
array (
'type' => 'foreign',
'relation' => 'modifiedBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'modifiedById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'createdByName' =>
array (
'type' => 'foreign',
'relation' => 'createdBy',
'foreign' =>
array (
0 => 'firstName',
1 => ' ',
2 => 'lastName',
),
),
'createdById' =>
array (
'type' => 'foreignId',
'index' => true,
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentId' =>
array (
'type' => 'foreignId',
'index' => 'parent',
'dbType' => 'varchar',
'len' => '24',
'notnull' => false,
),
'parentType' =>
array (
'type' => 'foreignType',
'notnull' => false,
'index' => 'parent',
'dbType' => 'varchar',
'len' => 255,
),
'parentName' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsIds' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
'teamsNames' =>
array (
'type' => 'varchar',
'notStorable' => true,
),
),
'relations' =>
array (
'teams' =>
array (
'type' => 'manyMany',
'entity' => 'Team',
'relationName' => 'entityTeam',
'midKeys' =>
array (
0 => 'entity_id',
1 => 'team_id',
),
'conditions' =>
array (
'entityType' => 'Task',
),
'additionalColumns' =>
array (
'entityType' =>
array (
'type' => 'varchar',
'len' => 100,
),
),
),
'assignedUser' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'assignedUserId',
'foreignKey' => 'id',
),
'modifiedBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'modifiedById',
'foreignKey' => 'id',
),
'createdBy' =>
array (
'type' => 'belongsTo',
'entity' => 'User',
'key' => 'createdById',
'foreignKey' => 'id',
),
),
),
);
?>