fork from jobs

master
Benjamin Völkl 2021-08-26 12:02:33 +02:00
commit 9b971b5263
92 changed files with 113546 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.idea

48
README.md Normal file
View File

@ -0,0 +1,48 @@
# Jobs Oberpfalz - _Areya CMS - Theme_



This is a theme for a job board using the Areya CMS.
Working Live Version: https://www.jobs-oberpfalz.de


## Features

- List Job Listings.
- List Employers.
- Employer Dashboard for Job publication.
- Candidates can send their application through a form.
- Google Jobs Rich Snippets.


## Tech

This Theme is build using the following tech:


- Twitter Bootstrap


## Installation

Theme requires Lumino Version > 0.0.2 to run.

In the Lumino project folder:

```sh
cd resources/views/templates
git clone https://code.areya.de/Areya/jobsoberpfalz-theme
```

Then in the Lumino Admin activate the theme.



## License

MIT

**Free Software, Hell Yeah!**


5
config.json Normal file
View File

@ -0,0 +1,5 @@
{
"name": "Alpakas Konradenhof",
"description": "Theme für Alpakas Konradenhof www.alpakas-konradenhof.de",
"image" : "https://ik.imagekit.io/areya/tr:ar-5-3,w-800/Alpaka__L4j-toFr4I.jpg?updatedAt=1629667657037"
}

284
content/author.blade.php Normal file
View File

@ -0,0 +1,284 @@
@extends('template.'.config('settings.template').'.content.master')

@section('content')



<div class="row">



@if(empty($author->cover_image))

<div id="header_static" style="background-color: #9699AA; background-image: url('https://www.jobs-oberpfalz.de/images/manual/default-arbeitgeber-cover.jpg'); background-position: center; background-size: cover;" >

@else
<div id="header_static" style="background-color: #9699AA; background-image: url('{{ asset('uploads/cover/' . $author->cover_image) }}'); background-position: center; background-size: cover;" >

@endif

<div class="d-none d-md-block">
<br>
<br>
</div>

<div class="d-none d-lg-block">
<br>
<br>
<br>
<br>
<br>
</div>




<div id="author_logo">
<img src="{{ $author->gravatar() }}?s=120&d=identicon&r=PG" width="120" class="rounded img-fluid border" title="{{ $author->name }}" alt="Logo {{ $author->name }}">

<h1>{{ $author->name }}</h1>
</div>

<div class="d-none d-md-block">
<br>
</div>

<div class="d-none d-lg-block">
<br>
</div>


</div> <!-- header_static -->
</div>

<div class="row">

<div class="col-sm-12">
<br>
<br>
<h2>Über {{ $author->name }}</h2>


<p class="intro">
{{ $author->description }}
</p>



<div class="row">
<div class="col-md-7 col-sm-12">
@if (isset($author->social_networks['email']))
<a href="mailto:{{ $author->social_networks['email'] }}"><i class="fal fa-envelope"></i></a>
|
@endif

@if (isset($author->social_networks['site']))
<a href="{{ $author->social_networks['site'] }}" target="_blank" style="color: #f49c35"><i class="fal fa-globe"></i> {{ $author->social_networks['site'] }}</a>
@endif
<br>
<br>
</div>

<div class="col-md-5 col-sm-12 text-center">
<?php
$social = [
'telegram',
'behance',
'snapchat',
'stack-overflow',
'vimeo',
'github',
'reddit',
'instagram',
'linkedin',
'pinterest',
'twitter',
'facebook',
'youtube'
];
?>

@foreach ($social as $value)
@if (isset($author->social_networks[$value]))
<a href="{{ $author->social_networks[$value] }}"><i class="fab fa-{{ $value }}"></i></a>
@endif
@endforeach

<br>
<br>
</div>

</div>
</div>



@isset($author->additional_fields['img1'])
<div class="col-12">
<h5 class="mb-3 mt-2">Impressionen aus unserer Arbeitswelt</h5>

</div>

<div class="col-6 col-lg-3">
<img src="{{$author->additional_fields['img1']}}" class="rounded img-fluid mb-3">
</div>
@isset($author->additional_fields['img2'])
<div class="col-6 col-lg-3">
<img src="{{$author->additional_fields['img2']}}" class="rounded img-fluid mb-3">
</div>
@endisset

@isset($author->additional_fields['img3'])
<div class="col-6 col-lg-3">
<img src="{{$author->additional_fields['img3']}}" class="rounded img-fluid mb-3">
</div>
@endisset

@isset($author->additional_fields['img4'])
<div class="col-6 col-lg-3">
<img src="{{$author->additional_fields['img4']}}" class="rounded img-fluid mb-3">
</div>
@endisset


@endisset

</div>










@if ($nachrichten->count() == 0)
<div class="col-12">
<div class="text-center">
<br>
<br>
<br>
<br>
<i>Derzeit keine offenen Arbeitsstellen auf jobs-oberpfalz.de</i>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
</div>


@else
<div class="row">
<div id="latest_jobs" class="col-12">
<br>
<br>
<br>
<h2>Aktuelle <strong>Jobangebote</strong></h2>

@foreach($nachrichten as $nach)



<div class="col-12 pb-1">

<div class="card mb-3" style="background-color: #f8f8f8;">
<div class="card-body">
<div class="row">
<div class="col-3 col-lg-1">
<img src="{{ $nach->user->gravatar() }}" title="{{ $nach->user->name }}" height="70px" class="border rounded">
</div>

<div class="col-9 col-lg-2">

