Typo3 plugin screenshot
Dark mode ready
No multilingual support
No v5.x support

Typo3 by Egg² Code Labs

Community

A plugin that brings Typo3 functionality to filament.

Tags: Forms Form Field Tables Table Column
Supported versions:
3.x
Egg² Code Labs avatar Author: Egg² Code Labs

Package health

Automated checks of this plugin's Composer package

70 / 100
Security 52
Maintenance 90
Ecosystem 100
15 checks
Third-party plugin. This is built by the community, not the Filament team. Filament does not review, endorse, or vet the security of plugins outside the filament/ namespace. Review the source and install at your own risk. Found malware or an unresolved security issue the author won't address? Report it .
Powered by Plumb Last scanned 1 month ago

Documentation

Latest Version on Packagist GitHub Tests Action Status Total Downloads

filament-typo3 bundles some functionality known from TYPO3 into a Filament PHP plugin. Features include the TYPO3 entry access tab, SEO tab and pages tree view.

#Installation

You can install the package via composer:

composer require egg2-code-labs/filament-typo3

#TYPO3 Access Tab

The TYPO3 Access Tab feature consists of multiple parts:

  1. Migration helpers
  2. Filament component
  3. Query scope

Make use of the migration helpers to get all the required fields:

public function up(): void
{
    Schema::create('pages', function (Blueprint $table) {
        //
        $table->typo3Sorting();
        $table->typo3Access();
        //
    });
}

Then, in your filament resource add the form component:

use Egg2CodeLabs\FilamentTypo3\Forms\Components\Enums\Typo3AccessTabFieldsEnum;

public static function form(Form $form): Form
{
    return $form
        ->schema([
            Tabs::make('Tabs')
                ->tabs([
                    Typo3AccessTab::make()
                        ->exclude([ // disable the nav_hide field, because the resources does not use it
                            Typo3AccessTabFieldsEnum::NAV_HIDE,
                        ])
                ])
        ]);
}

And finally add the query scope to all the necessary models:

use Egg2CodeLabs\FilamentTypo3\Scopes\Typo3AccessScope;

protected static function booted(): void
{
    static::addGlobalScope(new Typo3AccessScope());
}

#Factories

Laravel factories support state manipulation methods to allow for discrete modifications. The Typo3FactoryStatesTrait provides an easy way to get a few simple modifications going. Add this trait to your factory classes.

#Available methods

#Typo3FactoryStatesTrait::published()

This method creates a non-hidden, non-time-constrained element.

#Typo3FactoryStatesTrait::hiddenInNav()

This method creates an element that is hidden in the navigation.

#Typo3FactoryStatesTrait::expired()

This method creates non-hidden, time-constrained element, which has an endtime one week before now().

#Typo3FactoryStatesTrait::scheduled()

This method creates non-hidden, time-constrained element, which has a starttime one week after now().

#Testing

composer test

#Changelog

Please see CHANGELOG for more information on what has changed recently.

#Contributing

Feel free to contribute by writing tests, fixing bugs, reporting bugs or whatever other way of contribution you come up with. Just create a pull request or issue and I'll do my best to reply fast.

#Credits

#License

The MIT License (MIT). Please see License File for more information.

#Attribution

Some components of this package are based on one or more of the following pieces of software:

The author

Egg² Code Labs avatar Author: Egg² Code Labs

Egg² Code Labs is a software development company located in Vienna, Austria. We strive to deliver high-quality applications and build our own packages.

Plugins
1
Stars
5