This commit is contained in:
Sebastian Davaris 2020-06-25 13:20:59 +02:00
commit 3d9cc63241
24 changed files with 485 additions and 68 deletions

10
skolehjem/app/Booking.php Normal file
View File

@ -0,0 +1,10 @@
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Booking extends Model
{
//
}

View File

@ -0,0 +1,100 @@
<?php
namespace App\Http\Controllers;
use App\Booking;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
class BookingController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index(Request $request)
{
$booking = Booking::query()->paginate($request->input("limit", 20));
return Response::detect("bookings.index", [ "bookings" => $booking]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return Response::detect("bookings.create");
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$requestBooking = $request->validate([
"name_first" => "required|max:255",
"name_last" => "required|max:255",
"phone" => "required|unique:users",
"machine_choice" => "required|max:255",
]);
$booking = new Booking($requestBooking);
$booking->save();
return Response::detect("bookings.store");
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
return Response::detect("bookings.show", [ "bookings" => $id]);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
return Response::detect("bookings.show", [ "bookings" => $id]);
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}

View File

@ -70,7 +70,8 @@ class ExternalLinkController extends Controller
*/
public function edit($id)
{
//
$link = ExternalLink::find($id);
return Response::detect("external-links.edit", ["externallink" => $link]);
}
/**
@ -82,7 +83,15 @@ class ExternalLinkController extends Controller
*/
public function update(Request $request, $id)
{
//
$data = $request->validate([
"name" => "",
"link" => ""
]);
$id->update($data);
$id->save();
return Response::detect("external-links.update");
}
/**
@ -93,6 +102,7 @@ class ExternalLinkController extends Controller
*/
public function destroy($id)
{
//
$id->delete();
return Response::detect("external-links.destroy");
}
}

View File