<br>
<span class="text-muted">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-building" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M14.763.075A.5.5 0 0 1 15 .5v15a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5V14h-1v1.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V10a.5.5 0 0 1 .342-.474L6 7.64V4.5a.5.5 0 0 1 .276-.447l8-4a.5.5 0 0 1 .487.022zM6 8.694L1 10.36V15h5V8.694zM7 15h2v-1.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5V15h2V1.309l-7 3.5V15z"/>
<path d="M2 11h1v1H2v-1zm2 0h1v1H4v-1zm-2 2h1v1H2v-1zm2 0h1v1H4v-1zm4-4h1v1H8V9zm2 0h1v1h-1V9zm-2 2h1v1H8v-1zm2 0h1v1h-1v-1zm2-2h1v1h-1V9zm0 2h1v1h-1v-1zM8 7h1v1H8V7zm2 0h1v1h-1V7zm2 0h1v1h-1V7zM8 5h1v1H8V5zm2 0h1v1h-1V5zm2 0h1v1h-1V5zm0-2h1v1h-1V3z"/>
</svg>
{{ $nach->user->name }}
</span>
</div>
<div class="col-12 col-lg-6">
<h5 class="card-title" style="margin-top: 20px;">
<a href="{{ route_content($nach) }}"
onclick="gtag('event', 'See Job', {'event_category' : 'Employer: {{ $author->name }}', 'event_label' : '{{$nach->title}}'});"

>
{{$nach->title}}
</a>
</h5>

</div>

<div class="col-5 col-lg-1">
<br>
<h6 class="card-subtitle mb-2 text-muted"> {{ $nach->created_at->diffForHumans() }}</h6>

</div>
<div class="col-7 col-lg-2 text-end ">
<br>
<a class="btn btn-ci" href="{{ route_content($nach) }}"
onclick="gtag('event', 'See Job', {'event_category' : 'Employer: {{ $author->name }}', 'event_label' : '{{$nach->title}}'});"

>
Job ansehen

<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-chevron-right" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"/>
</svg>
</a>

</div>
</div>




</div>
</div>
</div>


@endforeach


<br>
<br>


</div>
</div>
@endif



@isset($author->additional_fields['youtube'])

<div class="row">
<div class="col-md-8 offset-md-2">
<h4 class="mb-4">Imagevideo {{ $author->name }}</h4>
<div class="ratio ratio-16x9 mb-5">
<iframe src="https://www.youtube.com/embed/{{$author->additional_fields['youtube']}}" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
</div>
</div>



@endisset




@stop

310
content/category.blade.php Normal file
View File

@ -0,0 +1,310 @@
@extends('template.'.config('settings.template').'.content.master')
@section('content')


<div class="row">
<div id="header_static_city" style="background:url('{{ asset('uploads/categories/' . $categoryModel->image) }}'); background-size: cover; min-height:550px;">
@if (\Route::currentRouteName() == 'welcome' or \Route::currentRouteName() == 'category.get' or \Route::currentRouteName() == 'author.get')
<a href="{{ url('/') }}" title="zur Startseite">
<img id="logo_new" alt="Das neue Jobportal für die Oberpfalz"
src="{{ asset('template/images/new_jobs_portal_logo.png') }}" >
</a>
@else
<a href="{{ url('/') }}" title="zur Startseite">
<img id="logo_new" alt="Das neue Jobportal für die Oberpfalz"
src="{{ asset('template/images/logo-sm.png') }}" >
</a>
@endif

<div class="clearfix">

<div class="pull-right hidden-xs" id="header_static_links">

<img class="arrow pull-right" src="{{ asset('template/images/pfeil_grau.png') }}" alt="">

</div>
</div>

<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>

<div id="city_headline">
<h1>Die besten <strong>Arbeitsstellen</strong> in <strong>{{ $categoryModel->name }}</strong> auf jobs-oberpfalz.de</h1>
<h2>Jetzt Traumjob finden und direkt online bewerben.</h2>
</div>

</div> <!-- header_static -->
</div>





<div class="row" id="employers-home">
<div class="col-xs-12">
<h1>Jobs in <strong>{{ $categoryModel->name }}</strong></h1>
<br>
@if (isset($categoryModel))
{{ $categoryModel->description }}
@endif
<br>
<br>
<hr>

</div>

<div class="col-sm-12">
<h2 style="text-align: left">Top <strong>Arbeitgeber</strong> mit offenen <strong>Arbeitsstellen in {{ $categoryModel->name }}</strong></h2>
<br><br>
</div>

<div class="row">

<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/personalleasing-puran-gmbh">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/2.png"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/personalleasing-puran-gmbh">PersonalLeasing Puran GmbH</a>
</div>


@if (\Request::is('schwandorf'))
<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/horsch-maschinen-gmbh">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/5.png"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/horsch-maschinen-gmbh">HORSCH Maschinen GmbH</a>
</div>

<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/dr-loew">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/6.png"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/dr-loew">Dr. Löw</a>
</div>
@endif

@if (\Request::is('regensburg'))
<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/horsch-maschinen-gmbh">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/5.png"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/horsch-maschinen-gmbh">HORSCH Maschinen GmbH</a>
</div>
@endif

@if (\Request::is('vohenstrauss'))
<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/areya-webservices">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/1.png"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/areya-webservices">Areya Webservices GmbH</a>
</div>

<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/envea-gmbh">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/51.jpg"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/envea-gmbh">ENVEA GmbH</a>
</div>

<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/wohnen-am-kreuzberg">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/3.png"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/wohnen-am-kreuzberg">Wohnen am Kreuzberg</a>
</div>

<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/psz-electronic-gmbh">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/98.jpg"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/psz-electronic-gmbh">PSZ electronic GmbH</a>
</div>
@endif

@if (\Request::is('eschenbach'))
<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/kerafol-keramische-folien-gmbh-co-kg">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/70.jpg"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/kerafol-keramische-folien-gmbh-co-kg">KERAFOL Keramische Folien</a>
</div>
@endif

