diff --git a/skolehjem/app/Event.php b/skolehjem/app/Event.php index 734570a..b26291c 100644 --- a/skolehjem/app/Event.php +++ b/skolehjem/app/Event.php @@ -20,6 +20,6 @@ class Event extends Model */ //protected variable which contains name of database field(s) to be filled. protected $fillable = [ - "name", "description", "date" + "name", "accountable", "description", "date" ]; } diff --git a/skolehjem/app/Http/Controllers/ContactController.php b/skolehjem/app/Http/Controllers/ContactController.php index e3e706c..204cbf9 100644 --- a/skolehjem/app/Http/Controllers/ContactController.php +++ b/skolehjem/app/Http/Controllers/ContactController.php @@ -13,6 +13,7 @@ class ContactController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:contact.list" ])->only("index"); $this->middleware([ "check.auth:contact.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/EventController.php b/skolehjem/app/Http/Controllers/EventController.php index 8cde5a5..ebd202a 100644 --- a/skolehjem/app/Http/Controllers/EventController.php +++ b/skolehjem/app/Http/Controllers/EventController.php @@ -16,6 +16,7 @@ class EventController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:event.list" ])->only("index"); $this->middleware([ "check.auth:event.show" ])->only("show"); @@ -60,6 +61,7 @@ class EventController extends Controller { $requestBody = $request->validate([ "name" => "required|max:255", + "accountable" => "required|max:255", "description" => "required|max:255", "date" => "required" ]); diff --git a/skolehjem/app/Http/Controllers/FeedbackController.php b/skolehjem/app/Http/Controllers/FeedbackController.php index 5d39190..5bd25bc 100644 --- a/skolehjem/app/Http/Controllers/FeedbackController.php +++ b/skolehjem/app/Http/Controllers/FeedbackController.php @@ -13,6 +13,7 @@ class FeedbackController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:feedback.list" ])->only("index"); $this->middleware([ "check.auth:feedback.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/GuideController.php b/skolehjem/app/Http/Controllers/GuideController.php index c6d43ec..ee3a6f3 100644 --- a/skolehjem/app/Http/Controllers/GuideController.php +++ b/skolehjem/app/Http/Controllers/GuideController.php @@ -14,6 +14,7 @@ class GuideController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:guides.list" ])->only("index"); $this->middleware([ "check.auth:guides.show" ])->only("show"); @@ -144,13 +145,14 @@ class GuideController extends Controller /** * Remove the specified resource from storage. * - * @param \App\Guide $guide + * @param Guide $guide * @return \Illuminate\Http\Response */ - public function destroy(Guide $guide) + public function destroy($guide) { - $guide = MenuPlan::find($guide); + $guide = Guide::find($guide); $guide->delete(); + return redirect()->route("guides.index"); } } diff --git a/skolehjem/app/Http/Controllers/LocationController.php b/skolehjem/app/Http/Controllers/LocationController.php index 92af4c5..5a6f9a4 100644 --- a/skolehjem/app/Http/Controllers/LocationController.php +++ b/skolehjem/app/Http/Controllers/LocationController.php @@ -11,6 +11,7 @@ class LocationController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:locations.list" ])->only("index"); $this->middleware([ "check.auth:locations.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/MenuPlanController.php b/skolehjem/app/Http/Controllers/MenuPlanController.php index f10fc7b..6219089 100644 --- a/skolehjem/app/Http/Controllers/MenuPlanController.php +++ b/skolehjem/app/Http/Controllers/MenuPlanController.php @@ -17,6 +17,7 @@ class MenuPlanController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:menuplan.list" ])->only("index"); $this->middleware([ "check.auth:menuplan.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/PermissionController.php b/skolehjem/app/Http/Controllers/PermissionController.php index 0b627f3..8d06041 100644 --- a/skolehjem/app/Http/Controllers/PermissionController.php +++ b/skolehjem/app/Http/Controllers/PermissionController.php @@ -8,6 +8,12 @@ use Spatie\Permission\Models\Permission; class PermissionController extends Controller { + public function __construct() + { + $this->middleware(["auth"]); + $this->middleware(["lang"]); + } + /** * Display a listing of the resource. * diff --git a/skolehjem/app/Http/Controllers/PhoneController.php b/skolehjem/app/Http/Controllers/PhoneController.php index e2c3466..6772654 100644 --- a/skolehjem/app/Http/Controllers/PhoneController.php +++ b/skolehjem/app/Http/Controllers/PhoneController.php @@ -7,6 +7,12 @@ use Illuminate\Http\Response; class PhoneController extends Controller { + public function __construct() + { + $this->middleware(["auth"]); + $this->middleware(["lang"]); + } + function index() { return Response::detect("vagttelefons.index"); } diff --git a/skolehjem/app/Http/Controllers/ResourceCategoryController.php b/skolehjem/app/Http/Controllers/ResourceCategoryController.php index 657c6ec..dcfdb71 100644 --- a/skolehjem/app/Http/Controllers/ResourceCategoryController.php +++ b/skolehjem/app/Http/Controllers/ResourceCategoryController.php @@ -11,6 +11,7 @@ class ResourceCategoryController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:resource.category.list" ])->only("index"); $this->middleware([ "check.auth:resource.category.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/ResourceController.php b/skolehjem/app/Http/Controllers/ResourceController.php index 7fe829d..20fe0ed 100644 --- a/skolehjem/app/Http/Controllers/ResourceController.php +++ b/skolehjem/app/Http/Controllers/ResourceController.php @@ -12,6 +12,7 @@ class ResourceController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:resource.list" ])->only("index"); $this->middleware([ "check.auth:resource.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/ResourceExtensionController.php b/skolehjem/app/Http/Controllers/ResourceExtensionController.php index 422ecc5..b13606e 100644 --- a/skolehjem/app/Http/Controllers/ResourceExtensionController.php +++ b/skolehjem/app/Http/Controllers/ResourceExtensionController.php @@ -11,6 +11,7 @@ class ResourceExtensionController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:resource.extension.list" ])->only("index"); $this->middleware([ "check.auth:resource.extension.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/RolesController.php b/skolehjem/app/Http/Controllers/RolesController.php index ae68be2..8997ffd 100644 --- a/skolehjem/app/Http/Controllers/RolesController.php +++ b/skolehjem/app/Http/Controllers/RolesController.php @@ -12,6 +12,7 @@ class rolesController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:roles.list" ])->only("index"); $this->middleware([ "check.auth:roles.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/RootController.php b/skolehjem/app/Http/Controllers/RootController.php index d147e5b..28112ee 100644 --- a/skolehjem/app/Http/Controllers/RootController.php +++ b/skolehjem/app/Http/Controllers/RootController.php @@ -10,6 +10,7 @@ class RootController extends Controller function __construct() { $this->middleware("auth"); + $this->middleware([ "lang" ]); } public function index() { diff --git a/skolehjem/app/Http/Controllers/UserController.php b/skolehjem/app/Http/Controllers/UserController.php index c9964df..86ed353 100644 --- a/skolehjem/app/Http/Controllers/UserController.php +++ b/skolehjem/app/Http/Controllers/UserController.php @@ -6,6 +6,7 @@ use App\Helpers\Detector; use Illuminate\Http\Request; use Illuminate\Http\Response; use App\User; +use Illuminate\Support\Facades\App; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Hash; @@ -20,6 +21,7 @@ class UserController extends Controller { $this->middleware([ "auth" ])->only("logout"); $this->middleware([ "guest" ])->only("login"); + $this->middleware([ "lang" ])->except(["login", "showLogin", "showForgot", "forgot"]); $this->middleware([ "check.auth:user.list" ])->only("index"); $this->middleware([ "check.auth:user.show" ])->only("show"); @@ -209,13 +211,13 @@ class UserController extends Controller return redirect()->route("root.index"); } - return redirect()->back(303); + return redirect()->back(303)->with('error#wrongcredentials', '<p><b>Email eller Password matchede ikke!</b></p>'); } public function logout(Request $request) { Auth::logout(); - return redirect()->route("users.login"); + return redirect()->route("users.login")->with('success#loggedout', '<p><b>Du er hermed logget ud!</b></p>'); } /*******************************************/ @@ -457,4 +459,23 @@ class UserController extends Controller return Response($output); } } + + + + public function setLanguages(Request $request){ + if($request->ajax()){ + if($request->lang === "en"){ + $response = new Response('Set Cookie'); + $response->withCookie(cookie('languagesSetting', $request->lang, 5259488)); + + return $response; + }elseif($request->lang === "dk"){ + $response = new Response('Set Cookie'); + $response->withCookie(cookie('languagesSetting', $request->lang, 5259488)); + + return $response; + } + } + } + } diff --git a/skolehjem/app/Http/Controllers/UserEventController.php b/skolehjem/app/Http/Controllers/UserEventController.php index 8ff2408..bb760dd 100644 --- a/skolehjem/app/Http/Controllers/UserEventController.php +++ b/skolehjem/app/Http/Controllers/UserEventController.php @@ -8,6 +8,11 @@ use Illuminate\Http\Response; class UserEventController extends Controller { + public function __construct() + { + $this->middleware(["auth"]); + $this->middleware(["lang"]); + } /** * Update the specified resource in storage. * diff --git a/skolehjem/app/Http/Controllers/WashingMachineController.php b/skolehjem/app/Http/Controllers/WashingMachineController.php index 9ef3096..d4e30f3 100644 --- a/skolehjem/app/Http/Controllers/WashingMachineController.php +++ b/skolehjem/app/Http/Controllers/WashingMachineController.php @@ -17,6 +17,7 @@ class WashingMachineController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:washing.machine.list" ])->only("index"); $this->middleware([ "check.auth:washing.machine.show" ])->only("show"); diff --git a/skolehjem/app/Http/Controllers/WashingReservationController.php b/skolehjem/app/Http/Controllers/WashingReservationController.php index 11c77a5..b212eba 100644 --- a/skolehjem/app/Http/Controllers/WashingReservationController.php +++ b/skolehjem/app/Http/Controllers/WashingReservationController.php @@ -20,6 +20,7 @@ class WashingReservationController extends Controller public function __construct() { $this->middleware([ "auth" ]); + $this->middleware([ "lang" ]); $this->middleware([ "check.auth:washing.machine.reservation.list" ])->only(["index", "appindex"]); $this->middleware([ "check.auth:washing.machine.reservation.show" ])->only("show"); diff --git a/skolehjem/app/Http/Kernel.php b/skolehjem/app/Http/Kernel.php index 3e1e21b..7b37d2d 100644 --- a/skolehjem/app/Http/Kernel.php +++ b/skolehjem/app/Http/Kernel.php @@ -2,6 +2,7 @@ namespace App\Http; +use App\Http\Middleware\SetLocale; use Illuminate\Foundation\Http\Kernel as HttpKernel; class Kernel extends HttpKernel @@ -67,7 +68,7 @@ class Kernel extends HttpKernel 'role' => \Spatie\Permission\Middlewares\RoleMiddleware::class, 'permission' => \Spatie\Permission\Middlewares\PermissionMiddleware::class, 'role_or_permission' => \Spatie\Permission\Middlewares\RoleOrPermissionMiddleware::class, - + 'lang' => \App\Http\Middleware\SetLocale::class, "check.auth" => \App\Http\Middleware\CheckAuth::class ]; } diff --git a/skolehjem/app/Http/Middleware/SetLocale.php b/skolehjem/app/Http/Middleware/SetLocale.php new file mode 100644 index 0000000..3d9a932 --- /dev/null +++ b/skolehjem/app/Http/Middleware/SetLocale.php @@ -0,0 +1,21 @@ +<?php + +namespace App\Http\Middleware; + +use Closure; + +class SetLocale +{ + /** + * Handle an incoming request. + * + * @param \Illuminate\Http\Request $request + * @param \Closure $next + * @return mixed + */ + public function handle($request, Closure $next) + { + app()->setLocale($request->user()->getLocale($request)); + return $next($request); + } +} diff --git a/skolehjem/app/User.php b/skolehjem/app/User.php index 0db07bf..1f8aca1 100644 --- a/skolehjem/app/User.php +++ b/skolehjem/app/User.php @@ -7,6 +7,7 @@ namespace App; //allows the use of many libraries. +use http\Env\Request; use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Foundation\Auth\User as Authenticatable; @@ -52,4 +53,8 @@ class User extends Authenticatable public function setPasswordAttribute($password) { $this->attributes["password"] = Hash::make($password); } + + public function getLocale(\Illuminate\Http\Request $request) { + return $request->cookie('languagesSetting'); + } } diff --git a/skolehjem/config/app.php b/skolehjem/config/app.php index b7644e6..2c1b451 100644 --- a/skolehjem/config/app.php +++ b/skolehjem/config/app.php @@ -80,7 +80,7 @@ return [ | */ - 'locale' => 'en', + 'locale' => 'dk', /* |-------------------------------------------------------------------------- @@ -93,7 +93,7 @@ return [ | */ - 'fallback_locale' => 'en', + 'fallback_locale' => 'dk', /* |-------------------------------------------------------------------------- diff --git a/skolehjem/database/migrations/2020_06_29_091545_create_events.php b/skolehjem/database/migrations/2020_06_29_091545_create_events.php index a6433b1..4e1c7dc 100644 --- a/skolehjem/database/migrations/2020_06_29_091545_create_events.php +++ b/skolehjem/database/migrations/2020_06_29_091545_create_events.php @@ -18,6 +18,7 @@ class CreateEvents extends Migration Schema::create('events', function (Blueprint $table) { $table->id(); $table->string("name"); + $table->string("accountable"); $table->string("description"); $table->dateTime("date"); $table->timestamps(); diff --git a/skolehjem/package-lock.json b/skolehjem/package-lock.json index 89c5c1a..f76da65 100644 --- a/skolehjem/package-lock.json +++ b/skolehjem/package-lock.json @@ -1008,6 +1008,103 @@ "to-fast-properties": "^2.0.0" } }, + "@ckeditor/ckeditor5-alignment": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-21.0.0.tgz", + "integrity": "sha512-jtUc7g+9TKgNS819UD23tJSTJosp+VAk/fk+p1HJEgrq5YuH/F3djVwW4fyyJRuepbvYOObhOa2YHET1gtOuFw==", + "requires": { + "@ckeditor/ckeditor5-core": "^21.0.0", + "@ckeditor/ckeditor5-ui": "^21.0.0" + } + }, + "@ckeditor/ckeditor5-build-classic": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-classic/-/ckeditor5-build-classic-21.0.0.tgz", + "integrity": "sha512-IYPXmc5Np7SzJVJbGNZk3OZEHnZ/WylbN1aFyfYdKMch9Be8mrCB9QQOqfsAEKD4SjXujYvn1jL0mM/EPZ8ECw==" + }, + "@ckeditor/ckeditor5-build-decoupled-document": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-decoupled-document/-/ckeditor5-build-decoupled-document-21.0.0.tgz", + "integrity": "sha512-JsZjOIDlRemRjvrvDwJEW2CoqBkzKD5d52nleGm+KmikBZiaAMxWYJfxDVcM7mn+iFMfYkF330+HrFnD2pPj3w==" + }, + "@ckeditor/ckeditor5-core": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-core/-/ckeditor5-core-21.0.0.tgz", + "integrity": "sha512-qoBLE0dGaxYHN6zetYe5ct/w9E3+iX9T2oCgHNbCD/zaYhxfNTQ9uHp7x6Hn4Zq0xyieUhNIeq+ZR9CJlBEMwA==", + "requires": { + "@ckeditor/ckeditor5-engine": "^21.0.0", + "@ckeditor/ckeditor5-utils": "^21.0.0", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-engine": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-21.0.0.tgz", + "integrity": "sha512-wa0Fmn62o1i4Jw0vHnCvtwqM2ARkIU2V2/6MUgWAez5gpAIFwSGu4kjUGeIbuHISAIGKIwtRIVAdL9EtqsTV/A==", + "requires": { + "@ckeditor/ckeditor5-utils": "^21.0.0", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-inspector": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-inspector/-/ckeditor5-inspector-2.2.0.tgz", + "integrity": "sha512-2Y24+im+FzMu2VD7KjGTLMxR3RjDn8KwPtkqp/1gZY1+OxnKzWFwiQLGd71CMQ/JDhH19N+AKRL8JEfDrrnD2g==", + "dev": true + }, + "@ckeditor/ckeditor5-table": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-table/-/ckeditor5-table-21.0.0.tgz", + "integrity": "sha512-JCoDuOtzq6MXHW2EV0ct6Dm/YLF2HRgJWPVJyc8O9oNGTt6IEXlV0p+mbVrDu/cdhKCAoYCxG7WScm4B7TX3vg==", + "requires": { + "@ckeditor/ckeditor5-core": "^21.0.0", + "@ckeditor/ckeditor5-ui": "^21.0.0", + "@ckeditor/ckeditor5-widget": "^21.0.0", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-typing": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-21.0.0.tgz", + "integrity": "sha512-E38YTfhXzlbdlFX5zm0bofZn7SJyMWOryagI3w/N93f+0OXnyIMk/9JM7OWYwv4DD4MyU1jx1eOZkywQTl7LSQ==", + "requires": { + "@ckeditor/ckeditor5-core": "^21.0.0", + "@ckeditor/ckeditor5-engine": "^21.0.0", + "@ckeditor/ckeditor5-utils": "^21.0.0", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-ui": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-21.0.0.tgz", + "integrity": "sha512-oACL96HUbHhQ5Me5WpOYq9qZ+zJw0Hfqe+f8/UtCfQ99zHcrfZ2odvNHSPdn16cZ5f8ED+zLJNHb8b8IMWwy2Q==", + "requires": { + "@ckeditor/ckeditor5-core": "^21.0.0", + "@ckeditor/ckeditor5-utils": "^21.0.0", + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-utils": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-21.0.0.tgz", + "integrity": "sha512-JDEFO/bC8uP/K6xHEJdN/Pm1G7EO2WG363CY3qGZc49eNvYeXrluniLHIh7pL3kUSIr0yqLjJGGdPKc/sZYsHQ==", + "requires": { + "lodash-es": "^4.17.15" + } + }, + "@ckeditor/ckeditor5-widget": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-21.0.0.tgz", + "integrity": "sha512-wS/msbkKYgOeJiMK3jxDTpbBJG9Nof0unTbc7rp4HMCLQ1OL9IZvGcowzpMwBDiVoXY+gwyWApeWAnrRwbNbnw==", + "requires": { + "@ckeditor/ckeditor5-core": "^21.0.0", + "@ckeditor/ckeditor5-engine": "^21.0.0", + "@ckeditor/ckeditor5-typing": "^21.0.0", + "@ckeditor/ckeditor5-ui": "^21.0.0", + "@ckeditor/ckeditor5-utils": "^21.0.0", + "lodash-es": "^4.17.15" + } + }, "@mrmlnc/readdir-enhanced": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", @@ -2223,6 +2320,10 @@ "safe-buffer": "^5.0.1" } }, + "ckeditor": { + "version": "github:unisharp/laravel-ckeditor#e404f291734aef3ef049809e7be203de286920d2", + "from": "github:unisharp/laravel-ckeditor" + }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", @@ -3257,9 +3358,9 @@ "dev": true }, "elliptic": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz", - "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", "dev": true, "requires": { "bn.js": "^4.4.0", @@ -5273,11 +5374,16 @@ } }, "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", "dev": true }, + "lodash-es": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.15.tgz", + "integrity": "sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ==" + }, "lodash._baseassign": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", diff --git a/skolehjem/package.json b/skolehjem/package.json index 6fd5e74..b5f5086 100644 --- a/skolehjem/package.json +++ b/skolehjem/package.json @@ -10,17 +10,23 @@ "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js" }, "devDependencies": { + "@ckeditor/ckeditor5-inspector": "^2.2.0", "axios": "^0.19", "cross-env": "^7.0", "jquery": "^3.5.1", "laravel-mix": "^5.0.1", - "lodash": "^4.17.13", + "lodash": "^4.17.19", "resolve-url-loader": "^2.3.1", "sass": "^1.20.1", "sass-loader": "^8.0.0", "vue-template-compiler": "^2.6.11" }, "dependencies": { + "@ckeditor/ckeditor5-alignment": "^21.0.0", + "@ckeditor/ckeditor5-build-classic": "^21.0.0", + "@ckeditor/ckeditor5-build-decoupled-document": "^21.0.0", + "@ckeditor/ckeditor5-table": "^21.0.0", + "ckeditor": "github:unisharp/laravel-ckeditor", "moment": "^2.27.0" } } diff --git a/skolehjem/resources/lang/dk/msg.php b/skolehjem/resources/lang/dk/msg.php new file mode 100644 index 0000000..8684692 --- /dev/null +++ b/skolehjem/resources/lang/dk/msg.php @@ -0,0 +1,47 @@ +<?php + +return[ + "menuplan" => "Menuplan", + "aktiviteter" => "Aktiviteter", + "Home" => "Home", + "reservationer" => "Reservationer", + "kontoret" => "Kontoret", + "vagttelefon" => "Vagttelefon", + "vejledning" => "Vejledninger", + "konto" => "Konto", + "logud" => "Log ud", + "dereringenmenuplanerdenneuge" => "Der er ingen menuplaner denne uge", + "dereringenaktiviteter" => "Der er ingen aktiviteter", + "setilmeldteaktiviteter" => "Se tilmeldte aktiviteter", + "dinereservationer" => "Dine reservationer", + "duharingenreservationer" => "Du har ingen reservationer", + "reservervaskemaskine" => "Reserver vaskemaskine", + "kontakt" => "Kontakt", + "navn" => "Navn", + "email"=> "E-mail", + "ring" => "Ring", + "givfeedback" => "Giv feedback", + "sendfeedback" => "Send feedback omkring hvem el. hvad som helst", + "accepterer" => "Accepterer", + "dereringenvejledninger" => "Der er ingen vejledninger", + "telefon" => "Telefon", + "redigeroplysninger" => "Rediger Oplysninger", + "ændrepassword" => "Ænder Password", + "tilmeldteaktiviteter" => "Tilmeldte aktiviteter", + "duharikketilmeldtdignogenaktiviteter" => "Du har ikke tilmeldt dig nogen aktiviteter", + "tilbage" => "Tilbage", + "bookingliste" => "Bokking Liste", + "ugestor" => "Uge", + "maskiner" => "Maskiner", + "tilgængeligetider" => "Tilgængelige tider", + "reserver" => "Reserver", + "rediger" => "Rediger", + "nuværendepassword" => "Nuværende Password", + "nytpassword" => "Nyt password", + "confirmpassword" => "Gentag adgangskode", + + + + + +]; diff --git a/skolehjem/resources/lang/en/msg.php b/skolehjem/resources/lang/en/msg.php new file mode 100644 index 0000000..76c9e00 --- /dev/null +++ b/skolehjem/resources/lang/en/msg.php @@ -0,0 +1,55 @@ +<?php + +return[ + "menuplan" => "Menu", + "aktiviteter" => "Activities", + "reservationer" => "Reservations", + "kontoret" => "The office", + "vagttelefon" => "Emergency phone", + "vejledning" => "Guide", + "home" => "Home", + "logud" => "Log out", + "konto" => "Account", + "mandag" => "Monday", + "trisdag" => "Tuesday", + "onsdag" => "Wednesday", + "torsdag" => "Thursday", + "dereringenmenuplanerdenneuge" => "There is no menu for this week", + "uge" => "week", + "ugestor" => "Week", + "dereringenaktiviteter" => "There is no activity this week", + "setilmeldteaktiviteter" => "See Registered Activities", + "tilmeld" => "Register Activities ", + "tilmeldteaktiviteter" => "Your Registered Activities", + "duharikketilmeldtdignogenaktiviteter" => "You have not signed up for any activities", + "tilbage" => "Go Back", + "dinereservationer" => "Your reservations", + "fjern" => "Remove", + "tid" => "Time", + "reservervaskemaskine" => "Reserve washing machine", + "duharingenreservationer" => "You have no reservations", + "bookingliste" => "Booking List", + "dereringenvaskemaskiner" => "There are no washing machines", + "tilgængeligetider" => "Available times", + "maskiner" => "Washing machine", + "reserver" => "Reserves", + "kontakt" => "Contacts", + "navn" => "Name", + "email" => "E-mail", + "telefontid" => "Telephone hours", + "ring" => "Call", + "givfeedback" => "Feedback", + "sendfeedback" => "Send us feedback about what you like and what you don't like", + "dereringenkontakter" => "There are no contacts", + "accepterer" => "Accept", + "dereringenvejledninger" => "There are no guides", + "tilmelde" => "Participating", + "telefon" => "Phone", + "redigeroplysninger" => "Edit information", + "ændrepassword" => "Change Password", + "rediger" => "Edit", + "nuværendepassword" => "Current password", + "nytpassword" => "New password", + "confirmpassword" => "Confirm password", + +]; diff --git a/skolehjem/resources/views/admin/events/create.blade.php b/skolehjem/resources/views/admin/events/create.blade.php index f5ebc92..a3806ff 100644 --- a/skolehjem/resources/views/admin/events/create.blade.php +++ b/skolehjem/resources/views/admin/events/create.blade.php @@ -17,15 +17,20 @@ .toggle__text::before { border-color: black; } + .ck-editor__main { + margin-bottom: 1rem; + } </style> <h1>Opret Aktivitet:</h1> <form method="post" action="{{ route("events.store") }}"> @csrf - <label for="name">Navn:</label> + <label for="name">Event Navn:</label> <input type="text" name="name" id="name" max="60" required> - <label for="description">Beskrivelse:</label> - <input type="text" name="description" id="description" max="500" required> - <label for="date">Aktivitet dato:</label> + <label for="accountable">Event Ansvarlig:</label> + <input type="text" name="accountable" id="accountable" required> + <label for="description">Event Beskrivelse:</label> + <textarea name="description" id="editor"></textarea> + <label for="date">Event dato:</label> <input type="datetime-local" name="date" id="date" required> <label class="toggle"> <input class="toggle__input" type="checkbox" name="newsoption"> @@ -35,4 +40,15 @@ </label> <input type="submit" class="btn btn-dark text-white" value="Opret"> </form> + + <script> + ClassicEditor + .create( document.querySelector( '#editor' )) + .then( editor => { + console.log( editor ); + } ) + .catch( error => { + console.error( error ); + } ); + </script> @endsection diff --git a/skolehjem/resources/views/admin/events/edit.blade.php b/skolehjem/resources/views/admin/events/edit.blade.php index 8f1a286..2f01f5d 100644 --- a/skolehjem/resources/views/admin/events/edit.blade.php +++ b/skolehjem/resources/views/admin/events/edit.blade.php @@ -24,8 +24,10 @@ @method("PUT") <label for="event_title">Event Titel:</label> <input value="{{$event->name}}" type="text" name="name" id="event_title" required> + <label for="accountable">Event Ansvarlig:</label> + <input value="{{$event->accountable}}" type="text" name="accountable" id="accountable" required> <label for="description">Beskrivelse</label> - <input value="{{$event->description}}" type="text" name="description" id="description" required> + <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"> diff --git a/skolehjem/resources/views/admin/events/index.blade.php b/skolehjem/resources/views/admin/events/index.blade.php index 01a1d5a..6d18017 100644 --- a/skolehjem/resources/views/admin/events/index.blade.php +++ b/skolehjem/resources/views/admin/events/index.blade.php @@ -23,7 +23,7 @@ <table class="tbl mt-2"> <tr> <th>Event Navn</th> - <th>Event Beskrivelse</th> + <th>Event Ansvarlig</th> <th>Event Dato</th> <th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/eye.svg') }}" alt="Show"></th> <th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th> @@ -32,7 +32,7 @@ @foreach($events as $event) <tr> <td>{{ $event->name }}</td> - <td>{{ $event->description }}</td> + <td>{{ $event->accountable }}</td> <td>{{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($event->date))->format('d/m/Y \k\l\. H:i') }}</td> <td><a href="{{ route("events.signups", [ "event" => $event ]) }}"><img class="w-100" src="{{ asset('/images/icons/eye-dark.svg') }}" alt="Show"></a></td> <td><a href="{{ route("events.edit", [ "event" => $event ]) }}"><img class="w-100" src="{{ asset('/images/icons/pencil-dark.svg') }}" alt="Update"></a></td> diff --git a/skolehjem/resources/views/admin/guides/edit.blade.php b/skolehjem/resources/views/admin/guides/edit.blade.php index d29d692..da4afea 100644 --- a/skolehjem/resources/views/admin/guides/edit.blade.php +++ b/skolehjem/resources/views/admin/guides/edit.blade.php @@ -47,13 +47,12 @@ options: [ { model: 'paragraph', title: 'Paragraph', class: 'ck-heading_paragraph' }, { model: 'heading1', view: 'h3', title: 'Heading 1', class: 'sde-blue' }, - { model: 'heading2', view: 'h4', title: 'Heading 2', class: 'sde-blue' } + { model: 'heading2', view: 'h4', title: 'Heading 2', class: 'sde-blue' }, ] } } ) .catch( error => { console.log( error ); } ); - </script> @endsection diff --git a/skolehjem/resources/views/admin/users/login.blade.php b/skolehjem/resources/views/admin/users/login.blade.php index 52c34cd..e43fe7d 100644 --- a/skolehjem/resources/views/admin/users/login.blade.php +++ b/skolehjem/resources/views/admin/users/login.blade.php @@ -19,6 +19,9 @@ <span class="toggle__text text-white">Remember password</span> </span> </label> + {!! session()->get('success#passwordchange') !!} + {!! session()->get('error#wrongcredentials') !!} + {!! session()->get('success#loggedout') !!} <input class="btn btn-dark" type="submit" value="Sign in"> </form> <a class="text-white text-center" href="{{ route('users.show-forgot') }}">Forgot password?</a> diff --git a/skolehjem/resources/views/app/contacts/index.blade.php b/skolehjem/resources/views/app/contacts/index.blade.php index 50a2741..816511d 100644 --- a/skolehjem/resources/views/app/contacts/index.blade.php +++ b/skolehjem/resources/views/app/contacts/index.blade.php @@ -5,25 +5,25 @@ @section("content") <main> - <h1 class="text-center sde-blue mt-0 mb-0">Kontakt</h1> + <h1 class="text-center sde-blue mt-0 mb-0">{{__('msg.kontakt')}}</h1> @if(!$contacts->isEmpty()) @foreach($contacts as $contact) - <h4 class="mt-2">Navn: {{ $contact->contactname }}</h4> - <h4 class="mt-0">Email: {{ $contact->email }}</h4> + <h4 class="mt-2">{{__('msg.navn')}}: {{ $contact->contactname }}</h4> + <h4 class="mt-0">{{__('msg.email')}}: {{ $contact->email }}</h4> <h4 class="mt-0">{{ $contact->title }}</h4> @if($contact->phonetimes) - <h4 class="mt-0 mb-0">Telefontid:</h4> + <h4 class="mt-0 mb-0">{{__('msg.telefontid')}}:</h4> {!! $contact->phonetimes !!} @endif @if($contact->phone) <span class="text-center sde-black-20 mt-1">+45 {{ chunk_split($contact->phone, 2, ' ') }}</span> - <a class="btn text-center btn-sde-blue mt-1" href="tel:+45{{ $contact->phone }}">Ring</a> + <a class="btn text-center btn-sde-blue mt-1" href="tel:+45{{ $contact->phone }}">{{__('msg.ring')}}</a> @endif @endforeach @else - <p class="text-center">Der er ingen kontakter!</p> + <p class="text-center">{{__('msg.dereringenkontakter')}}!</p> @endif - <span class="text-center sde-black-20 mt-1">Send feedback omkring hvem el. hvad som helst</span> - <a class="btn text-center btn-sde-blue mt-1" href="{{ route('feedbacks.create') }}">Giv Feedback</a> + <span class="text-center sde-black-20 mt-1">{{__('msg.sendfeedback')}}</span> + <a class="btn text-center btn-sde-blue mt-1" href="{{ route('feedbacks.create') }}">{{__('msg.givfeedback')}}</a> </main> @endsection diff --git a/skolehjem/resources/views/app/events/index.blade.php b/skolehjem/resources/views/app/events/index.blade.php index 803418f..403c7b2 100644 --- a/skolehjem/resources/views/app/events/index.blade.php +++ b/skolehjem/resources/views/app/events/index.blade.php @@ -5,22 +5,23 @@ @section("content") <main> - <h1 class="text-center sde-blue mb-0">Aktiviteter</h1> + <h1 class="text-center sde-blue mb-0">{{ __('msg.aktiviteter') }}</h1> @if(!$events->isEmpty()) @foreach($events as $event) <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">Af: {{ $event->accountable }}</p> <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> + {!! $event->description !!} <input type="hidden" name="event_id" value="{{ $event->id }}"> {!! session()->get('error#' . $event->id) !!} {!! session()->get('signup#' . $event->id) !!} - <button type="submit" class="btn text-center btn-sde-blue" id="tilmeld">Tilmeld</button> + <button type="submit" class="btn text-center btn-sde-blue" id="tilmeld">{{__('msg.tilmelde')}}</button> </form> @endforeach @else - <p class="text-center">Der er ingen aktiviteter!</p> + <p class="text-center">{{__('msg.dereringenaktiviteter')}}!</p> @endif - <a href="{{ route("userevents.index") }}" type="submit" class="mt-2 btn text-center btn-sde-blue" id="tilmeld">Se Tilmeldte Aktiviteter</a> + <a href="{{ route("userevents.index") }}" type="submit" class="mt-2 btn text-center btn-sde-blue" id="tilmeld">{{__('msg.setilmeldteaktiviteter')}}</a> </main> @endsection diff --git a/skolehjem/resources/views/app/events/yourevents.blade.php b/skolehjem/resources/views/app/events/yourevents.blade.php index fa80589..2b01287 100644 --- a/skolehjem/resources/views/app/events/yourevents.blade.php +++ b/skolehjem/resources/views/app/events/yourevents.blade.php @@ -5,7 +5,7 @@ @section("content") <main> - <h1 class="text-center sde-blue mb-0">Tilmeldte Aktiviteter</h1> + <h1 class="text-center sde-blue mb-0">{{__('msg.tilmeldteaktiviteter')}}</h1> {!! session()->get('eventunsubscribed') !!} @if(!$userevents->isEmpty()) @foreach($userevents as $userevent) @@ -14,13 +14,13 @@ @method("delete") <h3 class="sde-blue bold text-center mb-0">{{$userevent->name}}</h3> <p class="text-center mt-0">{{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($userevent->date))->format('d/m/Y \k\l\. H:i') }}</p> - <p class="text-center">{{$userevent->description}}</p> + <p class="text-center">{!! $userevent->description !!}</p> <button type="submit" class="btn text-center btn-sde-blue" onclick="return confirm('Are you sure you want to remove this event?');">Afmeld</button> </form> @endforeach @else - <p class="text-center">Du har ikke tilmeldt dig nogen aktiviteter!</p> + <p class="text-center">{{__('msg.duharikketilmeldtdignogenaktiviteter')}}!</p> @endif - <a href="{{ route("events.index") }}" type="submit" class="mt-2 btn text-center btn-sde-blue">Tilbage</a> + <a href="{{ route("events.index") }}" type="submit" class="mt-2 btn text-center btn-sde-blue">{{__('msg.tilbage')}}</a> </main> @endsection diff --git a/skolehjem/resources/views/app/guides/index.blade.php b/skolehjem/resources/views/app/guides/index.blade.php index 09a3303..2c17dd1 100644 --- a/skolehjem/resources/views/app/guides/index.blade.php +++ b/skolehjem/resources/views/app/guides/index.blade.php @@ -11,7 +11,7 @@ } </style> <main> - <h1 class="text-center sde-blue mt-0">Vejledninger</h1> + <h1 class="text-center sde-blue mt-0">{{__('msg.vejledning')}}</h1> @if(!$guides->isEmpty()) @foreach($guides as $guide) <h2 class="text-center sde-blue mt-0">{{ $guide->name }}</h2> @@ -19,7 +19,7 @@ <hr class="w-100"> @endforeach @else - <p style="margin: 0 18px;">Der er ingen vejledninger.</p> + <p style="margin: 0 18px;">{{__('msg.dereringenvejledninger')}}.</p> @endif </main> @endsection diff --git a/skolehjem/resources/views/app/layout/base.blade.php b/skolehjem/resources/views/app/layout/base.blade.php index 7d29a33..efb0573 100644 --- a/skolehjem/resources/views/app/layout/base.blade.php +++ b/skolehjem/resources/views/app/layout/base.blade.php @@ -20,15 +20,15 @@ <a href="{{ route("menu-plans.index") }}"> <img src="{{URL::asset('/images/icons/Menuplan.svg')}}" alt="Menuplan"> - Menuplan + {{ __('msg.menuplan') }} </a> <a href="{{ route("events.index") }}"> <img src="{{URL::asset('/images/icons/Aktiviteter.svg')}}" alt="Aktiviteter"> - Aktiviteter + {{ __('msg.aktiviteter') }} </a> <a href="{{ route("washing-reservations.appindex") }}"> <img src="{{URL::asset('/images/icons/Vaske booking liste.svg')}}" alt="Reservationer"> - Reservationer + {{ __('msg.reservationer') }} </a> {{-- MÅ IKKE SLETTES!!!! --}} {{-- <a href="# ">--}} @@ -37,23 +37,23 @@ {{-- </a>--}} <a href="{{ route("contacts.index") }}"> <img src="{{URL::asset('/images/icons/Kontoret.svg')}}" alt="Kontoret"> - Kontoret + {{ __('msg.kontoret') }} </a> <a href="{{ route("phones.index") }}"> <img src="{{URL::asset('/images/icons/Vagttelefon-hvid.svg')}}" alt="Vagttelefon"> - Vagttelefon + {{ __('msg.vagttelefon') }} </a> <a href="{{ route("guides.index") }}"> <img src="{{URL::asset('/images/icons/Vejledninger.svg')}}" alt="Guide"> - Vejledninger + {{ __('msg.vejledning') }} </a> <a href="{{ route("users.account") }}"> <img src="{{URL::asset('/images/icons/user-hvid.svg')}}" alt="Konto"> - Konto + {{ __('msg.konto') }} </a> <a href="{{ route('users.logout') }}"> <img src="{{URL::asset('/images/icons/Logout.svg')}}" alt="Logud"> - Log Ud + {{ __('msg.logud') }} </a> </div> diff --git a/skolehjem/resources/views/app/menuplans/index.blade.php b/skolehjem/resources/views/app/menuplans/index.blade.php index 639ee20..8a620ae 100644 --- a/skolehjem/resources/views/app/menuplans/index.blade.php +++ b/skolehjem/resources/views/app/menuplans/index.blade.php @@ -11,31 +11,31 @@ @if($menuPlans->contains('week', $Week)) {{-- If any of the menues in the menu table has the number of the week in the 'week' column, do this --}} @foreach($menuPlans as $menuplan) @if($menuplan->week == $Week) - <h1 class="text-center sde-blue mb-0">Menuplan</h1> - <span class="text-center sde-black-80 bold">Uge: {{$menuplan->week}}</span> + <h1 class="text-center sde-blue mb-0">{{ __('msg.menuplan') }}</h1> + <span class="text-center sde-black-80 bold">{{ __('msg.uge') }}: {{$menuplan->week}}</span> <div class="col w-100 mt-auto text-center"> <div class="w-100" id="mandag"> - <h3 class="sde-blue bold mb-0">Mandag</h3> + <h3 class="sde-blue bold mb-0">{{ __('msg.mandag') }}</h3> <p>{{$menuplan->monday}}</p> </div> <div class="w-100" id="tirsdag"> - <h3 class="sde-blue bold mb-0">Tirsdag</h3> + <h3 class="sde-blue bold mb-0">{{ __('msg.tirsdag') }}</h3> <p>{{$menuplan->tuesday}}</p> </div> <div class="w-100" id="onsdag"> - <h3 class="sde-blue bold mb-0">Onsdag</h3> + <h3 class="sde-blue bold mb-0">{{ __('msg.onsdag') }}</h3> <p>{{$menuplan->wednesday}}</p> </div> <div class="w-100" id="torsdag"> - <h3 class="sde-blue bold mb-0">Torsdag</h3> + <h3 class="sde-blue bold mb-0">{{ __('msg.torsdag') }}</h3> <p>{{$menuplan->thursday}}</p> </div> </div> @endif @endforeach @else - <h1 class="text-center sde-blue mb-0">Menuplan</h1> - <p class="text-center">Der er ingen menuplaner denne uge!</p> + <h1 class="text-center sde-blue mb-0">{{ __('msg.menuplan') }}</h1> + <p class="text-center">{{__('msg.dereringenmenuplanerdenneuge')}}!</p> @endif </main> {{ $menuPlans->links() }} diff --git a/skolehjem/resources/views/app/users/account.blade.php b/skolehjem/resources/views/app/users/account.blade.php index 1f420db..79bc768 100644 --- a/skolehjem/resources/views/app/users/account.blade.php +++ b/skolehjem/resources/views/app/users/account.blade.php @@ -5,13 +5,50 @@ @endsection @section("content") + <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <main> - <h1 class="text-center sde-blue mt-0">Konto</h1> - <h4 class="mt-0">Navn: {{ Auth::user()->name_first . " " . Auth::user()->name_last }}</h4> - <h4 class="mt-0">Email: {{ Auth::user()->email }}</h4> - <h4 class="mt-0">Telefon Nr.: {{ Auth::user()->phone }}</h4> + <h1 class="text-center sde-blue mt-0">{{__('msg.konto')}}</h1> + <h4 class="mt-0">{{__('msg.navn')}}: {{ Auth::user()->name_first . " " . Auth::user()->name_last }}</h4> + <h4 class="mt-0">{{__('msg.email')}}: {{ Auth::user()->email }}</h4> + <h4 class="mt-0">{{__('msg.telefon')}} Nr.: {{ Auth::user()->phone }}</h4> {!! session()->get('success#credentialschanged') !!} - <a class="btn text-center btn-sde-blue mt-1" href="{{ route("users.accountedit") }}">Rediger Oplysninger</a> - <a class="btn text-center btn-sde-blue mt-1" href="{{ route("users.accounteditpass") }}">Ændre Password</a> + <a class="btn text-center btn-sde-blue mt-1" href="{{ route("users.accountedit") }}">{{__('msg.redigeroplysninger')}}</a> + <a class="btn text-center btn-sde-blue mt-1" href="{{ route("users.accounteditpass") }}">{{__('msg.ændrepassword')}}</a> + + <label for="langu">Sprog / Languages:</label> + <select name="langName" id="lang"> + @if(request()->cookie('languagesSetting') == "dk") + <option selected name="langDK" value="dk">Dansk</option> + @else + <option name="langDK" value="dk">Dansk</option> + @endif + @if(request()->cookie('languagesSetting') == "en") + <option selected name="langEN" value="en">English</option> + @else + <option name="langEN" value="en">English</option> + @endif + + </select> </main> + + <script> + $(document).ready(function (){ + $('#lang').change(function () { + $value = $('#lang').find(":selected").val(); + $.ajax({ + type: 'get', + url: '{{route('users.setLanguages')}}', + data: {'lang':$value}, + success:function (data) { + console.log($value); + location.reload(); + }, + error:function (data) { + console.log(data); + } + }); + }) + }) + </script> + @endsection diff --git a/skolehjem/resources/views/app/users/edit.blade.php b/skolehjem/resources/views/app/users/edit.blade.php index 6cdbf83..f6f8f33 100644 --- a/skolehjem/resources/views/app/users/edit.blade.php +++ b/skolehjem/resources/views/app/users/edit.blade.php @@ -6,18 +6,18 @@ @section("content") <main> - <h1 class="text-center sde-blue mt-0">Konto</h1> + <h1 class="text-center sde-blue mt-0">{{__('msg.konto')}}</h1> <form method="post" action="{{ route("users.accountupdate", ['user' => Auth::user()]) }}"> @csrf @method("put") - <span>Navn:</span> + <span>{{__('msg.navn')}}:</span> <input type="text" value="{{ Auth::user()->name_first . " " . Auth::user()->name_last }}" disabled> - <span>Email:</span> + <span>{{__('msg.email')}}:</span> <input type="email" name="email" id="email" value="{{ Auth::user()->email }}" required> - <span>Telefon Nr.:</span> + <span>{{__('msg.telefon')}} Nr.:</span> <input type="text" name="phone" id="phone" value="{{ Auth::user()->phone }}" required> - <button type="submit" class="btn text-center btn-sde-blue mt-1">Rediger</button> - <a href="{{ route('users.account') }}" class="btn text-center btn-sde-blue mt-1">Tilbage</a> + <button type="submit" class="btn text-center btn-sde-blue mt-1">{{__('msg.rediger')}}</button> + <button onclick="window.location.href = '{{ route('users.account') }}';" class="btn text-center btn-sde-blue mt-1">{{__('msg.tilbage')}}</button> </form> </main> @endsection diff --git a/skolehjem/resources/views/app/users/editpass.blade.php b/skolehjem/resources/views/app/users/editpass.blade.php index 9497b5d..ecc20d4 100644 --- a/skolehjem/resources/views/app/users/editpass.blade.php +++ b/skolehjem/resources/views/app/users/editpass.blade.php @@ -6,29 +6,31 @@ @section("content") <main> - <h1 class="text-center sde-blue mt-0">Konto</h1> + <h1 class="text-center sde-blue mt-0">{{__('msg.konto')}}</h1> <form method="post" action="{{ route("users.accountupdate", ['user' => Auth::user()]) }}"> @csrf @method("put") - <span>Nuværende Password:</span> + <span>{{__('msg.nuværendepassword')}}:</span> <div class="input-group text-left"> <input type="password" class="form-control" name="oldpassword" id="old" placeholder="******"> <span class="fa fa-fw fa-eye field-icon toggle-password" id="fa-old" onclick="show('old', 'fa-old')"></span> </div> - <span>Nyt Password:</span> + <span>{{__('msg.nytpassword')}}:</span> <div class="input-group text-left"> <input type="password" class="form-control" name="password" id="new" placeholder="******" required> <span class="fa fa-fw fa-eye field-icon toggle-password" id="fa-new" onclick="show('new', 'fa-new')"></span> </div> - <span>Confirm Password:</span> + <span>{{__('msg.confirmpassword')}}:</span> <div class="input-group text-left"> <input type="password" class="form-control" name="confirmpassword" id="confirm" placeholder="******" required> <span class="fa fa-fw fa-eye field-icon toggle-password" id="fa-confirm" onclick="show('confirm', 'fa-confirm')"></span> </div> {!! session()->get('error#notsamepass') !!} {!! session()->get('error#oldpass') !!} - <button type="submit" class="btn text-center btn-sde-blue mt-1">Rediger</button> + <button type="submit" class="btn text-center btn-sde-blue mt-1">{{__('msg.rediger')}}</button> + <a href="{{ route('users.account') }}" class="btn text-center btn-sde-blue mt-1">{{__('msg.tilbage')}}</a> </form> + </main> <style> input { diff --git a/skolehjem/resources/views/app/users/index.blade.php b/skolehjem/resources/views/app/users/index.blade.php index 256afe5..85379d2 100644 --- a/skolehjem/resources/views/app/users/index.blade.php +++ b/skolehjem/resources/views/app/users/index.blade.php @@ -3,12 +3,12 @@ @section('content') <main id="main" style="justify-content: space-between;"> <div class="d-flex col block-container mt-2"> - <a href="{{ route('menu-plans.index') }}" class="block text-center mb-1">Menuplan</a> - <a href="{{ route('events.index') }}" class="block text-center mb-1">Aktiviteter</a> - <a href="{{ route('washing-reservations.appindex') }}" class="block text-center mb-1">Reservationer</a> - <a href="{{ route('contacts.index') }}" class="block text-center mb-1">Kontoret</a> - <a href="{{ route('phones.index') }}" class="block text-center mb-1">Vagttelefon</a> - <a href="{{ route('guides.index') }}" class="block text-center mb-1">Vejledninger</a> + <a href="{{ route('menu-plans.index') }}" class="block text-center mb-1">{{ __('msg.menuplan') }}</a> + <a href="{{ route('events.index') }}" class="block text-center mb-1">{{ __('msg.aktiviteter') }}</a> + <a href="{{ route('washing-reservations.appindex') }}" class="block text-center mb-1">{{ __('msg.reservationer') }}</a> + <a href="{{ route('contacts.index') }}" class="block text-center mb-1">{{ __('msg.kontoret') }}</a> + <a href="{{ route('phones.index') }}" class="block text-center mb-1">{{ __('msg.vagttelefon') }}</a> + <a href="{{ route('guides.index') }}" class="block text-center mb-1">{{ __('msg.vejledning') }}</a> </div> <div class="row" style="align-self: center; margin: 8px 0 8px 0;"> <a href="https://www.facebook.com" target="_blank" class="link"> diff --git a/skolehjem/resources/views/app/users/login.blade.php b/skolehjem/resources/views/app/users/login.blade.php index 8fddb85..9caa410 100644 --- a/skolehjem/resources/views/app/users/login.blade.php +++ b/skolehjem/resources/views/app/users/login.blade.php @@ -23,6 +23,8 @@ </span> </label> {!! session()->get('success#passwordchange') !!} + {!! session()->get('error#wrongcredentials') !!} + {!! session()->get('success#loggedout') !!} <input class="btn btn-dark" type="submit" value="Sign in"> </form> <a class="text-white text-center" href="{{ route('users.show-forgot') }}">Forgot password?</a> diff --git a/skolehjem/resources/views/app/vagttelefons/index.blade.php b/skolehjem/resources/views/app/vagttelefons/index.blade.php index 87a24c7..be7617b 100644 --- a/skolehjem/resources/views/app/vagttelefons/index.blade.php +++ b/skolehjem/resources/views/app/vagttelefons/index.blade.php @@ -6,16 +6,16 @@ @section("content") <main> <img class="mt-3" src="{{ URL::asset('/images/icons/Vagttelefon-normal.svg') }}" alt="Vagttelefon" style="height: 16vw;"> - <h1 class="text-center sde-blue mt-0">Vagttelefon</h1> + <h1 class="text-center sde-blue mt-0">{{__('msg.vagttelefon')}}</h1> <p class="mt-0">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc sodales pulvinar congue aenean suspendisse.</p> <label class="toggle"> <input class="toggle__input" type="checkbox" name="accept" id="input" onclick="check()"> <span class="toggle__label sde-blue"> - <span class="toggle__text sde-blue semi-bold">Accepterer</span> + <span class="toggle__text sde-blue semi-bold">{{__('msg.accepterer')}}</span> </span> </label> - <span class="text-center sde-black-20 mt-2">+45 56 30 45 66</span> - <a class="btn text-center btn-sde-blue btn-disabled" id="call">Tilkald</a> + <span class="text-center sde-black-20 mt-2">+45 24 62 94 50</span> + <a class="btn text-center btn-sde-blue btn-disabled" id="call">{{__('msg.ring')}}</a> </main> @endsection diff --git a/skolehjem/resources/views/app/washing-reservations/create.blade.php b/skolehjem/resources/views/app/washing-reservations/create.blade.php index fafdc9a..19cbf9c 100644 --- a/skolehjem/resources/views/app/washing-reservations/create.blade.php +++ b/skolehjem/resources/views/app/washing-reservations/create.blade.php @@ -6,7 +6,7 @@ @section("content") <main> - <h1 class="text-center sde-blue mb-0">Booking Liste</h1> + <h1 class="text-center sde-blue mb-0">{{__('msg.bookingliste')}}</h1> {!! session()->get('ReservationExists') !!} <div class="col w-100 mt-auto"> <div class="calendar-container"> @@ -30,7 +30,7 @@ @csrf </form> @if(count(\App\WashingMachine::all()) < 1) - <p style="margin: 0 18px;">Der er ingen vaskemaskiner.</p> + <p style="margin: 0 18px;">{{__('msg.dereringenvaskemaskiner')}}.</p> @endif </div> </main> @@ -47,7 +47,7 @@ return moment(index, "e").locale("da").startOf("week").weekday(index).format("ddd"); }); - document.getElementById("title").innerHTML = 'Uge ' + moment().locale("da").day(weekDays[0]).week(week).isoWeek().toString(); + document.getElementById("title").innerHTML = '{{__('msg.ugestor')}} ' + moment().locale("da").day(weekDays[0]).week(week).isoWeek().toString(); const calendar = document.getElementById("calendar"); @@ -160,7 +160,7 @@ else { let span = document.createElement("span"); span.classList.add("events__title"); - span.innerText = "Maskiner"; + span.innerText = "{{__('msg.maskiner')}}"; let select = document.createElement("select"); select.classList.add("events__title"); @@ -181,7 +181,7 @@ else { let span = document.createElement("span"); span.classList.add("events__title"); - span.innerText = "Tilgængelige tider"; + span.innerText = "{{__('msg.tilgængeligetider')}}"; let select = document.createElement("select"); select.classList.add("events__title"); @@ -199,7 +199,7 @@ let button = document.createElement("button"); button.id = "create-reservation"; - button.innerText = "Reserver"; + button.innerText = "{{__('msg.reserver')}}"; button.type = "submit"; container.appendChild(button); diff --git a/skolehjem/resources/views/app/washing-reservations/index.blade.php b/skolehjem/resources/views/app/washing-reservations/index.blade.php index f93b3be..3035e6a 100644 --- a/skolehjem/resources/views/app/washing-reservations/index.blade.php +++ b/skolehjem/resources/views/app/washing-reservations/index.blade.php @@ -5,25 +5,25 @@ @section("content") <main style="min-height: calc(100% - 61.34px);"> - <h2 class="text-center sde-blue mb-0">Dine reservationer</h2> + <h2 class="text-center sde-blue mb-0">{{__('msg.dinereservationer')}}</h2> @foreach($reservations as $reservation) <div class="reservation" style="margin: 0 32px 1.75rem 32px;"> <h3>{{ \App\WashingMachine::query()->find($reservation->machine_id)->name }}</h3> <div class="row align-items-center"> - <span style="font-size: 4vw"><b>Tid:</b> {{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($reservation->time))->format('d/m/Y \k\l\. H:i') }}</span> + <span style="font-size: 4vw"><b>{{__('msg.tid')}}:</b> {{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($reservation->time))->format('d/m/Y \k\l\. H:i') }}</span> <form class="ml-auto" method="post" action="{{ route("washing-reservations.destroy", [ "washing_reservation" => $reservation ]) }}"> @csrf @method("delete") <input type="hidden" name="id" value="{{ $reservation->id }}"> - <button class="btn btn-sde-blue mb-0" type="submit" onclick="return confirm('Are you sure you want to remove this reservation?');">Fjern</button> + <button class="btn btn-sde-blue mb-0" type="submit" onclick="return confirm('Are you sure you want to remove this reservation?');">{{__('msg.fjern')}}</button> </form> </div> </div> @endforeach @if(count($reservations) < 1) - <p style="margin: 0 18px;">Du har ingen reservationer.</p> + <p style="margin: 0 18px;">{{__('msg.duharingenreservationer')}}.</p> @endif - <a href="{{ route("washing-reservations.create") }}" class="btn btn-sde-blue mt-auto mb-1">Reserver vaskemaskine</a> + <a href="{{ route("washing-reservations.create") }}" class="btn btn-sde-blue mt-auto mb-1">{{__('msg.reservervaskemaskine')}}</a> </main> @endsection diff --git a/skolehjem/routes/web.php b/skolehjem/routes/web.php index 608c709..778c22c 100644 --- a/skolehjem/routes/web.php +++ b/skolehjem/routes/web.php @@ -39,6 +39,8 @@ Route::get("/userapi", "UserController@search")->name("users.search"); Route::get("/vaskeapi", "WashingReservationController@search")->name("washing-reservations.search"); Route::get("/risrosapi", "FeedbackController@search")->name("feedbacks.search"); +//languages +Route::get("/languages", "UserController@setLanguages")->name("users.setLanguages"); Route::resource("contacts", "ContactController");