Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 2190aaa4

Přidáno uživatelem Filip Jani před téměř 6 roky(ů)

Re #7607 vyhledávání pouze pro přihlášené, upravení menu

Zobrazit rozdíly:

app/AdminModule/component/User/UserEditForm.php
175 175
     */
176 176
    private function getRoles()
177 177
    {
178
        return $this->roleRepository->findAll()->fetchPairs(RoleRepository::COLUMN_ID, RoleRepository::COLUMN_NAME);
178
        return $this->roleRepository->getRolesForSelect();
179 179
    }
180 180
}
181 181

  
app/AdminModule/component/User/UserGrid.php
4 4
namespace App\AdminModule\Components;
5 5

  
6 6

  
7
use App\Model\Repository\BookRepository;
8
use App\Model\Repository\RoleRepository;
7 9
use App\Model\Repository\UserRepository;
10
use App\Model\Repository\UserRoleRepository;
8 11
use App\Utils\DataGrid\DataGrid;
12
use Nette\Database\Table\ActiveRow;
13
use Nette\Database\Table\Selection;
9 14
use Ublaboo\DataGrid\Exception\DataGridException;
10 15

  
11 16
class UserGrid extends DataGrid
......
14 19
     * @var UserRepository
15 20
     */
16 21
    private $userRepository;
22
    /**
23
     * @var RoleRepository
24
     */
25
    private $roleRepository;
17 26

  
18
    public function __construct(UserRepository $userRepository)
27
    public function __construct(UserRepository $userRepository,
28
                                RoleRepository $roleRepository)
19 29
    {
20 30
        $this->userRepository = $userRepository;
31
        $this->roleRepository = $roleRepository;
21 32

  
22 33
        parent::__construct();
23 34
    }
......
46 57
        $this->addColumnNumber(UserRepository::COLUMN_ID, 'ID')->setDefaultHide(TRUE);
47 58
        $this->addColumnText(UserRepository::COLUMN_USERNAME, 'Uživatel');
48 59
        $this->addColumnText(UserRepository::COLUMN_LOGIN, 'Login');
60
        $this->addColumnText(RoleRepository::COLUMN_NAME, 'Role')
61
            ->setRenderer(function (ActiveRow $activeRow)
62
            {
63
                try
64
                {
65
                    $userRoleRow = $activeRow->related(UserRoleRepository::TABLE_NAME)->fetch();
66
                    $roleRow = $userRoleRow->ref(RoleRepository::TABLE_NAME);
67

  
68
                    return $roleRow->{RoleRepository::COLUMN_NAME};
69

  
70
                } catch (\Exception $ex)
71
                {
72
                    \Tracy\Debugger::log($ex->getMessage(), 'user-grid');
73
                    return "not found";
74
                }
75
            });
49 76
        $this->addColumnText(UserRepository::COLUMN_EMAIL, 'Email');
50 77

  
51 78
        // Definice filtrů
52 79
        $this->addFilterText(UserRepository::COLUMN_USERNAME, 'Uživatel');
53 80
        $this->addFilterText(UserRepository::COLUMN_LOGIN, 'Login');
81
        $this->addFilterSelect(RoleRepository::COLUMN_NAME, 'Role', ['' => 'all'] + $this->roleRepository->getRolesForSelect())
82
            ->setCondition(function (Selection $selection, $value)
83
            {
84
                $selection->where(':role.role_id', $value);
85
            });
54 86
        $this->addFilterText(UserRepository::COLUMN_EMAIL, 'Email');
55 87

  
56 88
        // Akce
app/AdminModule/presenters/BookPresenter.php
8 8
use App\Enum\EFlashMessage;
9 9
use App\Model\Repository\BookRepository;
10 10

  
11
class BookPresenter extends BaseUserPresenter
11
class BookPresenter extends BaseAdminPresenter
12 12
{
13 13
    /**
14 14
     * @var IBookGridFactory
app/AdminModule/presenters/BookTypePresenter.php
9 9
use App\Model\Repository\BookTypeRepository;
10 10
use const Couchbase\ENCODER_FORMAT_IGBINARY;
11 11

  
12
class BookTypePresenter extends BaseUserPresenter
12
class BookTypePresenter extends BaseAdminPresenter
13 13
{
14 14

  
15 15
    /**
app/AdminModule/presenters/MuseumPresenter.php
8 8
use App\Enum\EFlashMessage;
9 9
use App\Model\Repository\MuseumRepository;
10 10

  
11
class MuseumPresenter extends BaseUserPresenter
11
class MuseumPresenter extends BaseAdminPresenter
12 12
{
13 13
    /**
14 14
     * @var IMuseumGridFactory
app/AdminModule/presenters/ObjectPresenter.php
8 8
use App\Enum\EFlashMessage;
9 9
use App\Model\Repository\ObjectTypeRepository;
10 10

  
11
class ObjectPresenter extends BaseUserPresenter
11
class ObjectPresenter extends BaseAdminPresenter
12 12
{
13 13
    /** @var ObjectTypeRepository */
14 14
    private $objectTypeRepository;
app/AdminModule/presenters/OriginPresenter.php
9 9
use App\Enum\EFlashMessage;
10 10
use App\Model\Repository\OriginRepository;
11 11

  
12
class OriginPresenter extends BaseUserPresenter
12
class OriginPresenter extends BaseAdminPresenter
13 13
{
14 14
    /**
15 15
     * @var IOriginGridFactory
app/AdminModule/presenters/SurfacePresenter.php
8 8
use App\Enum\EFlashMessage;
9 9
use App\Model\Repository\SurfaceTypeRepository;
10 10

  
11
class SurfacePresenter extends BaseUserPresenter
11
class SurfacePresenter extends BaseAdminPresenter
12 12
{
13 13
    /** @var ISurfaceTypeGridFactory */
14 14
    private $surfaceTypeGridFactory;
app/AdminModule/presenters/TransliterationPresenter.php
12 12
use App\FrontModule\Components\IKeyboard;
13 13
use App\Model\Repository\TransliterationRepository;
14 14

  
15
class TransliterationPresenter extends BaseUserPresenter
15
class TransliterationPresenter extends BaseAdminPresenter
16 16
{
17 17
    /**
18 18
     * @var ITransliterationGridFactory
app/AdminModule/presenters/TransportPresenter.php
11 11
use App\Model\TransportModel;
12 12
use App\Utils\TextParser;
13 13

  
14
class TransportPresenter extends BaseUserPresenter
14
class TransportPresenter extends BaseAdminPresenter
15 15
{
16 16
    /** @var IImportFormFactory */
17 17
    private $importFormFactory;
app/FrontModule/component/Transliteration/TransliterationView.latte
4 4
<div>
5 5

  
6 6
    <div>
7
        {if isset($transliteration->id_book) && !empty($transliteration->id_book)}
8
            <a href="{$presenter->link(':Admin:Book:edit', ['id' => $transliteration->id_book])}">edit book</a>
9
        {/if}
10
        {if isset($transliteration->id) && !empty($transliteration->id)}
11
            <a href="{$presenter->link(':Admin:Transliteration:edit#transliteration-info', ['id' => $transliteration->id])}">edit
12
                transliteration info</a>
7
        {if $user->isInRole(\App\Enum\EUserRole::ADMIN)}
8
            {if isset($transliteration->id_book) && !empty($transliteration->id_book)}
9
                <a href="{$presenter->link(':Admin:Book:edit', ['id' => $transliteration->id_book])}">edit book</a>
10
            {/if}
11
            |
12
            {if isset($transliteration->id) && !empty($transliteration->id)}
13
                <a href="{$presenter->link(':Admin:Transliteration:edit#transliteration-info', ['id' => $transliteration->id])}">edit
14
                    transliteration info</a>
15
            {/if}
13 16
        {/if}
14 17
    </div>
15 18

  
......
88 91
    </div>
89 92

  
90 93

  
91
    {if isset($transliteration->id) && !empty($transliteration->id)}
92
        <a href="{$presenter->link(':Admin:Transliteration:edit#transliteration-data', ['id' => $transliteration->id])}">edit</a>
94
    {if $user->isInRole(\App\Enum\EUserRole::ADMIN)}
95
        {if isset($transliteration->id) && !empty($transliteration->id)}
96
            <a href="{$presenter->link(':Admin:Transliteration:edit#transliteration-data', ['id' => $transliteration->id])}">edit</a>
97
        {/if}
93 98
    {/if}
94 99

  
95 100
    <div class="container-fluid">
app/FrontModule/presenters/TransliterationPresenter.php
4 4

  
5 5

  
6 6

  
7
use App\AdminModule\Presenters\BaseUserPresenter;
7 8
use App\FrontModule\Components\IKeyboard;
8 9
use App\FrontModule\Components\ITransliterationSearchFormFactory;
9 10
use App\FrontModule\Components\ITransliterationSearchResultListFactory;
......
13 14
use App\Model\Repository\RevHistoryRepository;
14 15
use App\Model\Repository\TransliterationRepository;
15 16
use App\Model\TransliterationSearchModel;
16
use Nette\Application\UI\Presenter;
17 17

  
18
class TransliterationPresenter extends Presenter
18
class TransliterationPresenter extends BaseUserPresenter
19 19
{
20 20
    /** @var ITransliterationSearchFormFactory */
21 21
    private $transliterationSearchFormFactory;
app/model/repository/RoleRepository.php
16 16
    /** Sloupečky tabulky */
17 17
    const COLUMN_ID = 'id';
18 18
    const COLUMN_NAME = 'name';
19

  
20
    /**
21
     * Vrací role uživatele pro selectboxy
22
     *
23
     * @return array
24
     */
25
    public function getRolesForSelect()
26
    {
27
        return $this->findAll()->fetchPairs(RoleRepository::COLUMN_ID, RoleRepository::COLUMN_NAME);
28
    }
19 29
}
app/templates/@menu.latte
1 1
<nav class="navbar navbar-expand-lg navbar-dark bg-primary" style="background-color: #003366 !important;">
2 2
    <ul class="navbar-nav mr-auto">
3
        <li class="nav-item">
4
            <a n:class="nav-link, $presenter->isLinkCurrent(':Front:Transliteration:*') ? active" n:href=":Front:Transliteration:search">Search & edit texts</a>
5
        </li>
3
        {if $user->loggedIn && ($user->isInRole(\App\Enum\EUserRole::ADMIN) || $user->isInRole(\App\Enum\EUserRole::USER))}
4
            <li class="nav-item">
5
                <a n:class="nav-link, $presenter->isLinkCurrent(':Front:Transliteration:*') ? active" n:href=":Front:Transliteration:search">Search
6
                    & edit texts</a>
7
            </li>
8
        {/if}
6 9
        <li class="nav-item">
7 10
            <a class="nav-link" href="/utf/sj.php">Search dictionary</a>
8 11
        </li>
9
        <li class="nav-item">
10
            <a n:class="nav-link, $presenter->isLinkCurrent(':Front:Catalogue:*') ? active" n:href=":Front:Catalogue:default">Text catalogue</a>
11
        </li>
12
        {if $user->loggedIn && ($user->isInRole(\App\Enum\EUserRole::ADMIN) || $user->isInRole(\App\Enum\EUserRole::USER))}
13
            <li class="nav-item">
14
                <a n:class="nav-link, $presenter->isLinkCurrent(':Front:Catalogue:*') ? active" n:href=":Front:Catalogue:default">Text
15
                    catalogue</a>
16
            </li>
17
        {/if}
12 18
        <li class="nav-item">
13 19
            <a class="nav-link" href="/utf/signs.html">Catalogue of cuneiform signs</a>
14 20
        </li>
15 21
        <li class="nav-item">
16
            <a n:class="nav-link, $presenter->isLinkCurrent(':Front:Contact:default') ? active" n:href=":Front:Contact:default">Contact & members</a>
17
        </li>
18
        <li class="nav-item">
19
            <a n:class="nav-link, $presenter->isLinkCurrent(':Admin:Transliteration:new') ? active" n:href=":Admin:Transliteration:new">Input new text</a>
22
            <a n:class="nav-link, $presenter->isLinkCurrent(':Front:Contact:default') ? active" n:href=":Front:Contact:default">Contact
23
                & members</a>
20 24
        </li>
25
        {if $user->loggedIn && $user->isInRole(\App\Enum\EUserRole::ADMIN)}
26
            <li class="nav-item">
27
                <a n:class="nav-link, $presenter->isLinkCurrent(':Admin:Transliteration:new') ? active" n:href=":Admin:Transliteration:new">Input
28
                    new text</a>
29
            </li>
30
        {/if}
21 31
        <li class="nav-item">
22 32
            <a class="nav-link" href="/multidic">Dictionary</a>
23 33
        </li>
24
        {if $user->loggedIn && ($user->isInRole(\App\Enum\EUserRole::ADMIN) || $user->isInRole(\App\Enum\EUserRole::USER))}
34
        {if $user->loggedIn && $user->isInRole(\App\Enum\EUserRole::ADMIN)}
25 35
            <li class="nav-item">
26 36
                <a n:class="nav-link, strpos($presenter->getRequest()->getPresenterName(), 'Admin') !== FALSE ? active" n:href=":Admin:Default:">Admin</a>
27 37
            </li>
old/html/multidic/app/webroot/classes/db.php
10 10

  
11 11
class DB_Sql
12 12
{
13
    var $Host = "Filek.cz";
14
    var $Database = "aswi-dictionary";
15
    var $User = "dbowner";
16
    var $Password = "db486ex12";
13
    var $Host = "localhost";
14
    var $Database = "web_klinopis_dictionary";
15
    var $User = "klinopis";
16
    var $Password = "";
17 17

  
18 18
    /** @var mysqli_result */
19 19
    var $result = null;
old/html/utf/dbconfig.php
2 2

  
3 3
define('DB_HOST', 'localhost');
4 4
define('DB_NAME', 'web_klinopis_klinopis');
5
define('DB_USER', 'dbowner');
5
define('DB_USER', 'klinopis');
6 6
define('DB_PASSWORD', '');

Také k dispozici: Unified diff