Implemented logout,delete account with fortify in laravel for front use a livewire with tailwind css
This commit is contained in:
parent
15ea8afa24
commit
665ad1ab7c
32
Web-Application/Fortify/app/Livewire/DeleteAccount.php
Normal file
32
Web-Application/Fortify/app/Livewire/DeleteAccount.php
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Livewire;
|
||||||
|
|
||||||
|
use Livewire\Component;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
|
class DeleteAccount extends Component
|
||||||
|
{
|
||||||
|
public function deleteAccount()
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$user = auth()->user();
|
||||||
|
Auth::logout();
|
||||||
|
|
||||||
|
$user->delete();
|
||||||
|
|
||||||
|
// invalidate session
|
||||||
|
session()->invalidate();
|
||||||
|
session()->regenerateToken();
|
||||||
|
|
||||||
|
return redirect('/login')->with('status', 'Your account has been deleted successfully.');
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
session()->flash('error', 'There was a problem deleting your account.');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function render()
|
||||||
|
{
|
||||||
|
return view('livewire.delete-account');
|
||||||
|
}
|
||||||
|
}
|
||||||
24
Web-Application/Fortify/app/Livewire/Logout.php
Normal file
24
Web-Application/Fortify/app/Livewire/Logout.php
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Livewire;
|
||||||
|
|
||||||
|
use Livewire\Component;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
|
class Logout extends Component
|
||||||
|
{
|
||||||
|
|
||||||
|
public function logout()
|
||||||
|
{
|
||||||
|
Auth::logout();
|
||||||
|
|
||||||
|
session()->invalidate();
|
||||||
|
session()->regenerateToken();
|
||||||
|
|
||||||
|
return redirect()->route('login');
|
||||||
|
}
|
||||||
|
public function render()
|
||||||
|
{
|
||||||
|
return view('livewire.logout');
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -2,7 +2,9 @@
|
|||||||
|
|
||||||
namespace App\Livewire;
|
namespace App\Livewire;
|
||||||
|
|
||||||
|
use GuzzleHttp\Psr7\Request;
|
||||||
use Livewire\Component;
|
use Livewire\Component;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
class Profile extends Component
|
class Profile extends Component
|
||||||
{
|
{
|
||||||
|
|||||||
@ -0,0 +1,6 @@
|
|||||||
|
<div>
|
||||||
|
<button wire:click='deleteAccount'
|
||||||
|
class="px-4 py-2 border border-red-700 text-white rounded-md hover:bg-red-700 cursor-pointer transition ease-in-out duration-300 font-bold">
|
||||||
|
Delete Account
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
@ -0,0 +1,6 @@
|
|||||||
|
<div>
|
||||||
|
<button wire:click='logout'
|
||||||
|
class="px-4 py-2 border border-red-700 text-white rounded-md hover:bg-red-700 cursor-pointer transition ease-in-out duration-300 font-bold">
|
||||||
|
Logout
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
@ -1,3 +1,6 @@
|
|||||||
<div>
|
<div class="bg-[#0d1b2a] h-screen flex justify-center items-center flex-col space-y-8">
|
||||||
<h1>you are logged in</h1>
|
|
||||||
|
<livewire:logout />
|
||||||
|
<livewire:delete-account />
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
Loading…
x
Reference in New Issue
Block a user