From 26a0c860e23e4694d2956f0dcc84a8e31db8132c Mon Sep 17 00:00:00 2001 From: Marc Ducobu Date: Mon, 10 Nov 2014 09:52:38 +0100 Subject: [PATCH] Adding Fixtures : CustomField for Report --- DataFixtures/ORM/LoadCustomField.php | 66 ++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 DataFixtures/ORM/LoadCustomField.php diff --git a/DataFixtures/ORM/LoadCustomField.php b/DataFixtures/ORM/LoadCustomField.php new file mode 100644 index 000000000..2ae38da93 --- /dev/null +++ b/DataFixtures/ORM/LoadCustomField.php @@ -0,0 +1,66 @@ + + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +namespace Chill\PersonBundle\DataFixtures\ORM; + +use Doctrine\Common\DataFixtures\AbstractFixture; +use Doctrine\Common\DataFixtures\OrderedFixtureInterface; +use Doctrine\Common\Persistence\ObjectManager; +use Chill\CustomFieldsBundle\Entity\CustomField; + +/** + * Load CustomField for Report into database + */ +class LoadCustomField extends AbstractFixture implements OrderedFixtureInterface +{ + public function getOrder() + { + return 15001; + } + + public function load(ObjectManager $manager) + { + echo "loading CustomField...\n"; + + $cFTypes = [ + array('type' => 'text', 'options' => array('maxLength' => '255')), + array('type' => 'text', 'options' => array('maxLength' => '1000')), + array('type' => 'text', 'options' => array('maxLength' => '2000')), + ]; + + for($i=0; $i <= 25; $i++) { + echo "CustomField {$i}\n"; + $cFType = $cFTypes[rand(0,sizeof($cFTypes) - 1)]; + + $customField = (new CustomField()) + ->setSlug("cf_report_{$i}") + ->setType($cFType['type']) + ->setOptions($cFType['options']) + ->setName(array("fr" => "CustomField {$i}")) + ->setOrdering(rand(0,1000) / 1000) + ->setCustomFieldsGroup($this->getReference('cf_group_report_'.(rand(0,3)))) + ; + + $manager->persist($customField); + } + $manager->flush(); + } +} \ No newline at end of file