@ -2,6 +2,7 @@
namespace App\Http\Controllers;
use App\Feedback;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
@ -11,76 +12,106 @@ class FeedbackController extends Controller
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
* @param Request $request
* @return Response
*/
public function index()
public function index(Request $request)
{
//
$feedback = Feedback::query()->paginate($request->input("limit", 20));
return Response::detect("feedback.index", [ "feedback" => $feedback ]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
* @return Response
*/
public function create()
{
//
return Response::detect("feedback.create");
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
* @param Request $request
* @return Response
*/
public function store(Request $request)
{
//
$requestBody = $request->validate([
"name" => "required|max:255",
"link" => "required|max:255"
]);
$feedback = new Feedback($requestBody);
$feedback->save();
return Response::detect("feedback.store");
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
* @return Response
*/
public function show($id)
{
//
return Response::detect("feedback.show", [ "feedback" => $id]);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
* @return Response
*/
public function edit($id)
{
//
$feedback = Feedback::find($id);
return Response::detect("feedbacks.edit", [
"feedback" => $feedback
]);
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
* @param Request $request
* @param int $id
* @return void
*/
public function update(Request $request, $id)
{
//
$data = $request->validate([
"time" => "required"
]);
$feedback = Feedback::find($id);
$feedback->update($data);
$feedback->save();
return Response::detect("feedbacks.edit", [
"feedback" => $feedback
]);
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
* @return Response
*/
public function destroy($id)
{
//
$feedback = Feedback::find($id);
$feedback->delete();
return Response::detect("feedbacks.destroy");
}
}

View File

@ -2,7 +2,11 @@
namespace App\Http\Controllers;
use App\ExternalLink;
use App\MenuPlan;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
class MenuPlanController extends Controller
{
@ -11,9 +15,11 @@ class MenuPlanController extends Controller
*
* @return \Illuminate\Http\Response
*/
public function index()
public function index(Request $request)
{
//
$menuPlans = MenuPlan::query()->paginate($request->input("limit", 20));
return Response::detect("menuplans.index", [ "menuPlans" => $menuPlans]);
}
/**
@ -21,9 +27,9 @@ class MenuPlanController extends Controller
*
* @return \Illuminate\Http\Response
*/
public function create()
public function create(Request $request)
{
//
return Response::detect("menuplans.create");
}
/**
@ -34,7 +40,15 @@ class MenuPlanController extends Controller
*/
public function store(Request $request)
{
//
$requestMenuPlanCreate = $request->validate([
"name" => "required|max:255",
"link" => "required|max:255"
]);
$menuPlans = new ExternalLink($requestMenuPlanCreate);
$menuPlans->save();
return Response::detect("menuplans.store");
}
/**
@ -45,7 +59,7 @@ class MenuPlanController extends Controller
*/
public function show($id)
{
//
return Response::detect("menu-plan.show", [ "menu-plans" => $id]);
}
/**
@ -56,7 +70,8 @@ class MenuPlanController extends Controller
*/
public function edit($id)
{
//
$editLink = MenuPlan::find($id);
return Response::detect("menu-plans.edit", ["menu-plans" => $editLink]);
}
/**
@ -68,7 +83,15 @@ class MenuPlanController extends Controller
*/
public function update(Request $request, $id)
{
//
$data = $request->validate([
"name" => "",
"link" => ""
]);
$id->update($data);
$id->save();
return Response::detect("menu-plans.update");
}
/**
@ -79,6 +102,7 @@ class MenuPlanController extends Controller
*/
public function destroy($id)
{
//
$id->delete();
return Response::detect("menu-plans.destroy");
}
}

View File

@ -4,82 +4,113 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Spatie\Permission\Models\Permission;
class PermissionController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
* @param Request $request
* @return Response
*/
public function index()
public function index(Request $request)
{
//
$permission = Permission::query()->paginate($request->input("limit", 20));
return Response::detect("permission.index", [ "permission" => $permission ]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
* @return Response
*/
public function create()
{
//
return Response::detect("permission.create");
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
* @param Request $request
* @return Response
*/
public function store(Request $request)
{
//
$requestBody = $request->validate([
"name" => "required|max:255",
"link" => "required|max:255"
]);
$permission = new Permission($requestBody);
$permission->save();
return Response::detect("permission.store");
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
* @return Response
*/
public function show($id)
{
//
return Response::detect("permission.show", [ "permission" => $id]);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
* @return Response
*/
public function edit($id)
{
//
$permission = Permission::find($id);
return Response::detect("permissions.edit", [
"permission" => $permission
]);
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
* @param Request $request
* @param int $id
* @return void
*/
public function update(Request $request, $id)
{
//
$data = $request->validate([
"time" => "required"
]);
$permission = Permission::find($id);
$permission->update($data);
$permission->save();
return Response::detect("permissions.edit", [
"permission" => $permission
]);
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
* @param int $id
* @return void
*/
public function destroy($id)
{
//
$permission = Permission::find($id);
$permission->delete();
return Response::detect("permissions.destroy");
}
}

View File

@ -88,7 +88,7 @@ class UserController extends Controller
{
$user = User::find($id);
return Respone::detect("users.show", [
return Response::detect("users.show", [
"user" => $user
]);
}

View File

@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateExternalLink extends Migration
class CreateExternalLinks extends Migration
{
/**
* Run the migrations.
@ -13,7 +13,7 @@ class CreateExternalLink extends Migration
*/
public function up()
{
Schema::create('external_link', function (Blueprint $table) {
Schema::create('external_links', function (Blueprint $table) {
$table->id();
$table->string("name");
$table->string("link");
@ -28,6 +28,6 @@ class CreateExternalLink extends Migration
*/
public function down()
{
Schema::dropIfExists('external_link');
Schema::dropIfExists('external_links');
}
}

View File

@ -0,0 +1,22 @@
@extends("admin.layout.base")
@extends("admin.layout.header")
@section("title")
Link - Opret
@endsection
@section("path")
<a href="{{ route('external-links.create') }}" class="text-white">Opret Link</a> /
@endsection
@section("content")
<h1>Opret Link:</h1>
<form method="post" action="{{ route("external-links.store") }}">
@csrf
<label for="title">Titel:</label>
<input type="text" name="title" id="title" required>
<label for="link">Linket:</label>
<input type="text" name="link" id="link" required>
<input type="submit" class="btn btn-dark text-white" value="Opret">
</form>
@endsection

View File

@ -0,0 +1,13 @@
@extends("admin.layout.base")
@extends("admin.layout.header")
@section("title")
Link - Fjern
@endsection
@section("path")
<a href="{{ route('external-links.delete') }}" class="text-white">Fjern Link</a> /
@endsection
@section("content")
@endsection

View File

@ -0,0 +1,22 @@
@extends("admin.layout.base")
@extends("admin.layout.header")
@section("title")
Link - Rediger
@endsection
@section("path")
<a href="{{ route('external-links.edit') }}" class="text-white">Rediger Link</a> /
@endsection
@section("content")
<h1>Rediger Link:</h1>
<form method="post" action="">
@csrf
<label for="title">Titel:</label>
<input type="text" name="title" id="title" required>
<label for="link">Linket:</label>
<input type="text" name="link" id="link" required>
<input type="submit" class="btn btn-dark text-white" value="Rediger">
</form>
@endsection

View File

@ -0,0 +1,33 @@
@extends("admin.layout.base")
@extends("admin.layout.header")
@section("title")
Link - Vis
@endsection
@section("path")
<a href="{{ route('external-links.index') }}" class="text-white">Vis Link</a> /
@endsection
@section("content")
<table class="tbl">
<tr>
<th>ID</th>
<th>Title</th>
<th>Link</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>
@foreach($links as $link)
<tr>
<th>{ID}</th>
<th>{Titel}</th>
<th>{Link}</th>
<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>
@endforeach
</table>
{{ $links->links() }}
@endsection

View File

@ -22,28 +22,28 @@
<div class="segment">
<h3 class="text-white">Menuplan</h3>
<div class="row">
{{-- <a href="{{ route("menu-plans.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Menuplan</a>--}}
<a href="{{ route("menu-plans.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Menuplan</a>
</div>
<div class="row">
{{-- <a href="{{ route("menu-plans.create") }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Menuplan</a>--}}
<a href="{{ route("menu-plans.create") }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Menuplan</a>
</div>
</div>
<div class="segment">
<h3 class="text-white">Booking</h3>
<div class="row">
{{-- <a href="{{ route("bookings.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Bookings</a>--}}
<a href="{{ route("bookings.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Bookings</a>
</div>
<div class="row">
{{-- <a href="{{ route('bookings.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Booking</a>--}}
<a href="{{ route('bookings.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Booking</a>
</div>
</div>
<div class="segment">
<h3 class="text-white">Vaskemaskiner</h3>
<div class="row">
{{-- <a href="{{ route("washing-machines.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Bookings</a>--}}
<a href="{{ route("washing-machines.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Vaskemaskiner</a>
</div>
<div class="row">
{{-- <a href="{{ route('washing-machines.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Booking</a>--}}
<a href="{{ route('washing-machines.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Vaskemaskine</a>
</div>
</div>
</div>

View File

@ -6,7 +6,7 @@
@endsection
@section("path")
<a href="{{ route('menuplans.create') }}" class="text-white">Opret Menuplan</a> /
<a href="{{ route('menu-plans.create') }}" class="text-white">Opret Menuplan</a> /
@endsection
@section("content")

View File

@ -6,7 +6,7 @@
@endsection
@section("path")
<a href="{{ route('menuplans.delete') }}" class="text-white">Fjern Menuplan</a> /
<a href="{{ route('menu-plans.delete') }}" class="text-white">Fjern Menuplan</a> /
@endsection
@section("content")

View File

@ -6,7 +6,7 @@
@endsection
@section("path")
<a href="{{ route('menuplans.edit') }}" class="text-white">Rediger Menuplan</a> /
<a href="{{ route('menu-plans.edit') }}" class="text-white">Rediger Menuplan</a> /
@endsection
@section("content")

View File

@ -0,0 +1,43 @@
@extends("admin.layout.base")
@extends("admin.layout.header")
@section("title")
Menuplan - Vis
@endsection
@section("path")
<a href="{{ route('menu-plans.index') }}" class="text-white">Vis Menuplan</a> /
@endsection
@section("content")
<table class="tbl">
<tr>
<th>ID</th>
<th>Mandag</th>
<th>Tirsdag</th>
<th>Onsdag</th>
<th>Torsdag</th>
<th>Fredag</th>
<th>Lørdag</th>
<th>Søndag</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>
@foreach($menuplans as $menuplan)
<tr>
<th>{ID}</th>
<th>{Mandag}</th>
<th>{Tirsdag}</th>
<th>{Onsdag}</th>
<th>{Torsdag}</th>
<th>{Fredag}</th>
<th>{Lørdag}</th>
<th>{Søndag}</th>
<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>
@endforeach
</table>
{{ $menuplans->links() }}
@endsection

View File

@ -2,11 +2,11 @@
@extends("admin.layout.header")
@section("title")
Menuplan - Read
Menuplan - Vis
@endsection
@section("path")
<a href="{{ route('menuplans.show') }}" class="text-white">Vis Menuplan</a> /
<a href="{{ route('menu-plans.show') }}" class="text-white">Vis Menuplan</a> /
@endsection
@section("content")

View File

@ -0,0 +1,14 @@
@extends("admin.layout.base")
@extends("admin.layout.header")
@section("title")
Vaskemaskiner - Opret
@endsection
@section("path")
<a href="" class="text-white">Opret Vaskemaskiner</a> /
@endsection
@section("content")
Vaskemaskinen blev (ikke) oprettet.
@endsection

View File

@ -0,0 +1,56 @@
{{----}}
{{------app
{{----}}
{{--Login--}}
{{--@extends("app.users.login")--}}
{{--Register--}}
{{--@extends("app.users.register")--}}
{{--Vagttelefon--}}
{{--@extends("app.vagttelefons.index")--}}
{{--Booking Liste--}}
{{--@extends("app.bookings.index")--}}
{{--Menuplan--}}
{{--@extends("app.menuplans.index")--}}
{{----}}
{{------Admin Panel
{{----}}
{{--Index--}}
{{----}}@extends("admin.index")
{{--Create User--}}
{{--@extends("admin.users.create")--}}
{{--Read User--}}
{{--@extends("admin.users.show")--}}
{{--Update User--}}
{{--@extends("admin.users.update")--}}
{{--Create Menuplan--}}
{{--@extends("admin.menuplans.create")--}}
{{--Read Menuplan--}}
{{--@extends("admin.menuplans.show")--}}
{{--Update Menuplan--}}
{{--@extends("admin.menuplans.update")--}}
{{--Create booking--}}
{{--@extends("admin.bookings.create")--}}
{{--Read booking--}}
{{--@extends("admin.bookings.show")--}}
{{--Create washing-machine--}}
{{--@extends("admin.washing-machines.create")--}}
{{--Read washing-machine--}}
{{--@extends("admin.washing-machines.show")--}}

View File

@ -17,11 +17,15 @@
<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>
@foreach($machines as $machine)
<tr>
<td>{ID}</td>
<td>{Navn}</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>
@endforeach
</table>
{{ $machines->links() }}
@endsection

View File

@ -15,12 +15,15 @@
{{--Booking Liste--}}
@extends("app.bookings.index")
{{--Menuplan--}}
{{--@extends("app.menuplans.index")--}}
{{----}}
{{------Admin Panel
{{----}}
{{--Index--}}
{{--@extends("admin.index")--}}
{{----}}@extends("admin.index")
{{--Create User--}}
{{--@extends("admin.users.create")--}}

View File

@ -1,7 +1,7 @@
@extends("app.layout.base")
@extends("app.layout.header")
@section("title")
Menuplan
Vagttelefon
@endsection
@section("content")

View File

@ -25,10 +25,11 @@ Route::post("/login", "UserController@login")->name("users.login");
Route::get("/logout", "UserController@logout")->name("users.logout");
Route::resource("menu-plans", "");
Route::resource("menu-plans", "MenuPlanController");
Route::resource("users", "UserController");
Route::resource("events", "EventController");
Route::resource("washing-machines", "WashingMachineController");
Route::resource("washing-reservations", "WashingReservationController");
Route::resource("feedbacks", "FeedbackController");
Route::resource("externallinks", "ExternalLinkController");
Route::resource("external-links", "ExternalLinkController");
Route::resource("bookings", "BookingController");