Merge branch 'master' of https://github.com/sebathefox/skolehjem-webapp into master
This commit is contained in:
commit
4beadfb223
|
@ -3,9 +3,7 @@
|
||||||
|
|
||||||
namespace App\Helpers;
|
namespace App\Helpers;
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
|
|
||||||
use Jenssegers\Agent\Agent;
|
use Jenssegers\Agent\Agent;
|
||||||
|
|
||||||
class Detector
|
class Detector
|
||||||
|
@ -16,7 +14,13 @@ class Detector
|
||||||
|
|
||||||
if($agent->isMobile()) {
|
if($agent->isMobile()) {
|
||||||
return view(config("detector.mobilePath") . "." . $viewName, $args);
|
return view(config("detector.mobilePath") . "." . $viewName, $args);
|
||||||
|
} else if(Auth()->user() !== null) {
|
||||||
|
if (Auth()->user()->can('admin.panel.show') == true)
|
||||||
|
return view(config("detector.defaultPath") . "." . $viewName, $args);
|
||||||
}
|
}
|
||||||
return view(config("detector.defaultPath") . "." . $viewName, $args);
|
if($viewName == "users.login" || $viewName == "users.logout")
|
||||||
|
return view(config("detector.mobilePath") . "." . $viewName, $args);
|
||||||
|
|
||||||
|
return view("errors.403", $args);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,16 +19,16 @@ class RootController extends Controller
|
||||||
|
|
||||||
if(auth()->user()->can('admin.panel.show')) {
|
if(auth()->user()->can('admin.panel.show')) {
|
||||||
if(Response::detect("root.index")->name() == "admin.root.index")
|
if(Response::detect("root.index")->name() == "admin.root.index")
|
||||||
return Response::detect("root.index");
|
return view("admin.root.index");
|
||||||
else {
|
else {
|
||||||
$news = News::query()->orderBy('id', 'desc')->paginate($perPage);
|
$news = News::query()->orderBy('id', 'desc')->paginate($perPage);
|
||||||
return Response::detect("root.index", ["news" => $news]);
|
return view("app.root.index", ["news" => $news]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$news = News::query()->orderBy('id', 'desc')->paginate($perPage, ['*'], "page");
|
$news = News::query()->orderBy('id', 'desc')->paginate($perPage, ['*'], "page");
|
||||||
|
|
||||||
return view('app.root.index', ["news" => $news]);
|
return Response::detect('root.index', ["news" => $news]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
namespace App\Providers;
|
namespace App\Providers;
|
||||||
|
|
||||||
use Illuminate\Http\Response;
|
use Illuminate\Http\Response;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\ServiceProvider;
|
use Illuminate\Support\ServiceProvider;
|
||||||
use Jenssegers\Agent\Facades\Agent;
|
use Jenssegers\Agent\Facades\Agent;
|
||||||
|
|
||||||
|
@ -28,8 +29,14 @@ class DetectorServiceProvider extends ServiceProvider
|
||||||
Response::macro("detect", function ($view, $args = []) {
|
Response::macro("detect", function ($view, $args = []) {
|
||||||
if(Agent::isMobile()) {
|
if(Agent::isMobile()) {
|
||||||
return view(config("detector.mobilePath") . "." . $view, $args);
|
return view(config("detector.mobilePath") . "." . $view, $args);
|
||||||
|
} else if(Auth()->user() !== null){
|
||||||
|
if(Auth()->user()->can('admin.panel.show') == true)
|
||||||
|
return view(config("detector.defaultPath") . "." . $view, $args);
|
||||||
}
|
}
|
||||||
return view(config("detector.defaultPath") . "." . $view, $args);
|
if($view == "users.login" || $view == "users.logout")
|
||||||
|
return view(config("detector.mobilePath") . "." . $view, $args);
|
||||||
|
|
||||||
|
return view("errors.403", $args);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,6 +63,7 @@ return[
|
||||||
"infoomappen" => "Denne app er udviklet til Odense erhvervskollegie.",
|
"infoomappen" => "Denne app er udviklet til Odense erhvervskollegie.",
|
||||||
"error" => "Fejl",
|
"error" => "Fejl",
|
||||||
"404" => "Denne side findes ikke.",
|
"404" => "Denne side findes ikke.",
|
||||||
|
"403" => "Du har ikke rettigheder til denne side.",
|
||||||
"canceled" => "Aflyst"
|
"canceled" => "Aflyst"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -70,5 +70,6 @@ return[
|
||||||
"infoomappen" => "The app is developed and designed for 'Odense erhvervskollegie'.",
|
"infoomappen" => "The app is developed and designed for 'Odense erhvervskollegie'.",
|
||||||
"error" => "Error",
|
"error" => "Error",
|
||||||
"404" => "This page doesn't exist.",
|
"404" => "This page doesn't exist.",
|
||||||
|
"403" => "You don't have permissions to access this page.",
|
||||||
"canceled" => "Canceled"
|
"canceled" => "Canceled"
|
||||||
];
|
];
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<title>@yield("title")</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
@if(request()->cookie("mode") == "dark")
|
||||||
|
<link type="text/css" rel="stylesheet" href="{{ mix("/css/webappdark.css") }}">
|
||||||
|
@else
|
||||||
|
<link type="text/css" rel="stylesheet" href="{{ mix("/css/webapp.css") }}">
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
function setMain() {
|
||||||
|
var main = document.getElementsByTagName("main")[0];
|
||||||
|
var header = document.getElementsByTagName("header")[0];
|
||||||
|
main.style.minHeight = 'calc(100% - ' + header.clientHeight + 'px)';
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload="onLoadRedirect()">
|
||||||
|
|
||||||
|
<main style="justify-content: unset">
|
||||||
|
<h1 class="sde-blue" style="font-size: 12vw; text-align: center">{{__("msg.error")}}</h1>
|
||||||
|
<p class="mb-0" style="text-align: center; font-size: 3.25vw;">{{__("msg.403")}}</p>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<script src="{{ mix("/js/app.js") }}"></script>
|
||||||
|
@if(request()->cookie("mode") == "dark")
|
||||||
|
<script type="text/javascript">
|
||||||
|
function toggleMenu(menu) {
|
||||||
|
let menuElement = document.getElementById(menu);
|
||||||
|
let logoElement = document.getElementById("sdeLogo");
|
||||||
|
let htmlElement = document.getElementsByTagName('html')[0];
|
||||||
|
let bodyElement = document.getElementsByTagName('body')[0];
|
||||||
|
let mainElement = document.getElementsByTagName('main')[0];
|
||||||
|
let iconElement = document.getElementById("icon");
|
||||||
|
let headerElement = document.getElementById("header");
|
||||||
|
|
||||||
|
if(menuElement.classList.contains("hide")) {
|
||||||
|
menuElement.classList.remove("hide");
|
||||||
|
mainElement.classList.remove("d-none");
|
||||||
|
htmlElement.style.backgroundColor = '';
|
||||||
|
bodyElement.style.backgroundColor = '#666666';
|
||||||
|
logoElement.src = '/images/logos/Logo-hvid.svg';
|
||||||
|
iconElement.classList.remove("fa-times");
|
||||||
|
iconElement.classList.add("fa-bars");
|
||||||
|
headerElement.style.backgroundColor = '';
|
||||||
|
} else {
|
||||||
|
menuElement.classList.add("hide");
|
||||||
|
mainElement.classList.add("d-none");
|
||||||
|
htmlElement.style.backgroundColor = 'rgb(0, 120, 138)';
|
||||||
|
bodyElement.style.backgroundColor = 'rgb(0, 120, 138)';
|
||||||
|
logoElement.src = '/images/logos/Logo-hvid.svg';
|
||||||
|
iconElement.classList.remove("fa-bars");
|
||||||
|
iconElement.classList.add("fa-times");
|
||||||
|
headerElement.style.backgroundColor = 'rgb(0, 120, 138)';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(document.getElementById("toggle"))
|
||||||
|
document.getElementById("toggle").onclick = function () {
|
||||||
|
toggleMenu('menu');
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
@endif
|
||||||
|
@yield("scripts")
|
||||||
|
<script>
|
||||||
|
function onLoadRedirect(){
|
||||||
|
setTimeout(function () {
|
||||||
|
if(window.history.back() !== undefined)
|
||||||
|
window.location.href = window.history.back();
|
||||||
|
else
|
||||||
|
window.location.href = "{{route("root.index")}}";
|
||||||
|
}, 3000)
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
Reference in New Issue