@if (\Request::is('weiden'))
<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/richard-rank">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/65.png"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/richard-rank">Richrd Rank</a>
</div>

<div class="col-xs-4 col-lg-2 logos" style="padding-bottom: 60px; text-align: center">
<a href="https://www.jobs-oberpfalz.de/arbeitgeber/ows-service-fur-schienenfahrzeuge-gmbh">
<img src="https://www.jobs-oberpfalz.de/uploads/profile/67.jpg"
class="img-responsive center-block">
</a>

<a href="https://www.jobs-oberpfalz.de/arbeitgeber/ows-service-fur-schienenfahrzeuge-gmbh">OWS Service für Schienenfahrzeuge</a>
</div>


@endif







</div>
</div>


<div class="row">
<div id="latest_jobs" class="col-lg-12">


<h2>Aktuelle <strong>Jobangebote in {{ $categoryModel->name }}</strong></h2>

<div class="table-responsive">
<table class="table table-striped" id="new_jobs_table">
<thead>
<tr class="headline">
<th colspan="2">Arbeitgeber</th>
<th>Jobbeschreibung</th>
<th>Ort</th>
<th style="min-width:100px;" class="hidden-xs hidden-sm">Datum</th>
</tr>
</thead>
<tbody>

@foreach($nachrichten as $nach)
<tr>

<td class="company_image">
<a href="{{ route('author.get', [$nach->user->slug]) }}">
<img src="{{ $nach->user->gravatar() }}" class="rounded-circle" title="{{ $nach->user->name }}" style="min-width: 70">
</a>
</td>
<td>

<a href="{{ route('author.get', [$nach->user->slug]) }}">
{{ $nach->user->name }}
</a>
</td>

<td>
<a href="{{ route_content($nach) }}">
{{$nach->title}}
</a>
</td>
<td>{{ $nach->category->name}}</td>
<td class="hidden-xs hidden-sm">{{date('d.m.Y', strtotime($nach->created_at))}}</td>
<td>
<a class="btn btn-primary" href="{{ route_content($nach) }}">Job ansehen <i class="fal fa-chevron-right"></i></a>
</td>
</tr>

@endforeach

</tbody>
</table>
</div>

</div>
</div>

<div class="row">
<div class="col-xs-12">
<h2>Jobsuche auf der Landkarte</h2>

</div>
<div id="map-canvas" style="height:500px;width:100%;"></div>
</div>
@stop

@section('scripts')
<script>
function initMap() {
$.ajax({
url: '{{ route('location.category', $categoryModel->slug) }}',
type: "GET",
dataType: "json",
success: function (data) {
var dados = data.data;

if (dados.length != 0) {
const map = new google.maps.Map(document.getElementById("map-canvas"), {
zoom: 10,
//center: { lat: -25.363, lng: 131.044 },
});

var markers = data.lg;
var bounds = new google.maps.LatLngBounds();
for (var i = 0; i < markers.length; i++) {
bounds.extend(markers[i]);
}

google.maps.event.addListener(map, 'zoom_changed', function() {
zoomChangeBoundsListener =
google.maps.event.addListener(map, 'bounds_changed', function(event) {
if (this.getZoom() > 15 && this.initialZoom == true) {
// Change max/min zoom here
this.setZoom(15);
this.initialZoom = false;
}
google.maps.event.removeListener(zoomChangeBoundsListener);
});
});
map.initialZoom = true;
map.fitBounds(bounds);

$.each(dados, function(propName, propVal) {
var marker = new google.maps.Marker({
position: { lat: parseFloat(propVal.lat), lng: parseFloat(propVal.lng) },
map,
link: propVal.url,
});
new google.maps.event.addListener(marker, "click", function () {

window.open(this.link,"_blank");
});
});
}
}
});
}
</script>

<script src="https://maps.googleapis.com/maps/api/js?key={{ env('MAPS_API_KEY', 'AIzaSyAQj1N9Mj-OzOiUjt5QUDRkcDonXz4O85A') }}&callback=initMap&libraries=&v=weekly" defer></script>

@stop

View File

@ -0,0 +1,192 @@
@extends('template.'.config('settings.template').'.content.master')
@section('content')

<div class="row">

<div class="col-12 col-md-10 offset-md-1">
<br>
<br>
<h1>
<svg style="width: 40px; fill: black; " xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!-- Font Awesome Pro 5.15.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --><path d="M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm128 421.6c-35.9 26.5-80.1 42.4-128 42.4s-92.1-15.9-128-42.4V416c0-35.3 28.7-64 64-64 11.1 0 27.5 11.4 64 11.4 36.6 0 52.8-11.4 64-11.4 35.3 0 64 28.7 64 64v13.6zm30.6-27.5c-6.8-46.4-46.3-82.1-94.6-82.1-20.5 0-30.4 11.4-64 11.4S204.6 320 184 320c-48.3 0-87.8 35.7-94.6 82.1C53.9 363.6 32 312.4 32 256c0-119.1 96.9-216 216-216s216 96.9 216 216c0 56.4-21.9 107.6-57.4 146.1zM248 120c-48.6 0-88 39.4-88 88s39.4 88 88 88 88-39.4 88-88-39.4-88-88-88zm0 144c-30.9 0-56-25.1-56-56s25.1-56 56-56 56 25.1 56 56-25.1 56-56 56z"/></svg>

Benutzerkonto Einstellungen</h1>
<br>
<br>
<br>

</div>

<div class="col-3 offset-1 position-relative d-none d-md-flex">
<ul class="nav flex-column">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">
<svg style="width: 14px; margin-right: 10px;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!-- Font Awesome Pro 5.15.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --><path d="M224 480c-17.66 0-32-14.38-32-32.03h-32c0 35.31 28.72 64.03 64 64.03s64-28.72 64-64.03h-32c0 17.65-14.34 32.03-32 32.03zm209.38-145.19c-27.96-26.62-49.34-54.48-49.34-148.91 0-79.59-63.39-144.5-144.04-152.35V16c0-8.84-7.16-16-16-16s-16 7.16-16 16v17.56C127.35 41.41 63.96 106.31 63.96 185.9c0 94.42-21.39 122.29-49.35 148.91-13.97 13.3-18.38 33.41-11.25 51.23C10.64 404.24 28.16 416 48 416h352c19.84 0 37.36-11.77 44.64-29.97 7.13-17.82 2.71-37.92-11.26-51.22zM400 384H48c-14.23 0-21.34-16.47-11.32-26.01 34.86-33.19 59.28-70.34 59.28-172.08C95.96 118.53 153.23 64 224 64c70.76 0 128.04 54.52 128.04 121.9 0 101.35 24.21 138.7 59.28 172.08C421.38 367.57 414.17 384 400 384z"/></svg>
Benachrichtigungen
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#sicherheit">
<svg style="width: 14px; margin-right: 10px; 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="M336 32c79.529 0 144 64.471 144 144s-64.471 144-144 144c-18.968 0-37.076-3.675-53.661-10.339L240 352h-48v64h-64v64H32v-80l170.339-170.339C195.675 213.076 192 194.968 192 176c0-79.529 64.471-144 144-144m0-32c-97.184 0-176 78.769-176 176 0 15.307 1.945 30.352 5.798 44.947L7.029 379.716A24.003 24.003 0 0 0 0 396.686V488c0 13.255 10.745 24 24 24h112c13.255 0 24-10.745 24-24v-40h40c13.255 0 24-10.745 24-24v-40h19.314c6.365 0 12.47-2.529 16.971-7.029l30.769-30.769C305.648 350.055 320.693 352 336 352c97.184 0 176-78.769 176-176C512 78.816 433.231 0 336 0zm48 108c11.028 0 20 8.972 20 20s-8.972 20-20 20-20-8.972-20-20 8.972-20 20-20m0-28c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z"/></svg>
Login & Sicherheit</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#delete">
<svg style="width: 14px; margin-right: 10px;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!-- Font Awesome Pro 5.15.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --><path d="M440 64H336l-33.6-44.8A48 48 0 0 0 264 0h-80a48 48 0 0 0-38.4 19.2L112 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h18.9l33.2 372.3a48 48 0 0 0 47.8 43.7h232.2a48 48 0 0 0 47.8-43.7L421.1 96H440a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM171.2 38.4A16.1 16.1 0 0 1 184 32h80a16.1 16.1 0 0 1 12.8 6.4L296 64H152zm184.8 427a15.91 15.91 0 0 1-15.9 14.6H107.9A15.91 15.91 0 0 1 92 465.4L59 96h330z"/></svg>
Account löschen
</a>
</li>

</ul>
</div>
<div class="col-12 col-md-7 ">

@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div><br />
@endif

<div class="card" style="background-color: #fdf7f37d">
<div class="card-header">
<h5>
<svg style="width: 14px; margin-right: 10px;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!-- Font Awesome Pro 5.15.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --><path d="M224 480c-17.66 0-32-14.38-32-32.03h-32c0 35.31 28.72 64.03 64 64.03s64-28.72 64-64.03h-32c0 17.65-14.34 32.03-32 32.03zm209.38-145.19c-27.96-26.62-49.34-54.48-49.34-148.91 0-79.59-63.39-144.5-144.04-152.35V16c0-8.84-7.16-16-16-16s-16 7.16-16 16v17.56C127.35 41.41 63.96 106.31 63.96 185.9c0 94.42-21.39 122.29-49.35 148.91-13.97 13.3-18.38 33.41-11.25 51.23C10.64 404.24 28.16 416 48 416h352c19.84 0 37.36-11.77 44.64-29.97 7.13-17.82 2.71-37.92-11.26-51.22zM400 384H48c-14.23 0-21.34-16.47-11.32-26.01 34.86-33.19 59.28-70.34 59.28-172.08C95.96 118.53 153.23 64 224 64c70.76 0 128.04 54.52 128.04 121.9 0 101.35 24.21 138.7 59.28 172.08C421.38 367.57 414.17 384 400 384z"/></svg>

Benachrichtigungen
</h5>
</div>
<div class="card-body">
<div class="row">
<div class="col-12 ">
<table class="table table-borderless">

<tbody>
<tr>

<td>Bewerbungen</td>
<td class="float-end">
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" id="flexSwitchCheckDefault">
</div>
</td>
</tr>
<tr>

<td>Neuigkeiten & Ankündigungen</td>
<td class="float-end">
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" id="flexSwitchCheckDefault">
</div>
</td>
</tr>

<tr>

<td>Sicherheitsmeldungen</td>
<td class="float-end">
<div class="form-check form-switch" title="Diese Art von Benachrichtigung kann nicht abbestellt werden.">
<input class="form-check-input" type="checkbox" id="flexSwitchCheckDefault" checked disabled>
</div>
</td>
</tr>

</tbody>
</table>



</div>

</div>
</div>

</div>

<br>
<br>
<br>

