/** * @param ClassMetadata $metadata */ public static function loadMetadata(ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('lead_tags')->setCustomRepositoryClass('Mautic\\LeadBundle\\Entity\\TagRepository')->addIndex(array('tag'), 'lead_tag_search'); $builder->addId(); $builder->addField('tag', 'string'); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('oauth1_nonces')->setCustomRepositoryClass('Mautic\\ApiBundle\\Entity\\oAuth1\\NonceRepository'); $builder->createField('nonce', 'string')->isPrimaryKey()->build(); $builder->addField('timestamp', 'string'); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('companies')->setCustomRepositoryClass('Mautic\\LeadBundle\\Entity\\CompanyRepository'); $builder->createField('id', 'integer')->isPrimaryKey()->generatedValue()->build(); $builder->createManyToOne('owner', 'Mautic\\UserBundle\\Entity\\User')->addJoinColumn('owner_id', 'id', true, false, 'SET NULL')->build(); }
/** * @param ClassMetadata $builder * @param $entityClass */ protected static function addVariantMetadata(ClassMetadataBuilder $builder, $entityClass) { $builder->createManyToOne('variantParent', $entityClass)->inversedBy('variantChildren')->addJoinColumn('variant_parent_id', 'id', true, false, 'CASCADE')->build(); $builder->createOneToMany('variantChildren', $entityClass)->setIndexBy('id')->setOrderBy(['isPublished' => 'DESC'])->mappedBy('variantParent')->build(); $builder->createField('variantSettings', 'array')->columnName('variant_settings')->nullable()->build(); $builder->createField('variantStartDate', 'datetime')->columnName('variant_start_date')->nullable()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('ip_addresses')->setCustomRepositoryClass('Mautic\\CoreBundle\\Entity\\IpAddressRepository')->addIndex(['ip_address'], 'ip_search'); $builder->addId(); $builder->createField('ipAddress', 'string')->columnName('ip_address')->length(45)->build(); $builder->createField('ipDetails', 'array')->columnName('ip_details')->nullable()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('push_ids')->setCustomRepositoryClass('Mautic\\NotificationBundle\\Entity\\PushIDRepository'); $builder->createField('id', 'integer')->isPrimaryKey()->generatedValue()->build(); $builder->createField('pushID', 'string')->columnName('push_id')->nullable(false)->build(); $builder->createManyToOne('lead', 'Mautic\\LeadBundle\\Entity\\Lead')->addJoinColumn('lead_id', 'id', true, false, 'SET NULL')->inversedBy('pushIds')->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('monitoring_leads')->setCustomRepositoryClass('MauticPlugin\\MauticSocialBundle\\Entity\\LeadRepository'); $builder->createManyToOne('monitor', 'Monitoring')->isPrimaryKey()->addJoinColumn('monitor_id', 'id', false, false, 'CASCADE')->build(); $builder->addLead(false, 'CASCADE', true); $builder->addNamedField('dateAdded', 'datetime', 'date_added'); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('point_triggers')->setCustomRepositoryClass('Mautic\\PointBundle\\Entity\\TriggerRepository'); $builder->addIdColumns(); $builder->addPublishDates(); $builder->addField('points', 'integer'); $builder->createField('color', 'string')->length(7)->build(); $builder->createField('triggerExistingLeads', 'boolean')->columnName('trigger_existing_leads')->build(); $builder->addCategory(); $builder->createOneToMany('events', 'TriggerEvent')->setIndexBy('id')->setOrderBy(array('order' => 'ASC'))->mappedBy('trigger')->cascadeAll()->fetchExtraLazy()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('points')->setCustomRepositoryClass('Mautic\\PointBundle\\Entity\\PointRepository')->addIndex(array('type'), 'point_type_search'); $builder->addIdColumns(); $builder->createField('type', 'string')->length(50)->build(); $builder->addPublishDates(); $builder->addField('delta', 'integer'); $builder->addField('properties', 'array'); $builder->createOneToMany('log', 'LeadPointLog')->mappedBy('point')->cascadePersist()->cascadeRemove()->fetchExtraLazy()->build(); $builder->addCategory(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('widgets')->setCustomRepositoryClass('Mautic\\DashboardBundle\\Entity\\WidgetRepository'); $builder->addIdColumns('name', false); $builder->addField('type', 'string'); $builder->addField('width', 'integer'); $builder->addField('height', 'integer'); $builder->createField('cacheTimeout', 'integer')->columnName('cache_timeout')->nullable()->build(); $builder->createField('ordering', 'integer')->nullable()->build(); $builder->createField('params', 'array')->nullable()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('monitoring')->setCustomRepositoryClass('MauticPlugin\\MauticSocialBundle\\Entity\\MonitoringRepository')->addLifecycleEvent('cleanMonitorData', 'preUpdate')->addLifecycleEvent('cleanMonitorData', 'prePersist'); $builder->addCategory(); $builder->addIdColumns('title'); $builder->addNullableField('lists', 'array'); $builder->addNamedField('networkType', 'string', 'network_type', true); $builder->addField('revision', 'integer'); $builder->addNullableField('stats', 'array'); $builder->addNullableField('properties', 'array'); $builder->addPublishDates(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('notifications')->setCustomRepositoryClass('Mautic\\CoreBundle\\Entity\\NotificationRepository')->addIndex(['is_read'], 'notification_read_status')->addIndex(['type'], 'notification_type')->addIndex(['is_read', 'user_id'], 'notification_user_read_status'); $builder->addId(); $builder->createManyToOne('user', 'Mautic\\UserBundle\\Entity\\User')->addJoinColumn('user_id', 'id', false, false, 'CASCADE')->build(); $builder->createField('type', 'string')->nullable()->length(25)->build(); $builder->createField('header', 'string')->nullable()->build(); $builder->addField('message', 'text'); $builder->addDateAdded(); $builder->createField('iconClass', 'string')->columnName('icon_class')->nullable()->build(); $builder->createField('isRead', 'boolean')->columnName('is_read')->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('lead_points_change_log')->setCustomRepositoryClass('Mautic\\LeadBundle\\Entity\\PointsChangeLogRepository')->addIndex(['date_added'], 'point_date_added'); $builder->addId(); $builder->addLead(false, 'CASCADE', false, 'pointsChangeLog'); $builder->addIpAddress(); $builder->createField('type', 'text')->length(50)->build(); $builder->createField('eventName', 'string')->columnName('event_name')->build(); $builder->createField('actionName', 'string')->columnName('action_name')->build(); $builder->addField('delta', 'integer'); $builder->addDateAdded(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('form_submissions')->setCustomRepositoryClass('Mautic\\FormBundle\\Entity\\SubmissionRepository')->addIndex(['tracking_id'], 'form_submission_tracking_search')->addIndex(['date_submitted'], 'form_date_submitted'); $builder->addId(); $builder->createManyToOne('form', 'Form')->inversedBy('submissions')->addJoinColumn('form_id', 'id', false, false, 'CASCADE')->build(); $builder->addIpAddress(); $builder->addLead(true, 'SET NULL'); $builder->createField('trackingId', 'string')->columnName('tracking_id')->nullable()->build(); $builder->createField('dateSubmitted', 'datetime')->columnName('date_submitted')->build(); $builder->addField('referer', 'text'); $builder->createManyToOne('page', 'Mautic\\PageBundle\\Entity\\Page')->addJoinColumn('page_id', 'id', true, false, 'SET NULL')->fetchExtraLazy()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setMappedSuperClass(); $builder->createField('isPublished', 'boolean')->columnName('is_published')->build(); $builder->addDateAdded(true); $builder->createField('createdBy', 'integer')->columnName('created_by')->nullable()->build(); $builder->createField('createdByUser', 'string')->columnName('created_by_user')->nullable()->build(); $builder->createField('dateModified', 'datetime')->columnName('date_modified')->nullable()->build(); $builder->createField('modifiedBy', 'integer')->columnName('modified_by')->nullable()->build(); $builder->createField('modifiedByUser', 'string')->columnName('modified_by_user')->nullable()->build(); $builder->createField('checkedOut', 'datetime')->columnName('checked_out')->nullable()->build(); $builder->createField('checkedOutBy', 'integer')->columnName('checked_out_by')->nullable()->build(); $builder->createField('checkedOutByUser', 'string')->columnName('checked_out_by_user')->nullable()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('oauth1_request_tokens')->addIndex(array('token'), 'oauth1_request_token_search'); $builder->createField('id', 'integer')->isPrimaryKey()->generatedValue()->build(); $builder->createManyToOne('consumer', 'Consumer')->addJoinColumn('consumer_id', 'id', false, false, 'CASCADE')->build(); $builder->createManyToOne('user', 'Mautic\\UserBundle\\Entity\\User')->addJoinColumn('user_id', 'id', true, false, 'CASCADE')->build(); $builder->addField('token', 'string'); $builder->addField('secret', 'string'); $builder->createField('expiresAt', 'bigint')->columnName('expires_at')->build(); $builder->addField('verifier', 'string'); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('plugin_integration_settings')->setCustomRepositoryClass('Mautic\\PluginBundle\\Entity\\IntegrationRepository'); $builder->createField('id', 'integer')->isPrimaryKey()->generatedValue()->build(); $builder->createManyToOne('plugin', 'Plugin')->inversedBy('integrations')->addJoinColumn('plugin_id', 'id', true, false, 'CASCADE')->build(); $builder->addField('name', 'string'); $builder->createField('isPublished', 'boolean')->columnName('is_published')->build(); $builder->createField('supportedFeatures', 'array')->columnName('supported_features')->nullable()->build(); $builder->createField('apiKeys', 'array')->columnName('api_keys')->build(); $builder->createField('featureSettings', 'array')->columnName('feature_settings')->nullable()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('oauth2_authcodes'); $builder->createField('id', 'integer')->isPrimaryKey()->generatedValue()->build(); $builder->createManyToOne('client', 'Client')->addJoinColumn('client_id', 'id', false, false, 'CASCADE')->build(); $builder->createManyToOne('user', 'Mautic\\UserBundle\\Entity\\User')->addJoinColumn('user_id', 'id', false, false, 'CASCADE')->build(); $builder->createField('token', 'string')->unique()->build(); $builder->createField('expiresAt', 'bigint')->columnName('expires_at')->nullable()->build(); $builder->createField('scope', 'string')->nullable()->build(); $builder->createField('redirectUri', 'text')->columnName('redirect_uri')->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('lead_donotcontact')->setCustomRepositoryClass('Mautic\\LeadBundle\\Entity\\DoNotContactRepository')->addIndex(['reason'], 'dnc_reason_search'); $builder->addId(); $builder->addLead(true, 'CASCADE', false, 'doNotContact'); $builder->addDateAdded(); $builder->createField('reason', 'smallint')->build(); $builder->createField('channel', 'string')->build(); $builder->addNamedField('channelId', 'integer', 'channel_id', true); $builder->createField('comments', 'text')->nullable()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('reports')->setCustomRepositoryClass('Mautic\\ReportBundle\\Entity\\ReportRepository'); $builder->addIdColumns(); $builder->addField('system', 'boolean'); $builder->addField('source', 'string'); $builder->createField('columns', 'array')->nullable()->build(); $builder->createField('filters', 'array')->nullable()->build(); $builder->createField('tableOrder', 'array')->columnName('table_order')->nullable()->build(); $builder->createField('graphs', 'array')->nullable()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('page_redirects')->setCustomRepositoryClass('Mautic\\PageBundle\\Entity\\RedirectRepository'); $builder->addId(); $builder->createField('redirectId', 'string')->columnName('redirect_id')->length(25)->build(); $builder->addField('url', 'text'); $builder->addField('hits', 'integer'); $builder->createField('uniqueHits', 'integer')->columnName('unique_hits')->build(); $builder->createOneToMany('trackables', 'Trackable')->mappedBy('redirect')->fetchExtraLazy()->build(); // @deprecated to be removed in 2.0 $builder->addNamedField('email', 'integer', 'email_id', true); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('webhooks')->setCustomRepositoryClass('Mautic\\WebhookBundle\\Entity\\WebhookRepository'); // id columns $builder->addIdColumns(); // categories $builder->addCategory(); // 1:M for events $builder->createOneToMany('events', 'Event')->orphanRemoval()->setIndexBy('event_type')->mappedBy('webhook')->cascadePersist()->build(); // 1:M for queues $builder->createOneToMany('queues', 'WebhookQueue')->mappedBy('webhook')->fetchExtraLazy()->cascadePersist()->build(); // 1:M for logs $builder->createOneToMany('logs', 'Log')->setOrderBy(array('dateAdded' => 'DESC'))->fetchExtraLazy()->mappedBy('webhook')->cascadePersist()->build(); // status code $builder->createField('webhookUrl', 'string')->columnName('webhook_url')->length(255)->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('lead_stages_change_log')->setCustomRepositoryClass('Mautic\\LeadBundle\\Entity\\StagesChangeLogRepository'); $builder->addId(); $builder->addLead(false, 'CASCADE', false, 'stageChangeLog'); $builder->createField('eventName', 'string')->columnName('event_name')->build(); $builder->createField('actionName', 'string')->columnName('action_name')->build(); $builder->createManyToOne('stage', 'Mautic\\StageBundle\\Entity\\Stage')->inversedBy('stageChangeLog')->addJoinColumn('stage_id', 'id', true, false, 'CASCADE')->build(); $builder->addDateAdded(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('page_redirects')->setCustomRepositoryClass('Mautic\\PageBundle\\Entity\\RedirectRepository'); $builder->addId(); $builder->createField('redirectId', 'string')->columnName('redirect_id')->length(25)->build(); $builder->addField('url', 'text'); $builder->addField('hits', 'integer'); $builder->createField('uniqueHits', 'integer')->columnName('unique_hits')->build(); $builder->createManyToOne('email', 'Mautic\\EmailBundle\\Entity\\Email')->addJoinColumn('email_id', 'id', true, false, 'SET NULL')->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('plugins')->setCustomRepositoryClass('Mautic\\PluginBundle\\Entity\\PluginRepository')->addUniqueConstraint(['bundle'], 'unique_bundle'); $builder->addIdColumns(); $builder->createField('isMissing', 'boolean')->columnName('is_missing')->build(); $builder->createField('bundle', 'string')->length(50)->build(); $builder->createField('version', 'string')->nullable()->build(); $builder->createField('author', 'string')->nullable()->build(); $builder->createOneToMany('integrations', 'Integration')->setIndexBy('id')->mappedBy('plugin')->fetchExtraLazy()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('point_trigger_events')->setCustomRepositoryClass('Mautic\\PointBundle\\Entity\\TriggerEventRepository')->addIndex(['type'], 'trigger_type_search'); $builder->addIdColumns(); $builder->createField('type', 'string')->length(50)->build(); $builder->createField('order', 'integer')->columnName('action_order')->build(); $builder->addField('properties', 'array'); $builder->createManyToOne('trigger', 'Trigger')->inversedBy('events')->addJoinColumn('trigger_id', 'id', false, false, 'CASCADE')->build(); $builder->createOneToMany('log', 'LeadTriggerLog')->mappedBy('event')->cascadePersist()->cascadeRemove()->fetchExtraLazy()->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('lead_frequencyrules')->setCustomRepositoryClass('Mautic\\LeadBundle\\Entity\\FrequencyRuleRepository')->addIndex(['channel'], 'channel_frequency'); $builder->addId(); $builder->addLead(false, 'CASCADE', false, 'frequencyRules'); $builder->addDateAdded(); $builder->addNamedField('frequencyNumber', 'smallint', 'frequency_number'); $builder->createField('frequencyTime', 'string')->columnName('frequency_time')->length(25)->build(); $builder->createField('channel', 'string')->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('oauth2_clients')->setCustomRepositoryClass('Mautic\\ApiBundle\\Entity\\oAuth2\\ClientRepository')->addIndex(array('random_id'), 'client_id_search'); $builder->addIdColumns('name', false); $builder->createManyToMany('users', 'Mautic\\UserBundle\\Entity\\User')->setJoinTable('oauth2_user_client_xref')->addInverseJoinColumn('user_id', 'id', false, false, 'CASCADE')->addJoinColumn('client_id', 'id', false, false, 'CASCADE')->fetchExtraLazy()->build(); $builder->createField('randomId', 'string')->columnName('random_id')->build(); $builder->addField('secret', 'string'); $builder->createField('redirectUris', 'array')->columnName('redirect_uris')->build(); $builder->createField('allowedGrantTypes', 'array')->columnName('allowed_grant_types')->build(); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('permissions')->setCustomRepositoryClass('Mautic\\UserBundle\\Entity\\PermissionRepository')->addUniqueConstraint(['bundle', 'name', 'role_id'], 'unique_perm'); $builder->addId(); $builder->createField('bundle', 'string')->length(50)->build(); $builder->createField('name', 'string')->length(50)->build(); $builder->createManyToOne('role', 'Role')->inversedBy('permissions')->addJoinColumn('role_id', 'id', false, false, 'CASCADE')->build(); $builder->addField('bitwise', 'integer'); }
/** * @param ORM\ClassMetadata $metadata */ public static function loadMetadata(ORM\ClassMetadata $metadata) { $builder = new ClassMetadataBuilder($metadata); $builder->setTable('form_actions')->setCustomRepositoryClass('Mautic\\FormBundle\\Entity\\ActionRepository')->addIndex(array('type'), 'form_action_type_search'); $builder->addIdColumns(); $builder->createField('type', 'string')->length(50)->build(); $builder->createField('order', 'integer')->columnName('action_order')->build(); $builder->addField('properties', 'array'); $builder->createManyToOne('form', 'Form')->inversedBy('actions')->addJoinColumn('form_id', 'id', false, false, 'CASCADE')->build(); }