v1.4.10 - Event, Guide & Menuplan pictures can now be updated and changed correctly (Menuplan is determined when creating, can't change picture later)

There is no longer a second news, when updating an event or such

Added Select2 when chosing roles for users

Removed guide button
This commit is contained in:
Anders 2020-11-26 15:22:59 +01:00
parent baaf0f954d
commit 3bf8329434
11 changed files with 71 additions and 28 deletions

View File

@ -172,6 +172,7 @@ class EventController extends Controller
*/
public function update(Request $request, $id)
{
$data = $request->all();
$event = Event::find($id);
@ -182,6 +183,11 @@ class EventController extends Controller
return redirect()->route("events.index", ['events' => $event]);
}else{
$event->update($data);
if($request->file("resource")) {
$event->resource_id = ResourceController::store($request)->id;
}
$event->save();
$events = Event::query()->get();
@ -196,9 +202,6 @@ class EventController extends Controller
$news->resource_id = $event->resource_id;
$news->content = "<p>" . $this->closetags(substr($event->description, 0, 300));
if($request->file("resource")) {
$event->resource_id = ResourceController::store($request)->id;
}
NewsController::storeAndGet($news);

View File

@ -126,14 +126,16 @@ class GuideController extends Controller
*/
public function update(Request $request, Guide $guide)
{
$data = $request->validate([
"name" => "required|max:255",
"guide_articles" => "required",
"guide_category_id" => "required",
]);
$data = $request->all();
$guidee = Guide::query()->where("id", "=", $guide->id)->first();
$guidee->update($data);
//If an image has been uploaded, store the file
if($request->file("resource")) {
$guidee->resource_id = ResourceController::store($request)->id;
}
$saved = $guidee->save();
if(!$saved){

View File

@ -76,8 +76,6 @@ class MenuPlanController extends Controller
$menuPlan->save();
$menuPlans = MenuPlan::query()->get();
$menuArray = [];
if($request->newsoption == true){
$news = new News();
@ -177,6 +175,10 @@ class MenuPlanController extends Controller
'<h2 class="ql-align-center"><strong>Torsdag:</strong></h2>'.
'<p class="ql-align-center">'.$menuplan->thursday.'</p>';
$oldResourceID = News::query()->where('arrangement_id', '=', $menuplan->id)->first();
if ($oldResourceID != null)
$news->resource_id = $oldResourceID->resource_id;
NewsController::storeAndGet($news);
}

View File

@ -84,6 +84,10 @@ class NewsController extends Controller
*/
public static function storeAndGet(News $news)
{
$OldNews = News::query()->where('arrangement_id', "=", $news->arrangement_id);
$OldNews->delete();
$news->save();
Helpers::sendNewsNotification($news, User::query()->where("wants_emails", "=", true)->get());

View File

@ -24,7 +24,7 @@
</style>
<link href="{{ asset("/css/quill/quill.snow.css") }}" rel="stylesheet">
<h1>Rediger Aktivitet:</h1>
<form method="post" action="{{route("events.update", ["event" => $event])}}">
<form method="post" action="{{route("events.update", ["event" => $event])}}" enctype="multipart/form-data">
@csrf
@method("PUT")
<label for="name">Aktivitet Navn:</label>
@ -43,7 +43,7 @@
<label class="toggle">
<input class="toggle__input" type="checkbox" name="newsoption">
<span class="toggle__label">
<span class="toggle__text">Opret som nyhed</span>
<span class="toggle__text">Opdater / Opret som nyhed?</span>
</span>
</label>
<input id="disable" type="submit" class="btn btn-dark text-white" value="Rediger">

View File

@ -24,7 +24,7 @@
</style>
<link href="{{ asset("/css/quill/quill.snow.css") }}" rel="stylesheet">
<h1>Rediger vejledning:</h1>
<form method="post" action="{{route("guides.update", ["guide" => $guide])}}">
<form method="post" action="{{route("guides.update", ["guide" => $guide])}}" enctype="multipart/form-data">
@csrf
@method("PUT")
<label for="title">Navn</label>
@ -52,7 +52,7 @@
<label class="toggle">
<input class="toggle__input" type="checkbox" name="newsoption">
<span class="toggle__label">
<span class="toggle__text">Opret som nyhed</span>
<span class="toggle__text">Opdater / Opret som nyhed?</span>
</span>
</label>
<input id="disable" type="submit" class="btn btn-dark text-white" value="Rediger">

View File

@ -40,7 +40,7 @@
<label class="toggle">
<input class="toggle__input" type="checkbox" name="newsoption">
<span class="toggle__label">
<span class="toggle__text">Opret som nyhed</span>
<span class="toggle__text">Opdater / Opret som nyhed?</span>
</span>
</label>
<input id="disable" type="submit" class="btn btn-dark text-white" value="Rediger Menuplan">

View File

@ -23,9 +23,9 @@
<label for="title">Navn</label>
<label hidden id="error" for="errormesseages">Dette navn findes allerede</label>
<input value="{{$news->subname}}" type="text" name="subname" id="title" required>
<small class="form-text text-muted">For at kunne indsætte et link, skal du markere den text du vil lave som et link først.</small>
<label for="date">Rediger datoen til når nyheden skal slettes (Hvis nyheden ikke skal slettes efter en bestemt dato, slet ALT i dato felete, det er tomt!)</label>
<input type="datetime-local" value="{{$news->news_expiration_date}}" name="news_expiration_date" id="date">
<small class="form-text text-muted">For at kunne indsætte et link, skal du markere den text du vil lave som et link først.</small>
<div id="editor">{!! $news->content !!}</div>
<textarea name="content" class="d-none" id="hiddenArea"></textarea>
<input id="disable" type="submit" class="btn btn-dark text-white" value="Rediger">

View File

@ -10,7 +10,24 @@
@endsection
@section("content")
<style>
.select2-container--default .select2-results > .select2-results__options {
max-height: 120px !important;
}
.select2-results__option, .select2-search__field {
color: black;
}
</style>
<script src="toast.js"></script>
<link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/js/select2.min.js"></script>
<script>
// In your Javascript (external .js resource or <script> tag)
$(document).ready(function() {
$('.js-example-basic-multiple').select2();
});
</script>
<h1 id="errormesseages" >Opret Bruger:</h1>
<form method="post" action="{{ route("users.store") }}" onsubmit="return checkInputs()" enctype="multipart/form-data">
@csrf
@ -36,12 +53,12 @@
<label hidden id="errorphone">Der findes allerede en bruger med dette telefon nr!</label>
<input type="tel" name="phone" id="phone" placeholder="12345678" pattern="[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{2}" required>
<label for="roles">Rolle:</label>
<select name="roles[]" id="roles" class="mb-2" multiple="multiple" required>
<option disabled selected value> -- Vælg Rolle(r) -- </option>
<option value="">Ingen Rolle</option>
<select id="roles" class="js-example-basic-multiple mb-2" name="roles[]" multiple="multiple" required>
<optgroup label="Roller">
@foreach($roles as $role)
<option value="{{ $role->name }}">{{ $role->name }}</option>
@endforeach
</optgroup>
</select>
<label for="fileuploade">Skift brugerens profile billede:</label>
<input id="fileuploade" type="file" name="resource" accept="image/*">

View File

@ -10,6 +10,23 @@
@endsection
@section("content")
<style>
.select2-container--default .select2-results > .select2-results__options {
max-height: 120px !important;
}
.select2-results__option, .select2-search__field {
color: black;
}
</style>
<link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/js/select2.min.js"></script>
<script>
// In your Javascript (external .js resource or <script> tag)
$(document).ready(function() {
$('.js-example-basic-multiple').select2();
});
</script>
<h1>Rediger Bruger:</h1>
<form method="post" action="{{ route("users.update", ['user' => $user]) }}" onsubmit="return checkInputs()" enctype="multipart/form-data">
@csrf
@ -36,16 +53,14 @@
<label hidden id="errorphone">Der findes allerede en bruger med dette telefon nr!</label>
<input type="tel" name="phone" id="phone" value="{{ $user->phone }}" placeholder="12345678" pattern="[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{2}" required>
<label for="role">Rolle: (Brug ctrl og shift til at vælge flere)</label>
<select class="w-100" name="roles[]" id="roles" class="mb-2" multiple="multiple" required>
<select id="roles" class="js-example-basic-multiple mb-2" name="roles[]" multiple="multiple" required>
<optgroup label="Roller">
@if(count($user->roles) == 0)
<option disabled selected> -- Vælg Rolle(r) -- </option>
<option value>Ingen Rolle</option>
@foreach($roles as $role)
<option value="{{ $role->name }}">{{ $role->name }}</option>
@endforeach
@else
<option disabled> -- Vælg Rolle(r) -- </option>
<option value>Ingen Rolle</option>
@foreach($roles as $role)
{{ $selected = "" }}
@foreach($user->roles as $userRole)
@ -56,6 +71,7 @@
<option {{ $selected }} value="{{ $role->name }}">{{ $role->name }}</option>
@endforeach
@endif
</optgroup>
</select>
<label for="fileuploade">Skift brugerens profile billede:</label>
<input id="fileuploade" type="file" name="resource" accept="image/*">

View File

@ -90,7 +90,6 @@
@else
<p class="mb-auto text-center">{{__('msg.dereringenvejledninger')}}.</p>
@endif
<button onclick="window.history.back()" class="btn btn-sde-blue text-white mb-1 mt-auto" >{{__('msg.tilbage')}}</button>
</main>
<script>