v0.5.8 - Added create news option on guide and event create/edit

This commit is contained in:
frederikpyt 2020-08-07 09:47:23 +02:00
parent c472ae80fa
commit 246004ebfd
9 changed files with 114 additions and 34 deletions

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Event;
use App\News;
use App\UserEvent;
use App\User;
use Illuminate\Http\Request;
@ -72,8 +73,21 @@ class EventController extends Controller
return redirect()->route("events.index", ['events' => $event])->with('EventNameExists', '<p><b>Der findes allerede et event med det navn!</b></p>');
else {
$event->save();
$event = Event::query()->paginate($request->input("limit", 20));
return redirect()->route("events.index", ['events' => $event]);
$events = Event::query()->paginate($request->input("limit", 20));
if($request->newsoption == true){
$news = new News();
$news->name = "Ny aktivitet";
$news->content = "<p>" . $event->description . "</p>" .
'<div class="row align-items-center">'.
'<a style="width: 50%; margin: 0; padding: 0; font-weight: 700;" class="sde-blue" href="'. route("userevents.store", ["event_id" => $event->id ]) .'">Tilmeld</a>'.
'<a style="width: 50%; margin: 0; padding: 0; text-align: end; font-weight: 700;" class="sde-blue" href="'. route("events.signups", ["event_id" => $event->id ]) .'">Se deltagere</a>'.
'</div>';
$news->save();
}
return redirect()->route('events.index', ['events' => $events]);
}
}
@ -139,8 +153,21 @@ class EventController extends Controller
$event->update($data);
$event->save();
$event = Event::query()->paginate($request->input("limit", 20));
return redirect()->route("events.index", ['events' => $event]);
$events = Event::query()->paginate($request->input("limit", 20));
if($request->newsoption == true){
$news = new News();
$news->name = "Aktivitet opdateret";
$news->content = "<p>" . $event->description . "</p>" .
'<div class="row align-items-center">'.
'<a style="width: 50%; margin: 0; padding: 0; font-weight: 700;" class="sde-blue" href="'. route("userevents.store", ["event_id" => $event->id ]) .'">Tilmeld</a>'.
'<a style="width: 50%; margin: 0; padding: 0; text-align: end; font-weight: 700;" class="sde-blue" href="'. route("events.signups", ["event_id" => $event->id ]) .'">Se deltagere</a>'.
'</div>';
$news->save();
}
return redirect()->route("events.index", ['events' => $events]);
}
}

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Guide;
use App\News;
use Illuminate\Http\Response;
use Illuminate\Http\Request;
@ -66,8 +67,18 @@ class GuideController extends Controller
if(!$saved){
return redirect()->route("guides.store");
}else{
$guide = Guide::query()->paginate($request->input("limit", 20));
return redirect()->route("guides.index", ['guides' => $guide]);
$guides = Guide::query()->paginate($request->input("limit", 20));
if($request->newsoption == true){
$news = new News();
$news->name = "Ny Vejledning";
$news->content = $guide->guide_articles;
$news->save();
}
return redirect()->route("guides.index", ['guides' => $guides]);
}
}
@ -116,6 +127,16 @@ class GuideController extends Controller
return redirect()->route("guides.update", [ "guide" => $guide ]);
}else{
$guide = Guide::query()->paginate($request->input("limit", 20));
if($request->newsoption == true){
$news = new News();
$news->name = "Vejledning opdateret";
$news->content = $guidee->guide_articles;
$news->save();
}
return redirect()->route("guides.index", ['guides' => $guide]);
}
}

View File

