5.0.0

Uwaga: aktualizacja typu MAJOR. Wprowadza nowe funkcjonalności.

Zmienić wersję w pliku composer.json w głównym folderze z aplikacją:

"n1ebieski/idir": "^5.0.0"


  1. Aktualizacja vendorów:
    composer update --no-dev
  2. Publikacja seederów:
    php artisan vendor:publish --tag=icore.seeds --force

    Uwaga: ta operacja podmieni dotychczasowy plik.

  3. Publikacja plików publicznych js:
    php artisan vendor:publish --tag=idir.public.js --force

    Uwaga: ta operacja podmieni dotychczasowy plik. Jeśli kompilujesz pliki publiczne samodzielnie, musisz to zrobić ponownie w oparciu o nowe assety.

  4. Publikacja plików publicznych css:
    php artisan vendor:publish --tag=idir.public.css --force

    Uwaga: ta operacja podmieni dotychczasowy plik. Jeśli kompilujesz pliki publiczne samodzielnie, musisz to zrobić ponownie w oparciu o nowe assety.

  5. Publikacja plików publicznych Laravel Sanctum:
    php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
  6. Przeładowanie Composera:
    composer dump
  7. Wykonanie migracji Laravel Sanctum:
    php artisan migrate --path="database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php"
  8. W pliku config/permission.php zamienić:

    'permission' => N1ebieski\IDir\Models\Permission::class,

    na:

    'permission' => N1ebieski\ICore\Models\Permission::class,
  9. Wykonanie seederów:
    php artisan db:seed --class="N1ebieski\ICore\Seeds\Install\DefaultRolesAndPermissionsSeeder"
  10. Przeładowanie cache:
    php artisan optimize && php artisan config:clear && php artisan view:clear && php artisan cache:clear


# Tagi pobierane z API

W pliku resources/views/vendor/idir/web/home/index.blade.php oraz /partials/nav.blade.php zamienić:

data-route="{{ route('web.search.autocomplete') }}"

na:

data-route="{{ route('api.tag.index') }}"


# Zmiana metody wyboru kategorii

W pliku resources/views/vendor/idir/web/dir/create/2.blade.php oraz /edit/2.blade.php zamienić cały kod od:

<div class="form-group">
    <label for="category">

do:

    @includeWhen($errors->has('categories'), 'icore::web.partials.errors', ['name' => 'categories'])
</div>

na:

<div class="form-group">
    <label for="category">
        <span>{{ trans('icore::categories.categories.label') }}: *</span>
        <i 
            data-toggle="tooltip" 
            data-placement="top"
            title="{{ trans('icore::categories.categories.tooltip', ['max_categories' => $group->max_cats]) }}"
            class="far fa-question-circle"
        ></i>
    </label>
    <input type="hidden" name="categories" value="">
    <select 
        class="selectpicker select-picker-category" 
        data-live-search="true"
        data-abs="true"
        data-abs-max-options-length="10"
        data-abs-text-attr="name"
        data-abs-ajax-url="{{ route('api.category.dir.index') }}"
        data-style="border"
        data-width="100%"
        data-max-options="{{ $group->max_cats }}"
        multiple
        name="categories[]"
        id="categories"
    >
        @if (collect($categoriesSelection)->isNotEmpty())
        <optgroup label="{{ trans('icore::default.current_option') }}">
            @foreach ($categoriesSelection as $category)
            <option
                @if ($category->ancestors->isNotEmpty())
                data-content='<small class="p-0 m-0">{{ implode(' &raquo; ', $category->ancestors->pluck('name')->toArray()) }} &raquo; </small>{{ $category->name }}'
                @endif
                value="{{ $category->id }}"
                selected
            >
                {{ $category->name }}
            </option>
            @endforeach
        </optgroup>
        @endif
    </select>
    @includeWhen($errors->has('categories'), 'icore::admin.partials.errors', ['name' => 'categories'])
</div>


# Poprawki

W pliku resources/views/vendor/idir/web/field/partials/checkbox.blade.php po linii:

<div id="field.{{ $field->id }}">

dodać:

<input type="hidden" name="field[{{ $field->id }}]" value="">

W pliku resources/views/vendor/idir/web/field/partials/regions.blade.php oraz /multiselect.blade.php po linii:

    @endif
</label>

dodać:

<input type="hidden" name="field[{{ $field->id }}]" value="">


# Refaktoryzacja

W pliku resources/views/vendor/icore/web/partials/policy.blade.php zamienić:

@if (!request()->cookie('policyAgree'))

na:

@if (!request()->cookie('policy_agree'))