Initial commit: CABM-IT (ItGlue-style MSP documentation platform)
Laravel 13 + Livewire/Volt app for managing client organizations, documents, passwords, flexible assets, virtual machines, contacts, domains, todos, shortcuts, and role-based user administration.
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
<x-layouts.guest title="Mot de passe oublié">
|
||||
@if (session('status'))
|
||||
<div class="mb-4 rounded border border-emerald-200 bg-emerald-50 px-3 py-2 text-sm text-emerald-700">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if ($errors->any())
|
||||
<div class="mb-4 rounded border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-700">
|
||||
<ul class="list-inside list-disc">
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<form method="POST" action="{{ route('password.email') }}" class="space-y-4">
|
||||
@csrf
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700" for="email">E-mail</label>
|
||||
<input id="email" type="email" name="email" value="{{ old('email') }}" required autofocus
|
||||
class="mt-1 w-full rounded border-slate-300 shadow-sm focus:border-slate-500 focus:ring-slate-500">
|
||||
</div>
|
||||
|
||||
<button type="submit"
|
||||
class="w-full rounded bg-slate-900 px-4 py-2 text-sm font-medium text-white hover:bg-slate-700">
|
||||
Envoyer le lien de réinitialisation
|
||||
</button>
|
||||
</form>
|
||||
</x-layouts.guest>
|
||||
@@ -0,0 +1,41 @@
|
||||
<x-layouts.guest title="Connexion">
|
||||
@if ($errors->any())
|
||||
<div class="mb-4 rounded border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-700">
|
||||
<ul class="list-inside list-disc">
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<form method="POST" action="{{ route('login') }}" class="space-y-4">
|
||||
@csrf
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700" for="email">E-mail</label>
|
||||
<input id="email" type="email" name="email" value="{{ old('email') }}" required autofocus
|
||||
class="mt-1 w-full rounded border-slate-300 shadow-sm focus:border-slate-500 focus:ring-slate-500">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700" for="password">Mot de passe</label>
|
||||
<input id="password" type="password" name="password" required
|
||||
class="mt-1 w-full rounded border-slate-300 shadow-sm focus:border-slate-500 focus:ring-slate-500">
|
||||
</div>
|
||||
|
||||
<label class="flex items-center gap-2 text-sm text-slate-600">
|
||||
<input type="checkbox" name="remember" class="rounded border-slate-300">
|
||||
Se souvenir de moi
|
||||
</label>
|
||||
|
||||
<button type="submit"
|
||||
class="w-full rounded bg-slate-900 px-4 py-2 text-sm font-medium text-white hover:bg-slate-700">
|
||||
Connexion
|
||||
</button>
|
||||
|
||||
<div class="flex items-center justify-between text-sm">
|
||||
<a href="{{ route('password.request') }}" class="text-slate-500 hover:text-slate-900">Mot de passe oublié ?</a>
|
||||
</div>
|
||||
</form>
|
||||
</x-layouts.guest>
|
||||
@@ -0,0 +1,40 @@
|
||||
<x-layouts.guest title="Réinitialiser le mot de passe">
|
||||
@if ($errors->any())
|
||||
<div class="mb-4 rounded border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-700">
|
||||
<ul class="list-inside list-disc">
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<form method="POST" action="{{ route('password.update') }}" class="space-y-4">
|
||||
@csrf
|
||||
|
||||
<input type="hidden" name="token" value="{{ $request->route('token') }}">
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700" for="email">E-mail</label>
|
||||
<input id="email" type="email" name="email" value="{{ old('email', $request->email) }}" required autofocus
|
||||
class="mt-1 w-full rounded border-slate-300 shadow-sm focus:border-slate-500 focus:ring-slate-500">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700" for="password">Nouveau mot de passe</label>
|
||||
<input id="password" type="password" name="password" required
|
||||
class="mt-1 w-full rounded border-slate-300 shadow-sm focus:border-slate-500 focus:ring-slate-500">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700" for="password_confirmation">Confirmer le mot de passe</label>
|
||||
<input id="password_confirmation" type="password" name="password_confirmation" required
|
||||
class="mt-1 w-full rounded border-slate-300 shadow-sm focus:border-slate-500 focus:ring-slate-500">
|
||||
</div>
|
||||
|
||||
<button type="submit"
|
||||
class="w-full rounded bg-slate-900 px-4 py-2 text-sm font-medium text-white hover:bg-slate-700">
|
||||
Réinitialiser le mot de passe
|
||||
</button>
|
||||
</form>
|
||||
</x-layouts.guest>
|
||||
@@ -0,0 +1,36 @@
|
||||
<x-layouts.guest title="Authentification à deux facteurs">
|
||||
@if ($errors->any())
|
||||
<div class="mb-4 rounded border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-700">
|
||||
<ul class="list-inside list-disc">
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<p class="mb-4 text-sm text-slate-600">
|
||||
Entrez le code de votre application d'authentification, ou l'un de vos codes de récupération.
|
||||
</p>
|
||||
|
||||
<form method="POST" action="{{ route('two-factor.login') }}" class="space-y-4">
|
||||
@csrf
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700" for="code">Code d'authentification</label>
|
||||
<input id="code" type="text" name="code" inputmode="numeric" autofocus
|
||||
class="mt-1 w-full rounded border-slate-300 shadow-sm focus:border-slate-500 focus:ring-slate-500">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700" for="recovery_code">Code de récupération</label>
|
||||
<input id="recovery_code" type="text" name="recovery_code"
|
||||
class="mt-1 w-full rounded border-slate-300 shadow-sm focus:border-slate-500 focus:ring-slate-500">
|
||||
</div>
|
||||
|
||||
<button type="submit"
|
||||
class="w-full rounded bg-slate-900 px-4 py-2 text-sm font-medium text-white hover:bg-slate-700">
|
||||
Vérifier
|
||||
</button>
|
||||
</form>
|
||||
</x-layouts.guest>
|
||||
Reference in New Issue
Block a user