Initial commit: CloudOps infrastructure platform

This commit is contained in:
root
2026-04-09 19:58:57 +02:00
commit 1166a52f26
7762 changed files with 839452 additions and 0 deletions

View File

@@ -0,0 +1,71 @@
<?php
namespace Mautic\InstallBundle\InstallFixtures\ORM;
use Doctrine\Bundle\FixturesBundle\FixtureGroupInterface;
use Doctrine\Common\DataFixtures\AbstractFixture;
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
use Doctrine\Persistence\ObjectManager;
use Mautic\LeadBundle\Entity\LeadField;
use Mautic\LeadBundle\Model\FieldModel;
use Symfony\Contracts\Translation\TranslatorInterface;
class LeadFieldData extends AbstractFixture implements OrderedFixtureInterface, FixtureGroupInterface
{
public function __construct(
private TranslatorInterface $translator,
) {
}
public static function getGroups(): array
{
return ['group_install', 'group_mautic_install_data'];
}
/**
* @throws \Doctrine\DBAL\Schema\SchemaException
*/
public function load(ObjectManager $manager): void
{
$fieldGroups['lead'] = FieldModel::$coreFields;
$fieldGroups['company'] = FieldModel::$coreCompanyFields;
foreach ($fieldGroups as $fields) {
$order = 1;
foreach ($fields as $alias => $field) {
$type = $field['type'] ?? 'text';
$entity = new LeadField();
$entity->setLabel($this->translator->trans('mautic.lead.field.'.$alias, [], 'fixtures'));
$entity->setGroup($field['group'] ?? 'core');
$entity->setOrder($order);
$entity->setAlias($alias);
$entity->setIsRequired($field['required'] ?? false);
$entity->setType($type);
$entity->setObject($field['object']);
$entity->setIsUniqueIdentifer(!empty($field['unique']));
$entity->setProperties($field['properties'] ?? []);
$entity->setIsFixed(!empty($field['fixed']));
$entity->setIsListable(!empty($field['listable']));
$entity->setIsShortVisible(!empty($field['short']));
if (isset($field['default'])) {
$entity->setDefaultValue($field['default']);
}
$manager->persist($entity);
$manager->flush();
if (!$this->hasReference('leadfield-'.$alias)) {
$this->addReference('leadfield-'.$alias, $entity);
}
++$order;
}
}
}
public function getOrder()
{
return 4;
}
}

View File

@@ -0,0 +1,47 @@
<?php
namespace Mautic\InstallBundle\InstallFixtures\ORM;
use Doctrine\Bundle\FixturesBundle\FixtureGroupInterface;
use Doctrine\Common\DataFixtures\AbstractFixture;
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
use Doctrine\Persistence\ObjectManager;
use Mautic\CoreBundle\Helper\CsvHelper;
use Mautic\CoreBundle\Helper\Serializer;
use Mautic\ReportBundle\Entity\Report;
class LoadReportData extends AbstractFixture implements OrderedFixtureInterface, FixtureGroupInterface
{
public static function getGroups(): array
{
return ['group_install', 'group_mautic_install_data'];
}
public function load(ObjectManager $manager): void
{
$reports = CsvHelper::csv_to_array(__DIR__.'/fakereportdata.csv');
foreach ($reports as $count => $rows) {
$report = new Report();
$key = $count + 1;
foreach ($rows as $col => $val) {
if ('NULL' != $val) {
$setter = 'set'.ucfirst($col);
if (in_array($col, ['columns', 'filters', 'graphs', 'tableOrder'])) {
$val = Serializer::decode(stripslashes($val));
}
$report->$setter($val);
}
}
$manager->persist($report);
$this->setReference('report-'.$key, $report);
}
$manager->flush();
}
public function getOrder()
{
return 5;
}
}

View File

@@ -0,0 +1,44 @@
<?php
namespace Mautic\InstallBundle\InstallFixtures\ORM;
use Doctrine\Bundle\FixturesBundle\FixtureGroupInterface;
use Doctrine\Common\DataFixtures\AbstractFixture;
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
use Doctrine\Persistence\ObjectManager;
use Mautic\UserBundle\Entity\Role;
use Symfony\Contracts\Translation\TranslatorInterface;
class RoleData extends AbstractFixture implements OrderedFixtureInterface, FixtureGroupInterface
{
public function __construct(
private TranslatorInterface $translator,
) {
}
public static function getGroups(): array
{
return ['group_install', 'group_mautic_install_data'];
}
public function load(ObjectManager $manager): void
{
if ($this->hasReference('admin-role')) {
return;
}
$role = new Role();
$role->setName($this->translator->trans('mautic.user.role.admin.name', [], 'fixtures'));
$role->setDescription($this->translator->trans('mautic.user.role.admin.description', [], 'fixtures'));
$role->setIsAdmin(1);
$manager->persist($role);
$manager->flush();
$this->addReference('admin-role', $role);
}
public function getOrder()
{
return 1;
}
}

View File

