![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mautic.corals.io/app/bundles/InstallBundle/InstallFixtures/ORM/ |
<?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; } }