<div class="card" style="background-color: #fdf7f37d">
<div class="card-header" id="sicherheit">
<h5>
<svg style="width: 14px; margin-right: 10px; 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="M336 32c79.529 0 144 64.471 144 144s-64.471 144-144 144c-18.968 0-37.076-3.675-53.661-10.339L240 352h-48v64h-64v64H32v-80l170.339-170.339C195.675 213.076 192 194.968 192 176c0-79.529 64.471-144 144-144m0-32c-97.184 0-176 78.769-176 176 0 15.307 1.945 30.352 5.798 44.947L7.029 379.716A24.003 24.003 0 0 0 0 396.686V488c0 13.255 10.745 24 24 24h112c13.255 0 24-10.745 24-24v-40h40c13.255 0 24-10.745 24-24v-40h19.314c6.365 0 12.47-2.529 16.971-7.029l30.769-30.769C305.648 350.055 320.693 352 336 352c97.184 0 176-78.769 176-176C512 78.816 433.231 0 336 0zm48 108c11.028 0 20 8.972 20 20s-8.972 20-20 20-20-8.972-20-20 8.972-20 20-20m0-28c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z"/></svg>

Login Informationen aktualisieren
</h5>
</div>
<div class="card-body">
<div class="row">
<div class="col-12 col-md-8 offset-md-2 mt-5">

<form action="{{route('dashboard.account')}}" method="post" enctype="multipart/form-data">
@csrf

<div class="form-group mb-5">
<label for="exampleFormControlInputEmail">Neue E-mail angeben</label>
<input type="email" class="form-control" id="exampleFormControlInputEmail" value="{{ $user->email }}" placeholder="E-mail" name='email' required="required">
</div>

<div class="form-group">
<label for="exampleFormControlInputPassword">Neues Passwort setzen</label>
<input type="password" class="form-control" id="exampleFormControlInputPassword" placeholder="Password" name='password'>
</div>



<div class="row mt-5 mb-3">
<div class="col text-end">
<button type="submit" class="btn btn-ci float-left" >
<svg style="height: 16px;" fill="white" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M492 8h-10c-6.627 0-12 5.373-12 12v110.627C426.929 57.261 347.224 8 256 8 123.228 8 14.824 112.338 8.31 243.493 7.971 250.311 13.475 256 20.301 256h10.016c6.353 0 11.646-4.949 11.977-11.293C48.157 132.216 141.097 42 256 42c82.862 0 154.737 47.077 190.289 116H332c-6.627 0-12 5.373-12 12v10c0 6.627 5.373 12 12 12h160c6.627 0 12-5.373 12-12V20c0-6.627-5.373-12-12-12zm-.301 248h-10.015c-6.352 0-11.647 4.949-11.977 11.293C463.841 380.158 370.546 470 256 470c-82.608 0-154.672-46.952-190.299-116H180c6.627 0 12-5.373 12-12v-10c0-6.627-5.373-12-12-12H20c-6.627 0-12 5.373-12 12v160c0 6.627 5.373 12 12 12h10c6.627 0 12-5.373 12-12V381.373C85.071 454.739 164.777 504 256 504c132.773 0 241.176-104.338 247.69-235.493.339-6.818-5.165-12.507-11.991-12.507z"/></svg>
Aktualisieren
</button>
</div>
</div>


</form>
</div>

</div>
</div>

</div>
<br>
<br>
<br>

<div class="card border-danger" style="background-color: #fdf7f37d">
<div class="card-header" id="delete">
<h5>
<svg style="width: 14px; margin-right: 10px;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!-- Font Awesome Pro 5.15.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --><path d="M440 64H336l-33.6-44.8A48 48 0 0 0 264 0h-80a48 48 0 0 0-38.4 19.2L112 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h18.9l33.2 372.3a48 48 0 0 0 47.8 43.7h232.2a48 48 0 0 0 47.8-43.7L421.1 96H440a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM171.2 38.4A16.1 16.1 0 0 1 184 32h80a16.1 16.1 0 0 1 12.8 6.4L296 64H152zm184.8 427a15.91 15.91 0 0 1-15.9 14.6H107.9A15.91 15.91 0 0 1 92 465.4L59 96h330z"/></svg>
Benutzerkonto deaktivieren oder löschen
</h5>
</div>
<div class="card-body">
<div class="row">
<div class="col-12 col-md-10 offset-md-1 mt-5">

Hier können Sie Ihren Account
<a href="{{ route('account.deleteAccount') }}" class="link-danger"> vorübergehend deaktivieren</a>. <i class="fal fa-snooze"></i>

<div class="alert alert-danger mt-5">
Benutzerkonto und Daten endgültig löschen: <a href="" class="link-danger"> <i class="fal fa-trash"></i> Account löschen</a>.

</div>
</div>

</div>
</div>

</div>
<br>
<br>
<br>
<br>


</div>
</div>
@stop

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,83 @@
<!doctype html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">

<!-- CSRF Token -->
<meta name="csrf-token" content="{{ csrf_token() }}">

<title>{{ config('app.name', 'Laravel') }}</title>

<!-- Scripts -->
<script src="{{ asset('template/js/app-dashboard.js') }}" defer></script>

<!-- Fonts -->
<link rel="dns-prefetch" href="//fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet">

<link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.10.0/css/all.css" integrity="sha384-AYmEC3Yw5cVb3ZcuHtOA93w35dYTsvhLPVnYs9eStHfGJvOvKxVfELGroGkvsg+p" crossorigin="anonymous"/>

<!-- Styles -->
<link href="{{ asset('template/css/app-dashboard.css') }}" rel="stylesheet">

</head>
<body>
<div id="app">
<nav class="navbar navbar-expand-md navbar-light bg-white shadow-sm">
<div class="container">
<a class="navbar-brand" href="{{ url('/dashboard') }}">
{{ config('app.name', 'Laravel') }}
</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="{{ __('Toggle navigation') }}">
<span class="navbar-toggler-icon"></span>
</button>

<div class="collapse navbar-collapse" id="navbarSupportedContent">
<!-- Left Side Of Navbar -->
<ul class="navbar-nav mr-auto">

</ul>

<!-- Right Side Of Navbar -->
<ul class="navbar-nav ml-auto">
<!-- Authentication Links -->
@guest('dashboard')
<li class="nav-item">
<a class="nav-link" href="{{ route('dashboard.login') }}">{{ __('Login') }}</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ route('dashboard.register') }}">{{ __('Register') }}</a>
</li>
@else
<li class="nav-item dropdown">
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
{{ Auth::guard('dashboard')->user()->name }} <span class="caret"></span>
</a>

<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="{{ route('dashboard.profile') }}">
Profile
</a>

<a class="dropdown-item" href="{{ route('dashboard.account') }}">
Account
</a>

<a class="dropdown-item" href="{{ route('dashboard.logout') }}">
{{ __('Logout') }}
</a>
</div>
</li>
@endguest
</ul>
</div>
</div>
</nav>

<main class="py-4">
@yield('content')
</main>
</div>
</body>
</html>

View File

@ -0,0 +1,94 @@
@extends('template.'.config('settings.template').'.content.master')

@section('content')
<div class="row justify-content-center">
<div class="col-12 col-md-8 ">
<br>
<br>
<br>
<div class="card">

<h2 class="card-header">Arbeitgeber {{ __('Login') }}</h2>
<br>
<br>
<br>

<div class="card-body" style="background-color:#fdf7f37d;">
<form method="POST" action="{{ route('dashboard.login') }}">
@csrf

<div class="form-group row mb-3">
<label for="email" class="col-md-4 col-form-label text-md-right">E-Mail Adresse</label>

<div class="col-md-6">
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus>

@error('email')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row mb-3">
<label for="password" class="col-md-4 col-form-label text-md-right">Passwort</label>

<div class="col-md-6">
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password">

@error('password')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row mb-3">
<div class="col-md-6 offset-md-4">
<div class="form-check">
<input class="form-check-input" type="checkbox" name="remember" id="remember" {{ old('remember') ? 'checked' : '' }}>

<label class="form-check-label" for="remember">
Login merken
</label>
</div>
</div>
</div>

<div class="form-group row mb-0">
<div class="col-md-8 offset-md-4" >
<button type="submit" class="btn btn-ci">
<i class="fal fa-sign-in"></i> {{ __('Login') }}
</button>


</div>
</div>
@if (Route::has('password.request'))
<a c href="{{ route('dashboard.password.request') }}">
Passwort vergessen?
</a>
@endif
</form>
</div>
</div>
</div>
</div>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
@endsection

View File

@ -0,0 +1,49 @@
@extends('template.'.config('settings.template').'.content.master')

@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<div class="card">
<div class="card-header">{{ __('Confirm Password') }}</div>

<div class="card-body">
{{ __('Please confirm your password before continuing.') }}

<form method="POST" action="{{ route('dashboard.password.confirm') }}">
@csrf

<div class="form-group row">
<label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>

<div class="col-md-6">
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password">

@error('password')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row mb-0">
<div class="col-md-8 offset-md-4">
<button type="submit" class="btn btn-primary">
{{ __('Confirm Password') }}
</button>

@if (Route::has('password.request'))
<a class="btn btn-link" href="{{ route('password.request') }}">
{{ __('Forgot Your Password?') }}
</a>
@endif
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection

View File

@ -0,0 +1,72 @@
@extends('template.'.config('settings.template').'.content.master')

@section('content')
<div class="container">
<div class="row justify-content-center">

<div class="col-12 col-md-8">
<br>
<br>
<h1>Passwort vergessen?</h1>

</div>
<div class="col-md-6">
<br>
<br>
<br>
<div class="card">
<div class="card-header">Passwort zurücksetzen</div>

<div class="card-body">
@if (session('status'))
<div class="alert alert-success" role="alert">
{{ session('status') }}
</div>
@endif

<form method="POST" action="{{ route('dashboard.password.email') }}">
@csrf

<div class="form-group row">
<label for="email" class="col-md-4 col-form-label text-md-right">E-Mail Adresse:</label>

<div class="col-md-7">
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" placeholder="info@firma.de" required autocomplete="email" autofocus>

@error('email')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row mb-0 mt-4 text-end">
<div class="col-md-7 offset-md-4">
<button type="submit" class="btn btn-ci">
Passwort zurücksetzen
</button>
</div>
</div>
</form>
</div>
</div>


<br>
<br>
<br>
<a class="link ci-color" href="{{url('/dashboard/login')}}">Zurück zum Login</a>
<br>
Noch keinen Account? <a class="link ci-color" href="{{url('/dashboard/register')}}">Zur Registrierung</a>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
</div>
</div>
@endsection

View File

@ -0,0 +1,65 @@
@extends('template.'.config('settings.template').'.content.master')

@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<div class="card">
<div class="card-header">{{ __('Reset Password') }}</div>

<div class="card-body">
<form method="POST" action="{{ route('dashboard.password.update') }}">
@csrf

<input type="hidden" name="token" value="{{ $token }}">

<div class="form-group row">
<label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>

<div class="col-md-6">
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ $email ?? old('email') }}" required autocomplete="email" autofocus>

@error('email')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row">
<label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>

<div class="col-md-6">
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">

@error('password')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row">
<label for="password-confirm" class="col-md-4 col-form-label text-md-right">{{ __('Confirm Password') }}</label>

<div class="col-md-6">
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">
</div>
</div>

<div class="form-group row mb-0">
<div class="col-md-6 offset-md-4">
<button type="submit" class="btn btn-primary">
{{ __('Reset Password') }}
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection

View File

@ -0,0 +1,122 @@
@extends('template.'.config('settings.template').'.content.master')

@section('content')
<div class="row justify-content-center">
<div class="col-12 col-md-8 ">
<br>
<br>
<br>
<div class="card">
<br>
<h2 class="card-header"> Ihre Firma kostenlos eintragen</h2>
<br>
<br>

