40 lines
1.2 KiB
PHP
40 lines
1.2 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace App\Controller;
|
||
|
|
||
|
use App\Repository\OfferingRepository;
|
||
|
use App\Repository\WishRepository;
|
||
|
|
||
|
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||
|
use Symfony\Component\HttpFoundation\Response;
|
||
|
use Symfony\Component\Mailer\MailerInterface;
|
||
|
use Symfony\Component\Mime\Email;
|
||
|
use Symfony\Component\Routing\Annotation\Route;
|
||
|
|
||
|
class TradeController extends AbstractController
|
||
|
{
|
||
|
#[Route('/trade/{id}', name: 'trade')]
|
||
|
public function sendEmail(MailerInterface $mailer, OfferingRepository $offeringRepository, WishRepository $wishRepository): Response
|
||
|
{
|
||
|
$user = $this->getUser();
|
||
|
$offer = $offeringRepository->();
|
||
|
|
||
|
if(/* user not the logged in user */)
|
||
|
$email = (new Email())
|
||
|
->from('no-reply@pfleanz.li')
|
||
|
->to(/* user of offer */)
|
||
|
->replyTo(/* logged in user */)
|
||
|
->subject('Time for Symfony Mailer!')
|
||
|
->text('Sending emails is fun again!')
|
||
|
->htmlTemplate('user/trade/offer_email.html.twig');
|
||
|
try
|
||
|
{
|
||
|
$mailer->send($email);
|
||
|
} catch (TransportExceptionInterface $e) {
|
||
|
// TODO:
|
||
|
// print error
|
||
|
}
|
||
|
return $this->redirectToRoute('/offer', {'id': $id});
|
||
|
}
|
||
|
}
|