diff --git a/.env.example b/.env.example index 8f09ece..0694f24 100644 --- a/.env.example +++ b/.env.example @@ -20,29 +20,12 @@ QUEUE_CONNECTION=sync SESSION_DRIVER=file SESSION_LIFETIME=120 -REDIS_HOST=127.0.0.1 -REDIS_PASSWORD=null -REDIS_PORT=6379 - MAIL_MAILER=smtp MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null -MAIL_FROM_ADDRESS=null +MAIL_FROM_ADDRESS=noreply-sw@ldc.fr MAIL_FROM_NAME="${APP_NAME}" -MAIL_LIST_SERVICEWEB=informatique.internet@ldc.fr - -AWS_ACCESS_KEY_ID= -AWS_SECRET_ACCESS_KEY= -AWS_DEFAULT_REGION=us-east-1 -AWS_BUCKET= - -PUSHER_APP_ID= -PUSHER_APP_KEY= -PUSHER_APP_SECRET= -PUSHER_APP_CLUSTER=mt1 - -MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" -MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" +MAIL_LIST_SERVICEWEB=equipe.web@ldc.fr diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 1802678..12d0404 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -3,9 +3,11 @@ namespace App\Http\Controllers; use App\Http\Controllers\Auth\ForgotPasswordController; +use App\Models\Schedule; use App\Models\User; use Illuminate\Database\Eloquent\Model; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Auth; use Kwaadpepper\CrudPolicies\Traits\CrudController; class UserController extends Controller @@ -31,4 +33,33 @@ class UserController extends Controller $request = new Request(['email' => $user->email]); return app(ForgotPasswordController::class)->sendResetLinkEmail($request); } + + public function stats() + { + $user = Auth::user(); + $stats = []; + + for ($i = 2021; $i <= date('Y'); $i++) { + $start = $i . '-03-01'; + $end = $i + 1 . '-02-' . $this->getLastDayFebruary($i + 1); + + $datas = $user->schedules()->selectRaw('count(id) as nb, activity') + ->whereBetween('date', [$start, $end]) + ->groupBy('activity') + ->orderBy('activity', 'ASC') + ->get(); + + $stats[sprintf("%d/%d", $i, $i + 1)] = $datas; + } + + return view('users.stats', ['stats' => $stats]); + } + + private function getLastDayFebruary($year) + { + if ((is_int($year / 4) && !is_int($year / 100)) || is_int($year / 400)) { + return 29; + } + return 28; + } } diff --git a/app/Models/User.php b/app/Models/User.php index 0776c47..4374473 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -186,6 +186,11 @@ class User extends Authenticatable return $this->belongsToMany(Site::class); } + public function schedules() + { + return $this->hasMany(Schedule::class); + } + public function sendMailConfirm() { dispatch(new SendUserCreatedEmail($this)); diff --git a/resources/sass/_bootswatch.scss b/resources/sass/_bootswatch.scss index fd73052..cc80c56 100644 --- a/resources/sass/_bootswatch.scss +++ b/resources/sass/_bootswatch.scss @@ -151,6 +151,10 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Source+Sans+Pro:ital,w @include box-shadow(none); } +.user-dropdown { + z-index: 10000; +} + .breadcrumb { border-color: shade-color($breadcrumb-bg, 10%); @include shadow(); diff --git a/resources/views/emails/ticket-update.blade.php b/resources/views/emails/ticket-update.blade.php index 40b7503..de7d58d 100644 --- a/resources/views/emails/ticket-update.blade.php +++ b/resources/views/emails/ticket-update.blade.php @@ -2,8 +2,8 @@
Le ticket n°{{ $ticket->id }} à été mis à jour :
{!! clean(nl2br($corpsMaj)) !!}
-Lien vers le ticket : Ouvrir dans un nouvel onglet
+Lien vers le ticket : Ouvrir dans un nouvel onglet
\ No newline at end of file diff --git a/resources/views/layout/nav.blade.php b/resources/views/layout/nav.blade.php index fcaa04d..60cc0dc 100644 --- a/resources/views/layout/nav.blade.php +++ b/resources/views/layout/nav.blade.php @@ -59,17 +59,21 @@