<?php
namespace App\DataFixtures;
use App\Entity\Conversation;
use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Persistence\ObjectManager;
use App\Entity\User;
use App\Entity\Image;
use App\Entity\Tag;
use App\Entity\Processing;
use App\Entity\BackendUser;
use Symfony\Component\Process\Process;
class AppFixtures extends Fixture
{
public function load(ObjectManager $manager): void
{
// --- User ---
$name = [
"Lena Müller",
"Jonas Schmidt",
"Sophia Wagner",
"Timo Fischer",
"Laura Berger"
];
foreach($name as $name){
$user = new User();
$user->setName($name);
$user->setAge(8);
$user->setEmail('beispiel@email.com');
$users[] = $user;
$manager->persist($user);
}
// --- Tags ---
// $boat = new Tag();
// $boat->setName('boot');
// $boat->setType("vehicle");
// $manager->persist($boat);
// $tag = $boat;
// --- direction and option tags ---
// angepasst
$tagData = [
['name' => 'submarine', 'type' => 'content'],
['name' => 'steamboat', 'type' => 'content'],
['name' => 'freighter', 'type' => 'content'],
['name' => 'pirateboat', 'type' => 'content'],
['name' => 'hotairballoon', 'type' => 'content'],
['name' => 'sailingboat', 'type' => 'content'],
['name' => 'seanimal', 'type' => 'content'],
['name' => 'helicopter', 'type' => 'content'],
['name' => 'left', 'type' => 'direction'],
['name' => 'right', 'type' => 'direction']
];
$tags = [];
foreach ($tagData as $data) {
$tag = new Tag();
$tag->setName($data['name']);
$tag->setType($data['type']);
$tags[] = $tag;
$manager->persist($tag);
$manager->flush();
}
// --- Images ---
$date = new \DateTime('now');
$processes = array(
0 =>1,
1 =>1,
2 =>1,
3 =>2,
4 =>2,
);
$images = [];
//directory
$dir= '/upload/';
$imagelist = [
$dir."015_Mathilda.png",
$dir."009_Caspar.png",
$dir."025_Marta.png",
$dir."005_Schiff_Aimee.png",
$dir."020_Ophelia.png",
];
for($i=0;$i<5;$i++){
$image = new Image();
$image->setImageFile($imagelist[$i]);
$image->setFkUser($users[$i]);
$image->setUploaded($date);
$image->addTag($tags[1]); // angepasst
$manager->persist($image);
$images[] = $image;
$process = new Processing();
$process->setQuality($processes[$i]);
$process->setDate($date);
$process->settype("new");
$process->addFkImage($image);
$manager->persist($process);
}
// --- conversions ---
$con1 = new Conversation();
$con1->setMessage("Sehr geehrte(r) Benutzer, bei Ihrem Bild haben wir noch eine Rückfrage. Bitte teilen Sie uns mit, um welche Art von Schiff es sich handelt (z.b. Segelboot). Viele Grüße");
$con1->setType("out");
$con1->setSend(new \DateTime('now'));
$con1->setFkImage($images[0]);
$manager->persist($con1);
$con2 = new Conversation();
$con2->setMessage("Liebes Segelparadenteam. Es handelt sich um ein Schwebendes Luftschiff mit Düsenantrieb. Lieben Gruß");
$con2->setType("in");
$con2->setSend(new \DateTime('now'));
$con2->setFkImage($images[0]);
$manager->persist($con2);
$manager->flush();
}
}