<div class="card-body">
<form method="POST" action="{{ route('dashboard.register') }}" id="demo-form">
@csrf

<div class="form-group row mb-3">
<label for="name" class="col-md-4 col-form-label text-md-right">Firmenname</label>

<div class="col-md-6">
<input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="name" autofocus>

@error('name')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row mb-3">
<label for="email" class="col-md-4 col-form-label text-md-right">E-Mail Adresse</label>

<div class="col-md-6">
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">

<input type="hidden" name="role_id" value="3" />
<input type="hidden" name="description" value="" />

@error('email')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group row mb-3">
<label for="password" class="col-md-4 col-form-label text-md-right">Passwort</label>

<div class="col-md-6">
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">

@error('password')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>

<div class="form-group form-check mb-3">
<input type="checkbox" class="form-check-input" name="terms" value="1" required="required" id="exampleCheck1">
<label class="form-check-label" for="exampleCheck1">Ich habe die <a href="{{url('/agb')}}" target="_blank" style="color: #f49c35">AGB</a>, sowie die <a href="{{url('/datenschutz')}}" style="color: #f49c35" target="_blank"> Datenschutzerklärung</a> gelesen und akzeptiert.</label>
</div>

<div class="form-group row mb-0">
<div class="col-md-6 offset-md-4">
<button type="submit" class="btn btn-ci h-captcha" data-sitekey="5c186ce1-22f8-4304-ab18-1d305557323c" data-callback='onSubmit'>


Firmenprofil anlegen
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
@endsection



@if(App::environment('production'))


<script src="https://hcaptcha.com/1/api.js" async defer></script>
<script>
function onSubmit(token) {
document.getElementById("demo-form").submit();
}
</script>

@endif

View File

@ -0,0 +1,70 @@
@extends('template.'.config('settings.template').'.content.master')
@section('content')
<div class="row justify-content-center">
<div class="col-12 col-md-8 ">
<br>
<br>
<br>
<div class="card" style="text-align: center; background-color: #f8f8f8">

<h2 class="card-header">Bitte bestätigen Sie Ihre E-Mail</h2>

<div class="card-body">
@if (session('resent'))
<div class="alert alert-success" role="alert">
{{ __('A fresh verification link has been sent to your email address.') }}
</div>
@endif

<br
<br
<br>
Wir haben soeben eine Nachricht an Ihre E-Mail <span style="color: #f49c35">{{ auth('dashboard')->user()->email }}</span> versandt.
<br>
<br>

<br>
<br>
<br>
<svg style="fill: #f49c35; width:145px;" 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="M464 64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM48 96h416c8.8 0 16 7.2 16 16v41.4c-21.9 18.5-53.2 44-150.6 121.3-16.9 13.4-50.2 45.7-73.4 45.3-23.2.4-56.6-31.9-73.4-45.3C85.2 197.4 53.9 171.9 32 153.4V112c0-8.8 7.2-16 16-16zm416 320H48c-8.8 0-16-7.2-16-16V195c22.8 18.7 58.8 47.6 130.7 104.7 20.5 16.4 56.7 52.5 93.3 52.3 36.4.3 72.3-35.5 93.3-52.3 71.9-57.1 107.9-86 130.7-104.7v205c0 8.8-7.2 16-16 16z"/></svg>
<br>
<br>
<br>
Bitte klicken Sie zur Bestätigung der Adresse auf den Link

<br>
<br>
<br>

<br>
<br>
<br>
<br>
<br>
<br>

<hr>




<br>
<h4>E-Mail nicht erhalten?</h4>
<form class="d-inline" method="POST" action="{{ route('verification.resend') }}">
@csrf
<a type="submit">E-Mail nochmals senden</a>
</form>
</div>
<br>



</div>
<br>
<br>
<br>
<br>
<br>
</div>
</div>
@endsection

View File

@ -0,0 +1,179 @@
<div>
<style>
.modal-dialog {
position: relative;
display: table;
overflow: auto;
width: auto;
min-width: 300px;
}
.modal-body { /* Restrict Modal width to 90% */
overflow-x: auto !important;
max-width: 90vw !important;
}
</style>

<style type="text/css">
.jcrop-holder #preview-pane {
display: block;
position: absolute;
z-index: 2000;
top: 10px;
right: -280px;
padding: 6px;
border: 1px rgba(0,0,0,.4) solid;
background-color: white;

-webkit-border-radius: 6px;
-moz-border-radius: 6px;
border-radius: 6px;

-webkit-box-shadow: 1px 1px 5px 2px rgba(0, 0, 0, 0.2);
-moz-box-shadow: 1px 1px 5px 2px rgba(0, 0, 0, 0.2);
box-shadow: 1px 1px 5px 2px rgba(0, 0, 0, 0.2);
}

/* The Javascript code will set the aspect ratio of the crop
area based on the size of the thumbnail preview,
specified here */
#preview-pane .preview-container {
width: auto;
height: 200px !important;
overflow: hidden;
opacity: .4;
}
</style>

<div class="modal fade" id="modaljcrop" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Crop Image</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="preview-container">
<img id="cropImage" class="crop" />
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Save</button>
</div>
</div>
</div>
</div>

<input type="hidden" id="imageX" name="imageX" />
<input type="hidden" id="imageY" name="imageY" />
<input type="hidden" id="imageW" name="imageW" />
<input type="hidden" id="imageH" name="imageH" />

<button type="button" class="btn btn-primary float-left button-edit-crop" style="margin-top:18px;display:none;position:absolute" data-toggle="modal" data-target="#modaljcrop">
<i class="fal fa-pencil" aria-hidden="true"></i>
Edit Crop Image
</button>

