Auto logout plugin screenshot
Dark mode ready
Multilingual support
Supports v5.x

Auto logout

Community

Auto logout idle/afk user. Handles multi-tabs.

Tags: Panel Authorization
Supported versions:
4.x 3.x
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 .
Madalin Tache avatar Author: Madalin Tache

Documentation

Version:

Latest Version on Packagist Total Downloads

#Compatibility

Package Version Filament Version
v1 v3
v2 v4
v3 v5

#Installation

You can install the package via composer:

composer require niladam/filament-auto-logout

#Install the package

php artisan filament-auto-logout:install

You can publish the config file with:

php artisan vendor:publish --tag="filament-auto-logout-config"

This is the contents of the published config file:

use Carbon\Carbon;
use Filament\View\PanelsRenderHook;

return [
    /**
     * Disable or enable the plugin
     */
    'enabled' => env('FILAMENT_AUTO_LOGOUT_ENABLED', true),

    /**
     * The duration in seconds your users can be idle before being logged out.
     *
     * The duration needs to be specified in seconds.
     *
     * A sensible default has been set to 15 minutes
     */
    'duration_in_seconds' => env('FILAMENT_AUTO_LOGOUT_DURATION_IN_SECONDS', Carbon::SECONDS_PER_MINUTE * 15),

    /**
     * A notification will be sent to the user before logging out.
     *
     * This sets the seconds BEFORE sending out the notification.
     */
    'warn_before_in_seconds' => env('FILAMENT_AUTO_LOGOUT_WARN_BEFORE_IN_SECONDS', 30),

    /**
     * The plugin comes with a small time left box which will display the time left
     * before the user will be logged out.
     */
    'show_time_left' => env('FILAMENT_AUTO_LOGOUT_SHOW_TIME_LEFT', true),

    /**
     * What should the time left box display before the timer?
     *
     * A default has been set to 'Time left:'
     */
    'time_left_text' => env('FILAMENT_AUTO_LOGOUT_TIME_LEFT_TEXT', 'Time left:'),

    /**
     * Where should the badge be rendered?
     *
     * @see https://filamentphp.com/docs/3.x/support/render-hooks#available-render-hooks for a list of supported hooks.
     */
    'location' => env('FILAMENT_AUTO_LOGOUT_LOCATION', PanelsRenderHook::GLOBAL_SEARCH_BEFORE),
];

#Usage

#Quick Usage:

$panel
    ->plugins([
        AutoLogoutPlugin::make(),
    ]);

#Customised Usage

use Carbon\Carbon;
use Filament\Support\Colors\Color;
use Niladam\FilamentAutoLogout\AutoLogoutPlugin;

$panel
    ->plugins([
        AutoLogoutPlugin::make()
            ->color(Color::Emerald)                             // Set the color. Defaults to Color::Stone
            ->icon('heroicon-o-arrow-right-start-on-rectangle') // Change the icon. Defaults to 'heroicon-o-clock' 
            ->disableIf(fn () => auth()->id() === 1)            // Disable the user with ID 1
            ->logoutAfter(Carbon::SECONDS_PER_MINUTE * 5)       // Logout the user after 5 minutes
            ->withoutWarning()                                  // Disable the warning before logging out
            ->withoutTimeLeft()                                 // Disable the time left
            ->timeLeftText('Oh no. Kicking you in...')          // Change the time left text
            ->timeLeftText('')                                  // Remove the time left text (displays only countdown)
    ]);

#Translations

This package has multi-language support. So you will have to first publish the translations using:

php artisan vendor:publish --tag="filament-auto-logout-translations"

#Changelog

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

#Contributing

Please see CONTRIBUTING for details.

#Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

#Credits

#License

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

The author

Madalin Tache avatar Author: Madalin Tache

Laravel developer & advocate. Loves PHP. Handles full stack. Proud loving father // Bringer of joy.

Plugins
2
Stars
25

From the same author