@@ -0,0 +1,6 @@
"name","description","system","source","columns","filters","tableOrder","graphs"
"Visits published Pages",NULL,1,"page.hits","a:7:{i:0;s:11:\"ph.date_hit\";i:1;s:6:\"ph.url\";i:2;s:12:\"ph.url_title\";i:3;s:10:\"ph.referer\";i:4;s:12:\"i.ip_address\";i:5;s:7:\"ph.city\";i:6;s:10:\"ph.country\";}","a:2:{i:0;a:3:{s:6:\"column\";s:7:\"ph.code\";s:9:\"condition\";s:2:\"eq\";s:5:\"value\";s:3:\"200\";}i:1;a:3:{s:6:\"column\";s:14:\"p.is_published\";s:9:\"condition\";s:2:\"eq\";s:5:\"value\";s:1:\"1\";}}","a:1:{i:0;a:2:{s:6:\"column\";s:11:\"ph.date_hit\";s:9:\"direction\";s:3:\"ASC\";}}","a:8:{i:0;s:35:\"mautic.page.graph.line.time.on.site\";i:1;s:27:\"mautic.page.graph.line.hits\";i:2;s:38:\"mautic.page.graph.pie.new.vs.returning\";i:3;s:31:\"mautic.page.graph.pie.languages\";i:4;s:34:\"mautic.page.graph.pie.time.on.site\";i:5;s:27:\"mautic.page.table.referrers\";i:6;s:30:\"mautic.page.table.most.visited\";i:7;s:37:\"mautic.page.table.most.visited.unique\";}"
"Downloads of all Assets",NULL,1,"asset.downloads","a:7:{i:0;s:16:\"ad.date_download\";i:1;s:7:\"a.title\";i:2;s:12:\"i.ip_address\";i:3;s:11:\"l.firstname\";i:4;s:10:\"l.lastname\";i:5;s:7:\"l.email\";i:6;s:4:\"a.id\";}","a:1:{i:0;a:3:{s:6:\"column\";s:14:\"a.is_published\";s:9:\"condition\";s:2:\"eq\";s:5:\"value\";s:1:\"1\";}}","a:1:{i:0;a:2:{s:6:\"column\";s:16:\"ad.date_download\";s:9:\"direction\";s:3:\"ASC\";}}","a:4:{i:0;s:33:\"mautic.asset.graph.line.downloads\";i:1;s:31:\"mautic.asset.graph.pie.statuses\";i:2;s:34:\"mautic.asset.table.most.downloaded\";i:3;s:32:\"mautic.asset.table.top.referrers\";}"
"Submissions of published Forms",NULL,1,"form.submissions","a:0:{}","a:1:{i:1;a:3:{s:6:\"column\";s:14:\"f.is_published\";s:9:\"condition\";s:2:\"eq\";s:5:\"value\";s:1:\"1\";}}","a:0:{}","a:3:{i:0;s:34:\"mautic.form.graph.line.submissions\";i:1;s:32:\"mautic.form.table.most.submitted\";i:2;s:31:\"mautic.form.table.top.referrers\";}"
"All Emails",NULL,1,"email.stats","a:5:{i:0;s:12:\"es.date_sent\";i:1;s:12:\"es.date_read\";i:2;s:9:\"e.subject\";i:3;s:16:\"es.email_address\";i:4;s:4:\"e.id\";}","a:1:{i:0;a:3:{s:6:\"column\";s:14:\"e.is_published\";s:9:\"condition\";s:2:\"eq\";s:5:\"value\";s:1:\"1\";}}","a:1:{i:0;a:2:{s:6:\"column\";s:12:\"es.date_sent\";s:9:\"direction\";s:3:\"ASC\";}}","a:6:{i:0;s:29:\"mautic.email.graph.line.stats\";i:1;s:42:\"mautic.email.graph.pie.ignored.read.failed\";i:2;s:35:\"mautic.email.table.most.emails.read\";i:3;s:35:\"mautic.email.table.most.emails.sent\";i:4;s:43:\"mautic.email.table.most.emails.read.percent\";i:5;s:37:\"mautic.email.table.most.emails.failed\";}"
"Leads and Points",NULL,1,"lead.pointlog","a:7:{i:0;s:13:\"lp.date_added\";i:1;s:7:\"lp.type\";i:2;s:13:\"lp.event_name\";i:3;s:11:\"l.firstname\";i:4;s:10:\"l.lastname\";i:5;s:7:\"l.email\";i:6;s:8:\"lp.delta\";}","a:0:{}","a:1:{i:0;a:2:{s:6:\"column\";s:13:\"lp.date_added\";s:9:\"direction\";s:3:\"ASC\";}}","a:6:{i:0;s:29:\"mautic.lead.graph.line.points\";i:1;s:29:\"mautic.lead.table.most.points\";i:2;s:29:\"mautic.lead.table.top.actions\";i:3;s:28:\"mautic.lead.table.top.cities\";i:4;s:31:\"mautic.lead.table.top.countries\";i:5;s:28:\"mautic.lead.table.top.events\";}"
Can't render this file because it contains an unexpected character in line 2 and column 61.