4 changed files with 105 additions and 63 deletions
@ -1,73 +1,106 @@ |
|||||
@extends('layouts.app') |
<!DOCTYPE html> |
||||
|
<html lang="es"> |
||||
@section('content') |
<head> |
||||
<div class="container"> |
<meta charset="UTF-8"> |
||||
<div class="row justify-content-center"> |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
||||
<div class="col-md-8"> |
<title>Login - PrestamosTecmm</title> |
||||
<div class="card"> |
<!-- Tailwind CSS desde CDN --> |
||||
<div class="card-header">{{ __('Login') }}</div> |
<script src="https://cdn.tailwindcss.com"></script> |
||||
|
<!-- Font Awesome --> |
||||
<div class="card-body"> |
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"> |
||||
<form method="POST" action="{{ route('login') }}"> |
</head> |
||||
@csrf |
<body class="bg-gradient-to-br from-blue-600 to-blue-800 min-h-screen flex items-center justify-center p-4"> |
||||
|
<div class="max-w-md w-full bg-white rounded-lg shadow-xl overflow-hidden"> |
||||
|
<div class="p-6"> |
||||
|
<div class="text-center mb-8"> |
||||
|
<h2 class="text-3xl font-bold text-gray-800">PrestamosTecmm</h2> |
||||
|
<p class="text-gray-600 mt-2">Inicia sesión en tu cuenta</p> |
||||
|
</div> |
||||
|
|
||||
<div class="row mb-3"> |
@if ($errors->any()) |
||||
<label for="email" class="col-md-4 col-form-label text-md-end">{{ __('Email Address') }}</label> |
<div class="mb-4 bg-red-50 border-l-4 border-red-500 p-4"> |
||||
|
<div class="text-red-700"> |
||||
|
<ul> |
||||
|
@foreach ($errors->all() as $error) |
||||
|
<li>{{ $error }}</li> |
||||
|
@endforeach |
||||
|
</ul> |
||||
|
</div> |
||||
|
</div> |
||||
|
@endif |
||||
|
|
||||
<div class="col-md-6"> |
<form method="POST" action="{{ route('login') }}" class="space-y-6"> |
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus> |
@csrf |
||||
|
|
||||
@error('email') |
<div> |
||||
<span class="invalid-feedback" role="alert"> |
<label for="email" class="block text-sm font-medium text-gray-700"> |
||||
<strong>{{ $message }}</strong> |
Correo Electrónico |
||||
</span> |
</label> |
||||
@enderror |
<div class="mt-1 relative"> |
||||
</div> |
<div class="absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"> |
||||
|
<i class="fas fa-envelope text-gray-400"></i> |
||||
</div> |
</div> |
||||
|
<input id="email" name="email" type="email" required |
||||
|
class="block w-full pl-10 pr-3 py-2 border border-gray-300 rounded-md shadow-sm focus:ring-blue-500 focus:border-blue-500" |
||||
|
value="{{ old('email') }}" |
||||
|
placeholder="tu@email.com"> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
<div class="row mb-3"> |
<div> |
||||
<label for="password" class="col-md-4 col-form-label text-md-end">{{ __('Password') }}</label> |
<label for="password" class="block text-sm font-medium text-gray-700"> |
||||
|
Contraseña |
||||
<div class="col-md-6"> |
</label> |
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password"> |
<div class="mt-1 relative"> |
||||
|
<div class="absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"> |
||||
@error('password') |
<i class="fas fa-lock text-gray-400"></i> |
||||
<span class="invalid-feedback" role="alert"> |
|
||||
<strong>{{ $message }}</strong> |
|
||||
</span> |
|
||||
@enderror |
|
||||
</div> |
|
||||
</div> |
</div> |
||||
|
<input id="password" name="password" type="password" required |
||||
|
class="block w-full pl-10 pr-3 py-2 border border-gray-300 rounded-md shadow-sm focus:ring-blue-500 focus:border-blue-500" |
||||
|
placeholder="••••••••"> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
<div class="row mb-3"> |
<div class="flex items-center justify-between"> |
||||
<div class="col-md-6 offset-md-4"> |
<div class="flex items-center"> |
||||
<div class="form-check"> |
<input id="remember_me" name="remember" type="checkbox" |
||||
<input class="form-check-input" type="checkbox" name="remember" id="remember" {{ old('remember') ? 'checked' : '' }}> |
class="h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded"> |
||||
|
<label for="remember_me" class="ml-2 block text-sm text-gray-700"> |
||||
<label class="form-check-label" for="remember"> |
Recordarme |
||||
{{ __('Remember Me') }} |
</label> |
||||
</label> |
</div> |
||||
</div> |
|
||||
</div> |
|
||||
</div> |
|
||||
|
|
||||
<div class="row mb-0"> |
@if (Route::has('password.request')) |
||||
<div class="col-md-8 offset-md-4"> |
<a href="{{ route('password.request') }}" class="text-sm text-blue-600 hover:text-blue-500"> |
||||
<button type="submit" class="btn btn-primary"> |
¿Olvidaste tu contraseña? |
||||
{{ __('Login') }} |
</a> |
||||
</button> |
@endif |
||||
|
</div> |
||||
|
|
||||
@if (Route::has('password.request')) |
<div> |
||||
<a class="btn btn-link" href="{{ route('password.request') }}"> |
<button type="submit" class="w-full flex justify-center py-2 px-4 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500"> |
||||
{{ __('Forgot Your Password?') }} |
Iniciar Sesión |
||||
</a> |
</button> |
||||
@endif |
|
||||
</div> |
|
||||
</div> |
|
||||
</form> |
|
||||
</div> |
</div> |
||||
|
</form> |
||||
|
|
||||
|
@if (Route::has('register')) |
||||
|
<div class="mt-6 text-center"> |
||||
|
<p class="text-sm text-gray-600"> |
||||
|
¿No tienes una cuenta? |
||||
|
<a href="{{ route('register') }}" class="font-medium text-blue-600 hover:text-blue-500"> |
||||
|
Regístrate aquí |
||||
|
</a> |
||||
|
</p> |
||||
</div> |
</div> |
||||
|
@endif |
||||
</div> |
</div> |
||||
</div> |
</div> |
||||
</div> |
|
||||
@endsection |
<!-- Decoración de fondo --> |
||||
|
<div class="absolute top-0 left-0 w-full h-full pointer-events-none overflow-hidden"> |
||||
|
<div class="absolute -top-1/2 -left-1/4 w-96 h-96 bg-blue-400 rounded-full opacity-10 transform rotate-45"></div> |
||||
|
<div class="absolute -bottom-1/2 -right-1/4 w-96 h-96 bg-blue-400 rounded-full opacity-10 transform -rotate-45"></div> |
||||
|
</div> |
||||
|
</body> |
||||
|
</html> |
||||
|
Loading…
Reference in new issue