@section('scripts_comp')
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-jcrop/2.0.4/css/Jcrop.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-jcrop/2.0.4/js/Jcrop.min.js"></script>

<script>
function updateCoords(c)
{
if ($('#preview-pane').length) {
$preview = $('#preview-pane');
$pcnt = $('#preview-pane .preview-container');
$pimg = $('#preview-pane .preview-container img');

xsize = $pcnt.width();
ysize = $pcnt.height();

var rx = xsize / c.w;
var ry = ysize / c.h;

var realW = $('#cropImage').width();
var realH = $('#cropImage').height();

if (realW == 0 || realH == 0) {
var imageAjust = new Image();

imageAjust.src = $('#cropImage').attr('src');

var realW = imageAjust.width;
var realH = imageAjust.height;
}

$pimg.css({
width: Math.round(rx * realW) + 'px',
height: Math.round(ry * realH) + 'px',
marginLeft: '-' + Math.round(rx * c.x) + 'px',
marginTop: '-' + Math.round(ry * c.y) + 'px'
});
}

$('#imageX').val(c.x);
$('#imageY').val(c.y);
$('#imageW').val(c.w);
$('#imageH').val(c.h);
};

document.getElementById('{{ $fileID }}').addEventListener('change', readURL, true);

function readURL(){
var file = document.getElementById("{{ $fileID }}").files[0];

var reader = new FileReader();

reader.onload = function(e){
var image = new Image();

image.src = e.target.result;

$('.jcrop-preview').removeClass('h-100');
$('.jcrop-preview').removeClass('w-100');

$('#jcrop-preview').attr('src', e.target.result);

image.onload = function() {
if ($('#cropImage').data('Jcrop')) {
$('#cropImage').data('Jcrop').destroy();
}

$('#modaljcrop').modal('show');

$('#cropImage').click();

$('#modaljcrop').on('hidden.bs.modal', function () {
$('.button-edit-crop').css('display', 'block');
});

$('#cropImage').attr('src', e.target.result);
var x = this.width/2 - this.width/2;
var y = this.height/2 - this.height/2;
var x1 = x + this.width;
var y1 = y + this.width;

$('.crop').Jcrop({
onSelect: updateCoords,
onChange: updateCoords,
bgOpacity: .5,
setSelect: [0, 0, x1, y1],
aspectRatio: 2
});
};
}

if (file) {
reader.readAsDataURL(file);
} else {
//
}
}
</script>
@endsection
</div>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,337 @@
@extends('template.'.config('settings.template').'.content.master')

@section('content')




@if (session('profile_verify'))
<div class="col-12 col-md-6 offset-md-3">
<br>
<br>

<div class="alert alert-success text-center alert-dismissible fade show" role="alert">
<svg style="width: 14px; fill: #0f5132;" 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="M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 464c-118.664 0-216-96.055-216-216 0-118.663 96.055-216 216-216 118.664 0 216 96.055 216 216 0 118.663-96.055 216-216 216zm141.63-274.961L217.15 376.071c-4.705 4.667-12.303 4.637-16.97-.068l-85.878-86.572c-4.667-4.705-4.637-12.303.068-16.97l8.52-8.451c4.705-4.667 12.303-4.637 16.97.068l68.976 69.533 163.441-162.13c4.705-4.667 12.303-4.637 16.97.068l8.451 8.52c4.668 4.705 4.637 12.303-.068 16.97z"/></svg>

Arbeitgeberprofil erfolgreich angelegt!
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div>

</div>
@endif


<div class="row">



<div class="col-6 mt-5 mb-5 text-right">

<h1><i class="fal fa-file-alt"></i> Meine Stellenanzeigen</h1>

</div>

<div class="col-6 mt-5" style="text-align: right">

<a href="{{ route('dashboard.viewAddNachrichten', [$typeModel->slug]) }}" class="btn btn-ci btn-sm">
<svg style="width: 13px; fill: white; margin-bottom: 2px;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M376 232H216V72c0-4.42-3.58-8-8-8h-32c-4.42 0-8 3.58-8 8v160H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h160v160c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V280h160c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8z"/></svg>

Neue Stellenanzeige anlegen
</a>
</div>

</div>
<div class="row text-center">
<style>
.btn-outline-ci
{
background-color: #fff;
border-color: #ec8b19;
color: #f49c35

}

.btn-outline-ci:hover
{
background-color: #f49c35;
color: #fff;
}
</style>

<div class="mx-auto">

@if ($types->count() >= 2)
<div class="btn-group btn-group-toggle mx-auto" data-toggle="buttons">
@foreach ($types as $type)
<label class="btn btn-lg {{ $type->id == $typeModel->id ? 'btn-primary' : 'btn-outline-primary' }}" onclick='window.location.href = "{{ url('/dashboard/content/') }}/{{ $type->slug }}";'>
<input type="radio" name="options" id="option1" {{ $type->id == $typeModel->id ? 'checked' : '' }}> <i class="fal fa-{{ $type->icon}}"></i> {{ $type->name }}
</label>
@endforeach
</div>
@endif
</div>
</div>


<div class="row">





@if ($nachrichten->count() == 0)
<div class="col-xs-12">
<div class="text-center">
<br>
<br>
<br>
<br>
<i>Sie haben noch keine Stellenanzeige angelegt.</i>
<br>
<br>
<a href="{{ route('dashboard.viewAddNachrichten', [$typeModel->slug]) }}" class="btn btn-ci">
<svg style="width: 14px; fill: white; margin-bottom: 2px;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M376 232H216V72c0-4.42-3.58-8-8-8h-32c-4.42 0-8 3.58-8 8v160H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h160v160c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V280h160c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8z"/></svg>

Erste Stellenanzeige anlegen</a>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
</div>


@else

<div class="col-xs-12" style="text-align: right">

</div>