zend-blog-3-backend

Форк
0
49 строк · 964.0 Байт
1
<?php
2
/**
3
 * Created by PhpStorm.
4
 * User: morontt
5
 * Date: 26.08.17
6
 * Time: 17:28
7
 */
8

9
namespace App\Service;
10

11
use App\Entity\TrackingAgent;
12
use Doctrine\ORM\EntityManager;
13
use Doctrine\ORM\EntityManagerInterface;
14

15
class Tracking
16
{
17
    /**
18
     * @var EntityManager
19
     */
20
    protected $em;
21

22
    /**
23
     * @param EntityManagerInterface $em
24
     */
25
    public function __construct(EntityManagerInterface $em)
26
    {
27
        $this->em = $em;
28
    }
29

30
    /**
31
     * @param string $agentName
32
     *
33
     * @return TrackingAgent
34
     */
35
    public function getTrackingAgent(string $agentName): TrackingAgent
36
    {
37
        $hash = md5($agentName);
38
        $agent = $this->em->getRepository(TrackingAgent::class)->findOneByHash($hash);
39
        if (!$agent) {
40
            $agent = new TrackingAgent();
41
            $agent->setUserAgent($agentName);
42

43
            $this->em->persist($agent);
44
            $this->em->flush($agent);
45
        }
46

47
        return $agent;
48
    }
49
}
50

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.