diff --git a/.docs/phpstorm_cli_xdebug_config.png b/.docs/phpstorm_cli_xdebug_config.png new file mode 100644 index 0000000..fd045a0 Binary files /dev/null and b/.docs/phpstorm_cli_xdebug_config.png differ diff --git a/README.md b/README.md index 0ba3b33..8ed7de0 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,11 @@ # Xdebug ddev ssh -> export XDEBUG_CONFIG="idekey=PHPSTORM" + +- Cli Skript xebug läuft nicht korrekt: + - ddev ssh + - in Terminal: PHP_IDE_CONFIG="serverName=matsen-tool-be.ddev.site" + - Servername ist hier konfiguriert: ![](/Users/danielknudsen/Documents/GIT/matsen-tool-be/.docs/phpstorm_cli_xdebug_config.png) ------------------------- # Symfony: diff --git a/migrations/Version20231221143009.php b/migrations/Version20231221143009.php deleted file mode 100644 index c2bb9c7..0000000 --- a/migrations/Version20231221143009.php +++ /dev/null @@ -1,45 +0,0 @@ -addSql('CREATE TABLE api_token (id INT AUTO_INCREMENT NOT NULL, owned_by_id INT NOT NULL, expires_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', token VARCHAR(68) NOT NULL, scopes JSON NOT NULL COMMENT \'(DC2Type:json)\', INDEX IDX_7BA2F5EB5E70BCD7 (owned_by_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE partner (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, type VARCHAR(255) NOT NULL, street VARCHAR(255) DEFAULT NULL, street_no VARCHAR(255) DEFAULT NULL, zip VARCHAR(255) DEFAULT NULL, city VARCHAR(255) DEFAULT NULL, country VARCHAR(255) DEFAULT NULL, website VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', logo VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE partner_contact (id INT AUTO_INCREMENT NOT NULL, partner_id INT NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, birthday DATE DEFAULT NULL, picture VARCHAR(255) DEFAULT NULL, position VARCHAR(255) DEFAULT NULL, phone VARCHAR(255) DEFAULT NULL, email VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_8B8885259393F8FE (partner_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE posting (id INT AUTO_INCREMENT NOT NULL, owner_id INT NOT NULL, message LONGTEXT NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_BD275D737E3C61F9 (owner_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE `user` (id INT AUTO_INCREMENT NOT NULL, email VARCHAR(180) NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, roles JSON NOT NULL COMMENT \'(DC2Type:json)\', password VARCHAR(255) NOT NULL, active TINYINT(1) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', UNIQUE INDEX UNIQ_8D93D649E7927C74 (email), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('ALTER TABLE api_token ADD CONSTRAINT FK_7BA2F5EB5E70BCD7 FOREIGN KEY (owned_by_id) REFERENCES `user` (id)'); - $this->addSql('ALTER TABLE partner_contact ADD CONSTRAINT FK_8B8885259393F8FE FOREIGN KEY (partner_id) REFERENCES partner (id)'); - $this->addSql('ALTER TABLE posting ADD CONSTRAINT FK_BD275D737E3C61F9 FOREIGN KEY (owner_id) REFERENCES `user` (id)'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('ALTER TABLE api_token DROP FOREIGN KEY FK_7BA2F5EB5E70BCD7'); - $this->addSql('ALTER TABLE partner_contact DROP FOREIGN KEY FK_8B8885259393F8FE'); - $this->addSql('ALTER TABLE posting DROP FOREIGN KEY FK_BD275D737E3C61F9'); - $this->addSql('DROP TABLE api_token'); - $this->addSql('DROP TABLE partner'); - $this->addSql('DROP TABLE partner_contact'); - $this->addSql('DROP TABLE posting'); - $this->addSql('DROP TABLE `user`'); - } -} diff --git a/migrations/Version20240125102320.php b/migrations/Version20240125102320.php deleted file mode 100644 index 356bb44..0000000 --- a/migrations/Version20240125102320.php +++ /dev/null @@ -1,35 +0,0 @@ -addSql('CREATE TABLE media_object (id INT AUTO_INCREMENT NOT NULL, file_path VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('ALTER TABLE api_token DROP FOREIGN KEY FK_7BA2F5EB5E70BCD7'); - $this->addSql('DROP TABLE api_token'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('CREATE TABLE api_token (id INT AUTO_INCREMENT NOT NULL, owned_by_id INT NOT NULL, expires_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', token VARCHAR(68) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, scopes JSON NOT NULL COMMENT \'(DC2Type:json)\', INDEX IDX_7BA2F5EB5E70BCD7 (owned_by_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\' '); - $this->addSql('ALTER TABLE api_token ADD CONSTRAINT FK_7BA2F5EB5E70BCD7 FOREIGN KEY (owned_by_id) REFERENCES user (id)'); - $this->addSql('DROP TABLE media_object'); - } -} diff --git a/migrations/Version20240206152234.php b/migrations/Version20240206152234.php new file mode 100644 index 0000000..474d1ce --- /dev/null +++ b/migrations/Version20240206152234.php @@ -0,0 +1,45 @@ +addSql('CREATE TABLE contact (id INT AUTO_INCREMENT NOT NULL, partner_id INT NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, birthday DATE DEFAULT NULL, image VARCHAR(255) DEFAULT NULL, position VARCHAR(255) DEFAULT NULL, phone VARCHAR(255) DEFAULT NULL, email VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_4C62E6389393F8FE (partner_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); + $this->addSql('CREATE TABLE media_object (id INT AUTO_INCREMENT NOT NULL, file_path VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); + $this->addSql('CREATE TABLE partner (id INT AUTO_INCREMENT NOT NULL, logo_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, type VARCHAR(255) NOT NULL, street VARCHAR(255) DEFAULT NULL, street_no VARCHAR(255) DEFAULT NULL, zip VARCHAR(255) DEFAULT NULL, city VARCHAR(255) DEFAULT NULL, country VARCHAR(255) DEFAULT NULL, website VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_312B3E16F98F144A (logo_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); + $this->addSql('CREATE TABLE posting (id INT AUTO_INCREMENT NOT NULL, owner_id INT NOT NULL, message LONGTEXT NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_BD275D737E3C61F9 (owner_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); + $this->addSql('CREATE TABLE `user` (id INT AUTO_INCREMENT NOT NULL, email VARCHAR(180) NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, roles JSON NOT NULL COMMENT \'(DC2Type:json)\', password VARCHAR(255) NOT NULL, active TINYINT(1) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', UNIQUE INDEX UNIQ_8D93D649E7927C74 (email), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); + $this->addSql('ALTER TABLE contact ADD CONSTRAINT FK_4C62E6389393F8FE FOREIGN KEY (partner_id) REFERENCES partner (id)'); + $this->addSql('ALTER TABLE partner ADD CONSTRAINT FK_312B3E16F98F144A FOREIGN KEY (logo_id) REFERENCES media_object (id)'); + $this->addSql('ALTER TABLE posting ADD CONSTRAINT FK_BD275D737E3C61F9 FOREIGN KEY (owner_id) REFERENCES `user` (id)'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE contact DROP FOREIGN KEY FK_4C62E6389393F8FE'); + $this->addSql('ALTER TABLE partner DROP FOREIGN KEY FK_312B3E16F98F144A'); + $this->addSql('ALTER TABLE posting DROP FOREIGN KEY FK_BD275D737E3C61F9'); + $this->addSql('DROP TABLE contact'); + $this->addSql('DROP TABLE media_object'); + $this->addSql('DROP TABLE partner'); + $this->addSql('DROP TABLE posting'); + $this->addSql('DROP TABLE `user`'); + } +} diff --git a/public/media/1176-65c24ec9c380a321491226.png b/public/media/1176-65c24ec9c380a321491226.png new file mode 100644 index 0000000..54a8ef6 Binary files /dev/null and b/public/media/1176-65c24ec9c380a321491226.png differ diff --git a/public/media/13051765-65c23aa0abd2d227118351.png b/public/media/13051765-65c23aa0abd2d227118351.png new file mode 100644 index 0000000..8c456f7 Binary files /dev/null and b/public/media/13051765-65c23aa0abd2d227118351.png differ diff --git a/public/media/13051765-65c2496ddf1bf518226485.png b/public/media/13051765-65c2496ddf1bf518226485.png new file mode 100644 index 0000000..8c456f7 Binary files /dev/null and b/public/media/13051765-65c2496ddf1bf518226485.png differ diff --git a/public/media/13051765-65c24ec9bc0df020542734.png b/public/media/13051765-65c24ec9bc0df020542734.png new file mode 100644 index 0000000..8c456f7 Binary files /dev/null and b/public/media/13051765-65c24ec9bc0df020542734.png differ diff --git a/public/media/21601-65c23aa092710988237038.png b/public/media/21601-65c23aa092710988237038.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c23aa092710988237038.png differ diff --git a/public/media/21601-65c23aa09b12d403520624.png b/public/media/21601-65c23aa09b12d403520624.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c23aa09b12d403520624.png differ diff --git a/public/media/21601-65c23aa0a6aad723421009.png b/public/media/21601-65c23aa0a6aad723421009.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c23aa0a6aad723421009.png differ diff --git a/public/media/21601-65c23aa0ae5e1986365646.png b/public/media/21601-65c23aa0ae5e1986365646.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c23aa0ae5e1986365646.png differ diff --git a/public/media/21601-65c23aa0b3614765904303.png b/public/media/21601-65c23aa0b3614765904303.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c23aa0b3614765904303.png differ diff --git a/public/media/21601-65c23aa0b4aee960523927.png b/public/media/21601-65c23aa0b4aee960523927.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c23aa0b4aee960523927.png differ diff --git a/public/media/21601-65c23aa0b5759294002607.png b/public/media/21601-65c23aa0b5759294002607.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c23aa0b5759294002607.png differ diff --git a/public/media/21601-65c2496dd7546782222069.png b/public/media/21601-65c2496dd7546782222069.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c2496dd7546782222069.png differ diff --git a/public/media/21601-65c2496de8948656968834.png b/public/media/21601-65c2496de8948656968834.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c2496de8948656968834.png differ diff --git a/public/media/21601-65c24ec9baf5e834407748.png b/public/media/21601-65c24ec9baf5e834407748.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c24ec9baf5e834407748.png differ diff --git a/public/media/21601-65c24ec9ceddf666095479.png b/public/media/21601-65c24ec9ceddf666095479.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/public/media/21601-65c24ec9ceddf666095479.png differ diff --git a/public/media/2673787-65c23aa0976a7986243831.webp b/public/media/2673787-65c23aa0976a7986243831.webp new file mode 100644 index 0000000..9fc736a Binary files /dev/null and b/public/media/2673787-65c23aa0976a7986243831.webp differ diff --git a/public/media/2673787-65c2496dd5b0f583174227.webp b/public/media/2673787-65c2496dd5b0f583174227.webp new file mode 100644 index 0000000..9fc736a Binary files /dev/null and b/public/media/2673787-65c2496dd5b0f583174227.webp differ diff --git a/public/media/2673787-65c2496dd88c0024149973.webp b/public/media/2673787-65c2496dd88c0024149973.webp new file mode 100644 index 0000000..9fc736a Binary files /dev/null and b/public/media/2673787-65c2496dd88c0024149973.webp differ diff --git a/public/media/2673787-65c2496ddd4ff707623636.webp b/public/media/2673787-65c2496ddd4ff707623636.webp new file mode 100644 index 0000000..9fc736a Binary files /dev/null and b/public/media/2673787-65c2496ddd4ff707623636.webp differ diff --git a/public/media/2673787-65c2496de1636995275379.webp b/public/media/2673787-65c2496de1636995275379.webp new file mode 100644 index 0000000..9fc736a Binary files /dev/null and b/public/media/2673787-65c2496de1636995275379.webp differ diff --git a/public/media/282540-65c23aa0a4068489321398.webp b/public/media/282540-65c23aa0a4068489321398.webp new file mode 100644 index 0000000..e6b39ed Binary files /dev/null and b/public/media/282540-65c23aa0a4068489321398.webp differ diff --git a/public/media/282540-65c23aa0b13c6502481119.webp b/public/media/282540-65c23aa0b13c6502481119.webp new file mode 100644 index 0000000..e6b39ed Binary files /dev/null and b/public/media/282540-65c23aa0b13c6502481119.webp differ diff --git a/public/media/61109-65c23aa0a1877799155642.png b/public/media/61109-65c23aa0a1877799155642.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c23aa0a1877799155642.png differ diff --git a/public/media/61109-65c23aa0a9230859344189.png b/public/media/61109-65c23aa0a9230859344189.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c23aa0a9230859344189.png differ diff --git a/public/media/61109-65c23aa0af0eb920602959.png b/public/media/61109-65c23aa0af0eb920602959.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c23aa0af0eb920602959.png differ diff --git a/public/media/61109-65c2496de03b0786749525.png b/public/media/61109-65c2496de03b0786749525.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c2496de03b0786749525.png differ diff --git a/public/media/61109-65c2496de31b4854311388.png b/public/media/61109-65c2496de31b4854311388.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c2496de31b4854311388.png differ diff --git a/public/media/61109-65c2496de8032628647392.png b/public/media/61109-65c2496de8032628647392.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c2496de8032628647392.png differ diff --git a/public/media/61109-65c2496dedaec202440106.png b/public/media/61109-65c2496dedaec202440106.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c2496dedaec202440106.png differ diff --git a/public/media/61109-65c2496def5f0669817874.png b/public/media/61109-65c2496def5f0669817874.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c2496def5f0669817874.png differ diff --git a/public/media/61109-65c24ec9bb854442684447.png b/public/media/61109-65c24ec9bb854442684447.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c24ec9bb854442684447.png differ diff --git a/public/media/61109-65c24ec9c26cd833065167.png b/public/media/61109-65c24ec9c26cd833065167.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c24ec9c26cd833065167.png differ diff --git a/public/media/61109-65c24ec9c405e651961332.png b/public/media/61109-65c24ec9c405e651961332.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c24ec9c405e651961332.png differ diff --git a/public/media/61109-65c24ec9c65c1048997913.png b/public/media/61109-65c24ec9c65c1048997913.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c24ec9c65c1048997913.png differ diff --git a/public/media/61109-65c24ec9ca3ec033376298.png b/public/media/61109-65c24ec9ca3ec033376298.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c24ec9ca3ec033376298.png differ diff --git a/public/media/61109-65c24ec9cc8c8389523576.png b/public/media/61109-65c24ec9cc8c8389523576.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/public/media/61109-65c24ec9cc8c8389523576.png differ diff --git a/public/media/731972-65c23aa0ad049637421495.png b/public/media/731972-65c23aa0ad049637421495.png new file mode 100644 index 0000000..831c823 Binary files /dev/null and b/public/media/731972-65c23aa0ad049637421495.png differ diff --git a/public/media/731972-65c2496ddaa21722627925.png b/public/media/731972-65c2496ddaa21722627925.png new file mode 100644 index 0000000..831c823 Binary files /dev/null and b/public/media/731972-65c2496ddaa21722627925.png differ diff --git a/public/media/731972-65c2496dec050340971419.png b/public/media/731972-65c2496dec050340971419.png new file mode 100644 index 0000000..831c823 Binary files /dev/null and b/public/media/731972-65c2496dec050340971419.png differ diff --git a/public/media/731972-65c24ec9ba640346823854.png b/public/media/731972-65c24ec9ba640346823854.png new file mode 100644 index 0000000..831c823 Binary files /dev/null and b/public/media/731972-65c24ec9ba640346823854.png differ diff --git a/public/media/732228-65c23aa09f095210222982.png b/public/media/732228-65c23aa09f095210222982.png new file mode 100644 index 0000000..c8eb273 Binary files /dev/null and b/public/media/732228-65c23aa09f095210222982.png differ diff --git a/public/media/732228-65c2496dd6b29264561608.png b/public/media/732228-65c2496dd6b29264561608.png new file mode 100644 index 0000000..c8eb273 Binary files /dev/null and b/public/media/732228-65c2496dd6b29264561608.png differ diff --git a/public/media/732228-65c2496deecfa875290072.png b/public/media/732228-65c2496deecfa875290072.png new file mode 100644 index 0000000..c8eb273 Binary files /dev/null and b/public/media/732228-65c2496deecfa875290072.png differ diff --git a/public/media/732228-65c24ec9d3d72830997540.png b/public/media/732228-65c24ec9d3d72830997540.png new file mode 100644 index 0000000..c8eb273 Binary files /dev/null and b/public/media/732228-65c24ec9d3d72830997540.png differ diff --git a/public/media/87390-65c23aa094e74318686881.png b/public/media/87390-65c23aa094e74318686881.png new file mode 100644 index 0000000..c76aeff Binary files /dev/null and b/public/media/87390-65c23aa094e74318686881.png differ diff --git a/public/media/87390-65c23aa0a0b53823069429.png b/public/media/87390-65c23aa0a0b53823069429.png new file mode 100644 index 0000000..c76aeff Binary files /dev/null and b/public/media/87390-65c23aa0a0b53823069429.png differ diff --git a/public/media/87390-65c23aa0b6f2d493419588.png b/public/media/87390-65c23aa0b6f2d493419588.png new file mode 100644 index 0000000..c76aeff Binary files /dev/null and b/public/media/87390-65c23aa0b6f2d493419588.png differ diff --git a/public/media/87390-65c2496ddbaf0465275319.png b/public/media/87390-65c2496ddbaf0465275319.png new file mode 100644 index 0000000..c76aeff Binary files /dev/null and b/public/media/87390-65c2496ddbaf0465275319.png differ diff --git a/public/media/87390-65c24ec9cb74e354893959.png b/public/media/87390-65c24ec9cb74e354893959.png new file mode 100644 index 0000000..c76aeff Binary files /dev/null and b/public/media/87390-65c24ec9cb74e354893959.png differ diff --git a/public/media/87390-65c24ec9d5308805633531.png b/public/media/87390-65c24ec9d5308805633531.png new file mode 100644 index 0000000..c76aeff Binary files /dev/null and b/public/media/87390-65c24ec9d5308805633531.png differ diff --git a/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa096145072761078.webp b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa096145072761078.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa096145072761078.webp differ diff --git a/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa09fd74603954608.webp b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa09fd74603954608.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa09fd74603954608.webp differ diff --git a/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa0b068c401749393.webp b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa0b068c401749393.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c23aa0b068c401749393.webp differ diff --git a/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c2496dea401621286484.webp b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c2496dea401621286484.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c2496dea401621286484.webp differ diff --git a/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9b9bbf381153453.webp b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9b9bbf381153453.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9b9bbf381153453.webp differ diff --git a/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9c15a8465091438.webp b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9c15a8465091438.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9c15a8465091438.webp differ diff --git a/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9c79fc885946880.webp b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9c79fc885946880.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9c79fc885946880.webp differ diff --git a/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9d30f3369989604.webp b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9d30f3369989604.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/public/media/com-gamerlogomaker-esportslogomakerpro-gaminglogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9-512x512-65c24ec9d30f3369989604.webp differ diff --git a/public/media/google-chrome-portable-logo-1-1-30-65c23a9bdbd68224579037.webp b/public/media/google-chrome-portable-logo-1-1-30-65c23a9bdbd68224579037.webp new file mode 100644 index 0000000..730e961 Binary files /dev/null and b/public/media/google-chrome-portable-logo-1-1-30-65c23a9bdbd68224579037.webp differ diff --git a/public/media/google-chrome-portable-logo-1-1-30-65c23a9c4d02f626756858.webp b/public/media/google-chrome-portable-logo-1-1-30-65c23a9c4d02f626756858.webp new file mode 100644 index 0000000..730e961 Binary files /dev/null and b/public/media/google-chrome-portable-logo-1-1-30-65c23a9c4d02f626756858.webp differ diff --git a/public/media/google-chrome-portable-logo-1-1-30-65c2496de3a0c589023515.webp b/public/media/google-chrome-portable-logo-1-1-30-65c2496de3a0c589023515.webp new file mode 100644 index 0000000..730e961 Binary files /dev/null and b/public/media/google-chrome-portable-logo-1-1-30-65c2496de3a0c589023515.webp differ diff --git a/public/media/google-chrome-portable-logo-1-1-30-65c24ec9c5c06396358753.webp b/public/media/google-chrome-portable-logo-1-1-30-65c24ec9c5c06396358753.webp new file mode 100644 index 0000000..730e961 Binary files /dev/null and b/public/media/google-chrome-portable-logo-1-1-30-65c24ec9c5c06396358753.webp differ diff --git a/public/media/hsv-65c2496ddc321446965823.svg b/public/media/hsv-65c2496ddc321446965823.svg new file mode 100644 index 0000000..dc65f16 --- /dev/null +++ b/public/media/hsv-65c2496ddc321446965823.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/media/hsv-65c2496dead69230638127.svg b/public/media/hsv-65c2496dead69230638127.svg new file mode 100644 index 0000000..dc65f16 --- /dev/null +++ b/public/media/hsv-65c2496dead69230638127.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/media/hsv-65c24ec9d0bc6642519982.svg b/public/media/hsv-65c24ec9d0bc6642519982.svg new file mode 100644 index 0000000..dc65f16 --- /dev/null +++ b/public/media/hsv-65c24ec9d0bc6642519982.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/media/huawei-logo-9-65c2496de9b22414512522.png b/public/media/huawei-logo-9-65c2496de9b22414512522.png new file mode 100644 index 0000000..f1e9f5b Binary files /dev/null and b/public/media/huawei-logo-9-65c2496de9b22414512522.png differ diff --git a/public/media/huawei-logo-9-65c24ec9c1e71753731034.png b/public/media/huawei-logo-9-65c24ec9c1e71753731034.png new file mode 100644 index 0000000..f1e9f5b Binary files /dev/null and b/public/media/huawei-logo-9-65c24ec9c1e71753731034.png differ diff --git a/public/media/huawei-logo-9-65c24ec9c83e5979879881.png b/public/media/huawei-logo-9-65c24ec9c83e5979879881.png new file mode 100644 index 0000000..f1e9f5b Binary files /dev/null and b/public/media/huawei-logo-9-65c24ec9c83e5979879881.png differ diff --git a/public/media/images-65c23aa099d9f812308960.jpg b/public/media/images-65c23aa099d9f812308960.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c23aa099d9f812308960.jpg differ diff --git a/public/media/images-65c23aa0aa61e763781547.jpg b/public/media/images-65c23aa0aa61e763781547.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c23aa0aa61e763781547.jpg differ diff --git a/public/media/images-65c23aa0afc3e845515892.jpg b/public/media/images-65c23aa0afc3e845515892.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c23aa0afc3e845515892.jpg differ diff --git a/public/media/images-65c2496dd7f3e021279072.jpg b/public/media/images-65c2496dd7f3e021279072.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c2496dd7f3e021279072.jpg differ diff --git a/public/media/images-65c2496de0d20953198228.jpg b/public/media/images-65c2496de0d20953198228.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c2496de0d20953198228.jpg differ diff --git a/public/media/images-65c24ec9b89dc154508770.jpg b/public/media/images-65c24ec9b89dc154508770.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c24ec9b89dc154508770.jpg differ diff --git a/public/media/images-65c24ec9c52ee465268195.jpg b/public/media/images-65c24ec9c52ee465268195.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c24ec9c52ee465268195.jpg differ diff --git a/public/media/images-65c24ec9cd1cb986409037.jpg b/public/media/images-65c24ec9cd1cb986409037.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c24ec9cd1cb986409037.jpg differ diff --git a/public/media/images-65c24ec9cf6a0579754687.jpg b/public/media/images-65c24ec9cf6a0579754687.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c24ec9cf6a0579754687.jpg differ diff --git a/public/media/images-65c24ec9d24bb593356002.jpg b/public/media/images-65c24ec9d24bb593356002.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/public/media/images-65c24ec9d24bb593356002.jpg differ diff --git a/public/media/logo-65c23aa0a7527819794330.png b/public/media/logo-65c23aa0a7527819794330.png new file mode 100644 index 0000000..7615456 Binary files /dev/null and b/public/media/logo-65c23aa0a7527819794330.png differ diff --git a/public/media/logo-65c2496de6e59050778803.png b/public/media/logo-65c2496de6e59050778803.png new file mode 100644 index 0000000..7615456 Binary files /dev/null and b/public/media/logo-65c2496de6e59050778803.png differ diff --git a/public/media/logo-65c2496df1174895290718.png b/public/media/logo-65c2496df1174895290718.png new file mode 100644 index 0000000..7615456 Binary files /dev/null and b/public/media/logo-65c2496df1174895290718.png differ diff --git a/public/media/logo-65c24ec9c9995340219904.png b/public/media/logo-65c24ec9c9995340219904.png new file mode 100644 index 0000000..7615456 Binary files /dev/null and b/public/media/logo-65c24ec9c9995340219904.png differ diff --git a/public/media/logo-logoexample-header-1-en-65c23aa0a885b970447612.webp b/public/media/logo-logoexample-header-1-en-65c23aa0a885b970447612.webp new file mode 100644 index 0000000..eff501d Binary files /dev/null and b/public/media/logo-logoexample-header-1-en-65c23aa0a885b970447612.webp differ diff --git a/public/media/logo-logoexample-header-1-en-65c23aa0b3faa345363965.webp b/public/media/logo-logoexample-header-1-en-65c23aa0b3faa345363965.webp new file mode 100644 index 0000000..eff501d Binary files /dev/null and b/public/media/logo-logoexample-header-1-en-65c23aa0b3faa345363965.webp differ diff --git a/public/media/logo-logoexample-header-1-en-65c2496de28dd704344409.webp b/public/media/logo-logoexample-header-1-en-65c2496de28dd704344409.webp new file mode 100644 index 0000000..eff501d Binary files /dev/null and b/public/media/logo-logoexample-header-1-en-65c2496de28dd704344409.webp differ diff --git a/public/media/logo-logoexample-header-1-en-65c2496de5cd4479657072.webp b/public/media/logo-logoexample-header-1-en-65c2496de5cd4479657072.webp new file mode 100644 index 0000000..eff501d Binary files /dev/null and b/public/media/logo-logoexample-header-1-en-65c2496de5cd4479657072.webp differ diff --git a/public/media/logo-logoexample-header-1-en-65c2496deb707523911762.webp b/public/media/logo-logoexample-header-1-en-65c2496deb707523911762.webp new file mode 100644 index 0000000..eff501d Binary files /dev/null and b/public/media/logo-logoexample-header-1-en-65c2496deb707523911762.webp differ diff --git a/public/media/logo-logoexample-header-1-en-65c2496df07e8149142336.webp b/public/media/logo-logoexample-header-1-en-65c2496df07e8149142336.webp new file mode 100644 index 0000000..eff501d Binary files /dev/null and b/public/media/logo-logoexample-header-1-en-65c2496df07e8149142336.webp differ diff --git a/public/media/logo-logoexample-header-3-en-65c23a9cea937223489880.webp b/public/media/logo-logoexample-header-3-en-65c23a9cea937223489880.webp new file mode 100644 index 0000000..8491d87 Binary files /dev/null and b/public/media/logo-logoexample-header-3-en-65c23a9cea937223489880.webp differ diff --git a/public/media/logo-logoexample-header-3-en-65c2496dd932e053127531.webp b/public/media/logo-logoexample-header-3-en-65c2496dd932e053127531.webp new file mode 100644 index 0000000..8491d87 Binary files /dev/null and b/public/media/logo-logoexample-header-3-en-65c2496dd932e053127531.webp differ diff --git a/public/media/logo-logoexample-header-3-en-65c2496dde8bd602063630.webp b/public/media/logo-logoexample-header-3-en-65c2496dde8bd602063630.webp new file mode 100644 index 0000000..8491d87 Binary files /dev/null and b/public/media/logo-logoexample-header-3-en-65c2496dde8bd602063630.webp differ diff --git a/public/media/logo-logoexample-header-3-en-65c24ec9c8e42973108040.webp b/public/media/logo-logoexample-header-3-en-65c24ec9c8e42973108040.webp new file mode 100644 index 0000000..8491d87 Binary files /dev/null and b/public/media/logo-logoexample-header-3-en-65c24ec9c8e42973108040.webp differ diff --git a/public/media/logo-logoexample-header-3-en-65c24ec9cad4d625742448.webp b/public/media/logo-logoexample-header-3-en-65c24ec9cad4d625742448.webp new file mode 100644 index 0000000..8491d87 Binary files /dev/null and b/public/media/logo-logoexample-header-3-en-65c24ec9cad4d625742448.webp differ diff --git a/public/media/logo-logoexample-header-4-en-65c23aa0ab107202924140.webp b/public/media/logo-logoexample-header-4-en-65c23aa0ab107202924140.webp new file mode 100644 index 0000000..dd0edeb Binary files /dev/null and b/public/media/logo-logoexample-header-4-en-65c23aa0ab107202924140.webp differ diff --git a/public/media/logo-logoexample-header-4-en-65c23aa0b626f141235529.webp b/public/media/logo-logoexample-header-4-en-65c23aa0b626f141235529.webp new file mode 100644 index 0000000..dd0edeb Binary files /dev/null and b/public/media/logo-logoexample-header-4-en-65c23aa0b626f141235529.webp differ diff --git a/public/media/logo-logoexample-header-4-en-65c2496ddb269380816456.webp b/public/media/logo-logoexample-header-4-en-65c2496ddb269380816456.webp new file mode 100644 index 0000000..dd0edeb Binary files /dev/null and b/public/media/logo-logoexample-header-4-en-65c2496ddb269380816456.webp differ diff --git a/public/media/logo-logoexample-header-4-en-65c2496ddfa9a728426277.webp b/public/media/logo-logoexample-header-4-en-65c2496ddfa9a728426277.webp new file mode 100644 index 0000000..dd0edeb Binary files /dev/null and b/public/media/logo-logoexample-header-4-en-65c2496ddfa9a728426277.webp differ diff --git a/public/media/logo-logoexample-header-4-en-65c24ec9bc987447557768.webp b/public/media/logo-logoexample-header-4-en-65c24ec9bc987447557768.webp new file mode 100644 index 0000000..dd0edeb Binary files /dev/null and b/public/media/logo-logoexample-header-4-en-65c24ec9bc987447557768.webp differ diff --git a/public/media/logo-logoexample-header-4-en-65c24ec9bd270818495910.webp b/public/media/logo-logoexample-header-4-en-65c24ec9bd270818495910.webp new file mode 100644 index 0000000..dd0edeb Binary files /dev/null and b/public/media/logo-logoexample-header-4-en-65c24ec9bd270818495910.webp differ diff --git a/public/media/logo-logoexample-header-4-en-65c24ec9c2f30542849381.webp b/public/media/logo-logoexample-header-4-en-65c24ec9c2f30542849381.webp new file mode 100644 index 0000000..dd0edeb Binary files /dev/null and b/public/media/logo-logoexample-header-4-en-65c24ec9c2f30542849381.webp differ diff --git a/public/media/logo-vb-kreis-small-65c23aa0ac6e3339902018.png b/public/media/logo-vb-kreis-small-65c23aa0ac6e3339902018.png new file mode 100644 index 0000000..93cc203 Binary files /dev/null and b/public/media/logo-vb-kreis-small-65c23aa0ac6e3339902018.png differ diff --git a/public/media/logo-vb-kreis-small-65c2496de4b62674002270.png b/public/media/logo-vb-kreis-small-65c2496de4b62674002270.png new file mode 100644 index 0000000..93cc203 Binary files /dev/null and b/public/media/logo-vb-kreis-small-65c2496de4b62674002270.png differ diff --git a/public/media/logo-vb-kreis-small-65c2496de7779086595130.png b/public/media/logo-vb-kreis-small-65c2496de7779086595130.png new file mode 100644 index 0000000..93cc203 Binary files /dev/null and b/public/media/logo-vb-kreis-small-65c2496de7779086595130.png differ diff --git a/public/media/logo-vb-kreis-small-65c2496ded206473266099.png b/public/media/logo-vb-kreis-small-65c2496ded206473266099.png new file mode 100644 index 0000000..93cc203 Binary files /dev/null and b/public/media/logo-vb-kreis-small-65c2496ded206473266099.png differ diff --git a/public/media/logo-vb-kreis-small-65c24ec9b7e2b176493123.png b/public/media/logo-vb-kreis-small-65c24ec9b7e2b176493123.png new file mode 100644 index 0000000..93cc203 Binary files /dev/null and b/public/media/logo-vb-kreis-small-65c24ec9b7e2b176493123.png differ diff --git a/public/media/logo-vb-kreis-small-65c24ec9be300951508838.png b/public/media/logo-vb-kreis-small-65c24ec9be300951508838.png new file mode 100644 index 0000000..93cc203 Binary files /dev/null and b/public/media/logo-vb-kreis-small-65c24ec9be300951508838.png differ diff --git a/public/media/logo-vb-kreis-small-65c24ec9cbff5070173996.png b/public/media/logo-vb-kreis-small-65c24ec9cbff5070173996.png new file mode 100644 index 0000000..93cc203 Binary files /dev/null and b/public/media/logo-vb-kreis-small-65c24ec9cbff5070173996.png differ diff --git a/public/media/mobile-icon-65c23a9ca39b4796411335.png b/public/media/mobile-icon-65c23a9ca39b4796411335.png new file mode 100644 index 0000000..720a37f Binary files /dev/null and b/public/media/mobile-icon-65c23a9ca39b4796411335.png differ diff --git a/public/media/mobile-icon-65c23aa0a7f99530023413.png b/public/media/mobile-icon-65c23aa0a7f99530023413.png new file mode 100644 index 0000000..720a37f Binary files /dev/null and b/public/media/mobile-icon-65c23aa0a7f99530023413.png differ diff --git a/public/media/mobile-icon-65c23aa0adb91982825655.png b/public/media/mobile-icon-65c23aa0adb91982825655.png new file mode 100644 index 0000000..720a37f Binary files /dev/null and b/public/media/mobile-icon-65c23aa0adb91982825655.png differ diff --git a/public/media/mobile-icon-65c2496dd4e38038534741.png b/public/media/mobile-icon-65c2496dd4e38038534741.png new file mode 100644 index 0000000..720a37f Binary files /dev/null and b/public/media/mobile-icon-65c2496dd4e38038534741.png differ diff --git a/public/media/mobile-icon-65c24ec9bfbb7847624356.png b/public/media/mobile-icon-65c24ec9bfbb7847624356.png new file mode 100644 index 0000000..720a37f Binary files /dev/null and b/public/media/mobile-icon-65c24ec9bfbb7847624356.png differ diff --git a/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa08f1fa138433218.png b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa08f1fa138433218.png new file mode 100644 index 0000000..9dfe9a1 Binary files /dev/null and b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa08f1fa138433218.png differ diff --git a/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa098b18116549040.png b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa098b18116549040.png new file mode 100644 index 0000000..9dfe9a1 Binary files /dev/null and b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa098b18116549040.png differ diff --git a/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa09e31a377390382.png b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa09e31a377390382.png new file mode 100644 index 0000000..9dfe9a1 Binary files /dev/null and b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c23aa09e31a377390382.png differ diff --git a/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c2496de5427284169049.png b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c2496de5427284169049.png new file mode 100644 index 0000000..9dfe9a1 Binary files /dev/null and b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c2496de5427284169049.png differ diff --git a/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c2496dec918249834352.png b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c2496dec918249834352.png new file mode 100644 index 0000000..9dfe9a1 Binary files /dev/null and b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c2496dec918249834352.png differ diff --git a/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c24ec9beb0f000912365.png b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c24ec9beb0f000912365.png new file mode 100644 index 0000000..9dfe9a1 Binary files /dev/null and b/public/media/reddit-fill-logo-icon-256x256-3z8kcz41-65c24ec9beb0f000912365.png differ diff --git a/public/media/sketchup-logo-65c23aa0a613c142786288.png b/public/media/sketchup-logo-65c23aa0a613c142786288.png new file mode 100644 index 0000000..d45668d Binary files /dev/null and b/public/media/sketchup-logo-65c23aa0a613c142786288.png differ diff --git a/public/media/sketchup-logo-65c23aa0a9b6d846262630.png b/public/media/sketchup-logo-65c23aa0a9b6d846262630.png new file mode 100644 index 0000000..d45668d Binary files /dev/null and b/public/media/sketchup-logo-65c23aa0a9b6d846262630.png differ diff --git a/public/media/sketchup-logo-65c23aa0b1f8f750311656.png b/public/media/sketchup-logo-65c23aa0b1f8f750311656.png new file mode 100644 index 0000000..d45668d Binary files /dev/null and b/public/media/sketchup-logo-65c23aa0b1f8f750311656.png differ diff --git a/public/media/sketchup-logo-65c23aa0b2bb1525281981.png b/public/media/sketchup-logo-65c23aa0b2bb1525281981.png new file mode 100644 index 0000000..d45668d Binary files /dev/null and b/public/media/sketchup-logo-65c23aa0b2bb1525281981.png differ diff --git a/public/media/sketchup-logo-65c2496ddcc17217474898.png b/public/media/sketchup-logo-65c2496ddcc17217474898.png new file mode 100644 index 0000000..d45668d Binary files /dev/null and b/public/media/sketchup-logo-65c2496ddcc17217474898.png differ diff --git a/public/media/spotify-icon-249751-65c2496de922c170111130.png b/public/media/spotify-icon-249751-65c2496de922c170111130.png new file mode 100644 index 0000000..e8bb26b Binary files /dev/null and b/public/media/spotify-icon-249751-65c2496de922c170111130.png differ diff --git a/public/media/spotify-icon-249751-65c2496defee4310325281.png b/public/media/spotify-icon-249751-65c2496defee4310325281.png new file mode 100644 index 0000000..e8bb26b Binary files /dev/null and b/public/media/spotify-icon-249751-65c2496defee4310325281.png differ diff --git a/public/media/spotify-icon-249751-65c24ec9c045e739570497.png b/public/media/spotify-icon-249751-65c24ec9c045e739570497.png new file mode 100644 index 0000000..e8bb26b Binary files /dev/null and b/public/media/spotify-icon-249751-65c24ec9c045e739570497.png differ diff --git a/public/media/spotify-icon-249751-65c24ec9d4853207506330.png b/public/media/spotify-icon-249751-65c24ec9d4853207506330.png new file mode 100644 index 0000000..e8bb26b Binary files /dev/null and b/public/media/spotify-icon-249751-65c24ec9d4853207506330.png differ diff --git a/public/media/unbenannt-65c23a9b0c2fc124539068.png b/public/media/unbenannt-65c23a9b0c2fc124539068.png new file mode 100644 index 0000000..23a0721 Binary files /dev/null and b/public/media/unbenannt-65c23a9b0c2fc124539068.png differ diff --git a/public/media/unbenannt-65c24ec9bdb09413016697.png b/public/media/unbenannt-65c24ec9bdb09413016697.png new file mode 100644 index 0000000..23a0721 Binary files /dev/null and b/public/media/unbenannt-65c24ec9bdb09413016697.png differ diff --git a/public/media/unbenannt-65c24ec9c0d58974867698.png b/public/media/unbenannt-65c24ec9c0d58974867698.png new file mode 100644 index 0000000..23a0721 Binary files /dev/null and b/public/media/unbenannt-65c24ec9c0d58974867698.png differ diff --git a/public/media/unbenannt-65c24ec9c6ffc526278769.png b/public/media/unbenannt-65c24ec9c6ffc526278769.png new file mode 100644 index 0000000..23a0721 Binary files /dev/null and b/public/media/unbenannt-65c24ec9c6ffc526278769.png differ diff --git a/public/media/unbenannt-65c24ec9ce4ec645088620.png b/public/media/unbenannt-65c24ec9ce4ec645088620.png new file mode 100644 index 0000000..23a0721 Binary files /dev/null and b/public/media/unbenannt-65c24ec9ce4ec645088620.png differ diff --git a/public/media/urn-ard-image-e86f6849215ea7e6-65c23aa09c223854052067.jpg b/public/media/urn-ard-image-e86f6849215ea7e6-65c23aa09c223854052067.jpg new file mode 100644 index 0000000..5951a71 Binary files /dev/null and b/public/media/urn-ard-image-e86f6849215ea7e6-65c23aa09c223854052067.jpg differ diff --git a/public/media/urn-ard-image-e86f6849215ea7e6-65c23aa0a4c5e346331740.jpg b/public/media/urn-ard-image-e86f6849215ea7e6-65c23aa0a4c5e346331740.jpg new file mode 100644 index 0000000..5951a71 Binary files /dev/null and b/public/media/urn-ard-image-e86f6849215ea7e6-65c23aa0a4c5e346331740.jpg differ diff --git a/public/media/urn-ard-image-e86f6849215ea7e6-65c2496dddf14330814735.jpg b/public/media/urn-ard-image-e86f6849215ea7e6-65c2496dddf14330814735.jpg new file mode 100644 index 0000000..5951a71 Binary files /dev/null and b/public/media/urn-ard-image-e86f6849215ea7e6-65c2496dddf14330814735.jpg differ diff --git a/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9b92ea171326157.jpg b/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9b92ea171326157.jpg new file mode 100644 index 0000000..5951a71 Binary files /dev/null and b/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9b92ea171326157.jpg differ diff --git a/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9c48f5720088236.jpg b/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9c48f5720088236.jpg new file mode 100644 index 0000000..5951a71 Binary files /dev/null and b/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9c48f5720088236.jpg differ diff --git a/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9cdb4f981965014.jpg b/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9cdb4f981965014.jpg new file mode 100644 index 0000000..5951a71 Binary files /dev/null and b/public/media/urn-ard-image-e86f6849215ea7e6-65c24ec9cdb4f981965014.jpg differ diff --git a/public/media/volkswagen-65c23aa09d3d2740558850.png b/public/media/volkswagen-65c23aa09d3d2740558850.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/public/media/volkswagen-65c23aa09d3d2740558850.png differ diff --git a/public/media/volkswagen-65c23aa0a5772061323559.png b/public/media/volkswagen-65c23aa0a5772061323559.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/public/media/volkswagen-65c23aa0a5772061323559.png differ diff --git a/public/media/volkswagen-65c2496de42d5849521615.png b/public/media/volkswagen-65c2496de42d5849521615.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/public/media/volkswagen-65c2496de42d5849521615.png differ diff --git a/public/media/volkswagen-65c2496de65db976934502.png b/public/media/volkswagen-65c2496de65db976934502.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/public/media/volkswagen-65c2496de65db976934502.png differ diff --git a/public/media/volkswagen-65c2496dee3f4847142592.png b/public/media/volkswagen-65c2496dee3f4847142592.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/public/media/volkswagen-65c2496dee3f4847142592.png differ diff --git a/public/media/volkswagen-65c24ec9bf345448689960.png b/public/media/volkswagen-65c24ec9bf345448689960.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/public/media/volkswagen-65c24ec9bf345448689960.png differ diff --git a/public/media/volkswagen-65c24ec9cffac353734493.png b/public/media/volkswagen-65c24ec9cffac353734493.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/public/media/volkswagen-65c24ec9cffac353734493.png differ diff --git a/public/media/volkswagen-65c24ec9d184e734966425.png b/public/media/volkswagen-65c24ec9d184e734966425.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/public/media/volkswagen-65c24ec9d184e734966425.png differ diff --git a/public/media/web-de-logo-65c23aa0a2412027851620.svg b/public/media/web-de-logo-65c23aa0a2412027851620.svg new file mode 100644 index 0000000..88fa9ff --- /dev/null +++ b/public/media/web-de-logo-65c23aa0a2412027851620.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/media/web-de-logo-65c2496dd9ce6099821767.svg b/public/media/web-de-logo-65c2496dd9ce6099821767.svg new file mode 100644 index 0000000..88fa9ff --- /dev/null +++ b/public/media/web-de-logo-65c2496dd9ce6099821767.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/media/web-de-logo-65c2496de1f49095889044.svg b/public/media/web-de-logo-65c2496de1f49095889044.svg new file mode 100644 index 0000000..88fa9ff --- /dev/null +++ b/public/media/web-de-logo-65c2496de1f49095889044.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/media/web-de-logo-65c2496df1aa5849653345.svg b/public/media/web-de-logo-65c2496df1aa5849653345.svg new file mode 100644 index 0000000..88fa9ff --- /dev/null +++ b/public/media/web-de-logo-65c2496df1aa5849653345.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/ApiResource/ContactApi.php b/src/ApiResource/ContactApi.php new file mode 100644 index 0000000..e7a100d --- /dev/null +++ b/src/ApiResource/ContactApi.php @@ -0,0 +1,72 @@ + + * @date 12.12.23 + */ + + +namespace App\ApiResource; + +use ApiPlatform\Doctrine\Orm\State\Options; +use ApiPlatform\Metadata\ApiProperty; +use ApiPlatform\Metadata\ApiResource; +use App\Entity\MediaObject; +use App\Entity\Partner; +use App\Enum\PartnerType; +use App\State\EntityClassDtoStateProcessor; +use App\State\EntityToDtoStateProvider; +use ApiPlatform\Metadata\Delete; +use ApiPlatform\Metadata\Get; +use ApiPlatform\Metadata\GetCollection; +use ApiPlatform\Metadata\Patch; +use ApiPlatform\Metadata\Post; +use Symfony\Component\Validator\Constraints\NotBlank; + +#[ApiResource( + shortName: 'Contact', + operations: [ + new Get( + security: 'is_granted("ROLE_USER")' + ), + new GetCollection(), + new Post( + security: 'is_granted("ROLE_USER")', + ), + new Patch( + security: 'is_granted("EDIT", object)', + ), + new Delete( + security: 'is_granted("ROLE_ADMIN")', + ) + ], + paginationItemsPerPage: 10, + security: 'is_granted("ROLE_USER")', + provider: EntityToDtoStateProvider::class, + processor: EntityClassDtoStateProcessor::class, + stateOptions: new Options(entityClass: Partner::class), +)] +class ContactApi +{ + #[ApiProperty(readable: false, writable: false, identifier: true)] + public ?int $id = null; + + #[NotBlank] + public ?string $firstName = null; + + #[NotBlank] + public ?string $lastName = null; + + public ?Partner $partner = null; + + public ?\DateTimeInterface $birthday = null; + + public ?string $image = null; + + public ?string $position = null; + + public ?string $phone = null; + + public ?string $email = null; + + public ?\DateTimeImmutable $createdAt = null; +} \ No newline at end of file diff --git a/src/ApiResource/PartnerApi.php b/src/ApiResource/PartnerApi.php new file mode 100644 index 0000000..86e684e --- /dev/null +++ b/src/ApiResource/PartnerApi.php @@ -0,0 +1,79 @@ + + * @date 12.12.23 + */ + + +namespace App\ApiResource; + +use ApiPlatform\Doctrine\Orm\State\Options; +use ApiPlatform\Metadata\ApiProperty; +use ApiPlatform\Metadata\ApiResource; +use App\Entity\MediaObject; +use App\Entity\Partner; +use App\Enum\PartnerType; +use App\State\EntityClassDtoStateProcessor; +use App\State\EntityToDtoStateProvider; +use ApiPlatform\Metadata\Delete; +use ApiPlatform\Metadata\Get; +use ApiPlatform\Metadata\GetCollection; +use ApiPlatform\Metadata\Patch; +use ApiPlatform\Metadata\Post; +use Symfony\Component\Validator\Constraints\NotBlank; + +#[ApiResource( + shortName: 'Partner', + operations: [ + new Get( + security: 'is_granted("ROLE_USER")' + ), + new GetCollection(), + new Post( + security: 'is_granted("ROLE_USER")', + ), + new Patch( + security: 'is_granted("EDIT", object)', + ), + new Delete( + security: 'is_granted("ROLE_ADMIN")', + ) + ], + paginationItemsPerPage: 10, + security: 'is_granted("ROLE_USER")', + provider: EntityToDtoStateProvider::class, + processor: EntityClassDtoStateProcessor::class, + stateOptions: new Options(entityClass: Partner::class), +)] +class PartnerApi +{ + #[ApiProperty(readable: false, writable: false, identifier: true)] + public ?int $id = null; + + #[NotBlank] + public string $name; + + #[NotBlank] + public PartnerType $type; + + public ?string $street = null; + + public ?string $streetNo = null; + + public ?string $zip = null; + + public ?string $city = null; + + public ?string $country = null; + + public ?string $website = null; + + public ?MediaObject $logo = null; + + public ?\DateTimeImmutable $createdAt = null; + + /** + * @var array + */ + public array $contacts = []; +} \ No newline at end of file diff --git a/src/ApiResource/PostingApi.php b/src/ApiResource/PostingApi.php index e6ac88f..5f92a0d 100644 --- a/src/ApiResource/PostingApi.php +++ b/src/ApiResource/PostingApi.php @@ -22,7 +22,7 @@ use App\Validator\IsValidOwner; use Symfony\Component\Validator\Constraints\NotBlank; #[ApiResource( - shortName: 'Post', + shortName: 'Posting', operations: [ new Get( security: 'is_granted("ROLE_USER")' diff --git a/src/ApiResource/UserApi.php b/src/ApiResource/UserApi.php index 774ca98..1170cac 100644 --- a/src/ApiResource/UserApi.php +++ b/src/ApiResource/UserApi.php @@ -78,5 +78,5 @@ class UserApi /** * @var array */ - public array $userPosts = []; + public array $postings = []; } \ No newline at end of file diff --git a/src/Controller/CreateMediaObjectAction.php b/src/Controller/CreateMediaObjectAction.php index 819d16b..cddf6dd 100644 --- a/src/Controller/CreateMediaObjectAction.php +++ b/src/Controller/CreateMediaObjectAction.php @@ -9,7 +9,6 @@ namespace App\Controller; use App\Entity\MediaObject; -use App\Serializer\MediaObjectNormalizer; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpKernel\Attribute\AsController; @@ -30,4 +29,4 @@ final class CreateMediaObjectAction extends AbstractController return $mediaObject; } -} +} \ No newline at end of file diff --git a/src/DataFixtures/AppFixtures.php b/src/DataFixtures/AppFixtures.php index dc31a78..de3c08b 100644 --- a/src/DataFixtures/AppFixtures.php +++ b/src/DataFixtures/AppFixtures.php @@ -2,6 +2,7 @@ namespace App\DataFixtures; +use App\Factory\MediaObjectFactory; use App\Factory\PartnerFactory; use App\Factory\PostingFactory; use App\Factory\UserFactory; @@ -39,6 +40,12 @@ class AppFixtures extends Fixture ]; }); - //PartnerFactory::createMany(50); + MediaObjectFactory::createMany(50); + PartnerFactory::createMany(50, function() { + return [ + 'logo' => MediaObjectFactory::random() + ]; + }); + } } diff --git a/src/DataFixtures/FakeValues.php b/src/DataFixtures/FakeValues.php new file mode 100644 index 0000000..3909c9e --- /dev/null +++ b/src/DataFixtures/FakeValues.php @@ -0,0 +1,174 @@ + + * @date 06.02.24 + */ + + +namespace App\DataFixtures; + + +class FakeValues +{ + const FIRST_NAMES = [ + 'Alice', 'Bob', 'Charlie', 'David', 'Emma', + 'Frank', 'Grace', 'Henry', 'Ivy', 'Jack', + 'Kate', 'Liam', 'Mia', 'Noah', 'Olivia', + 'Paul', 'Quinn', 'Ryan', 'Sophia', 'Thomas', + 'Ursula', 'Victor', 'Wendy', 'Xander', 'Yvonne' + ]; + + const LAST_NAMES = [ + 'Smith', 'Johnson', 'Williams', 'Jones', 'Brown', + 'Davis', 'Miller', 'Wilson', 'Moore', 'Taylor', + 'Anderson', 'Thomas', 'Jackson', 'White', 'Harris', + 'Martin', 'Thompson', 'Garcia', 'Martinez', 'Robinson', + 'Clark', 'Lewis', 'Lee', 'Walker', 'Hall' + ]; + + const COMPANY_NAMES = [ + "QuantumSolutions", "InnovateHub", "NexusDynamics", "ZenithTech", + "StellarCraft", "SynergeticSystems", "PinnacleInnovations", "HorizonForge", + "ApexVentures", "QuantumQuotient", "NebulaLabs", "CatalystX", + "ZenithInventia", "EclipticEnterprises", "NovaSynth", "ProdigySolutions", + "TechnoSphereX", "InfinitiInnovate", "FusionForge", "EpochTech", + "QuantumLeapIndustries", "VertexVanguard", "RadiantInvent", "NebulaNex", + "StellarSprint", "AscendInnovations", "PulsarSolutions", "SynergyCraft", + "InfinityCatalyst", "ZenithDynamics", "QuantumHorizon", "EvolveNex", + "OrionInnovate", "FusionFrontiers", "ApexArc", "NebulaTech", "QuantumSynergies", + "InnovateMinds", "PinnaclePulse", "EpochElite", "ZenithForge", "InfinitiSprint", + "RadiantRealm", "QuantumQuasar", "HorizonHarbor", "ApexNucleus", "NebulaNovus", + "SynergeticSynth", "QuantumQuotum", "InnovateVista", "CrimsonCatalyst", + "InfernoSolutions", "LunarInnovations", "VortexVentures", "StratosCraft", + "CelestialSynergies", "AuroraInventia", "PhoenixFrontiers", "IgniteIndustries", + "SolsticeSprint", "GalacticGears", "EquinoxEnterprises", "EclipseElite", + "OrbitInnovate", "AstralArc", "MeridianMinds", "PolarisPulse", "PlasmaPinnacle", + "ThunderTech", "QuasarQuest", "CosmicCatalyst", "RadiantRift", "VividVista", + "SpectrumSolutions", "AetherAegis", "PrimePulse", "NebulaNest", "QuantumQuell", + "EternalEcliptic", "ParagonPinnacle", "OmniverseOrbit", "ZenithZephyr", + "CeruleanCraft", "SerenitySynergetic", "VelocityVortex", "LuminousLabs", + "VistaVortex", "PinnaclePanorama", "NebulaNurture", "QuantumQuell", "EclipseEden", + "NebulaNectar", "SynergeticSerene", "QuantumQuasar", "InnovateInfinity", + "RadiantRapture", "ZenithZest", "AuroraAegis", "CelestialCascade" + ]; + + const COMPANY_LEGAL_FORMS = [ + "GmbH", "AG", "Limited", "LLC", + "SRL", "SAS", "S.A.", "Inc.", + "Pte Ltd", "Ltd.", "K.K.", "B.V.", + "S.A.S.", "Oy", "S.A.R.L.", "A/S", + "N.V.", "LLP", "PLC", "GmbH & Co. KG", + "Co. Ltd.", "AB", "SPA", "S.C.", + "Ltda.", "S.R.L.", "JSC", "PTY Ltd", + "OÜ", "Sdn Bhd" + ]; + + const CITIES = [ + "Tokio", "New York City", "London", "Paris", + "Berlin", "Peking", "Moskau", "Istanbul", + "Mumbai", "Kairo", "Sydney", "Rom", + "Seoul", "Rio de Janeiro", "Kapstadt", "Toronto", + "Kiew", "Dubai", "Bangkok", "Buenos Aires", + "Los Angeles", "Singapur", "Mexiko-Stadt", "Stockholm", + "Hanoi", "Kopenhagen", "Jakarta", "Kuala Lumpur", + "Lissabon", "Amsterdam", "Manila", "Helsinki", + "Oslo", "Lima", "Madrid", "Warschau", + "Bogotá", "Wien", "Kathmandu", "Johannesburg", + "Dublin", "Budapest", "Prag", "Zürich", + "Athen", "Nairobi", "Edinburgh", "Melbourne", + "San Francisco", "Kuala Lumpur", "Guangzhou", "Riad", + "Karatschi", "Kolkata", "Brüssel", "Hamburg", + "Vancouver", "Doha", "Wellington", "Reykjavik", + "Manhattan", "Shanghai", "Bagdad", "Nairobi", + "Tehran", "Kuwait-Stadt", "Phnom Penh", "Accra", + "Brisbane", "Montreal", "Bucharest", "Lagos", + "Guatemala City", "Quito", "Caracas", "Panama City", + "Havanna", "Baku", "Dhaka", "Colombo", + "Kampala", "Tunis", "Port-au-Prince", "Tallinn", + "Tbilisi", "Ulaanbaatar", "Lusaka", "Yerevan", + "Kinshasa", "Brazzaville", "Suva", "Honiara", + "Tripolis", "Minsk", "Naypyidaw", "Windhoek", + "Lilongwe", "Astana", "Ashgabat", "Tirana", + "Antananarivo", "Vientiane", "Maputo", "Ouagadougou" + ]; + + const STREETS = [ + "Main Street", "Broadway", "Park Avenue", "Market Street", + "High Street", "Champs-Élysées", "Red Square", "Istiklal Avenue", + "Nanjing Road", "Rodeo Drive", "Oxford Street", "Sunset Boulevard", + "Wall Street", "Abbey Road", "Fifth Avenue", "Lombard Street", + "Bourbon Street", "Baker Street", "Sesame Street", "La Rambla", + "Rue de la Paix", "Avenida Paulista", "Ginza", "Khao San Road", + "King's Road", "Via del Corso", "Changan Avenue", "Gran Vía", + "Alexanderplatz", "Kurfürstendamm", "Grafton Street", "Nevsky Prospect", + "Vaci Street", "Queen Street", "Gran Via", "Nathan Road", + "Shibuya Crossing", "Michigan Avenue", "Passeig de Gràcia", "Nile Street", + "Bleecker Street", "Via Dolorosa", "Roppongi Hills", "Rua Augusta", + "Knez Mihailova Street", "Kingsway", "Magazine Street", "Piazza San Marco", + "Jalan Bukit Bintang", "Kärntner Strasse", "Lombard Street", "Národní třída", + "Orchard Road", "Rua das Flores", "Tverskaya Street", "Avenue Habib Bourguiba", + "Maidan Nezalezhnosti", "Ipanema Beach", "Avenue des Champs-Élysées", "Penny Lane", + "Via Appia", "Calle Ocho", "Montmartre", "Brick Lane", + "Pearl Street", "Portobello Road", "Aoyama Dori", "Rua do Ouvidor", + "Grønnegade", "Istedgade", "Strøget", "Knez Mihailova", + "Piotrkowska Street", "Laugavegur", "Bahnhofstrasse", "Kauppatori", + "Ulica Floriańska", "Drottninggatan", "Mannerheimintie", "Leidsestraat", + "Via della Conciliazione", "Jermyn Street", "Nørrebrogade", "Strandvägen", + "Bund Street", "Rue du Faubourg Saint-Honoré", "Kalverstraat", "The Mall", + "Nikolskaya Street", "Stroget", "Laugavegur", "Princes Street", + "Esplanade Avenue", "Lincoln Road", "Ilica Street", "Plaza de España", + "Paseo de la Reforma", "Copacabana Beach", "Köpmangatan", "O'Connell Street" + ]; + + const COUNTRIES = [ + "Afghanistan", "Albania", "Algeria", "Andorra", + "Angola", "Antigua and Barbuda", "Argentina", "Armenia", + "Australia", "Austria", "Azerbaijan", "Bahamas", + "Bahrain", "Bangladesh", "Barbados", "Belarus", + "Belgium", "Belize", "Benin", "Bhutan", + "Bolivia", "Bosnia and Herzegovina", "Botswana", "Brazil", + "Brunei", "Bulgaria", "Burkina Faso", "Burundi", + "Cabo Verde", "Cambodia", "Cameroon", "Canada", + "Central African Republic", "Chad", "Chile", "China", + "Colombia", "Comoros", "Congo", "Costa Rica", + "Côte d'Ivoire", "Croatia", "Cuba", "Cyprus", + "Czechia", "Denmark", "Djibouti", "Dominica", + "Dominican Republic", "Ecuador", "Egypt", "El Salvador", + "Equatorial Guinea", "Eritrea", "Estonia", "Eswatini", + "Ethiopia", "Fiji", "Finland", "France", + "Gabon", "Gambia", "Georgia", "Germany", + "Ghana", "Greece", "Grenada", "Guatemala", + "Guinea", "Guinea-Bissau", "Guyana", "Haiti", + "Honduras", "Hungary", "Iceland", "India", + "Indonesia", "Iran", "Iraq", "Ireland", + "Israel", "Italy", "Jamaica", "Japan", + "Jordan", "Kazakhstan", "Kenya", "Kiribati", + "Korea, North", "Korea, South", "Kuwait", "Kyrgyzstan", + "Laos", "Latvia", "Lebanon", "Lesotho", + "Liberia", "Libya", "Liechtenstein", "Lithuania", + "Luxembourg", "Madagascar", "Malawi", "Malaysia", + "Maldives", "Mali", "Malta", "Marshall Islands", + "Mauritania", "Mauritius", "Mexico", "Micronesia", + "Moldova", "Monaco", "Mongolia", "Montenegro", + "Morocco", "Mozambique", "Myanmar", "Namibia", + "Nauru", "Nepal", "Netherlands", "New Zealand", + "Nicaragua", "Niger", "Nigeria", "North Macedonia", + "Norway", "Oman", "Pakistan", "Palau", + "Panama", "Papua New Guinea", "Paraguay", "Peru", + "Philippines", "Poland", "Portugal", "Qatar", + "Romania", "Russia", "Rwanda", "Saint Kitts and Nevis", + "Saint Lucia", "Saint Vincent and the Grenadines", "Samoa", "San Marino", + "Sao Tome and Principe", "Saudi Arabia", "Senegal", "Serbia", + "Seychelles", "Sierra Leone", "Singapore", "Slovakia", + "Slovenia", "Solomon Islands", "Somalia", "South Africa", + "South Sudan", "Spain", "Sri Lanka", "Sudan", + "Suriname", "Sweden", "Switzerland", "Syria", + "Taiwan", "Tajikistan", "Tanzania", "Thailand", + "Timor-Leste", "Togo", "Tonga", "Trinidad and Tobago", + "Tunisia", "Turkey", "Turkmenistan", "Tuvalu", + "Uganda", "Ukraine", "United Arab Emirates", "United Kingdom", + "United States", "Uruguay", "Uzbekistan", "Vanuatu", + "Vatican City", "Venezuela", "Vietnam", "Yemen", + "Zambia", "Zimbabwe" + ]; +} \ No newline at end of file diff --git a/src/DataFixtures/images/logos/1176.png b/src/DataFixtures/images/logos/1176.png new file mode 100644 index 0000000..54a8ef6 Binary files /dev/null and b/src/DataFixtures/images/logos/1176.png differ diff --git a/src/DataFixtures/images/logos/13051765.png b/src/DataFixtures/images/logos/13051765.png new file mode 100644 index 0000000..8c456f7 Binary files /dev/null and b/src/DataFixtures/images/logos/13051765.png differ diff --git a/src/DataFixtures/images/logos/21601.png b/src/DataFixtures/images/logos/21601.png new file mode 100644 index 0000000..1b01049 Binary files /dev/null and b/src/DataFixtures/images/logos/21601.png differ diff --git a/src/DataFixtures/images/logos/2673787.webp b/src/DataFixtures/images/logos/2673787.webp new file mode 100644 index 0000000..9fc736a Binary files /dev/null and b/src/DataFixtures/images/logos/2673787.webp differ diff --git a/src/DataFixtures/images/logos/282540.webp b/src/DataFixtures/images/logos/282540.webp new file mode 100644 index 0000000..e6b39ed Binary files /dev/null and b/src/DataFixtures/images/logos/282540.webp differ diff --git a/src/DataFixtures/images/logos/61109.png b/src/DataFixtures/images/logos/61109.png new file mode 100644 index 0000000..92881e7 Binary files /dev/null and b/src/DataFixtures/images/logos/61109.png differ diff --git a/src/DataFixtures/images/logos/731972.png b/src/DataFixtures/images/logos/731972.png new file mode 100644 index 0000000..831c823 Binary files /dev/null and b/src/DataFixtures/images/logos/731972.png differ diff --git a/src/DataFixtures/images/logos/732228.png b/src/DataFixtures/images/logos/732228.png new file mode 100644 index 0000000..c8eb273 Binary files /dev/null and b/src/DataFixtures/images/logos/732228.png differ diff --git a/src/DataFixtures/images/logos/73970c892d748c7507db8e10d71535b0-apple-logo-symbol.png b/src/DataFixtures/images/logos/73970c892d748c7507db8e10d71535b0-apple-logo-symbol.png new file mode 100644 index 0000000..6ab7b39 Binary files /dev/null and b/src/DataFixtures/images/logos/73970c892d748c7507db8e10d71535b0-apple-logo-symbol.png differ diff --git a/src/DataFixtures/images/logos/87390.png b/src/DataFixtures/images/logos/87390.png new file mode 100644 index 0000000..c76aeff Binary files /dev/null and b/src/DataFixtures/images/logos/87390.png differ diff --git a/src/DataFixtures/images/logos/DropTableIcon_HollywoodHoganCollectible.png b/src/DataFixtures/images/logos/DropTableIcon_HollywoodHoganCollectible.png new file mode 100644 index 0000000..2775db8 Binary files /dev/null and b/src/DataFixtures/images/logos/DropTableIcon_HollywoodHoganCollectible.png differ diff --git a/src/DataFixtures/images/logos/LOGO-VB-Kreis-small.png b/src/DataFixtures/images/logos/LOGO-VB-Kreis-small.png new file mode 100644 index 0000000..93cc203 Binary files /dev/null and b/src/DataFixtures/images/logos/LOGO-VB-Kreis-small.png differ diff --git a/src/DataFixtures/images/logos/Logo_LogoExample_Header_1_EN.webp b/src/DataFixtures/images/logos/Logo_LogoExample_Header_1_EN.webp new file mode 100644 index 0000000..eff501d Binary files /dev/null and b/src/DataFixtures/images/logos/Logo_LogoExample_Header_1_EN.webp differ diff --git a/src/DataFixtures/images/logos/Logo_LogoExample_Header_3_EN.webp b/src/DataFixtures/images/logos/Logo_LogoExample_Header_3_EN.webp new file mode 100644 index 0000000..8491d87 Binary files /dev/null and b/src/DataFixtures/images/logos/Logo_LogoExample_Header_3_EN.webp differ diff --git a/src/DataFixtures/images/logos/Logo_LogoExample_Header_4_EN.webp b/src/DataFixtures/images/logos/Logo_LogoExample_Header_4_EN.webp new file mode 100644 index 0000000..dd0edeb Binary files /dev/null and b/src/DataFixtures/images/logos/Logo_LogoExample_Header_4_EN.webp differ diff --git a/src/DataFixtures/images/logos/SketchUp-Logo.png b/src/DataFixtures/images/logos/SketchUp-Logo.png new file mode 100644 index 0000000..d45668d Binary files /dev/null and b/src/DataFixtures/images/logos/SketchUp-Logo.png differ diff --git a/src/DataFixtures/images/logos/Unbenannt.png b/src/DataFixtures/images/logos/Unbenannt.png new file mode 100644 index 0000000..23a0721 Binary files /dev/null and b/src/DataFixtures/images/logos/Unbenannt.png differ diff --git a/src/DataFixtures/images/logos/Web.de_logo.svg b/src/DataFixtures/images/logos/Web.de_logo.svg new file mode 100644 index 0000000..88fa9ff --- /dev/null +++ b/src/DataFixtures/images/logos/Web.de_logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/DataFixtures/images/logos/com.gamerlogomaker.eSportsLogoMakerPro.GamingLogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9_512x512.webp b/src/DataFixtures/images/logos/com.gamerlogomaker.eSportsLogoMakerPro.GamingLogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9_512x512.webp new file mode 100644 index 0000000..c54493e Binary files /dev/null and b/src/DataFixtures/images/logos/com.gamerlogomaker.eSportsLogoMakerPro.GamingLogos-8b47d6d9-1690-46c0-898b-b5f1d4d9b5f9_512x512.webp differ diff --git a/src/DataFixtures/images/logos/google-chrome-portable-logo_1-1-30.webp b/src/DataFixtures/images/logos/google-chrome-portable-logo_1-1-30.webp new file mode 100644 index 0000000..730e961 Binary files /dev/null and b/src/DataFixtures/images/logos/google-chrome-portable-logo_1-1-30.webp differ diff --git a/src/DataFixtures/images/logos/hsv.svg b/src/DataFixtures/images/logos/hsv.svg new file mode 100644 index 0000000..dc65f16 --- /dev/null +++ b/src/DataFixtures/images/logos/hsv.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/DataFixtures/images/logos/huawei-logo-9.png b/src/DataFixtures/images/logos/huawei-logo-9.png new file mode 100644 index 0000000..f1e9f5b Binary files /dev/null and b/src/DataFixtures/images/logos/huawei-logo-9.png differ diff --git a/src/DataFixtures/images/logos/images.jpg b/src/DataFixtures/images/logos/images.jpg new file mode 100644 index 0000000..81bdbb7 Binary files /dev/null and b/src/DataFixtures/images/logos/images.jpg differ diff --git a/src/DataFixtures/images/logos/logo.png b/src/DataFixtures/images/logos/logo.png new file mode 100644 index 0000000..7615456 Binary files /dev/null and b/src/DataFixtures/images/logos/logo.png differ diff --git a/src/DataFixtures/images/logos/mobile-icon.png b/src/DataFixtures/images/logos/mobile-icon.png new file mode 100644 index 0000000..720a37f Binary files /dev/null and b/src/DataFixtures/images/logos/mobile-icon.png differ diff --git a/src/DataFixtures/images/logos/reddit-fill-logo-icon-256x256-3z8kcz41.png b/src/DataFixtures/images/logos/reddit-fill-logo-icon-256x256-3z8kcz41.png new file mode 100644 index 0000000..9dfe9a1 Binary files /dev/null and b/src/DataFixtures/images/logos/reddit-fill-logo-icon-256x256-3z8kcz41.png differ diff --git a/src/DataFixtures/images/logos/spotify_icon_249751.png b/src/DataFixtures/images/logos/spotify_icon_249751.png new file mode 100644 index 0000000..e8bb26b Binary files /dev/null and b/src/DataFixtures/images/logos/spotify_icon_249751.png differ diff --git a/src/DataFixtures/images/logos/urn ard image e86f6849215ea7e6.jpg b/src/DataFixtures/images/logos/urn ard image e86f6849215ea7e6.jpg new file mode 100644 index 0000000..5951a71 Binary files /dev/null and b/src/DataFixtures/images/logos/urn ard image e86f6849215ea7e6.jpg differ diff --git a/src/DataFixtures/images/logos/volkswagen.png b/src/DataFixtures/images/logos/volkswagen.png new file mode 100644 index 0000000..ae9a4b8 Binary files /dev/null and b/src/DataFixtures/images/logos/volkswagen.png differ diff --git a/src/DataFixtures/images/profiles/0_big.jpg b/src/DataFixtures/images/profiles/0_big.jpg new file mode 100644 index 0000000..2f05427 Binary files /dev/null and b/src/DataFixtures/images/profiles/0_big.jpg differ diff --git a/src/DataFixtures/images/profiles/0_big.png b/src/DataFixtures/images/profiles/0_big.png new file mode 100644 index 0000000..ce0ed94 Binary files /dev/null and b/src/DataFixtures/images/profiles/0_big.png differ diff --git a/src/DataFixtures/images/profiles/1000_F_177163287_etk8KoMaSVqgPWW7zqvl0WcQpMcW0DOV.jpg b/src/DataFixtures/images/profiles/1000_F_177163287_etk8KoMaSVqgPWW7zqvl0WcQpMcW0DOV.jpg new file mode 100644 index 0000000..461f840 Binary files /dev/null and b/src/DataFixtures/images/profiles/1000_F_177163287_etk8KoMaSVqgPWW7zqvl0WcQpMcW0DOV.jpg differ diff --git a/src/DataFixtures/images/profiles/13010084-5154854916918902.jpg b/src/DataFixtures/images/profiles/13010084-5154854916918902.jpg new file mode 100644 index 0000000..54dc206 Binary files /dev/null and b/src/DataFixtures/images/profiles/13010084-5154854916918902.jpg differ diff --git a/src/DataFixtures/images/profiles/168809ab65b0d64db1b3b4f4403de0de,id=0b1ab94f,b=bravo,w=1600,rm=sk.jpeg b/src/DataFixtures/images/profiles/168809ab65b0d64db1b3b4f4403de0de,id=0b1ab94f,b=bravo,w=1600,rm=sk.jpeg new file mode 100644 index 0000000..c6ee04f Binary files /dev/null and b/src/DataFixtures/images/profiles/168809ab65b0d64db1b3b4f4403de0de,id=0b1ab94f,b=bravo,w=1600,rm=sk.jpeg differ diff --git a/src/DataFixtures/images/profiles/20583185c2ea579.jpg b/src/DataFixtures/images/profiles/20583185c2ea579.jpg new file mode 100644 index 0000000..bf5b0c7 Binary files /dev/null and b/src/DataFixtures/images/profiles/20583185c2ea579.jpg differ diff --git a/src/DataFixtures/images/profiles/2524883796510419.webp b/src/DataFixtures/images/profiles/2524883796510419.webp new file mode 100644 index 0000000..2d42181 Binary files /dev/null and b/src/DataFixtures/images/profiles/2524883796510419.webp differ diff --git a/src/DataFixtures/images/profiles/32a62b56546b4804c4599b28ae3b4078.jpg b/src/DataFixtures/images/profiles/32a62b56546b4804c4599b28ae3b4078.jpg new file mode 100644 index 0000000..a243a16 Binary files /dev/null and b/src/DataFixtures/images/profiles/32a62b56546b4804c4599b28ae3b4078.jpg differ diff --git a/src/DataFixtures/images/profiles/436007280464-5.jpg b/src/DataFixtures/images/profiles/436007280464-5.jpg new file mode 100644 index 0000000..0111b63 Binary files /dev/null and b/src/DataFixtures/images/profiles/436007280464-5.jpg differ diff --git a/src/DataFixtures/images/profiles/6625095-mid_avatar (3).jpg b/src/DataFixtures/images/profiles/6625095-mid_avatar (3).jpg new file mode 100644 index 0000000..4380f87 Binary files /dev/null and b/src/DataFixtures/images/profiles/6625095-mid_avatar (3).jpg differ diff --git a/src/DataFixtures/images/profiles/8-fakten-ueber-die-comicfigur-spider-man.jpg b/src/DataFixtures/images/profiles/8-fakten-ueber-die-comicfigur-spider-man.jpg new file mode 100644 index 0000000..615041b Binary files /dev/null and b/src/DataFixtures/images/profiles/8-fakten-ueber-die-comicfigur-spider-man.jpg differ diff --git a/src/DataFixtures/images/profiles/9RtuhpzDa9yB1ClLRFSeq0.webp b/src/DataFixtures/images/profiles/9RtuhpzDa9yB1ClLRFSeq0.webp new file mode 100644 index 0000000..eb33d41 Binary files /dev/null and b/src/DataFixtures/images/profiles/9RtuhpzDa9yB1ClLRFSeq0.webp differ diff --git a/src/DataFixtures/images/profiles/BNdZwuCbqzD8ouJap7Sfpn.webp b/src/DataFixtures/images/profiles/BNdZwuCbqzD8ouJap7Sfpn.webp new file mode 100644 index 0000000..f9f236a Binary files /dev/null and b/src/DataFixtures/images/profiles/BNdZwuCbqzD8ouJap7Sfpn.webp differ diff --git a/src/DataFixtures/images/profiles/C_mBRTedqwkBJmqnBpHvw1.webp b/src/DataFixtures/images/profiles/C_mBRTedqwkBJmqnBpHvw1.webp new file mode 100644 index 0000000..ab27cc7 Binary files /dev/null and b/src/DataFixtures/images/profiles/C_mBRTedqwkBJmqnBpHvw1.webp differ diff --git a/src/DataFixtures/images/profiles/b22fcca5341f9bc71f4ebb9e928b07d1.jpg b/src/DataFixtures/images/profiles/b22fcca5341f9bc71f4ebb9e928b07d1.jpg new file mode 100644 index 0000000..ed08b56 Binary files /dev/null and b/src/DataFixtures/images/profiles/b22fcca5341f9bc71f4ebb9e928b07d1.jpg differ diff --git a/src/DataFixtures/images/profiles/c03fdcdca0fbd768b2a1ce9ba9e5b842.jpg b/src/DataFixtures/images/profiles/c03fdcdca0fbd768b2a1ce9ba9e5b842.jpg new file mode 100644 index 0000000..44792a2 Binary files /dev/null and b/src/DataFixtures/images/profiles/c03fdcdca0fbd768b2a1ce9ba9e5b842.jpg differ diff --git a/src/DataFixtures/images/profiles/cartoon-illustration-der-mann-traurig-oder-unglucklich-comic-figur-dnm4r6.jpg b/src/DataFixtures/images/profiles/cartoon-illustration-der-mann-traurig-oder-unglucklich-comic-figur-dnm4r6.jpg new file mode 100644 index 0000000..c802400 Binary files /dev/null and b/src/DataFixtures/images/profiles/cartoon-illustration-der-mann-traurig-oder-unglucklich-comic-figur-dnm4r6.jpg differ diff --git a/src/DataFixtures/images/profiles/comic-hund-sticker.jpg b/src/DataFixtures/images/profiles/comic-hund-sticker.jpg new file mode 100644 index 0000000..5aa8809 Binary files /dev/null and b/src/DataFixtures/images/profiles/comic-hund-sticker.jpg differ diff --git a/src/DataFixtures/images/profiles/draw-you-into-superhero-comic-cartoon-character.webp b/src/DataFixtures/images/profiles/draw-you-into-superhero-comic-cartoon-character.webp new file mode 100644 index 0000000..9908768 Binary files /dev/null and b/src/DataFixtures/images/profiles/draw-you-into-superhero-comic-cartoon-character.webp differ diff --git a/src/DataFixtures/images/profiles/goofy.jpg b/src/DataFixtures/images/profiles/goofy.jpg new file mode 100644 index 0000000..dedbce9 Binary files /dev/null and b/src/DataFixtures/images/profiles/goofy.jpg differ diff --git a/src/DataFixtures/images/profiles/il_1588xN.5323657073_ieqj.avif b/src/DataFixtures/images/profiles/il_1588xN.5323657073_ieqj.avif new file mode 100644 index 0000000..64d42a7 Binary files /dev/null and b/src/DataFixtures/images/profiles/il_1588xN.5323657073_ieqj.avif differ diff --git a/src/DataFixtures/images/profiles/il_1588xN.5536812441_rkjx.avif b/src/DataFixtures/images/profiles/il_1588xN.5536812441_rkjx.avif new file mode 100644 index 0000000..2bcd6a1 Binary files /dev/null and b/src/DataFixtures/images/profiles/il_1588xN.5536812441_rkjx.avif differ diff --git a/src/DataFixtures/images/profiles/images.jpg b/src/DataFixtures/images/profiles/images.jpg new file mode 100644 index 0000000..aba0436 Binary files /dev/null and b/src/DataFixtures/images/profiles/images.jpg differ diff --git a/src/DataFixtures/images/profiles/micky-maus.jpg b/src/DataFixtures/images/profiles/micky-maus.jpg new file mode 100644 index 0000000..f1175cb Binary files /dev/null and b/src/DataFixtures/images/profiles/micky-maus.jpg differ diff --git a/src/DataFixtures/images/profiles/supershape-minions-folienballon-balloon-geburtstag-party_600x600.jpg b/src/DataFixtures/images/profiles/supershape-minions-folienballon-balloon-geburtstag-party_600x600.jpg new file mode 100644 index 0000000..9572fbb Binary files /dev/null and b/src/DataFixtures/images/profiles/supershape-minions-folienballon-balloon-geburtstag-party_600x600.jpg differ diff --git a/src/DataFixtures/images/profiles/traum-comic-popeye-deutung-symbol-300x300.jpg b/src/DataFixtures/images/profiles/traum-comic-popeye-deutung-symbol-300x300.jpg new file mode 100644 index 0000000..1004365 Binary files /dev/null and b/src/DataFixtures/images/profiles/traum-comic-popeye-deutung-symbol-300x300.jpg differ diff --git a/src/DataFixtures/images/profiles/vector-mascot-character-illustration-sausage-600nw-2296505457.webp b/src/DataFixtures/images/profiles/vector-mascot-character-illustration-sausage-600nw-2296505457.webp new file mode 100644 index 0000000..951eb8c Binary files /dev/null and b/src/DataFixtures/images/profiles/vector-mascot-character-illustration-sausage-600nw-2296505457.webp differ diff --git a/src/Entity/PartnerContact.php b/src/Entity/Contact.php similarity index 89% rename from src/Entity/PartnerContact.php rename to src/Entity/Contact.php index 4a8f2b6..0d93c18 100644 --- a/src/Entity/PartnerContact.php +++ b/src/Entity/Contact.php @@ -2,12 +2,12 @@ namespace App\Entity; -use App\Repository\PartnerContactRepository; +use App\Repository\ContactRepository; use Doctrine\DBAL\Types\Types; use Doctrine\ORM\Mapping as ORM; -#[ORM\Entity(repositoryClass: PartnerContactRepository::class)] -class PartnerContact +#[ORM\Entity(repositoryClass: ContactRepository::class)] +class Contact { #[ORM\Id] #[ORM\GeneratedValue] @@ -28,7 +28,7 @@ class PartnerContact private ?\DateTimeInterface $birthday = null; #[ORM\Column(length: 255, nullable: true)] - private ?string $picture = null; + private ?string $image = null; #[ORM\Column(length: 255, nullable: true)] private ?string $position = null; @@ -100,14 +100,14 @@ class PartnerContact return $this; } - public function getPicture(): ?string + public function getImage(): ?string { - return $this->picture; + return $this->image; } - public function setPicture(?string $picture): static + public function setImage(?string $image): static { - $this->picture = $picture; + $this->image = $image; return $this; } diff --git a/src/Entity/Partner.php b/src/Entity/Partner.php index 308ff31..e16878c 100644 --- a/src/Entity/Partner.php +++ b/src/Entity/Partner.php @@ -17,10 +17,10 @@ class Partner private ?int $id = null; #[ORM\Column(length: 255)] - private ?string $name = null; + private string $name; #[ORM\Column(type: 'string', enumType: PartnerType::class)] - private ?string $type = null; + private PartnerType $type; #[ORM\Column(length: 255, nullable: true)] private ?string $street = null; @@ -43,16 +43,17 @@ class Partner #[ORM\Column] private ?\DateTimeImmutable $createdAt = null; - #[ORM\OneToMany(mappedBy: 'partner', targetEntity: PartnerContact::class, orphanRemoval: true)] - private Collection $partnerContacts; + #[ORM\OneToMany(mappedBy: 'partner', targetEntity: Contact::class, orphanRemoval: true)] + private Collection $contacts; - #[ORM\Column(length: 255, nullable: true)] - private ?string $logo = null; + #[ORM\ManyToOne(targetEntity: MediaObject::class)] + #[ORM\JoinColumn(nullable: true)] + private ?MediaObject $logo = null; public function __construct() { $this->createdAt = new \DateTimeImmutable(); - $this->partnerContacts = new ArrayCollection(); + $this->contacts = new ArrayCollection(); } public function getId(): ?int @@ -60,28 +61,24 @@ class Partner return $this->id; } - public function getName(): ?string + public function getName(): string { return $this->name; } - public function setName(string $name): static + public function setName(string $name): void { $this->name = $name; - - return $this; } - public function getType(): ?string + public function getType(): PartnerType { return $this->type; } - public function setType(string $type): static + public function setType(PartnerType $type): void { $this->type = $type; - - return $this; } public function getStreet(): ?string @@ -89,11 +86,9 @@ class Partner return $this->street; } - public function setStreet(?string $street): static + public function setStreet(?string $street): void { $this->street = $street; - - return $this; } public function getStreetNo(): ?string @@ -101,11 +96,9 @@ class Partner return $this->streetNo; } - public function setStreetNo(?string $streetNo): static + public function setStreetNo(?string $streetNo): void { $this->streetNo = $streetNo; - - return $this; } public function getZip(): ?string @@ -113,11 +106,9 @@ class Partner return $this->zip; } - public function setZip(?string $zip): static + public function setZip(?string $zip): void { $this->zip = $zip; - - return $this; } public function getCity(): ?string @@ -125,11 +116,9 @@ class Partner return $this->city; } - public function setCity(?string $city): static + public function setCity(?string $city): void { $this->city = $city; - - return $this; } public function getCountry(): ?string @@ -137,11 +126,9 @@ class Partner return $this->country; } - public function setCountry(?string $country): static + public function setCountry(?string $country): void { $this->country = $country; - - return $this; } public function getWebsite(): ?string @@ -149,11 +136,9 @@ class Partner return $this->website; } - public function setWebsite(?string $website): static + public function setWebsite(?string $website): void { $this->website = $website; - - return $this; } public function getCreatedAt(): ?\DateTimeImmutable @@ -161,46 +146,29 @@ class Partner return $this->createdAt; } - /** - * @return Collection - */ - public function getPartnerContacts(): Collection + public function setCreatedAt(?\DateTimeImmutable $createdAt): void { - return $this->partnerContacts; + $this->createdAt = $createdAt; } - public function addPartnerContact(PartnerContact $partnerContact): static + public function getContacts(): Collection { - if (!$this->partnerContacts->contains($partnerContact)) { - $this->partnerContacts->add($partnerContact); - $partnerContact->setPartner($this); - } - - return $this; + return $this->contacts; } - public function removePartnerContact(PartnerContact $partnerContact): static + public function setContacts(Collection $contacts): void { - if ($this->partnerContacts->removeElement($partnerContact)) { - // set the owning side to null (unless already changed) - if ($partnerContact->getPartner() === $this) { - $partnerContact->setPartner(null); - } - } - - return $this; + $this->contacts = $contacts; } - public function getLogo(): ?string + public function getLogo(): ?MediaObject { return $this->logo; } - public function setLogo(?string $logo): static + public function setLogo(?MediaObject $logo): void { $this->logo = $logo; - - return $this; } } diff --git a/src/Entity/Posting.php b/src/Entity/Posting.php index 29d27e4..5de914c 100644 --- a/src/Entity/Posting.php +++ b/src/Entity/Posting.php @@ -20,7 +20,7 @@ class Posting #[ORM\Column] private ?\DateTimeImmutable $createdAt = null; - #[ORM\ManyToOne(inversedBy: 'userPosts')] + #[ORM\ManyToOne(inversedBy: 'postings')] #[ORM\JoinColumn(nullable: false)] private ?User $owner = null; diff --git a/src/Entity/User.php b/src/Entity/User.php index a24f35c..8b5aff6 100644 --- a/src/Entity/User.php +++ b/src/Entity/User.php @@ -43,13 +43,13 @@ class User implements UserInterface, PasswordAuthenticatedUserInterface private ?\DateTimeImmutable $createdAt = null; #[ORM\OneToMany(mappedBy: 'owner', targetEntity: Posting::class, orphanRemoval: true)] - private Collection $userPosts; + private Collection $postings; public function __construct() { $this->createdAt = new \DateTimeImmutable(); - $this->userPosts = new ArrayCollection(); + $this->postings = new ArrayCollection(); $this->active = true; } @@ -155,15 +155,15 @@ class User implements UserInterface, PasswordAuthenticatedUserInterface /** * @return Collection */ - public function getUserPosts(): Collection + public function getPostings(): Collection { - return $this->userPosts; + return $this->postings; } public function addUserPost(Posting $post): static { - if (!$this->userPosts->contains($post)) { - $this->userPosts->add($post); + if (!$this->postings->contains($post)) { + $this->postings->add($post); $post->setOwner($this); } @@ -172,7 +172,7 @@ class User implements UserInterface, PasswordAuthenticatedUserInterface public function removeUserPost(Posting $post): static { - if ($this->userPosts->removeElement($post)) { + if ($this->postings->removeElement($post)) { // set the owning side to null (unless already changed) if ($post->getOwner() === $this) { $post->setOwner(null); diff --git a/src/Factory/MediaObjectFactory.php b/src/Factory/MediaObjectFactory.php new file mode 100644 index 0000000..4d7f8ae --- /dev/null +++ b/src/Factory/MediaObjectFactory.php @@ -0,0 +1,83 @@ + + * + * @method MediaObject|Proxy create(array|callable $attributes = []) + * @method static MediaObject|Proxy createOne(array $attributes = []) + * @method static MediaObject|Proxy find(object|array|mixed $criteria) + * @method static MediaObject|Proxy findOrCreate(array $attributes) + * @method static MediaObject|Proxy first(string $sortedField = 'id') + * @method static MediaObject|Proxy last(string $sortedField = 'id') + * @method static MediaObject|Proxy random(array $attributes = []) + * @method static MediaObject|Proxy randomOrCreate(array $attributes = []) + * @method static EntityRepository|RepositoryProxy repository() + * @method static MediaObject[]|Proxy[] all() + * @method static MediaObject[]|Proxy[] createMany(int $number, array|callable $attributes = []) + * @method static MediaObject[]|Proxy[] createSequence(iterable|callable $sequence) + * @method static MediaObject[]|Proxy[] findBy(array $attributes) + * @method static MediaObject[]|Proxy[] randomRange(int $min, int $max, array $attributes = []) + * @method static MediaObject[]|Proxy[] randomSet(int $number, array $attributes = []) + */ +final class MediaObjectFactory extends ModelFactory +{ + /** + * @see https://symfony.com/bundles/ZenstruckFoundryBundle/current/index.html#factories-as-services + * + * @todo inject services if required + */ + public function __construct( + private KernelInterface $appKernel + ) + { + parent::__construct(); + } + + /** + * @see https://symfony.com/bundles/ZenstruckFoundryBundle/current/index.html#model-factories + * + * @todo add your default values here + */ + protected function getDefaults(): array + { + $projectRoot = $this->appKernel->getProjectDir(); + + $folderPath = $projectRoot . '/src/DataFixtures/images/logos/'; + $files = glob($folderPath . '*.*'); + $randomFile = null; + if ($files !== false && count($files) > 0) { + $randomFile = $files[array_rand($files)]; + } + + return [ + 'file' => new ReplacingFile($randomFile) + ]; + } + + /** + * @see https://symfony.com/bundles/ZenstruckFoundryBundle/current/index.html#initialization + */ + protected function initialize(): self + { + return $this + // ->afterInstantiate(function(MediaObject $mediaObject): void {}) + ; + } + + protected static function getClass(): string + { + return MediaObject::class; + } +} diff --git a/src/Factory/PartnerFactory.php b/src/Factory/PartnerFactory.php index 3a29c19..62b594c 100644 --- a/src/Factory/PartnerFactory.php +++ b/src/Factory/PartnerFactory.php @@ -2,6 +2,7 @@ namespace App\Factory; +use App\DataFixtures\FakeValues; use App\Entity\Partner; use App\Enum\PartnerType; use App\Repository\PartnerRepository; @@ -30,6 +31,7 @@ use Zenstruck\Foundry\RepositoryProxy; */ final class PartnerFactory extends ModelFactory { + /** * @see https://symfony.com/bundles/ZenstruckFoundryBundle/current/index.html#factories-as-services * @@ -48,14 +50,14 @@ final class PartnerFactory extends ModelFactory protected function getDefaults(): array { return [ - 'name' => self::faker()->text(255), + 'name' => self::faker()->randomElement(FakeValues::COMPANY_NAMES)." ".self::faker()->randomElement(FakeValues::COMPANY_LEGAL_FORMS), 'type' => self::faker()->randomElement(PartnerType::cases()), - 'street' => self::faker()->text(255), - 'streetNo' => self::faker()->text(255), - 'zip' => self::faker()->text(255), - 'city' => self::faker()->text(255), - 'country' => self::faker()->text(255), - 'website' => self::faker()->text(255), + 'street' => self::faker()->randomElement(FakeValues::STREETS), + 'streetNo' => self::faker()->numberBetween(1,1000), + 'zip' => self::faker()->numberBetween(1000,10000), + 'city' => self::faker()->randomElement(FakeValues::CITIES), + 'country' => self::faker()->randomElement(FakeValues::COUNTRIES), + 'website' => 'https://spawntree.de/', ]; } diff --git a/src/Factory/PostingFactory.php b/src/Factory/PostingFactory.php index c73838e..7adfef5 100644 --- a/src/Factory/PostingFactory.php +++ b/src/Factory/PostingFactory.php @@ -48,7 +48,7 @@ final class PostingFactory extends ModelFactory { return [ 'message' => self::faker()->text(), - 'owner' => UserFactory::new(), + 'owner' => UserFactory::random(), ]; } @@ -58,7 +58,7 @@ final class PostingFactory extends ModelFactory protected function initialize(): self { return $this - // ->afterInstantiate(function(Post $post): void {}) + // ->afterInstantiate(function(Posting $post): void {}) ; } diff --git a/src/Factory/UserFactory.php b/src/Factory/UserFactory.php index 77aea1e..6a1b416 100644 --- a/src/Factory/UserFactory.php +++ b/src/Factory/UserFactory.php @@ -2,6 +2,7 @@ namespace App\Factory; +use App\DataFixtures\FakeValues; use App\Entity\User; use App\Repository\UserRepository; use Symfony\Component\PasswordHasher\Hasher\UserPasswordHasherInterface; @@ -65,8 +66,8 @@ final class UserFactory extends ModelFactory { return [ 'email' => self::faker()->email(), - 'firstName' => self::faker()->randomElement(self::FIRST_NAMES), - 'lastName' => self::faker()->randomElement(self::LAST_NAMES), + 'firstName' => self::faker()->randomElement(FakeValues::FIRST_NAMES), + 'lastName' => self::faker()->randomElement(FakeValues::LAST_NAMES), 'password' => "test", 'roles' => [], ]; diff --git a/src/Mapper/ContactApiToEntityMapper.php b/src/Mapper/ContactApiToEntityMapper.php new file mode 100644 index 0000000..4369fc1 --- /dev/null +++ b/src/Mapper/ContactApiToEntityMapper.php @@ -0,0 +1,56 @@ +id ? $this->repository->find($dto->id) : new Contact(); + if (!$entity) { + throw new \Exception('Partner not found'); + } + + return $entity; + } + + public function populate(object $from, object $to, array $context): object + { + $dto = $from; + assert($dto instanceof ContactApi); + $entity = $to; + assert($entity instanceof Contact); + + $entity->setFirstName($dto->firstName); + $entity->setLastName($dto->lastName); + $entity->setPartner($dto->partner); + $entity->setBirthday($dto->birthday); + $entity->setImage($dto->image); + $entity->setPosition($dto->position); + $entity->setPhone($dto->phone); + $entity->setEmail($dto->email); + + return $entity; + } +} diff --git a/src/Mapper/ContactEntityToApiMapper.php b/src/Mapper/ContactEntityToApiMapper.php new file mode 100644 index 0000000..988c53b --- /dev/null +++ b/src/Mapper/ContactEntityToApiMapper.php @@ -0,0 +1,50 @@ +id = $entity->getId(); + + return $dto; + } + + public function populate(object $from, object $to, array $context): object + { + $entity = $from; + $dto = $to; + assert($entity instanceof Contact); + assert($dto instanceof ContactApi); + + $dto->firstName = $entity->getFirstName(); + $dto->lastName = $entity->getLastName(); + $dto->partner = $entity->getPartner(); + $dto->birthday = $entity->getBirthday(); + $dto->image = $entity->getImage(); + $dto->position = $entity->getPosition(); + $dto->phone = $entity->getPhone(); + $dto->email = $entity->getEmail(); + $dto->createdAt = $entity->getCreatedAt(); + + return $dto; + } +} diff --git a/src/Mapper/PartnerApiToEntityMapper.php b/src/Mapper/PartnerApiToEntityMapper.php new file mode 100644 index 0000000..5229a31 --- /dev/null +++ b/src/Mapper/PartnerApiToEntityMapper.php @@ -0,0 +1,70 @@ +id ? $this->repository->find($dto->id) : new Partner(); + if (!$entity) { + throw new \Exception('Partner not found'); + } + + return $entity; + } + + public function populate(object $from, object $to, array $context): object + { + $dto = $from; + assert($dto instanceof PartnerApi); + $entity = $to; + assert($entity instanceof Partner); + + $entity->setName($dto->name); + $entity->setStreet($dto->street); + $entity->setStreetNo($dto->streetNo); + $entity->setZip($dto->zip); + $entity->setCity($dto->city); + $entity->setCountry($dto->country); + $entity->setWebsite($dto->website); + $entity->setLogo($dto->logo); + + $contactEntities = []; + foreach ($dto->contacts as $contactApi) { + $contactEntities[] = $this->microMapper->map($contactApi, Contact::class, [ + MicroMapperInterface::MAX_DEPTH => 0, + ]); + } + $this->propertyAccessor->setValue($entity, 'postings', $contactEntities); + + return $entity; + } +} diff --git a/src/Mapper/PartnerEntityToApiMapper.php b/src/Mapper/PartnerEntityToApiMapper.php new file mode 100644 index 0000000..d8b3ec0 --- /dev/null +++ b/src/Mapper/PartnerEntityToApiMapper.php @@ -0,0 +1,60 @@ +id = $entity->getId(); + + return $dto; + } + + public function populate(object $from, object $to, array $context): object + { + $entity = $from; + $dto = $to; + assert($entity instanceof Partner); + assert($dto instanceof PartnerApi); + + $dto->name = $entity->getName(); + $dto->type = $entity->getType(); + $dto->street = $entity->getStreet(); + $dto->streetNo = $entity->getStreetNo(); + $dto->zip = $entity->getZip(); + $dto->city = $entity->getCity(); + $dto->country = $entity->getCountry(); + $dto->website = $entity->getWebsite(); + $dto->logo = $entity->getLogo(); + $dto->createdAt = $entity->getCreatedAt(); + $dto->contacts = array_map(function(Contact $contact) { + return $this->microMapper->map($contact, ContactApi::class, [ + MicroMapperInterface::MAX_DEPTH => 0, + ]); + }, $entity->getContacts()->getValues()); + return $dto; + } +} diff --git a/src/Mapper/PostingApiToEntityMapper.php b/src/Mapper/PostingApiToEntityMapper.php index a7f4cf0..e3df541 100644 --- a/src/Mapper/PostingApiToEntityMapper.php +++ b/src/Mapper/PostingApiToEntityMapper.php @@ -33,7 +33,7 @@ class PostingApiToEntityMapper implements MapperInterface $entity = $dto->id ? $this->repository->find($dto->id) : new Posting(); if (!$entity) { - throw new \Exception('DragonTreasure not found'); + throw new \Exception('Posting not found'); } return $entity; @@ -42,8 +42,8 @@ class PostingApiToEntityMapper implements MapperInterface public function populate(object $from, object $to, array $context): object { $dto = $from; - $entity = $to; assert($dto instanceof PostingApi); + $entity = $to; assert($entity instanceof Posting); if ($dto->owner) { diff --git a/src/Mapper/UserApiToEntityMapper.php b/src/Mapper/UserApiToEntityMapper.php index d218d94..e2254d5 100644 --- a/src/Mapper/UserApiToEntityMapper.php +++ b/src/Mapper/UserApiToEntityMapper.php @@ -3,7 +3,6 @@ namespace App\Mapper; use App\ApiResource\UserApi; -use App\Entity\DragonTreasure; use App\Entity\User; use App\Entity\Posting; use App\Repository\UserRepository; @@ -53,12 +52,12 @@ class UserApiToEntityMapper implements MapperInterface } $userPostsEntities = []; - foreach ($dto->userPosts as $userPostApi) { + foreach ($dto->postings as $userPostApi) { $userPostsEntities[] = $this->microMapper->map($userPostApi, Posting::class, [ MicroMapperInterface::MAX_DEPTH => 0, ]); } - $this->propertyAccessor->setValue($entity, 'userPosts', $userPostsEntities); + $this->propertyAccessor->setValue($entity, 'postings', $userPostsEntities); return $entity; } diff --git a/src/Mapper/UserEntityToApiMapper.php b/src/Mapper/UserEntityToApiMapper.php index ccf7086..d82515b 100644 --- a/src/Mapper/UserEntityToApiMapper.php +++ b/src/Mapper/UserEntityToApiMapper.php @@ -40,11 +40,11 @@ class UserEntityToApiMapper implements MapperInterface $dto->email = $entity->getEmail(); $dto->firstName = $entity->getFirstName(); $dto->lastName = $entity->getLastName(); - $dto->userPosts = array_map(function(Posting $userPost) { + $dto->postings = array_map(function(Posting $userPost) { return $this->microMapper->map($userPost, PostingApi::class, [ MicroMapperInterface::MAX_DEPTH => 0, ]); - }, $entity->getUserPosts()->getValues()); + }, $entity->getPostings()->getValues()); return $dto; } diff --git a/src/Repository/PartnerContactRepository.php b/src/Repository/ContactRepository.php similarity index 56% rename from src/Repository/PartnerContactRepository.php rename to src/Repository/ContactRepository.php index 7e851b6..54b5113 100644 --- a/src/Repository/PartnerContactRepository.php +++ b/src/Repository/ContactRepository.php @@ -2,27 +2,27 @@ namespace App\Repository; -use App\Entity\PartnerContact; +use App\Entity\Contact; use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository; use Doctrine\Persistence\ManagerRegistry; /** - * @extends ServiceEntityRepository + * @extends ServiceEntityRepository * - * @method PartnerContact|null find($id, $lockMode = null, $lockVersion = null) - * @method PartnerContact|null findOneBy(array $criteria, array $orderBy = null) - * @method PartnerContact[] findAll() - * @method PartnerContact[] findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null) + * @method Contact|null find($id, $lockMode = null, $lockVersion = null) + * @method Contact|null findOneBy(array $criteria, array $orderBy = null) + * @method Contact[] findAll() + * @method Contact[] findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null) */ -class PartnerContactRepository extends ServiceEntityRepository +class ContactRepository extends ServiceEntityRepository { public function __construct(ManagerRegistry $registry) { - parent::__construct($registry, PartnerContact::class); + parent::__construct($registry, Contact::class); } // /** -// * @return PartnerContact[] Returns an array of PartnerContact objects +// * @return Contact[] Returns an array of Contact objects // */ // public function findByExampleField($value): array // { @@ -36,7 +36,7 @@ class PartnerContactRepository extends ServiceEntityRepository // ; // } -// public function findOneBySomeField($value): ?PartnerContact +// public function findOneBySomeField($value): ?Contact // { // return $this->createQueryBuilder('p') // ->andWhere('p.exampleField = :val') diff --git a/src/Repository/PostingRepository.php b/src/Repository/PostingRepository.php index a56b69f..4885abf 100644 --- a/src/Repository/PostingRepository.php +++ b/src/Repository/PostingRepository.php @@ -22,7 +22,7 @@ class PostingRepository extends ServiceEntityRepository } // /** -// * @return Post[] Returns an array of Post objects +// * @return Posting[] Returns an array of Posting objects // */ // public function findByExampleField($value): array // { @@ -36,7 +36,7 @@ class PostingRepository extends ServiceEntityRepository // ; // } -// public function findOneBySomeField($value): ?Post +// public function findOneBySomeField($value): ?Posting // { // return $this->createQueryBuilder('p') // ->andWhere('p.exampleField = :val')