master
commit
25e21e9165
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"name": "Minimal Template",
|
||||||
|
"description": "A minimal Template for the Lumino CMS",
|
||||||
|
"image": "https://ik.imagekit.io/areya/tr:ar-5-3,w-800/krys-amon-mrdlxnP7hSg-unsplash_lHJMkV3q6.jpg",
|
||||||
|
"version": "2.1",
|
||||||
|
"author": {
|
||||||
|
"name": "Areya Webservices",
|
||||||
|
"link": "https://www.areya.de/"
|
||||||
|
},
|
||||||
|
"lumino-version": {"min": "2.4", "max": "2.4"}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,23 @@
|
||||||
|
<div id="footer">
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12 col-sm-6 text-md-start text-center mt-3">
|
||||||
|
Erstellt mit dem <a href="https://www.areya.de/software/cms">Areya CMS
|
||||||
|
<svg style="width: 11px; fill: black" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!-- Font Awesome Pro 5.15.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --><path d="M440,256H424a8,8,0,0,0-8,8V464a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V112A16,16,0,0,1,48,96H248a8,8,0,0,0,8-8V72a8,8,0,0,0-8-8H48A48,48,0,0,0,0,112V464a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V264A8,8,0,0,0,440,256ZM500,0,364,.34a12,12,0,0,0-12,12v10a12,12,0,0,0,12,12L454,34l.7.71L131.51,357.86a12,12,0,0,0,0,17l5.66,5.66a12,12,0,0,0,17,0L477.29,57.34l.71.7-.34,90a12,12,0,0,0,12,12h10a12,12,0,0,0,12-12L512,12A12,12,0,0,0,500,0Z"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-12 col-sm-6 text-md-end text-center mt-3">
|
||||||
|
<a href="{{url('/agb')}}">AGB</a>
|
||||||
|
|
|
||||||
|
<a href="{{url('/datenschutz')}}">Datenschutz</a>
|
||||||
|
|
|
||||||
|
<a href="{{url('/impressum')}}">Impressum</a>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,84 @@
|
||||||
|
@if(App::environment('production'))
|
||||||
|
@if (!empty(config('settings.facebook')))
|
||||||
|
<script>
|
||||||
|
!function(f,b,e,v,n,t,s)
|
||||||
|
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
|
||||||
|
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
|
||||||
|
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
|
||||||
|
n.queue=[];t=b.createElement(e);t.async=!0;
|
||||||
|
t.src=v;s=b.getElementsByTagName(e)[0];
|
||||||
|
s.parentNode.insertBefore(t,s)}(window, document,'script',
|
||||||
|
'https://connect.facebook.net/en_US/fbevents.js');
|
||||||
|
fbq('init', "{{config('settings.facebook') }}");
|
||||||
|
fbq('track', 'PageView');
|
||||||
|
</script>
|
||||||
|
<noscript>
|
||||||
|
<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id={{config('settings.facebook') }}&ev=PageView&noscript=1"/>
|
||||||
|
</noscript>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<!-- Hotjar Tracking Code -->
|
||||||
|
@if (!empty(config('settings.hotjar')))
|
||||||
|
<script>
|
||||||
|
(function(h,o,t,j,a,r){
|
||||||
|
h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
|
||||||
|
h._hjSettings={hjid:{{config('settings.hotjar')}},hjsv:6};
|
||||||
|
a=o.getElementsByTagName('head')[0];
|
||||||
|
r=o.createElement('script');r.async=1;
|
||||||
|
r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
|
||||||
|
a.appendChild(r);
|
||||||
|
})(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
|
||||||
|
</script>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@if (!empty(config('settings.analytics')))
|
||||||
|
<script async src="https://www.googletagmanager.com/gtag/js?id={{config('settings.analytics')}}"></script>
|
||||||
|
<script>
|
||||||
|
window.dataLayer = window.dataLayer || [];
|
||||||
|
function gtag(){dataLayer.push(arguments);}
|
||||||
|
gtag('js', new Date());
|
||||||
|
|
||||||
|
gtag('config', "{{config('settings.analytics')}}");
|
||||||
|
</script>
|
||||||
|
@endif
|
||||||
|
@if (!empty(config('settings.intercom')) && !empty(config('settings.intercom_key')))
|
||||||
|
@if(Auth::check())
|
||||||
|
@php ($hash_hmac = hash_hmac('sha256', Auth::user()->id, config('settings.intercom_key')))
|
||||||
|
<script>
|
||||||
|
window.intercomSettings = {
|
||||||
|
app_id: "{{config('settings.intercom')}}",
|
||||||
|
user_hash: "{{$hash_hmac}}",
|
||||||
|
user_id: "{{Auth::user()->id}}",
|
||||||
|
name: "{{Auth::user()->name}}",
|
||||||
|
email: "{{Auth::user()->email}}",
|
||||||
|
created_at: "{{strtotime(Auth::user()->created_at)}}",
|
||||||
|
avatar: '{"type":"avatar", "image_url": "{{Auth::user()->gravatar()}}"}',
|
||||||
|
custom_launcher_selector:'.btn-intercom'
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
@elseif(isset($invitedUser) && $invitedUser->invite != null)
|
||||||
|
@php ($hash_hmac = hash_hmac('sha256', $invitedUser->id, config('settings.intercom_key')))
|
||||||
|
<script>
|
||||||
|
window.intercomSettings = {
|
||||||
|
app_id: "{{config('settings.intercom')}}",
|
||||||
|
user_hash: "{{$hash_hmac}}",
|
||||||
|
user_id: "{{$invitedUser->id}}",
|
||||||
|
name: "{{$invitedUser->name}}",
|
||||||
|
email: "{{$invitedUser->email}}",
|
||||||
|
created_at: "{{strtotime($invitedUser->created_at)}}",
|
||||||
|
avatar: '{"type":"avatar", "image_url": "{{$invitedUser->gravatar()}}"}',
|
||||||
|
custom_launcher_selector:'.btn-intercom'
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
@else
|
||||||
|
<script>
|
||||||
|
window.intercomSettings = {app_id: "{{config('settings.intercom')}}"};
|
||||||
|
</script>
|
||||||
|
@endif
|
||||||
|
<script>
|
||||||
|
(function(){var w=window;var ic=w.Intercom;if(typeof ic==="function"){ic('reattach_activator');ic('update',w.intercomSettings);}else{var d=document;var i=function(){i.c(arguments);};i.q=[];i.c=function(args){i.q.push(args);};w.Intercom=i;var l=function(){var s=d.createElement('script');s.type='text/javascript';s.async=true;s.src='https://widget.intercom.io/widget/qffjq6ts';var x=d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s,x);};if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}}})();
|
||||||
|
</script>
|
||||||
|
@endif
|
||||||
|
@endif
|
|
@ -0,0 +1,131 @@
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, user-scalable=no">
|
||||||
|
<link rel="manifest" href="/manifest.json">
|
||||||
|
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png?v=rMBWbbb2wK">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png?v=rMBWbbb2wK">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png?v=rMBWbbb2wK">
|
||||||
|
<link rel="manifest" href="/site.webmanifest?v=rMBWbbb2wK">
|
||||||
|
<link rel="mask-icon" href="/safari-pinned-tab.svg?v=rMBWbbb2wK" color="#5bbad5">
|
||||||
|
<link rel="shortcut icon" href="/favicon.ico?v=rMBWbbb2wK">
|
||||||
|
<meta name="msapplication-TileColor" content="#f49c35">
|
||||||
|
<meta name="theme-color" content="#ffffff">
|
||||||
|
|
||||||
|
@if (\Route::currentRouteName() == 'content' and isset($list))
|
||||||
|
<title>{{removeHtmlTags(showListTitle($list, $filters))}}</title>
|
||||||
|
<!-- Para colocar title do SEO exemplo: $listModel->seo_title -->
|
||||||
|
<meta name="description" content="Finden Sie hier Ihren Job in der Region {{ $list->name }} und bewerben Sie sich ohne Registrierung bei Top-Arbeitgebern.">
|
||||||
|
<meta property="og:description" content="Finden Sie hier Ihren Job in der Region {{ $list->name }} und bewerben Sie sich ohne Registrierung bei Top-Arbeitgebern.">
|
||||||
|
<meta property="og:type" content="website">
|
||||||
|
<meta property="og:title" content="Aktuelle Stellenangebote in {{ $list->name }}">
|
||||||
|
<meta property="og:site_name" content="{{ config('settings.name') }}">
|
||||||
|
<meta property="og:url" content="{{ \Request::url() }}">
|
||||||
|
@if ($list->image)
|
||||||
|
<meta property="og:image" content="{{ asset('uploads/lists/' . $list->image) }}">
|
||||||
|
@else
|
||||||
|
<meta property="og:image" content="{{ asset('uploads/' . config('settings.image')) }}">
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<link rel="canonical" href="{{url('/') .'/'. $list->slug }}" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@elseif (\Route::currentRouteName() == 'author.get' and isset($author))
|
||||||
|
<title>Offene Jobangebote bei {{ $author->name }}</title>
|
||||||
|
<meta name="description" content="Finden Sie hier Ihren Job bei {{ $author->name }} und bewerben Sie sich direkt online">
|
||||||
|
<meta property="og:description" content="Finden Sie hier Ihren Job bei {{ $author->name }} und bewerben Sie sich direkt online">
|
||||||
|
<meta property="og:type" content="website">
|
||||||
|
<meta property="og:title" content="Offene Jobangebote bei {{ $author->name }}">
|
||||||
|
<meta property="og:site_name" content="{{ config('settings.name') }}">
|
||||||
|
<meta property="og:url" content="{{ \Request::url() }}">
|
||||||
|
<meta property="og:image" content="{{ $author->gravatar() }}?s=120&d=identicon&r=PG">
|
||||||
|
@elseif (Route::currentRouteName() == 'content' and isset($content))
|
||||||
|
<title>{{ $content->title }}</title>
|
||||||
|
<!-- Para colocar title do SEO exemplo: $nach->seo_title -->
|
||||||
|
@isset($content->data_fields['stellenbeschreibung'])
|
||||||
|
<meta name="description" content="{!! \Str::limit(strip_tags($content->data_fields['stellenbeschreibung']), 285, ' ...') !!}">
|
||||||
|
<meta property="og:description" content="{!! \Str::limit(strip_tags($content->data_fields['stellenbeschreibung']), 285, ' ...') !!}">
|
||||||
|
@endisset
|
||||||
|
<meta property="og:type" content="article">
|
||||||
|
<meta property="article:author" content="{{ $content->user->name }}">
|
||||||
|
<meta property="article:published_time" content="{{ $content->created_at }}">
|
||||||
|
<meta property="og:title" content="Stellenangebot: {{ $content->title}}">
|
||||||
|
<meta property="og:site_name" content="{{ config('settings.name') }}">
|
||||||
|
<meta property="og:url" content="{{ \Request::url() }}">
|
||||||
|
@if ($content->image)
|
||||||
|
<meta property="og:image" content="{{ asset('uploads/' . $content->image) }}">
|
||||||
|
@else
|
||||||
|
<meta property="og:image" content="{{ $content->user->gravatar() }}">
|
||||||
|
@endif
|
||||||
|
@if(App::environment('production'))
|
||||||
|
<?php
|
||||||
|
$employmentType = "";
|
||||||
|
if(isset($content->data_fields['beschaftigungsart'])){
|
||||||
|
if ($content->data_fields['beschaftigungsart'] == 'Praktikum') {
|
||||||
|
$employmentType = "INTERN";
|
||||||
|
}
|
||||||
|
if ($content->data_fields['beschaftigungsart'] == 'Vollzeit') {
|
||||||
|
$employmentType = "FULL_TIME";
|
||||||
|
}
|
||||||
|
if ($content->data_fields['beschaftigungsart'] == 'Teilzeit') {
|
||||||
|
$employmentType = "PART_TIME";
|
||||||
|
}
|
||||||
|
if ($content->data_fields['beschaftigungsart'] == 'Ausbildung') {
|
||||||
|
$employmentType = "INTERN";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function escapeJsonString($value)
|
||||||
|
{
|
||||||
|
$escapers = array("\\", "/", "\"", "\n", "\r", "\t", "\x08", "\x0c");
|
||||||
|
$replacements = array("\\\\", "\\/", "\\\"", "\\n", "\\r", "\\t", "\\f", "\\b");
|
||||||
|
$result = str_replace($escapers, $replacements, $value);
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
@isset ($content->data_fields['arbeitsort']['postalCode'])
|
||||||
|
<script type="application/ld+json">
|
||||||
|
{
|
||||||
|
"@context": "https://schema.org/",
|
||||||
|
"@type": "JobPosting",
|
||||||
|
"title": "{{ $content->title }}",
|
||||||
|
"description": "{!! escapeJsonString($content->data_fields['stellenbeschreibung']) !!}",
|
||||||
|
"datePosted": "{{ $content->updated_at->format('Y-m-d') }}",
|
||||||
|
"validThrough": "{{ $content->updated_at->addDays(90)->toIso8601String() }}",
|
||||||
|
"employmentType": "{{ $employmentType }}",
|
||||||
|
"hiringOrganization": {
|
||||||
|
"@type": "Organization",
|
||||||
|
"name": "{{ $content->user->name }}",
|
||||||
|
"sameAs": "{{ isset($content->user->social_networks['site']) ? $content->user->social_networks['site'] : '' }}",
|
||||||
|
"logo": "{{ $content->user->gravatar() }}?s=120&d=identicon&r=PG"
|
||||||
|
},
|
||||||
|
"jobLocation": {
|
||||||
|
"@type": "Place",
|
||||||
|
"address": {
|
||||||
|
"@type": "PostalAddress",
|
||||||
|
"streetAddress": "{{ $content->data_fields['arbeitsort']['streetAddress'] }}",
|
||||||
|
"addressLocality": "{{ $content->data_fields['arbeitsort']['addressLocality'] }}",
|
||||||
|
"addressRegion": "{{ $content->data_fields['arbeitsort']['addressRegion'] }}",
|
||||||
|
"postalCode": "{{ $content->data_fields['arbeitsort']['postalCode'] }}",
|
||||||
|
"addressCountry": "{{ $content->data_fields['arbeitsort']['addressCountry'] }}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
@endisset
|
||||||
|
@endif
|
||||||
|
@else
|
||||||
|
<title>@yield('meta_title', '')</title>
|
||||||
|
<meta name="description" content="@yield('meta_description', \Str::limit(strip_tags(config('settings.description')), 285, ' ...'))">
|
||||||
|
<meta property="og:description" content="@yield('meta_og_description', \Str::limit(strip_tags(config('settings.description')), 285, ' ...'))">
|
||||||
|
<meta property="og:type" content="website">
|
||||||
|
<meta property="og:title" content="@yield('meta_og_title', config('settings.name'))">
|
||||||
|
<meta property="og:site_name" content="@yield('meta_og_site_name', config('settings.name'))">
|
||||||
|
<meta property="og:url" content="{{ \Request::url() }}">
|
||||||
|
<meta property="og:image" content="@yield('meta_og_image', asset('uploads/' . config('settings.image')))">
|
||||||
|
<link rel="canonical" href="{{ \Request::url() }}" />
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if (!empty(config('settings.favicon_image')))
|
||||||
|
<link rel="apple-touch-icon" sizes="180x180" href="{{ asset('uploads/' . config('settings.favicon_image')) }}">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="{{ asset('uploads/' . config('settings.favicon_image')) }}">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="{{ asset('uploads/' . config('settings.favicon_image')) }}">
|
||||||
|
@endif
|
|
@ -0,0 +1,136 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
|
<title></title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="root"></div>
|
||||||
|
<div id="container"></div>
|
||||||
|
<script type="module">
|
||||||
|
import * as THREE from 'https://cdn.jsdelivr.net/npm/three@0.121.1/build/three.module.js';
|
||||||
|
import {
|
||||||
|
OrbitControls
|
||||||
|
} from 'https://cdn.jsdelivr.net/npm/three@0.121.1/examples/jsm/controls/OrbitControls.js';
|
||||||
|
import {
|
||||||
|
GLTFLoader
|
||||||
|
} from 'https://cdn.jsdelivr.net/npm/three@0.121.1/examples/jsm/loaders/GLTFLoader.js';
|
||||||
|
import {
|
||||||
|
RGBELoader
|
||||||
|
} from 'https://cdn.jsdelivr.net/npm/three@0.121.1/examples/jsm/loaders/RGBELoader.js';
|
||||||
|
|
||||||
|
let container;
|
||||||
|
let camera, scene, renderer;
|
||||||
|
let controls;
|
||||||
|
const clock = new THREE.Clock();
|
||||||
|
var envMap;
|
||||||
|
|
||||||
|
init();
|
||||||
|
animate();
|
||||||
|
|
||||||
|
function init() {
|
||||||
|
|
||||||
|
container = document.getElementById('container');
|
||||||
|
|
||||||
|
//
|
||||||
|
scene = new THREE.Scene();
|
||||||
|
console.log(scene)
|
||||||
|
|
||||||
|
//
|
||||||
|
renderer = new THREE.WebGLRenderer({
|
||||||
|
alpha: true,
|
||||||
|
antialias: true
|
||||||
|
});
|
||||||
|
renderer.setPixelRatio(window.devicePixelRatio);
|
||||||
|
renderer.setSize(window.innerWidth, window.innerHeight);
|
||||||
|
renderer.toneMapping = THREE.ACESFilmicToneMapping;
|
||||||
|
renderer.xr.enabled = true;
|
||||||
|
renderer.localClippingEnabled = true;
|
||||||
|
renderer.physicallyCorrectLights = true;
|
||||||
|
renderer.outputEncoding = THREE.sRGBEncoding;
|
||||||
|
renderer.toneMappingExposure = 0.7;
|
||||||
|
container.appendChild(renderer.domElement);
|
||||||
|
|
||||||
|
var pmremGenerator = new THREE.PMREMGenerator(renderer);
|
||||||
|
pmremGenerator.compileEquirectangularShader();
|
||||||
|
|
||||||
|
camera = new THREE.PerspectiveCamera(55, window.innerWidth / window.innerHeight, 0.01, 20000);
|
||||||
|
camera.position.set(0, 0, 10);
|
||||||
|
|
||||||
|
//
|
||||||
|
new RGBELoader()
|
||||||
|
.setDataType(THREE.UnsignedByteType)
|
||||||
|
.setPath('../')
|
||||||
|
.load("resources/views/template/minimal-theme/files/photo_studio_01_1k.hdr", function (texture2) {
|
||||||
|
envMap = pmremGenerator.fromEquirectangular(texture2).texture;
|
||||||
|
scene.environment = envMap;
|
||||||
|
texture2.dispose();
|
||||||
|
pmremGenerator.dispose();
|
||||||
|
});
|
||||||
|
|
||||||
|
//
|
||||||
|
const loader = new GLTFLoader();
|
||||||
|
loader.setPath('../');
|
||||||
|
loader.load('resources/views/template/minimal-theme/files/room5.glb', function (gltf) {
|
||||||
|
|
||||||
|
gltf.scene.traverse(function (child) {
|
||||||
|
if (child.material) {
|
||||||
|
if (child.name == "Object_6") {
|
||||||
|
child.material.map.wrapS = THREE.RepeatWrapping;
|
||||||
|
child.material.map.wrapT = THREE.RepeatWrapping;
|
||||||
|
child.material.map.repeat.x = 10;
|
||||||
|
child.material.map.repeat.y = 10;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
scene.add(gltf.scene);
|
||||||
|
});
|
||||||
|
|
||||||
|
//
|
||||||
|
const loader2 = new GLTFLoader();
|
||||||
|
loader2.setPath('../');
|
||||||
|
loader2.load('resources/views/template/minimal-theme/files/car.glb', function (gltf) {
|
||||||
|
|
||||||
|
gltf.scene.scale.set(30, 30, 30);
|
||||||
|
gltf.scene.position.set(10, 0, 12);
|
||||||
|
|
||||||
|
var bb = new THREE.Box3()
|
||||||
|
bb.setFromObject(gltf.scene);
|
||||||
|
bb.center(controls.target);
|
||||||
|
|
||||||
|
scene.add(gltf.scene);
|
||||||
|
});
|
||||||
|
|
||||||
|
//
|
||||||
|
controls = new OrbitControls(camera, renderer.domElement);
|
||||||
|
controls.maxPolarAngle = Math.PI * 0.495;
|
||||||
|
controls.target.set(11, 5, 12);
|
||||||
|
controls.minDistance = 0.5;
|
||||||
|
controls.maxDistance = 14;
|
||||||
|
controls.enableDamping = true; // an animation loop is required when either damping or auto-rotation are enabled
|
||||||
|
controls.dampingFactor = 0.05;
|
||||||
|
controls.update();
|
||||||
|
|
||||||
|
//
|
||||||
|
window.addEventListener('resize', onWindowResize);
|
||||||
|
}
|
||||||
|
|
||||||
|
function onWindowResize() {
|
||||||
|
camera.aspect = window.innerWidth / window.innerHeight;
|
||||||
|
camera.updateProjectionMatrix();
|
||||||
|
renderer.setSize(window.innerWidth, window.innerHeight);
|
||||||
|
}
|
||||||
|
|
||||||
|
function animate() {
|
||||||
|
renderer.setAnimationLoop(render);
|
||||||
|
}
|
||||||
|
|
||||||
|
function render(timestamp, frame) {
|
||||||
|
renderer.render(scene, camera);
|
||||||
|
controls.update();
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,16 @@
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||||
|
<head>
|
||||||
|
@include('template.'.config('settings.template').'.content.includes.meta')
|
||||||
|
@include('template.'.config('settings.template').'.content.includes.css')
|
||||||
|
@include('template.'.config('settings.template').'.content.includes.integrations')
|
||||||
|
@yield('head')
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
@yield('content')
|
||||||
|
@include('template.'.config('settings.template').'.content.includes.footer')
|
||||||
|
@include('template.'.config('settings.template').'.content.includes.scripts')
|
||||||
|
@yield('scripts')
|
||||||
|
@yield('end_scripts')
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1 @@
|
||||||
|
Impressum
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue