This commit is contained in:
Anders 2020-06-25 15:02:06 +02:00
commit 8bda01c1dc
16 changed files with 363 additions and 34 deletions

View File

@ -19,7 +19,7 @@ class EventController extends Controller
{
$events = Event::query()->paginate($request->input("limit", 20));
return Response::detect("events.index", [ "events" => $events]);
return Response::detect("bookings.index", [ "events" => $events]);
}
/**
@ -29,7 +29,7 @@ class EventController extends Controller
*/
public function create()
{
return Response::detect("events.create");
return Response::detect("bookings.create");
}
/**
@ -49,7 +49,7 @@ class EventController extends Controller
$event->save();
return Response::detect("events.store");
return Response::detect("bookings.store");
}
/**
@ -60,7 +60,7 @@ class EventController extends Controller
*/
public function show(Event $id)
{
return Response::detect("events.show", [ "event" => $id ]);
return Response::detect("bookings.show", [ "event" => $id ]);
}
/**
@ -71,7 +71,7 @@ class EventController extends Controller
*/
public function edit(Event $id)
{
return Response::detect("events.edit", [ "event" => $id ]);
return Response::detect("bookings.edit", [ "event" => $id ]);
}
/**
@ -91,7 +91,7 @@ class EventController extends Controller
$id->update($requestBody);
$id->save();
return Response::detect("events.update");
return Response::detect("bookings.update");
}
/**
@ -105,6 +105,6 @@ class EventController extends Controller
{
$id->delete();
return Response::detect("events.destroy");
return Response::detect("bookings.destroy");
}
}

View File

@ -5704,6 +5704,11 @@
"minimist": "^1.2.5"
}
},
"moment": {
"version": "2.27.0",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz",
"integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ=="
},
"move-concurrently": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",

View File

@ -18,5 +18,8 @@
"sass": "^1.20.1",
"sass-loader": "^8.0.0",
"vue-template-compiler": "^2.6.11"
},
"dependencies": {
"moment": "^2.27.0"
}
}

View File

@ -7,6 +7,8 @@
require('./bootstrap');
//Dependencies
require("moment");
require('./date');
//Sites
@ -15,8 +17,19 @@ require('./sites/menuplan');
//Webapp hamburger menu
require('./navmenu/menu');
// require("./calendar/calendar");
// import { nextMonth, previousMonth, countDays, createCalendar, months, month, currentMonth, days, calendar } from "./calendar/calendar";
// window.Vue = require('vue');
import { generateCalendar } from "./calendar/calendar";
// createCalendar();
//
// document.getElementById("month-next").onclick = nextMonth;
// document.getElementById("month-previous").onclick = previousMonth;
/**
* The following block of code may be used to automatically register your
* Vue components. It will recursively scan this directory for the Vue
@ -39,3 +52,5 @@ require('./navmenu/menu');
// const app = new Vue({
// el: '#app',
// });
generateCalendar();

View File

@ -0,0 +1,252 @@
// class Calendar {
// constructor() {
//
// }
//
// nextMonth() {
//
// }
//
// previousMonth() {
//
// }
//
// addEvent() {
//
// }
//
// removeEvent() {
//
// }
// }
const moment = require("moment");
const calendar = document.getElementById("calendar");
const title = document.getElementById("month");
const days = [
"Mandag",
"Tirsdag",
"Onsdag",
"Torsdag",
"Fredag",
"Lørdag",
"Søndag"
];
//
// const months = [
// "January",
// "February",
// "March",
// "April",
// "May",
// "June",
// "July",
// "August",
// "September",
// "October",
// "November",
// "December",
// ]
// const month = document.getElementById("month");
//
// const year = 2020;
//
// let currentMonth = 0;
//
// let firstDay = (new Date(year, month)).getDay();
//
// function createCalendar() {
//
// calendar.innerHTML = "";
//
// // HEADER
// let header = document.createElement("div");
// header.classList.add("calendar-table__header", "calendar-table__row");
//
// days.forEach((value) =>{
// let head = document.createElement("div");
// head.classList.add("calendar-table__col");
//
// head.innerText = value;
//
// header.appendChild(head);
// });
//
// calendar.appendChild(header);
//
//
// // BODY
//
// let date = new Date(Date.now());
//
// months.forEach((value, index) => {
// if(index === date.getMonth()) {
//
// }
// });
//
//
// // <div class="calendar-table__col">
// // <div class="calendar-table__item">
// // <span>2</span>
// // </div>
// // </div>
//
// // let intDay = 1;
// // for(let columns = 0; columns < 5; columns++)
// // {
// // let row = document.createElement("div");
// // row.classList.add("calendar-table__row");
// //
// // for (let i = 0; i < 7; i++)
// // {
// // let day = document.createElement("div");
// // day.classList.add("calendar-table__col", "calendar-table__item");
// // day.innerText = intDay;
// // // let
// //
// // row.appendChild(day);
// //
// // intDay++;
// // }
// // calendar.appendChild(row);
// // }
// drawMonth(6);
// }
//
// function drawMonth(monthId) {
//
//
// let dateObject = new Date()
//
// let date = 1;
// for(let columns = 0; columns < 6; columns++)
// {
// let row = document.createElement("div");
// row.classList.add("calendar-table__row");
//
// for (let i = 0; i < 7; i++)
// {
// if(columns === 0 && i < firstDay) {
// let day = document.createElement("div");
// day.classList.add("calendar-table__col", "calendar-table__item");
// // day.innerText = date;
//
// row.appendChild(day);
// }
// else if(date > countDays(year, 6)) {
// break;
// }
//
// else {
// let day = document.createElement("div");
// day.classList.add("calendar-table__col", "calendar-table__item");
// day.innerText = date;
//
// row.appendChild(day);
// date++;
// }
//
// // let day = document.createElement("div");
// // day.classList.add("calendar-table__col", "calendar-table__item");
// // day.innerText = date;
// // // let
// //
// // row.appendChild(day);
// //
// // date++;
// }
// calendar.appendChild(row);
// }
// }
//
// function nextMonth() {
// currentMonth++;
//
// if(currentMonth > 11)
// currentMonth = 0;
//
// months.forEach((value, index) => {
// if(index === currentMonth)
// month.innerText = value;
// });
//
// drawMonth(currentMonth);
// }
//
// function previousMonth() {
// currentMonth--;
//
// if(currentMonth < 0)
// currentMonth = 11;
//
// months.forEach((value, index) => {
// if(index === currentMonth)
// month.innerText = value;
// });
//
// drawMonth(currentMonth);
// }
//
//
// function countDays(year, month) {
// return 32 - new Date(year, month, 32).getDate();
// }
//
// // Monday
// // Tuesday
// // Wednesday
// // Thursday
// // Friday
// // Saturday
// // Sunday
// //
// // mon tue wed thu fri sat sun
//
//
// module.exports = {
// createCalendar,
// countDays,
// nextMonth,
// previousMonth,
// calendar,
// days,
// months,
// currentMonth,
// month,
// };
calendar.innerHTML = "";
//
// cal.forEach(value => {
// let elem = document.createElement("div");
// elem.innerText = value;
// console.log(value);
// calendar.appendChild(elem);
// });
//
// title.innerText = moment().format("DD/MM/YYYY");
function generateCalendar() {
const startWeek = moment().startOf("month").week();
const endWeek = moment().endOf("month").week();
let cal = [];
for (let week = startWeek; week < endWeek; week++) {
cal.push({
week : week,
days : Array(7).fill(0).map((n, i) => moment().week(week).startOf("week").clone().add(n + i, "day"))
});
}
}
module.exports = {
generateCalendar
};

View File

@ -0,0 +1,31 @@
class Month {
constructor(year, monthOffsetNormalized) {
this.year = year;
this.normalizedOffset = monthOffsetNormalized;
}
init() {
this.firstDay = (new Date(this.year, month - 1)).getDay();
}
draw(render) {
this.clearRender(render);
}
clearRender(render) {
let renderElement = document.getElementById(render);
renderElement.innerHTML = "";
}
createDay() {
}
countDays() {
return 32 - new Date(this.year, this.normalizedOffset - 1, 32).getDate();
}
}

View File

@ -15,8 +15,8 @@
<th>ID</th>
<th>Event Navn</th>
<th>Event Beskrivelse</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>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/trashcan.svg') }}" alt="Delete"></th>
</tr>
@foreach($events as $event)
<tr>

View File

@ -15,8 +15,8 @@
<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>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/trashcan.svg') }}" alt="Delete"></th>
</tr>
@foreach($links as $link)
<tr>

View File

@ -45,6 +45,9 @@
<div class="row">
<a href="{{ route('washing-machines.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Vaskemaskine</a>
</div>
<div class="row">
<a href="{{ route("washing-reservations.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Vaskemaskine Reservationer</a>
</div>
</div>
</div>
<div class="w-85" style="background-color: #cccccc;">

View File

@ -20,8 +20,8 @@
<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>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/trashcan.svg') }}" alt="Delete"></th>
</tr>
@foreach($menuplans as $menuplan)
<tr>

View File

@ -17,8 +17,8 @@
<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>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/trashcan.svg') }}" alt="Delete"></th>
</tr>
@foreach($users as $user)
<tr>

View File

@ -14,8 +14,8 @@
<tr>
<th>ID</th>
<th>Navn</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>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/trashcan.svg') }}" alt="Delete"></th>
</tr>
@foreach($machines as $machine)
<tr>

View File

@ -17,8 +17,8 @@
<th>Efternavn</th>
<th>Tlf nr</th>
<th>Vaskemaskine</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>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th>
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/trashcan.svg') }}" alt="Delete"></th>
</tr>
@foreach($reservations as $reservation)
<tr>

View File

@ -10,26 +10,26 @@
<div class="col w-100 mt-auto">
<div class="calendar-container">
<div class="calendar-container__header">
<button class="calendar-container__btn calendar-container__btn--left" title="Previous">
<button id="month-previous" class="calendar-container__btn calendar-container__btn--left" title="Previous">
<i class="icon ion-ios-arrow-back"></i>
</button>
<h2 class="calendar-container__title">{Måned} {År}</h2>
<button class="calendar-container__btn calendar-container__btn--right" title="Next">
<h2 id="month" class="calendar-container__title">{Måned} {År}</h2>
<button id="month-next" class="calendar-container__btn calendar-container__btn--right" title="Next">
<i class="icon ion-ios-arrow-forward"></i>
</button>
</div>
<div class="calendar-container__body">
<div class="calendar-table">
<div class="calendar-table__header">
<div class="calendar-table__row">
<div class="calendar-table__col">Man</div>
<div class="calendar-table__col">Tir</div>
<div class="calendar-table__col">Ons</div>
<div class="calendar-table__col">Tor</div>
<div class="calendar-table__col">Fre</div>
<div class="calendar-table__col">Lør</div>
<div class="calendar-table__col">Søn</div>
</div>
<div id="calendar" class="calendar-table">
<div class="calendar-table__header calendar-table__row">
{{-- <div class="">--}}
<div class="calendar-table__col">Mon</div>
<div class="calendar-table__col">Tue</div>
<div class="calendar-table__col">Wed</div>
<div class="calendar-table__col">Thu</div>
<div class="calendar-table__col">Fri</div>
<div class="calendar-table__col">Sat</div>
<div class="calendar-table__col">Sun</div>
{{-- </div>--}}
</div>
<div class="calendar-table__body">
<div class="calendar-table__row">

View File

@ -0,0 +1,17 @@
@extends("app.layout.base")
@extends("app.layout.header")
@section("title")
Kontakt
@endsection
@section("content")
<main>
<h1 class="text-center sde-blue mt-0">Kontakt</h1>
<h4 class="mt-0">Email: x@x.x</h4>
<span class="text-center sde-black-20 mt-1">+45 xx xx xx xx</span>
<a class="btn text-center btn-sde-blue" href="tel:+45" id="call">Tilkald x</a>
<h4 class="mt-3">Email: x@x.x</h4>
<span class="text-center sde-black-20 mt-1">+45 xx xx xx xx</span>
<a class="btn text-center btn-sde-blue" href="tel:+45" id="call">Tilkald x</a>
</main>
@endsection

View File

@ -3,7 +3,7 @@
{{----}}
{{--Index--}}
{{----}}@extends("app.users.index")
{{--@extends("app.users.index")--}}
{{--Login--}}
{{--@extends("app.users.login")--}}
@ -21,6 +21,9 @@
{{--Menuplan--}}
{{--@extends("app.menuplans.index")--}}
{{--Contact--}}
{{----}}@extends("app.contact.index")
{{----}}
{{------Admin Panel
{{----}}