Laravel Impersonate Ui

hapidjus/laravel-impersonate-ui image

Laravel Impersonate Ui stats

Downloads
766
Stars
38
Open Issues
3
Forks
5

View on GitHub →

UI for 404labfr/laravel-impersonate

Laravel Impersonate UI

Laravel Impersonate UI is a Laravel Package that adds an easy to use UI for selecting users to impersonate when using https://github.com/404labfr/laravel-impersonate

Requirements

  • Laravel >= 6.1
  • PHP >= 7.1

Installation

  • Require laravel-impersonate-ui with Composer
composer require hapidjus/laravel-impersonate-ui
  • Add the Trait Lab404\Impersonate\Models\Impersonate to your User model.
<?php
 
namespace App;
 
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Lab404\Impersonate\Models\Impersonate;
 
class User extends Authenticatable
{
use Notifiable,
Impersonate;
 
}

Configuration

To publish the config and blade files use:

php artisan vendor:publish --provider="Hapidjus\ImpersonateUI\ImpersonateUiServiceProvider"

Append --tag=config or --tag=view to only publish config or blade files.

This is the contents of the config file:

return [
 
/**
* Enable Laravel Impersonate UI
*
* Laravel Impersonate UI is enabled by default when in debug
*
*/
'enabled' => env('APP_DEBUG',false),
 
/**
* Users allowed to impersonate
*
* Array of user emails, i.e ['admin@example.com'] or null for all
*
*/
'users_allowed_to_impersonate' => ['admin@example.com'],
 
/**
* Position of icon.
*
* Supported: "bottom-right", "bottom-left", "top-left", "top-right"
*
*/
'icon_position' => 'bottom-right',
 
/**
* Show Impersonate button.
*
* Trying to save some clicks?
* Then this is the option for you! Select a user and BOOM -
* form submitted - user impersonated. No need to click any
* pesky buttons.
*
*/
'show_button' => true,
 
/**
* Globally include laravel-impersonate-ui.
*
* Or use this view: @include('impersonate-ui::impersonate-ui')
* Note: If you choose to include the partials view you need to add
* a check to test if the current users is allowed
* to impersonate
*/
'global_include' => true,
 
/**
* The URI/Route to redirect after taking an impersonation.
*
* Use 'back' to redirect to the previous page
*
*/
'take_redirect_to' => 'back',
 
/**
* The URI/Route to redirect after leaving an impersonation.
*
* Use 'back' to redirect to the previous page
*
*/
'leave_redirect_to' => 'back',
 
/**
* Only allow these users to be impersonated
*
* Array of user IDs or null for all
*
*/
'users_only' => null,
 
/**
* Exlude these users from beeing impersonated
*
* Array of user IDs or null for none
*
*/
'users_exclude' => null,
 
];

Partials view:

You can use the partials view to include the Impersonate UI on any pages you want. Note: If you choose to include the partials view you need to add a check to test if the current users is allowed to impersonate

@include('impersonate-ui::impersonate-ui')

Have fun impersonating.

Do not use in production!

Cube

Laravel Newsletter

Join 40k+ other developers and never miss out on new tips, tutorials, and more.


Hapidjus Laravel Impersonate Ui Related Articles

Statamic logo

Statamic

The drop-in ready Laravel CMS you’re been waiting for. Go full-stack or headless, flat file or database – it’s up to you.

Statamic
Typesense Search logo

Typesense Search

Typesense is an open source, blazing-fast search engine, optimized for helping you build delightful search experiences for your sites and apps. Natively integrated with Laravel Scout.

Typesense Search
Curotec logo

Curotec

World class Laravel experts with GenAI dev skills. LATAM-based, embedded engineers that ship fast, communicate clearly, and elevate your product. No bloat, no BS.

Curotec
Tinkerwell logo

Tinkerwell

The must-have code runner for Laravel developers. Tinker with AI, autocompletion and instant feedback on local and production environments.

Tinkerwell
Tighten logo

Tighten

We help companies turn great ideas into amazing apps, products, and services.

Tighten
LoadForge logo

LoadForge

Scalable load testing for web apps & APIs. Simulate real-world traffic and identify breaking points and performance limits with powerful, scalable load tests designed for Laravel.

LoadForge