@ -20,7 +20,7 @@ class UserEventController extends Controller
return Response::detect("events.yourevents", [ "userevents" => $userevents ]);
}
public function store() {
public function create() {
}
@ -31,7 +31,7 @@ class UserEventController extends Controller
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function create(Request $request)
public function store(Request $request)
{
// Get written data from events.index
$data = $request->validate([
@ -51,7 +51,7 @@ class UserEventController extends Controller
$UserEvent->user_id = auth()->user()->id;
$UserEvent->save();
return redirect()->route("events.index")->with('signup#' . $request->event_id, '<p class="text-center"><b>Du er hermed tilmeldt denne aktivitet!</b></p>');
return redirect()->back();
}
/**

View File

@ -10,6 +10,14 @@
@endsection
@section("content")
<style>
.toggle__label::before, .toggle__label::after {
border-color: black;
}
.toggle__text::before {
border-color: black;
}
</style>
<h1>Opret Aktivitet:</h1>
<form method="post" action="{{ route("events.store") }}">
@csrf
@ -19,27 +27,12 @@
<input type="text" name="description" id="description" max="500" required>
<label for="date">Aktivitet dato:</label>
<input type="datetime-local" name="date" id="date" required>
<label class="toggle">
<input class="toggle__input" type="checkbox" name="newsoption">
<span class="toggle__label">
<span class="toggle__text">Opret som nyhed</span>
</span>
</label>
<input type="submit" class="btn btn-dark text-white" value="Opret">
</form>
{{-- <table class="tbl">--}}
{{-- <tr>--}}
{{-- <th>ID</th>--}}
{{-- <th>Fornavn</th>--}}
{{-- <th>Efternavn</th>--}}
{{-- <th>Email</th>--}}
{{-- <th>Tlf nr</th>--}}
{{-- <th style="width: 1px;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th>--}}
{{-- <th style="width: 1px;"><img class="w-100" src="{{ asset('/images/icons/trashcan.svg') }}" alt="Delete"></th>--}}
{{-- </tr>--}}
{{-- <tr>--}}
{{-- <td>{ID}</td>--}}
{{-- <td>{Fornavn}</td>--}}
{{-- <td>{Efternavn}</td>--}}
{{-- <td>{Email}</td>--}}
{{-- <td>{TLF}</td>--}}
{{-- <td><a href=""><img class="w-100" src="{{ asset('/images/icons/pencil-dark.svg') }}" alt="Update"></a></td>--}}
{{-- <td><a href=""><img class="w-100" src="{{ asset('/images/icons/trashcan-dark.svg') }}" alt="Delete"></a></td>--}}
{{-- </tr>--}}
{{-- </table>--}}
@endsection

View File

@ -10,6 +10,14 @@
@endsection
@section("content")
<style>
.toggle__label::before, .toggle__label::after {
border-color: black;
}
.toggle__text::before {
border-color: black;
}
</style>
<h1>Rediger Link:</h1>
<form method="post" action="{{route("events.update", ["event" => $event])}}">
@csrf
@ -20,7 +28,12 @@
<input value="{{$event->description}}" type="text" name="description" id="description" required>
<label for="date">Beskrivelse</label>
<input value="{{$event->date}}" type="datetime-local" name="date" id="date" required>
<label class="toggle">
<input class="toggle__input" type="checkbox" name="newsoption">
<span class="toggle__label">
<span class="toggle__text">Opret som nyhed</span>
</span>
</label>
<input type="submit" class="btn btn-dark text-white" value="Rediger">
</form>
@endsection

View File

@ -14,6 +14,12 @@
.ck-editor__main {
margin-bottom: 1rem;
}
.toggle__label::before, .toggle__label::after {
border-color: black;
}
.toggle__text::before {
border-color: black;
}
</style>
<script src="https://cdn.ckeditor.com/ckeditor5/21.0.0/classic/ckeditor.js"></script>
<h1>Opret Vejledning</h1>
@ -22,6 +28,12 @@
<label for="title">Titel guiden</label>
<input type="text" name="name" id="title" required>
<textarea name="guide_articles" id="editor"></textarea>
<label class="toggle">
<input class="toggle__input" type="checkbox" name="newsoption">
<span class="toggle__label">
<span class="toggle__text">Opret som nyhed</span>
</span>
</label>
<input type="submit" class="btn btn-dark text-white" value="Opret">
</form>

View File

@ -14,6 +14,12 @@
.ck-editor__main {
margin-bottom: 1rem;
}
.toggle__label::before, .toggle__label::after {
border-color: black;
}
.toggle__text::before {
border-color: black;
}
</style>
<script src="https://cdn.ckeditor.com/ckeditor5/21.0.0/classic/ckeditor.js"></script>
<h1>Rediger vejledning:</h1>
@ -24,6 +30,12 @@
<input value="{{$guide->name}}" type="text" name="name" id="title" required>
<label for="editor">Vejledning</label>
<textarea name="guide_articles" id="editor">{{$guide->guide_articles}}</textarea>
<label class="toggle">
<input class="toggle__input" type="checkbox" name="newsoption">
<span class="toggle__label">
<span class="toggle__text">Opret som nyhed</span>
</span>
</label>
<input type="submit" class="btn btn-dark text-white" value="Rediger">
</form>

View File

@ -8,7 +8,7 @@
<h1 class="text-center sde-blue mb-0">Aktiviteter</h1>
@if(!$events->isEmpty())
@foreach($events as $event)
<form method="get" action="{{ route("userevents.create") }}">
<form method="get" action="{{ route("userevents.store") }}">
<h3 class="sde-blue bold text-center mb-0">{{$event->name}}</h3>
<p class="text-center mt-0">{{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($event->date))->format('d/m/Y \k\l\. H:i') }}</p>
<p class="text-center">{{$event->description}}</p>

View File

@ -59,8 +59,10 @@
<main>
@foreach(\App\News::query()->orderBy("created_at", "desc")->get() as $new)
<h2 class="sde-blue">{{ $new->name }}</h2>
<div style="border: 4px solid rgba(0,0,0, 0.4); padding: 4px; margin-top: 1rem">
<h2 class="sde-blue mt-0 text-center">{{ $new->name }}</h2>
{!! $new->content !!}
</div>
@endforeach
</main>
<script src="{{ mix("/js/app.js") }}"></script>