sistemazione reports - cambio password - profilo utente
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="it">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<style>
|
||||
body { font-family: 'Segoe UI', Tahoma, sans-serif; line-height: 1.6; color: #333; }
|
||||
.container { max-width: 600px; margin: 0 auto; padding: 20px; }
|
||||
.header { background: #28a745; color: white; padding: 20px; text-align: center; border-radius: 5px 5px 0 0; }
|
||||
.body { padding: 30px; background: #f9f9f9; border: 1px solid #ddd; }
|
||||
.button { display: inline-block; padding: 12px 30px; background: #28a745; color: white; text-decoration: none; border-radius: 5px; font-weight: bold; }
|
||||
.footer { margin-top: 20px; font-size: 12px; color: #999; text-align: center; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<div class="header">
|
||||
<h2>{{ e($appName) }}</h2>
|
||||
</div>
|
||||
<div class="body">
|
||||
<p>Ciao <strong>{{ e($user->name) }}</strong>,</p>
|
||||
<p>Hai richiesto il reset della password per il tuo account.</p>
|
||||
<p style="text-align: center; margin: 30px 0;">
|
||||
<a href="{{ $resetUrl }}" class="button">Reimposta Password</a>
|
||||
</p>
|
||||
<p>Se non hai richiesto tu il reset, ignora questa email.</p>
|
||||
<p>Il link è valido per 60 minuti.</p>
|
||||
</div>
|
||||
<div class="footer">
|
||||
© {{ date('Y') }} {{ e($appName) }}
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,60 @@
|
||||
<?php
|
||||
use App\Models\AppSetting;
|
||||
$appLogo = AppSetting::getLogoUrl();
|
||||
$appName = AppSetting::getAppName() ?? 'Glastree';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="it">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Reset Password - {{ e($appName) }}</title>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/admin-lte@3.2/dist/css/adminlte.min.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
||||
</head>
|
||||
<body class="hold-transition login-page">
|
||||
<div class="login-box">
|
||||
<div class="login-logo">
|
||||
<a href="/">
|
||||
@if($appLogo)
|
||||
<img src="{{ $appLogo }}" alt="Logo" style="max-height: 80px; max-width: 200px;">
|
||||
@else
|
||||
<i class="fas fa-tree text-success"></i> <b>{{ e($appName) }}</b>
|
||||
@endif
|
||||
</a>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="card-body login-card-body">
|
||||
<p class="login-box-msg">Password dimenticata? Inserisci la tua email e ti invieremo il link per reimpostarla.</p>
|
||||
|
||||
@if(session('success'))
|
||||
<div class="alert alert-success">{{ session('success') }}</div>
|
||||
@endif
|
||||
|
||||
<form action="{{ route('password.email') }}" method="POST">
|
||||
@csrf
|
||||
<div class="input-group mb-3">
|
||||
<input type="email" name="email" class="form-control @error('email') is-invalid @enderror" placeholder="Email" required value="{{ old('email') }}">
|
||||
<div class="input-group-append">
|
||||
<div class="input-group-text"><span class="fas fa-envelope"></span></div>
|
||||
</div>
|
||||
@error('email')
|
||||
<span class="invalid-feedback">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<button type="submit" class="btn btn-success btn-block">Invia link reset</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<p class="mb-0 text-center mt-3">
|
||||
<a href="{{ route('login') }}">Torna al login</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -69,7 +69,7 @@ $appOrgName = AppSetting::getOrgName() ?? '';
|
||||
</div>
|
||||
</form>
|
||||
<p class="mb-0 text-center mt-3">
|
||||
<a href="{{ route('register') }}" class="text-center">Non hai un account? Registrati</a>
|
||||
<a href="{{ route('password.request') }}" class="text-center">Password dimenticata?</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
@extends('layouts.adminlte')
|
||||
|
||||
@section('title', 'Il Mio Profilo')
|
||||
@section('page_title', 'Il Mio Profilo')
|
||||
|
||||
@section('breadcrumbs')
|
||||
<li class="breadcrumb-item"><a href="{{ route('dashboard') }}">Dashboard</a></li>
|
||||
<li class="breadcrumb-item active">Profilo</li>
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="card card-primary">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title"><i class="fas fa-user mr-2"></i>Informazioni Account</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<dl class="row mb-0">
|
||||
<dt class="col-sm-4">Nome</dt>
|
||||
<dd class="col-sm-8">{{ e(Auth::user()->name) }}</dd>
|
||||
<dt class="col-sm-4">Email</dt>
|
||||
<dd class="col-sm-8">{{ e(Auth::user()->email) }}</dd>
|
||||
<dt class="col-sm-4">Membro dal</dt>
|
||||
<dd class="col-sm-8">{{ Auth::user()->created_at->format('d/m/Y') }}</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<div class="card card-warning">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title"><i class="fas fa-key mr-2"></i>Cambia Password</h3>
|
||||
</div>
|
||||
<form method="POST" action="{{ route('profile.password') }}">
|
||||
@csrf
|
||||
@method('PUT')
|
||||
<div class="card-body">
|
||||
@if(session('success'))
|
||||
<div class="alert alert-success">{{ session('success') }}</div>
|
||||
@endif
|
||||
@if(session('error'))
|
||||
<div class="alert alert-danger">{{ session('error') }}</div>
|
||||
@endif
|
||||
|
||||
<div class="form-group">
|
||||
<label for="current_password">Password attuale *</label>
|
||||
<input type="password" name="current_password" id="current_password" class="form-control @error('current_password') is-invalid @enderror" required>
|
||||
@error('current_password')
|
||||
<span class="invalid-feedback">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="password">Nuova password *</label>
|
||||
<input type="password" name="password" id="password" class="form-control @error('password') is-invalid @enderror" required minlength="8">
|
||||
<small class="text-muted">Minimo 8 caratteri</small>
|
||||
@error('password')
|
||||
<span class="invalid-feedback">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="password_confirmation">Conferma nuova password *</label>
|
||||
<input type="password" name="password_confirmation" id="password_confirmation" class="form-control" required minlength="8">
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer">
|
||||
<button type="submit" class="btn btn-warning">
|
||||
<i class="fas fa-save mr-1"></i> Aggiorna Password
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@@ -1,80 +0,0 @@
|
||||
<?php
|
||||
use App\Models\AppSetting;
|
||||
$appName = AppSetting::getAppName() ?? 'Glastree';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="it">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Registrati - {{ e($appName) }}</title>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/admin-lte@3.2/dist/css/adminlte.min.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
||||
</head>
|
||||
<body class="hold-transition register-page">
|
||||
<div class="register-box">
|
||||
<div class="login-logo">
|
||||
<a href="/"><i class="fas fa-tree text-success"></i> <b>{{ e($appName) }}</b></a>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="card-body register-card-body">
|
||||
<p class="login-box-msg">Crea un nuovo account</p>
|
||||
<form action="{{ route('register') }}" method="POST">
|
||||
@csrf
|
||||
<div class="input-group mb-3">
|
||||
<input type="text" name="name" class="form-control @error('name') is-invalid @enderror" placeholder="Nome completo" value="{{ old('name') }}" required>
|
||||
<div class="input-group-append">
|
||||
<div class="input-group-text">
|
||||
<span class="fas fa-user"></span>
|
||||
</div>
|
||||
</div>
|
||||
@error('name')
|
||||
<span class="invalid-feedback">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="input-group mb-3">
|
||||
<input type="email" name="email" class="form-control @error('email') is-invalid @enderror" placeholder="Email" value="{{ old('email') }}" required>
|
||||
<div class="input-group-append">
|
||||
<div class="input-group-text">
|
||||
<span class="fas fa-envelope"></span>
|
||||
</div>
|
||||
</div>
|
||||
@error('email')
|
||||
<span class="invalid-feedback">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="input-group mb-3">
|
||||
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror" placeholder="Password" required>
|
||||
<div class="input-group-append">
|
||||
<div class="input-group-text">
|
||||
<span class="fas fa-lock"></span>
|
||||
</div>
|
||||
</div>
|
||||
@error('password')
|
||||
<span class="invalid-feedback">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="input-group mb-3">
|
||||
<input type="password" name="password_confirmation" class="form-control" placeholder="Conferma password" required>
|
||||
<div class="input-group-append">
|
||||
<div class="input-group-text">
|
||||
<span class="fas fa-lock"></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<button type="submit" class="btn btn-success btn-block">Registrati</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<p class="mb-0 text-center mt-3">
|
||||
<a href="{{ route('login') }}" class="text-center">Hai già un account? Accedi</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
use App\Models\AppSetting;
|
||||
$appName = AppSetting::getAppName() ?? 'Glastree';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="it">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Reimposta Password - {{ e($appName) }}</title>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/admin-lte@3.2/dist/css/adminlte.min.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
||||
</head>
|
||||
<body class="hold-transition login-page">
|
||||
<div class="login-box">
|
||||
<div class="login-logo">
|
||||
<a href="/"><b>{{ e($appName) }}</b></a>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="card-body login-card-body">
|
||||
<p class="login-box-msg">Scegli una nuova password</p>
|
||||
|
||||
@error('email')
|
||||
<div class="alert alert-danger">{{ $message }}</div>
|
||||
@enderror
|
||||
|
||||
<form action="{{ route('password.update') }}" method="POST">
|
||||
@csrf
|
||||
<input type="hidden" name="token" value="{{ $token }}">
|
||||
<div class="input-group mb-3">
|
||||
<input type="email" name="email" class="form-control" placeholder="Email" required value="{{ old('email') }}">
|
||||
<div class="input-group-append">
|
||||
<div class="input-group-text"><span class="fas fa-envelope"></span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="input-group mb-3">
|
||||
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror" placeholder="Nuova password" required minlength="8">
|
||||
<div class="input-group-append">
|
||||
<div class="input-group-text"><span class="fas fa-lock"></span></div>
|
||||
</div>
|
||||
@error('password')
|
||||
<span class="invalid-feedback">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
<div class="input-group mb-3">
|
||||
<input type="password" name="password_confirmation" class="form-control" placeholder="Conferma password" required minlength="8">
|
||||
<div class="input-group-append">
|
||||
<div class="input-group-text"><span class="fas fa-lock"></span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<button type="submit" class="btn btn-success btn-block">Reimposta Password</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user