Plugins
Wildcard Login
This package allows you to allow users with an e-mail address ending in specific domain name(s) to login using an e-mail instead of using a password.
Panel Authentication
Dark theme support
Yes
Multi language support
Yes
Compatible with the latest version
Supported versions: 3.x
Documentation

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

This package allows you to allow users with an e-mail address ending in specific domain names to login using an e-mail instead of using a password. After installing this package you can have a generic account (e.g. helpdesk@digifactory.nl) and everyone using a @digifactory.nl mail address can login using the e-mail sent directly to their inbox.

Since v1.0.3 it is also possible to enable e-mail login for all users. When enabled ($plugin->allowAllDomains()) the plugin will look for that specific user/e-mail address instead of a specific domain. This option can be enabled on top of the base functionality of this package.

#Installation

You can install the package via composer:

composer require digifactory/filament-wildcard-login

#Usage

You can add the FilamentWildcardLoginPlugin to your Filament Panel like this:

->plugins([
FilamentWildcardLoginPlugin::make()
->domains([
'digifactory.nl',
])
->loginDirectlyWithoutSendingEmail(app()->environment('local')),
])

These methods are available on the FilamentWildcardLoginPlugin instance:

Method Description
enabled(Closure | bool $value = true) This method allows you to enable the plugin using a boolean or callback, by default the plugin is enabled.
loginDirectlyWithoutSendingEmail(Closure | bool $value = true) This method allows you to enable direct login, without sending the e-mail. This can be handy for local development.
domains(array $domains) This method allows you to define the domains that can login using the e-mail link.
model(string $modelClass, string $modelColumn = 'email') This method allows you to define the used User model and column, by default the plugin users App\Model\User and email.
emailValidForMinutes(int $minutes) This method allows you to define after how many minutes the link in the e-mail should expire. The default is 5 minutes.
allowAllDomains(Closure | bool $value = true) This method allows you to allow all e-mail address to login using an e-mail.

#Preview

preview preview-email

#Testing

composer test

#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.

DigiFactory

DigiFactory is a Dutch webdevelopment agency specialized in building websites and applications.

1
Plugins
14
Stars
Featured Plugins