Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 8ef808c0

Přidáno uživatelem Jan Šedivý před asi 6 roky(ů)

Re #7327 Detail transliterace

Zobrazit rozdíly:

app/FrontModule/presenters/TransliterationPresenter.php
5 5

  
6 6

  
7 7
use App\FrontModule\Components\ITransliterationSearchFormFactory;
8
use App\Model\Repository\LineRepository;
9
use App\Model\Repository\LitReferenceRepository;
10
use App\Model\Repository\RevHistoryRepository;
8 11
use App\Model\Repository\TransliterationRepository;
9 12
use App\Model\TransliterationSearchModel;
10 13
use Nette\Application\UI\Presenter;
14
use Nette\SmartObject;
15
use Tracy\Debugger;
11 16

  
12 17
class TransliterationPresenter extends Presenter
13 18
{
......
20 25
    /** @var TransliterationSearchModel */
21 26
    private $transliterationSearchModel;
22 27

  
28
    /** @var LitReferenceRepository */
29
    private $litReferenceRepository;
30

  
31
    /** @var RevHistoryRepository */
32
    private $revHistoryRepository;
33

  
34
    /** @var LineRepository */
35
    private $lineRepository;
36

  
23 37
    public function __construct(
24 38
        ITransliterationSearchFormFactory $transliterationSearchFormFactory,
25 39
        TransliterationRepository $transliterationRepository,
26
        TransliterationSearchModel $transliterationSearchModel
40
        TransliterationSearchModel $transliterationSearchModel,
41
        LitReferenceRepository $litReferenceRepository,
42
        RevHistoryRepository $revHistoryRepository,
43
        LineRepository $lineRepository
27 44
    )
28 45
    {
29 46
        parent::__construct();
......
31 48
        $this->transliterationSearchFormFactory = $transliterationSearchFormFactory;
32 49
        $this->transliterationRepository = $transliterationRepository;
33 50
        $this->transliterationSearchModel = $transliterationSearchModel;
51
        $this->litReferenceRepository = $litReferenceRepository;
52
        $this->revHistoryRepository = $revHistoryRepository;
53
        $this->lineRepository = $lineRepository;
34 54
    }
35 55

  
36 56

  
......
58 78
        $this->template->resultRows = $resultRows;
59 79
    }
60 80

  
81
    public function actionView($id)
82
    {
83
        $transliteration = $this->transliterationRepository->getTransliterationDetail($id);
84
        if(!$transliteration)
85
        {
86
            $this->presenter->flashMessage('Transliteration not found');
87
            $this->redirect('Transliteration:search');
88
        }
89
        $lines = $this->lineRepository->getAllLinesForTransliteration($id);
90
        $lineArray = [];
91
        foreach ($lines as $line)
92
        {
93
            $lineArray[$line->object_type][$line->surface_type][] = array('transliteration' => $line->transliteration, 'line_number' => $line->line_number);
94
        }
95

  
96
        $this->template->transliteration = $transliteration;
97
        $this->template->litReferences = $this->litReferenceRepository->findBy([LitReferenceRepository::COLUMN_TRANSLITERATION_ID => $id]);
98
        $this->template->revisionHistory = $this->revHistoryRepository->findBy([RevHistoryRepository::COLUMN_TRANSLITERATION_ID => $id]);
99
        $this->template->lineArray = $lineArray;
100
    }
101

  
61 102
    public function createComponentTransliterationSearchForm()
62 103
    {
63 104
        return $this->transliterationSearchFormFactory->create();

Také k dispozici: Unified diff