From 40d2cd18583885aa7942326e608f4e34820bd1c7 Mon Sep 17 00:00:00 2001 From: Vytor Calixto <vytorcalixto@gmail.com> Date: Thu, 14 Apr 2016 11:32:35 -0300 Subject: [PATCH] Rota para novo evento e todos os eventos --- app/Event.php | 1 - app/Http/Controllers/EventController.php | 30 ++++++++++++++++++++++- app/Http/Controllers/HomeController.php | 8 +++--- app/Http/routes.php | 1 + resources/views/events/_form.blade.php | 22 +++++++++++++++++ resources/views/events/index.blade.php | 31 ++++++++++++++++++++++++ resources/views/events/new.blade.php | 18 ++++++++++++++ resources/views/layouts/app.blade.php | 2 +- resources/views/welcome.blade.php | 8 +++--- 9 files changed, 110 insertions(+), 11 deletions(-) create mode 100644 resources/views/events/_form.blade.php create mode 100644 resources/views/events/index.blade.php create mode 100644 resources/views/events/new.blade.php diff --git a/app/Event.php b/app/Event.php index ea5b8d3..f6780c9 100644 --- a/app/Event.php +++ b/app/Event.php @@ -6,7 +6,6 @@ use Illuminate\Database\Eloquent\Model; class Event extends Model { - // protected $fillable = ['name', 'type', 'date', 'place', 'hours', 'certificate_text']; public function users() { diff --git a/app/Http/Controllers/EventController.php b/app/Http/Controllers/EventController.php index d160bfe..96e9cdb 100644 --- a/app/Http/Controllers/EventController.php +++ b/app/Http/Controllers/EventController.php @@ -6,7 +6,35 @@ use Illuminate\Http\Request; use App\Http\Requests; +use App\Event; + class EventController extends Controller { - // + public function __construct() + { + $this->middleware('auth'); + } + + public function index() { + $events = Event::all(); + return view('events.index', [ + 'events' => $events + ]); + } + + public function newEvent() { + $event = new Event(); + $event->date = date(); + $event->certificate_text = "Certificamos que {{PARTICIPANTE}} participou {{TIPO}} {{NOME}} realizado no dia {{DATA}} com carga horária de {{HORAS}}."; + return view('home', [ + 'event' => $event + ]); + } + + public function eventIndex() { + $events = Event::all(); + return view('events.index', [ + 'events' => $events + ]); + } } diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index 3321422..55da0e8 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -25,11 +25,11 @@ class HomeController extends Controller */ public function index() { - $eventosFuturos = Event::where('date', '>=', date('Y-m-d').' 00:00:00')->get(); - $eventosPassados = Event::where('date', '<', date('Y-m-d').' 00:00:00')->get(); + $futureEvents = Event::where('date', '>=', date('Y-m-d').' 00:00:00')->get(); + $pastEvents = Event::where('date', '<', date('Y-m-d').' 00:00:00')->get(); return view('welcome', [ - 'eventosFuturos' => $eventosFuturos, - 'eventosPassados' => $eventosPassados + 'futureEvents' => $futureEvents, + 'pastEvents' => $pastEvents ]); } } diff --git a/app/Http/routes.php b/app/Http/routes.php index 02773a8..9486dc6 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -16,6 +16,7 @@ Route::get('/', 'HomeController@index'); /* ----------- Rotas de Eventos ----------- */ Route::get('/eventos', 'EventController@index'); //lista todos os eventos Route::get('/eventos/{evento}', 'EventController@eventIndex'); //mostra um evento especÃfico +Route::get('/eventos/novo', 'EventController@newEvent'); //Formulário para novo evento Route::auth(); diff --git a/resources/views/events/_form.blade.php b/resources/views/events/_form.blade.php new file mode 100644 index 0000000..ee10007 --- /dev/null +++ b/resources/views/events/_form.blade.php @@ -0,0 +1,22 @@ +<form class="" action="" method="post"> + <div class="input-group"> + <span class="input-group-addon">Nome</span> + <input type="text" name="name" value="{{ $event->name }}"> + </div> + <div class="input-group"> + <span class="input-group-addon">Tipo</span> + <input type="text" name="type" value="{{ $event->type }}"> + </div> + <div class="input-group"> + <span class="input-group-addon">Data</span> + <input type="date" name="date" value="{{ $event->date }}"> + </div> + <div class="input-group"> + <span class="input-group-addon">Local</span> + <input type="text" name="place" value="{{ $event->place }}"> + </div> + <div class="input-group"> + <span class="input-group-addon">Horas formativas</span> + <input type="number" name="hours" value="{{ $event->hours }}"> + </div> +</form> diff --git a/resources/views/events/index.blade.php b/resources/views/events/index.blade.php new file mode 100644 index 0000000..a993287 --- /dev/null +++ b/resources/views/events/index.blade.php @@ -0,0 +1,31 @@ +@extends ('layouts.app') + +@section ('content') +<div class="container"> + <div class="row"> + <div class="col-md-12"> + <div class="page-header"> + <h1>Eventos</h1> + </div> + </div> + </div> + <div class="row"> + <div class="col-md-10 col-md-offset-1"> + <a href="{{ url('/eventos/novo') }}" class="btn btn-primary" role="button"><span class="glyphicon glyphicon-plus"></span> Novo evento</a> + <ul class="list-group"> + @if (count($events) > 0) + @foreach ($events as $evt) + <li class="list-group-item"> + {{ $evt->name }} + </li> + @endforeach + @else + <li class="list-group-item"> + Não há eventos cadastrados + </li> + @endif + </ul> + </div> + </div> +</div> +@endsection diff --git a/resources/views/events/new.blade.php b/resources/views/events/new.blade.php new file mode 100644 index 0000000..29b32f2 --- /dev/null +++ b/resources/views/events/new.blade.php @@ -0,0 +1,18 @@ +@extends ('layouts.app') + +@section ('content') +<div class="container"> + <div class="row"> + <div class="col-md-12"> + <div class="page-header"> + <h1>Novo evento</h1> + </div> + </div> + </div> + <div class="row"> + <div class="col-md-10 col-md-offset-1"> + @include ('_form') + </div> + </div> +</div> +@endsection diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index e75d7ec..9d303d4 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -49,7 +49,7 @@ <!-- Left Side Of Navbar --> @unless (Auth::guest()) <ul class="nav navbar-nav"> - <li><a href="{{ url('/home') }}">Gerenciar Eventos</a></li> + <li><a href="{{ url('/eventos') }}">Gerenciar Eventos</a></li> </ul> @endunless diff --git a/resources/views/welcome.blade.php b/resources/views/welcome.blade.php index 37a46bc..d3b0cfd 100644 --- a/resources/views/welcome.blade.php +++ b/resources/views/welcome.blade.php @@ -8,8 +8,8 @@ <div class="panel-heading">Próximos eventos</div> <div class="panel-body"> <ul class="list-group"> - @if (count($eventosFuturos) > 0) - @foreach ($eventosFuturos as $evt) + @if (count($futureEvents) > 0) + @foreach ($futureEvents as $evt) <li class="list-group-item"> {{ $evt->name }} </li> @@ -27,8 +27,8 @@ <div class="panel-heading">Eventos anteriores</div> <div class="panel-body"> <ul class="list-group"> - @if (count($eventosPassados) > 0) - @foreach ($eventosPassados as $evt) + @if (count($pastEvents) > 0) + @foreach ($pastEvents as $evt) <li class="list-group-item"> {{ $evt->name }} </li> -- GitLab