<component name="ProjectDictionaryState">
<dictionary name="Louis">
<words>
+ <w>humeur</w>
+ <w>humeurs</w>
<w>mailgun</w>
<w>podcast</w>
<w>webhook</w>
--- /dev/null
+<?php
+
+namespace App\Http\Controllers;
+
+use App\Models\WeeklyAgenda;
+use Illuminate\Http\Request;
+
+class AgendaController extends Controller
+{
+ public function show(WeeklyAgenda $agenda)
+ {
+ \View::share('agenda', $agenda);
+ return view('en-plus.agenda.show');
+ }
+}
--- /dev/null
+<?php
+
+namespace App\Http\Controllers;
+
+use App\Models\Humeur;
+use App\Models\WeeklyAgenda;
+use Illuminate\Http\Request;
+
+class EnPlusController extends Controller
+{
+
+ public function index()
+ {
+ \View::share('humeur', Humeur::query()->orderByDesc('id')->firstOrFail());
+ \View::share('agenda', WeeklyAgenda::query()->orderByDesc('id')->firstOrFail());
+
+ return view('en-plus.index');
+ }
+}
--- /dev/null
+<?php
+
+namespace App\Http\Controllers;
+
+use App\Models\Humeur;
+use App\Repositories\HumeurRepository;
+use Illuminate\Http\Request;
+
+class HumeurController extends Controller
+{
+ public function show($slug, HumeurRepository $repository)
+ {
+ /** @var Humeur $article */
+ $humeur = $repository->forSlug($slug);
+ abort_if($humeur === null, 404);
+
+ \View::share('humeur', $humeur);
+ return view('en-plus.humeurs.show');
+
+ }
+}
use A17\Twill\Models\Behaviors\HasSlug;
use A17\Twill\Models\Model;
+/**
+ * Class Humeur
+ * @package App\Models
+ * @property string $link
+ */
class Humeur extends Model
{
use HasSlug;
'title',
];
+
+ /**
+ * @return string
+ */
+ public function getLinkAttribute(): string
+ {
+ return route('humeur.show', ['slug' => $this->slug]);
+ }
+
}
use A17\Twill\Models\Behaviors\HasBlocks;
use A17\Twill\Models\Behaviors\HasMedias;
use A17\Twill\Models\Model;
-
+use Carbon\Carbon;
+
+/**
+ * Class WeeklyAgenda
+ * @package App\Models
+ * @property Carbon $start_date
+ * @property-read Carbon $end_date
+ */
class WeeklyAgenda extends Model
{
use HasMedias;
'title',
];
+ protected $dates = ['start_date'];
+
protected $appends = ['title'];
public $mediasParams = [
return $this->start_date;
}
+ public function getEndDateAttribute(): Carbon
+ {
+ return $this->start_date->addWeek();
+ }
+
}
</div>
<div>
- <a href="#">
+ <a href="{{route('humeur-agenda.index')}}">
<img src="{{asset('img/nav/3-enplus.svg')}}" alt="Pill Icon">
<p>Agenda<br> & Humeur</p>
</a>
--- /dev/null
+@extends('layouts.app')
+@inject('imageService', \A17\Twill\Services\MediaLibrary\ImageService)
+@section('content')
+
+ <div class="container psq-plus">
+ <h1>Semaine du {{$agenda->start_date->format('d/m/Y')}} au {{$agenda->end_date->format('d/m/Y')}}</h1>
+
+ <div class="row">
+
+ @foreach($agenda->imageObjects('events') as $event)
+ <div class="col-sm-4 mb-2">
+ @if(!empty($url = $event->getMetadata('url')))
+ <a href="{!! $url!!}" target="_blank">
+ @endif
+
+ <img src="{{$imageService::getUrl($event->uuid)}}" alt="" class="w-100">
+ @if(!empty($url))
+ </a>
+ @endif
+
+ </div>
+
+
+ @endforeach
+
+ </div>
+
+
+
+ </div>
+
+@endsection
--- /dev/null
+@extends('layouts.app')
+
+@section('content')
+
+ <div class="container psq-plus">
+ <h1>Nos mauvaises humeurs</h1>
+ <article>
+
+ <h2>{{$humeur->title}}</h2>
+ <div class="content">
+ {!! $humeur->content !!}
+
+ </div>
+ </article>
+
+
+
+
+
+ </div>
+
+@endsection
--- /dev/null
+@extends('layouts.app')
+
+@section('content')
+
+
+ <div class="container psq-plus">
+ <div class="row">
+ <div class="col-sm-6">
+ <h1>Nos mauvaises humeurs</h1>
+ <article class="box p-3 mb-3">
+ <h2>{{$humeur->title}}</h2>
+ <p>{!! $humeur->extract !!}</p>
+ <a href="{{$humeur->link}}" class="click-here">Lire la suite</a>
+ <p>Par Olivier Robichon</p>
+ <img src="{{asset('/img/humeurs/olivier.jpg')}}" alt="Photo Olivier Robichon" style="max-width: 100px;">
+ </article>
+ <a href="#" class="click-here text-left">Toutes nos mauvaises humeurs</a>
+
+
+ </div>
+ <div class="col-sm-6">
+ <h1>L’AGENDA DES ACTEURS DU MÉDICAMENT</h1>
+ @if(!empty($url = $agenda->imageObject('events')->getMetadata('url')))
+ <a href="{!! $url !!}" target="_blank">
+ @endif
+ <img style="max-width: 350px;" class="w-100 d-block m-auto" src="{{$agenda->image('events')}}" alt="">
+ @if(!empty($url))
+ </a>
+ @endif
+
+ <a href="{{route('agenda.show', ['agenda' => $agenda->start_date])}}" class="click-here text-left mt-3">Les Conférences de presse, les Colloques, les Rendez-Vous et les Dates essentielles des acteurs du Médicament et de leurs Partenaires</a>
+ </div>
+ </div>
+ </div>
+
+@endsection
<div class="container error-404">
- <h1>{{($m = $exception->getMessage()) === '' ? __('Not Found') : $m }}</h1>
-
<p>Cette page est introuvable... <a href="/">cliquez ici pour retourner sur la page d'accueil</a></p>
Route::get('/cover', 'FileController@cover');
});
+ Route::get('agenda-et-humeurs', 'EnPlusController@index')->name('humeur-agenda.index');
+ Route::get('humeur/{slug}', 'HumeurController@show')->name('humeur.show');
+ Route::get('agenda/{agenda:start_date}', 'AgendaController@show')->name('agenda.show');
Route::get('/l/{link:slug}', 'TrackedLinkController@redirect')->name('track');