First Commit
This commit is contained in:
commit
0c9a118281
633 changed files with 76612 additions and 0 deletions
53
resources/views/admin/changeemail.blade.php
Executable file
53
resources/views/admin/changeemail.blade.php
Executable file
|
|
@ -0,0 +1,53 @@
|
|||
@extends('layouts.layout-2-2')
|
||||
|
||||
@section('content')
|
||||
<div class="card mb-4">
|
||||
<h6 class="card-header">
|
||||
{{$user->email}} | {{__('Change E-Mail')}}
|
||||
</h6>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-sm-2"></div>
|
||||
<div class="col-sm-10">
|
||||
<p>{{__('Change the e-mail address of the contact here. We will send the contact a new activation link to the new e-mail address to verify it.')}}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{!! Form::open(['url' => route('admin_lead_change_mail', [$user->id]) ]) !!}
|
||||
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('New E-Mail Address')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control {{ $errors->has('email') ? 'is-invalid' : '' }}" type="email" name="email" placeholder="{{__('New E-Mail Address')}}*" required>
|
||||
@if ($errors->has('email'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('email') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('Confirm new E-Mail')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control" {{ $errors->has('email_confirmation') ? 'is-invalid' : '' }} type="email" name="email_confirmation" placeholder="{{__('Confirm new E-Mail Address')}}*" required>
|
||||
@if ($errors->has('email_confirmation'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('email_confirmation') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-10 ml-sm-auto">
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
<a href="{{ route('admin_lead_edit', [$user->id]) }}" class="btn btn-default">{{ __('back') }}</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
60
resources/views/admin/index.blade.php
Normal file
60
resources/views/admin/index.blade.php
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
@extends('layouts.layout-2-2')
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<div class="col-sm-6 col-xl-3">
|
||||
<div class="card mb-4">
|
||||
<div class="card-body">
|
||||
<div class="d-flex align-items-center">
|
||||
<div class="lnr lnr-users display-4 text-primary"></div>
|
||||
<div class="ml-3">
|
||||
<div class="text-muted small">{{ __('gesamte Kontakte') }}</div>
|
||||
<div class="text-large">{{ $export['leads'] }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="col-sm-6 col-xl-3">
|
||||
<div class="card mb-4">
|
||||
<div class="card-body">
|
||||
<div class="d-flex align-items-center">
|
||||
<div class="lnr lnr-users display-4 text-success"></div>
|
||||
<div class="ml-3">
|
||||
<div class="text-muted small">{{ __('E-Mail verifiziert') }}</div>
|
||||
<div class="text-large">{{ $export['confirmed'] }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-xl-3">
|
||||
<div class="card mb-4">
|
||||
<div class="card-body">
|
||||
<div class="d-flex align-items-center">
|
||||
<div class="lnr lnr-users display-4 text-primary"></div>
|
||||
<div class="ml-3">
|
||||
<div class="text-muted small">{{ __('Daten freigeben') }}</div>
|
||||
<div class="text-large">{{ $export['active'] }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="col-sm-6 col-xl-3">
|
||||
<div class="card mb-4">
|
||||
<div class="card-body">
|
||||
<div class="d-flex align-items-center">
|
||||
<div class="lnr lnr-users display-4 text-success"></div>
|
||||
<div class="ml-3">
|
||||
<div class="text-muted small">{{__('Einwilligung für weitere Informationen')}}</div>
|
||||
<div class="text-large">{{ $export['agreement'] }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
40
resources/views/admin/user_edit.blade.php
Normal file
40
resources/views/admin/user_edit.blade.php
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
@if ($errors->any())
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="alert alert-danger">
|
||||
<ul>
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<h4 class="font-weight-bold py-3 mb-4">
|
||||
{{ __('Create/Edit Contact') }}
|
||||
</h4>
|
||||
|
||||
{!! Form::open(['url' => route('admin_user_store'), 'class' => 'form-horizontal', 'id'=>'lead-form-validation']) !!}
|
||||
<input type="hidden" name="user_id" id="user_id" value="@if($user->id>0){{$user->id}}@else new @endif">
|
||||
|
||||
{{-- @include('user.form') --}}
|
||||
|
||||
|
||||
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" class="btn btn-submit">{{ __('save') }}</button>
|
||||
|
||||
<a href="{{ route('admin_users') }}" class="btn btn-default">{{ __('abort') }}</a>
|
||||
</div>
|
||||
|
||||
|
||||
{!! Form::close() !!}
|
||||
|
||||
|
||||
@endsection
|
||||
123
resources/views/admin/users.blade.php
Normal file
123
resources/views/admin/users.blade.php
Normal file
|
|
@ -0,0 +1,123 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
|
||||
<h4 class="font-weight-bold py-3 mb-4">
|
||||
{{ __('User') }}
|
||||
</h4>
|
||||
|
||||
|
||||
<div class="card">
|
||||
<div class="card-datatable table-responsive">
|
||||
<table class="datatables-users table table-striped table-bordered">
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{{__('edit')}}</th>
|
||||
<th>{{__('Name')}}</th>
|
||||
<th>{{__('E-Mail')}}</th>
|
||||
<th>{{__('Zugang')}}</th>
|
||||
<th>{{__('verified')}}</th>
|
||||
<th>{{__('active')}}</th>
|
||||
<th>{{__('delete')}}</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Modal template -->
|
||||
<div class="modal fade" id="modals-default">
|
||||
<div class="modal-dialog">
|
||||
<form class="modal-content" action="{{ route('admin_user_store') }}" method="post">
|
||||
@csrf
|
||||
<input type="hidden" class="form-control" name="id">
|
||||
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">{{__('User')}}<span class="font-weight-light">{{__('create/edit')}}</span></h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="email" class="form-label">{{__('E-Mail')}}</label>
|
||||
<input type="text" class="form-control" name="email" placeholder="{{__('E-Mail')}}" readonly>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="admin" class="form-label">{{__('Role')}}</label>
|
||||
<select class="selectpicker" data-style="btn-default" name="admin">
|
||||
{!! HTMLHelper::getRolesOptions() !!}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="form-group">
|
||||
<label class="custom-control custom-checkbox m-0">
|
||||
<input type="checkbox" class="custom-control-input" name="confirmed" checked>
|
||||
<span class="custom-control-label">{{__('verified')}}</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-group">
|
||||
<label class="custom-control custom-checkbox m-0">
|
||||
<input type="checkbox" class="custom-control-input" name="active" checked>
|
||||
<span class="custom-control-label">{{__('active')}}</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$('#modals-default').on('show.bs.modal', function (event) {
|
||||
var button = $(event.relatedTarget);
|
||||
$(this).find(".modal-content input[name='id']").val(button.data('id'));
|
||||
$(this).find(".modal-body input[name='email']").val(button.data('email'));
|
||||
$(this).find(".modal-body select[name='admin']").val(button.data('admin'));
|
||||
$('.selectpicker').selectpicker('refresh');
|
||||
$(this).find(".modal-body input[name='active']").prop( "checked", button.data('active'));
|
||||
$(this).find(".modal-body input[name='confirmed']").prop( "checked", button.data('confirmed'));
|
||||
});
|
||||
|
||||
$('.datatables-users').dataTable({
|
||||
"processing": true,
|
||||
"serverSide": true,
|
||||
"ajax": '{!! route('data_table_users') !!}',
|
||||
"columns": [
|
||||
{ data: 'action_edit', orderable: false, searchable: false},
|
||||
{ data: 'name', name: 'name' },
|
||||
{ data: 'email', name: 'email' },
|
||||
{ data: 'admin', name: 'admin' },
|
||||
{ data: 'confirmed', name: 'confirmed' },
|
||||
{ data: 'active', name: 'active' },
|
||||
{ data: 'action_delete', orderable: false, searchable: false},
|
||||
],
|
||||
"bLengthChange": false,
|
||||
"iDisplayLength": 50,
|
||||
"language": {
|
||||
"url": "/js/German.json"
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
@endsection
|
||||
76
resources/views/auth/login.blade.php
Normal file
76
resources/views/auth/login.blade.php
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
@extends('layouts.auth')
|
||||
|
||||
@section('content')
|
||||
|
||||
<!-- Content -->
|
||||
|
||||
<div class="authentication-wrapper authentication-2 ui-bg-cover ui-bg-overlay-container px-4" style="background-image: url({{asset('images/sphinx.jpg')}});">
|
||||
<div class="ui-bg-overlay bg-dark opacity-25"></div>
|
||||
|
||||
<div class="authentication-inner py-5">
|
||||
|
||||
<div class="card">
|
||||
<div class="p-4 p-sm-5" style="padding-bottom: 1.5rem !important;">
|
||||
<!-- Logo -->
|
||||
<div class="d-flex justify-content-center align-items-center pb-2 mb-2">
|
||||
<div class="">
|
||||
<div class="w-100 position-relative">
|
||||
<a href="https://www.sterntours.de"><img src="{{ asset('/images/stern-tours-logo.png') }}" alt="STERN TOURS" class=""></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Logo -->
|
||||
|
||||
<h5 class="text-center text-muted font-weight-normal mb-4">{{ __('Login to your account') }}</h5>
|
||||
|
||||
<!-- Form -->
|
||||
<form method="POST" class="my-5" action="{{ route('login') }}" aria-label="{{ __('Login') }}">
|
||||
@csrf
|
||||
|
||||
|
||||
<div class="form-group">
|
||||
<label class="form-label">{{ __('E-Mail Address') }}</label>
|
||||
<input id="email" type="email" class="form-control{{ $errors->has('email') ? ' is-invalid' : '' }}" name="email" value="{{ old('email') }}" required autofocus>
|
||||
|
||||
@if ($errors->has('email'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('email') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label d-flex justify-content-between align-items-end">
|
||||
<div>{{ __('Password') }}</div>
|
||||
<a class="" href="{{ route('password.request') }}">
|
||||
{{ __('Forgot your Password?') }}
|
||||
</a>
|
||||
</label>
|
||||
<input id="password" type="password" class="form-control{{ $errors->has('password') ? ' is-invalid' : '' }}" name="password" required>
|
||||
@if ($errors->has('password'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
<div class="d-flex justify-content-between align-items-center m-0">
|
||||
<label class="custom-control custom-checkbox m-0">
|
||||
<input type="checkbox" class="custom-control-input" name="remember" {{ old('remember') ? 'checked' : '' }}>
|
||||
|
||||
<span class="custom-control-label">{{ __('Remember Me') }}</span>
|
||||
</label>
|
||||
<button type="submit" class="btn btn-primary">{{ __('Login') }}</button>
|
||||
</div>
|
||||
</form>
|
||||
<!-- / Form -->
|
||||
|
||||
<div class="mt-5">
|
||||
<a class="update_modal_data_load" href="{{ route('data_protected') }}" data-url="{{ route('loading_modal') }}" data-data="data_protection" data-target="#modal-loading">{{ __('data protection') }}</a>
|
||||
<a class="update_modal_data_load float-right" href="{{ route('imprint') }}" data-url="{{ route('loading_modal') }}" data-data="imprint" data-target="#modal-loading">{{ __('imprint') }}</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
64
resources/views/auth/passwords/email.blade.php
Normal file
64
resources/views/auth/passwords/email.blade.php
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
@extends('layouts.auth')
|
||||
|
||||
@section('content')
|
||||
|
||||
<!-- Content -->
|
||||
|
||||
<div class="authentication-wrapper authentication-2 ui-bg-cover ui-bg-overlay-container px-4" style="background-image: url({{asset('images/sphinx.jpg')}});">
|
||||
<div class="ui-bg-overlay bg-dark opacity-25"></div>
|
||||
|
||||
<div class="authentication-inner py-5">
|
||||
|
||||
<div class="card">
|
||||
<div class="p-4 p-sm-5" style="padding-bottom: 1.5rem !important;">
|
||||
<!-- Logo -->
|
||||
<div class="d-flex justify-content-center align-items-center pb-2 mb-2">
|
||||
<div class="">
|
||||
<div class="w-100 position-relative">
|
||||
<a href="https://www.sterntours.de"><img src="{{ asset('/images/stern-tours-logo.png') }}" alt="STERN TOURS" class=""></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Logo -->
|
||||
|
||||
<h5 class="text-center text-muted font-weight-normal mb-4">{{ __('Reset Password') }}</h5>
|
||||
|
||||
<!-- Form -->
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
<!-- Form -->
|
||||
<form method="POST" class="my-5" action="{{ route('password.email') }}" aria-label="{{ __('Reset Password') }}">
|
||||
@csrf
|
||||
|
||||
|
||||
<div class="form-group">
|
||||
<label for="email" class="form-label">{{ __('E-Mail Address') }}</label>
|
||||
<input id="email" type="email" class="form-control{{ $errors->has('email') ? ' is-invalid' : '' }}" name="email" value="{{ old('email') }}" required>
|
||||
|
||||
@if ($errors->has('email'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('email') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
<button type="submit" class="btn btn-primary btn-block mt-4">{{ __('Reset Password') }}</button>
|
||||
</form>
|
||||
<!-- / Form -->
|
||||
|
||||
<div class="text-center text-muted">
|
||||
<a href="{{ route('login') }}">{{ __('Login') }}</a>
|
||||
</div>
|
||||
|
||||
<div class="mt-5">
|
||||
<a class="update_modal_data_load" href="{{ route('data_protected') }}" data-url="{{ route('loading_modal') }}" data-data="data_protection" data-target="#modal-loading">{{ __('data protection') }}</a>
|
||||
<a class="update_modal_data_load float-right" href="{{ route('imprint') }}" data-url="{{ route('loading_modal') }}" data-data="imprint" data-target="#modal-loading">{{ __('imprint') }}</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
85
resources/views/auth/passwords/reset.blade.php
Normal file
85
resources/views/auth/passwords/reset.blade.php
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
@extends('layouts.auth')
|
||||
|
||||
@section('content')
|
||||
|
||||
<!-- Content -->
|
||||
|
||||
<div class="authentication-wrapper authentication-2 ui-bg-cover ui-bg-overlay-container px-4" style="background-image: url({{asset('images/sphinx.jpg')}});">
|
||||
<div class="ui-bg-overlay bg-dark opacity-25"></div>
|
||||
|
||||
<div class="authentication-inner py-5">
|
||||
|
||||
<div class="card">
|
||||
<div class="p-4 p-sm-5" style="padding-bottom: 1.5rem !important;">
|
||||
<!-- Logo -->
|
||||
<div class="d-flex justify-content-center align-items-center pb-2 mb-4">
|
||||
<div class="">
|
||||
<div class="w-100 position-relative">
|
||||
<a href="https://www.sterntours.de"><img src="{{ asset('/images/stern-tours-logo.png') }}" alt="STERN TOURS" class=""></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Logo -->
|
||||
|
||||
<h5 class="text-center text-muted font-weight-normal mb-4">{{ __('Reset Password') }}</h5>
|
||||
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
<!-- Form -->
|
||||
<form method="POST" class="my-5" action="{{ route('password.request') }}" aria-label="{{ __('Reset Password') }}">
|
||||
@csrf
|
||||
<input type="hidden" name="token" value="{{ $token }}">
|
||||
|
||||
<div class="form-group">
|
||||
<label for="email" class="form-label">{{ __('E-Mail Address') }}</label>
|
||||
<input id="email" type="email" class="form-control{{ $errors->has('email') ? ' is-invalid' : '' }}" name="email" value="{{ old('email') }}" required>
|
||||
|
||||
@if ($errors->has('email'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('email') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="password" class="form-label">{{ __('Password') }}</label>
|
||||
<input id="password" type="password" class="form-control{{ $errors->has('password') ? ' is-invalid' : '' }}" name="password" required>
|
||||
|
||||
@if ($errors->has('password'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="password-confirm" class="form-label">{{ __('Confirm Password') }}</label>
|
||||
<input id="password-confirm" type="password" class="form-control{{ $errors->has('password-confirm') ? ' is-invalid' : '' }}" name="password_confirmation" required>
|
||||
|
||||
@if ($errors->has('password-confirm'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password-confirm') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
<button type="submit" class="btn btn-primary btn-block mt-4">{{ __('Reset Password') }}
|
||||
</button>
|
||||
</form>
|
||||
<!-- / Form -->
|
||||
|
||||
<div class="text-center text-muted">
|
||||
<a href="{{ route('login') }}">{{ __('Login') }}</a>
|
||||
</div>
|
||||
|
||||
<div class="mt-5">
|
||||
<a class="update_modal_data_load" href="{{ route('data_protected') }}" data-url="{{ route('loading_modal') }}" data-data="data_protection" data-target="#modal-loading">{{ __('data protection') }}</a>
|
||||
<a class="update_modal_data_load float-right" href="{{ route('imprint') }}" data-url="{{ route('loading_modal') }}" data-data="imprint" data-target="#modal-loading">{{ __('imprint') }}</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
88
resources/views/auth/register.blade.php
Normal file
88
resources/views/auth/register.blade.php
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
@extends('layouts.auth')
|
||||
|
||||
@section('content')
|
||||
|
||||
<!-- Content -->
|
||||
<div class="authentication-wrapper authentication-2 ui-bg-cover ui-bg-overlay-container px-4" style="background-image: url({{asset('images/sphinx.jpg')}});">
|
||||
<div class="ui-bg-overlay bg-dark opacity-25"></div>
|
||||
|
||||
<div class="authentication-inner py-5">
|
||||
|
||||
<div class="card">
|
||||
<div class="p-4 p-sm-5" style="adding-bottom: 0.25rem !important;">
|
||||
<!-- Logo -->
|
||||
<div class="d-flex justify-content-center align-items-center pb-2 mb-4">
|
||||
<div class="">
|
||||
<div class="w-100 position-relative">
|
||||
<a href="https://www.sterntours.de"><img src="{{ asset('/images/stern-tours-logo.png') }}" alt="STERN TOURS" class=""></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Logo -->
|
||||
|
||||
<h5 class="text-center text-muted font-weight-normal mb-4">{{ __('Register') }}</h5>
|
||||
|
||||
<form method="POST" class="my-5" action="{{ route('register') }}" aria-label="{{ __('Register') }}">
|
||||
@csrf
|
||||
|
||||
<div class="form-group">
|
||||
<label for="email" class="form-label">{{ __('E-Mail Address') }}</label>
|
||||
<input id="email" type="email" class="form-control{{ $errors->has('email') ? ' is-invalid' : '' }}" name="email" value="{{ old('email') }}" required>
|
||||
|
||||
@if ($errors->has('email'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('email') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="password" class="form-label">{{ __('Password') }}</label>
|
||||
<input id="password" type="password" class="form-control{{ $errors->has('password') ? ' is-invalid' : '' }}" name="password" required>
|
||||
|
||||
@if ($errors->has('password'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="password-confirm" class="form-label">{{ __('Confirm Password') }}</label>
|
||||
<input id="password-confirm" type="password" class="form-control{{ $errors->has('password-confirm') ? ' is-invalid' : '' }}" name="password_confirmation" required>
|
||||
|
||||
@if ($errors->has('password-confirm'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password-confirm') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-primary btn-block mt-4"> {{ __('Register') }}</button>
|
||||
|
||||
<div class="text-light small mt-4">
|
||||
By clicking "Sign Up", you agree to our
|
||||
<a href="javascript:void(0)">terms of service and privacy policy</a>. We’ll occasionally send you account related emails.
|
||||
</div>
|
||||
</form>
|
||||
<!-- / Form -->
|
||||
|
||||
<div class="text-center text-muted">
|
||||
{{ __('Already have an account?') }}
|
||||
<a href="{{ route('login') }}">{{ __('Login') }}</a>
|
||||
</div>
|
||||
|
||||
<div class="mt-2">
|
||||
<a class="update_modal_data_load" href="{{ route('data_protected') }}" data-url="{{ route('loading_modal') }}" data-data="data_protection" data-target="#modal-loading">{{ __('data protection') }}</a>
|
||||
<a class="update_modal_data_load float-right" href="{{ route('imprint') }}" data-url="{{ route('loading_modal') }}" data-data="imprint" data-target="#modal-loading">{{ __('imprint') }}</a>
|
||||
</div>
|
||||
|
||||
<!-- Form -->
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
227
resources/views/drafts/detail.blade.php
Executable file
227
resources/views/drafts/detail.blade.php
Executable file
|
|
@ -0,0 +1,227 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
<h4 class="font-weight-bold py-3 mb-1">
|
||||
Vorlage verwalten
|
||||
</h4>
|
||||
|
||||
|
||||
{!! Form::open(['url' => route('draft_detail', [$id]), 'class' => 'form-horizontal', 'id'=>'lead-form-validation']) !!}
|
||||
|
||||
<input type="hidden" name="id" id="id" value="{{$id}}">
|
||||
|
||||
<!-- draft -->
|
||||
<div class="card mb-2">
|
||||
<div class="card-body">
|
||||
<div class="form-group">
|
||||
<label class="custom-control custom-checkbox float-right">
|
||||
{!! Form::checkbox('active', 1, $draft->active, ['class'=>'custom-control-input']) !!}
|
||||
<span class="custom-control-label">{{__('sichtbar')}}</span>
|
||||
</label>
|
||||
|
||||
<label class="form-label" for="draft_name">{{ __('Bezeichnung') }}*</label>
|
||||
{{ Form::text('name', $draft->name, array('placeholder'=>__('Name'), 'class'=>'form-control', 'id'=>'draft_name', 'required'=>true)) }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@if(count($draft->draft_items))
|
||||
@php($i = 1)
|
||||
<div class="text-right mb-2">
|
||||
<button type="submit" name="action" value="addItem" class="btn btn-sm btn-primary"><i class="far fa-plus"></i> Neue Leistung hinzufügen</button>
|
||||
</div>
|
||||
@foreach($draft->draft_items as $draft_item)
|
||||
<!-- item -->
|
||||
<div class="card mb-2">
|
||||
|
||||
<div class="card-body row">
|
||||
|
||||
|
||||
<div class="form-group col-sm-4">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$draft_item->id}}][draft_type_id]" id="draft_item_{{$draft_item->id }}_draft_type_id" data-live-search="true" required>
|
||||
<option value="" disabled>Vorlagen-Typ*</option>
|
||||
{!! HTMLHelper::getDraftTypes($draft_item->draft_type_id) !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-3 col-6">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$draft_item->id}}][days_start]]" id="draft_item_{{$draft_item->id }}_days_start">
|
||||
<option value="">(Datum) Start + Tage</option>
|
||||
{!! HTMLHelper::getRangeOptions($draft_item->days_start, 30, ' Tag(e)') !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-3 col-6">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$draft_item->id}}][days_duration]" id="draft_item_{{$draft_item->id }}_days_duration">
|
||||
<option value="">(Datum) Dauer + Tage</option>
|
||||
{!! HTMLHelper::getRangeOptions($draft_item->days_duration, 30, ' Tag(e)') !!}
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group col-sm-2 text-right">
|
||||
<h5 class="float-right mt-1">#{{ $i++ }} </h5>
|
||||
<button type="submit" name="action" value="up_{{$draft_item->id}}" class="btn btn-xs btn-default"><i class="fa fa-arrow-up"></i> </button>
|
||||
<button type="submit" name="action" value="down_{{$draft_item->id}}" class="btn btn-xs btn-default mr-2"><i class="fa fa-arrow-down"></i> </button>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-group col-sm-12">
|
||||
{{ Form::textarea('draft_item['.$draft_item->id.'][service]', $draft_item->service, array('placeholder'=>__('Leistungen'), 'class'=>'form-control', 'id'=>'draft_item_'.$draft_item->id.'_service', 'rows'=>'1')) }}
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$draft_item->id}}][adult]" id="draft_item_{{$draft_item->id }}_adult">
|
||||
<option value="">Teilnehmer</option>
|
||||
{!! HTMLHelper::getRangeOptions($draft_item->adult, 10, ' T.') !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<span class="input-group-text">€</span>
|
||||
</div>
|
||||
{{ Form::text('draft_item['.$draft_item->id.'][price_adult]', $draft_item->price_adult, array('placeholder'=>__('Preis in €'), 'class'=>'form-control', 'id'=>'draft_item_'.$draft_item->id.'_price_adult',)) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$draft_item->id}}][children]" id="draft_item_{{$draft_item->id}}_children">
|
||||
<option value="">Kinder</option>
|
||||
{!! HTMLHelper::getRangeOptions($draft_item->children, 10, ' K.') !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<span class="input-group-text">€</span>
|
||||
</div>
|
||||
{{ Form::text('draft_item['.$draft_item->id.'][price_children]', $draft_item->price_children, array('placeholder'=>__('Preis in €'), 'class'=>'form-control', 'id'=>'draft_item_'.$draft_item->id.'_price_children')) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<label class="custom-control custom-checkbox mt-2">
|
||||
{!! Form::checkbox('draft_item['.$draft_item->id.'][in_pdf]', 1, $draft_item->in_pdf, ['class'=>'custom-control-input']) !!}
|
||||
<span class="custom-control-label">{{__('in PDF')}}</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-6">
|
||||
<div class="text-right mt-3">
|
||||
<a class="text-danger" href="{{ route('draft_item_delete', [$draft_item->id]) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="far fa-trash-alt"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
|
||||
@if(!empty($draft_items))
|
||||
|
||||
@foreach($draft_items as $key => $draft_item)
|
||||
<!-- item -->
|
||||
<div class="card mb-2">
|
||||
|
||||
<div class="card-body row">
|
||||
|
||||
<div class="form-group col-sm-6">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$key}}][draft_type_id]" id="draft_item_{{$key }}_draft_type_id" data-live-search="true" required>
|
||||
<option value="" disabled>Vorlagen-Typ*</option>
|
||||
{!! HTMLHelper::getDraftTypes($draft_item['draft_type_id']) !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-3 col-6">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$key}}][days_start]]" id="draft_item_{{$key }}_days_start">
|
||||
<option value="">(Datum) Start + Tage</option>
|
||||
{!! HTMLHelper::getRangeOptions($draft_item['days_start'], 30, ' Tag(e)') !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-3 col-6">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$key}}][days_duration]" id="draft_item_{{$key }}_days_duration">
|
||||
<option value="">(Datum) Dauer + Tage</option>
|
||||
{!! HTMLHelper::getRangeOptions($draft_item['days_duration'], 30, ' Tag(e)') !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-12">
|
||||
{{ Form::textarea('draft_item['.$key.'][service]', $draft_item['service'], array('placeholder'=>__('Leistungen'), 'class'=>'form-control', 'id'=>'draft_item_'.$key.'_service', 'rows'=>'1')) }}
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$key}}][adult]" id="draft_item_{{$key }}_adult">
|
||||
<option value="">Teilnehmer</option>
|
||||
{!! HTMLHelper::getRangeOptions($draft_item['adult'], 10, ' T.') !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<span class="input-group-text">€</span>
|
||||
</div>
|
||||
{{ Form::text('draft_item['.$key.'][price_adult]', $draft_item['price_adult'], array('placeholder'=>__('Preis in €'), 'class'=>'form-control', 'id'=>'draft_item_'.$key.'_price_adult',)) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<select class="selectpicker" data-style="btn-light" name="draft_item[{{$key}}][children]" id="draft_item_{{$key}}_children">
|
||||
<option value="">Kinder</option>
|
||||
{!! HTMLHelper::getRangeOptions($draft_item['children'], 10, ' K.') !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<span class="input-group-text">€</span>
|
||||
</div>
|
||||
{{ Form::text('draft_item['.$key.'][price_children]', $draft_item['price_children'], array('placeholder'=>__('Preis in €'), 'class'=>'form-control', 'id'=>'draft_item_'.$key.'_price_children')) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-2 col-3">
|
||||
<label class="custom-control custom-checkbox mt-2">
|
||||
{!! Form::checkbox('draft_item['.$key.'][in_pdf]', 1, $draft_item['in_pdf'], ['class'=>'custom-control-input']) !!}
|
||||
<span class="custom-control-label">{{__('in PDF')}}</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endforeach
|
||||
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" name="action" value="saveAllFromOld" class="btn btn-submit">{{ __('aus Vorlage speichern') }}</button>
|
||||
<a href="{{route('drafts')}}" class="btn btn-default">{{ __('back') }}</a>
|
||||
</div>
|
||||
@else
|
||||
<div class="text-right">
|
||||
<button type="submit" name="action" value="addItem" class="btn btn-sm btn-primary"><i class="far fa-plus"></i> Neue Leistung hinzufügen</button>
|
||||
</div>
|
||||
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" name="action" value="saveAll" class="btn btn-submit">{{ __('save changes') }}</button>
|
||||
<a href="{{route('drafts')}}" class="btn btn-default">{{ __('back') }}</a>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
{!! Form::close() !!}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@endsection
|
||||
187
resources/views/drafts/index.blade.php
Executable file
187
resources/views/drafts/index.blade.php
Executable file
|
|
@ -0,0 +1,187 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
<h4 class="font-weight-bold py-3 mb-1">
|
||||
Vorlagen
|
||||
</h4>
|
||||
<div class="nav-tabs-top mb-4">
|
||||
<ul class="nav nav-tabs">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link @if($step == false) active show @endif" data-toggle="tab" href="#navs-top-drafts">Übersicht</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link @if($step == 'type') active show @endif" data-toggle="tab" href="#navs-top-draft_types">Typen</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane fade @if($step == false) active show @endif" id="navs-top-drafts">
|
||||
<div class="card-body">
|
||||
|
||||
<div class="card-datatable table-responsive">
|
||||
<table class="datatables-drafts table table-striped table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="max-width: 60px;"> </th>
|
||||
<th>{{__('Name')}}</th>
|
||||
<th>{{__('sichtbar')}}</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($drafts as $value)
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{{ route('draft_detail', [$value->id]) }}" class="btn icon-btn btn-sm btn-primary">
|
||||
<span class="far fa-edit"></span>
|
||||
</a>
|
||||
</td>
|
||||
<td><a href="{{ route('draft_detail', [$value->id]) }}">{{ $value->name }}</a></td>
|
||||
|
||||
<td data-sort="{{ $value->active }}">
|
||||
@if($value->active)
|
||||
<span class="badge badge-pill badge-success"><i class="far fa-check"></i></span>
|
||||
@else
|
||||
<span class="badge badge-pill badge-danger"><i class="far fa-times"></i></span>
|
||||
@endif
|
||||
</td>
|
||||
<td><a class="text-danger" href="{{ route('draft_delete', [$value->id]) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="far fa-trash-alt"></i></a></td>
|
||||
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="mt-4">
|
||||
<a href="{{ route('draft_detail', ['new']) }}" class="btn btn-sm btn-primary">Neue Vorlage anlegen</a>
|
||||
<a href="{{ route('draft_load_old') }}" class="btn btn-sm btn-default float-right">aus alter Vorlage laden</a><br>
|
||||
<a href="{{ route('draft_load_new') }}" class="btn btn-sm btn-default float-right mt-2">aus Vorlage duplizieren</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$('.datatables-drafts').dataTable({
|
||||
"bLengthChange": false,
|
||||
"iDisplayLength": 50,
|
||||
|
||||
"language": {
|
||||
"url": "/js/German.json"
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tab-pane fade @if($step == 'type') active show @endif" id="navs-top-draft_types">
|
||||
<div class="card-body">
|
||||
|
||||
<div class="card-datatable table-responsive">
|
||||
<table class="datatables-types table table-striped table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="max-width: 60px;"> </th>
|
||||
<th>{{__('Name')}}</th>
|
||||
<th>{{__('sichtbar')}}</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($draft_types as $value)
|
||||
<tr>
|
||||
<td>
|
||||
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-type"
|
||||
data-id="{{ $value->id }}"
|
||||
data-name="{{ $value->name }}"
|
||||
data-active="{{ $value->active }}">
|
||||
<span class="far fa-edit"></span>
|
||||
</button>
|
||||
</td>
|
||||
<td>{{ $value->name }}</td>
|
||||
<td data-sort="{{ $value->active }}">
|
||||
@if($value->active)
|
||||
<span class="badge badge-pill badge-success"><i class="far fa-check"></i></span>
|
||||
@else
|
||||
<span class="badge badge-pill badge-danger"><i class="far fa-times"></i></span>
|
||||
@endif
|
||||
</td>
|
||||
<td><a class="text-danger" href="{{ route('draft_type_delete', [$value->id]) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="far fa-trash-alt"></i></a></td>
|
||||
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="mt-4 text-right">
|
||||
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-type"
|
||||
data-id="new"
|
||||
data-name=""
|
||||
data-active="1"
|
||||
|
||||
>Neuen Typ anlegen</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Modal template -->
|
||||
<div class="modal fade" id="modals-type">
|
||||
<div class="modal-dialog">
|
||||
<form class="modal-content" action="{{ route('draft_type_update') }}" method="post">
|
||||
@csrf
|
||||
<input type="hidden" class="form-control" name="id">
|
||||
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Vorlagen-Typ <span class="font-weight-light">anlegen/bearbeiten</span></h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="name" class="form-label">Name*</label>
|
||||
<input type="text" class="form-control" name="name" placeholder="{{__('Description')}}" required>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="custom-control custom-checkbox m-0">
|
||||
<input type="checkbox" class="custom-control-input" name="active" checked>
|
||||
<span class="custom-control-label">{{__('sichtbar')}}</span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$('#modals-type').on('show.bs.modal', function (event) {
|
||||
var button = $(event.relatedTarget);
|
||||
$(this).find(".modal-content input[name='id']").val(button.data('id'));
|
||||
$(this).find(".modal-body input[name='name']").val(button.data('name'));
|
||||
$('.selectpicker').selectpicker('refresh');
|
||||
$(this).find(".modal-body input[name='active']").prop( "checked", button.data('active'));
|
||||
});
|
||||
|
||||
$('.datatables-types').dataTable({
|
||||
"bLengthChange": false,
|
||||
"iDisplayLength": 50,
|
||||
|
||||
"language": {
|
||||
"url": "/js/German.json"
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
40
resources/views/drafts/load_new.blade.php
Executable file
40
resources/views/drafts/load_new.blade.php
Executable file
|
|
@ -0,0 +1,40 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
<h4 class="font-weight-bold py-3 mb-1">
|
||||
Vorlage duplizieren
|
||||
</h4>
|
||||
|
||||
|
||||
{!! Form::open(['url' => route('draft_load_new'), 'class' => 'form-horizontal', 'id'=>'lead-form-validation']) !!}
|
||||
|
||||
|
||||
<div class="card mb-2">
|
||||
<div class="card-body row">
|
||||
<div class="form-group col-sm-6">
|
||||
<select class="selectpicker" data-style="btn-light" name="load_new" id="load_new" data-live-search="true" required>
|
||||
@foreach($drafts as $d)
|
||||
<option value="{{$d->id}}">{{$d->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" name="action" value="loadOld" class="btn btn-submit">{{ __('laden') }}</button>
|
||||
<a href="{{route('drafts')}}" class="btn btn-default">{{ __('back') }}</a>
|
||||
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@endsection
|
||||
40
resources/views/drafts/load_old.blade.php
Executable file
40
resources/views/drafts/load_old.blade.php
Executable file
|
|
@ -0,0 +1,40 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
<h4 class="font-weight-bold py-3 mb-1">
|
||||
Vorlage laden
|
||||
</h4>
|
||||
|
||||
|
||||
{!! Form::open(['url' => route('draft_load_old'), 'class' => 'form-horizontal', 'id'=>'lead-form-validation']) !!}
|
||||
|
||||
|
||||
<div class="card mb-2">
|
||||
<div class="card-body row">
|
||||
<div class="form-group col-sm-6">
|
||||
<select class="selectpicker" data-style="btn-light" name="load_old" id="load_old" data-live-search="true" required>
|
||||
@foreach($templates as $t)
|
||||
<option value="{{$t->id}}">{{$t->title}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" name="action" value="loadOld" class="btn btn-submit">{{ __('laden') }}</button>
|
||||
<a href="{{route('drafts')}}" class="btn btn-default">{{ __('back') }}</a>
|
||||
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@endsection
|
||||
214
resources/views/emails/auth.blade.php
Normal file
214
resources/views/emails/auth.blade.php
Normal file
|
|
@ -0,0 +1,214 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>STERN TOURS</title>
|
||||
<!-- Designed by https://github.com/kaytcat -->
|
||||
<!-- Robot header image designed by Freepik.com -->
|
||||
|
||||
<style type="text/css">
|
||||
@import url(https://fonts.googleapis.com/css?family=Roboto);
|
||||
|
||||
/* Take care of image borders and formatting */
|
||||
|
||||
img {
|
||||
max-width: 600px;
|
||||
outline: none;
|
||||
text-decoration: none;
|
||||
-ms-interpolation-mode: bicubic;
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
border: 0;
|
||||
outline: none;
|
||||
color: #5f8155;
|
||||
}
|
||||
a:hover {
|
||||
color:#e5aa30;
|
||||
}
|
||||
|
||||
a img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
/* General styling */
|
||||
|
||||
td, h1, h2, h3 {
|
||||
font-family: "Roboto", Helvetica, Arial, sans-serif;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
td {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
body {
|
||||
-webkit-font-smoothing:antialiased;
|
||||
-webkit-text-size-adjust:none;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
color: #37302d;
|
||||
background: #ffffff;
|
||||
font-size: 15px;
|
||||
line-height: 26px
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse !important;
|
||||
}
|
||||
.headline {
|
||||
color: #5f8155;
|
||||
font-size: 16px;
|
||||
}
|
||||
.force-full-width {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<style type="text/css" media="screen">
|
||||
@media screen {
|
||||
/*Thanks Outlook 2013! http://goo.gl/XLxpyl*/
|
||||
td, h1, h2, h3 {
|
||||
font-family: 'Roboto', 'Helvetica Neue', 'Arial', 'sans-serif' !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<style type="text/css" media="only screen and (max-width: 480px)">
|
||||
/* Mobile styles */
|
||||
@media only screen and (max-width: 480px) {
|
||||
|
||||
table[class="w320"] {
|
||||
width: 320px !important;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
</style>
|
||||
<!--[if mso]>
|
||||
<style type="text/css">
|
||||
body, table, td {font-family: Helvetica, Arial, sans-serif !important;}
|
||||
</style>
|
||||
<![endif]-->
|
||||
|
||||
|
||||
|
||||
</head>
|
||||
<body class="body" style="padding:0; margin:0; display:block; background:#f8f8f8; -webkit-text-size-adjust:none" bgcolor="#f8f8f8">
|
||||
<table align="center" cellpadding="0" cellspacing="0" width="100%" height="100%" >
|
||||
<tr>
|
||||
<td align="center" valign="top" bgcolor="#f8f8f8" width="100%">
|
||||
<center>
|
||||
<table style="margin: 0 auto;" cellpadding="0" cellspacing="0" width="700" class="w320">
|
||||
<tr>
|
||||
<td align="center" valign="top">
|
||||
|
||||
<table style="margin: 0 auto;" cellpadding="0" cellspacing="0" width="100%" style="margin:0 auto;">
|
||||
<tr>
|
||||
<td style="font-size: 30px; text-align:center;">
|
||||
<br>
|
||||
<img src="https://www.sterntours.de/images/da2f996_wlogo_1.png" alt="STERN TOURS" style="border:none" width="260">
|
||||
<br>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 0 auto;" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
|
||||
<tr>
|
||||
<td class="headline">
|
||||
<br><br>
|
||||
<b>{{ $salutation }} </b>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<center>
|
||||
<table style="margin: 0 auto;" cellpadding="0" cellspacing="0" width="90%">
|
||||
<tr>
|
||||
<td style="color:#514d6a;">
|
||||
<br>
|
||||
{{ $copy1line }}
|
||||
<br>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</center>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<!--[if mso]>
|
||||
<v:roundrect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="http://" style="height:50px;v-text-anchor:middle;width:250px;" arcsize="50%" stroke="f" fillcolor="#5f8155">
|
||||
<w:anchorlock/>
|
||||
<center>
|
||||
<![endif]-->
|
||||
<a href="{{ $url }}"
|
||||
style="background-color:#5f8155;border-radius:40px;color:#ffffff;display:inline-block;font-family:Helvetica, Arial, sans-serif;font-size:15px;font-weight:bold;line-height:50px;text-align:center;text-decoration:none;width:250px;-webkit-text-size-adjust:none;">{{ $button }}</a>
|
||||
<!--[if mso]>
|
||||
</center>
|
||||
</v:roundrect>
|
||||
<![endif]-->
|
||||
<br>
|
||||
</td>
|
||||
<tr>
|
||||
<tr>
|
||||
<td style="color:#514d6a;font-size: 14px;">
|
||||
<center>
|
||||
<table style="margin: 0 auto;" cellpadding="0" cellspacing="0" width="90%">
|
||||
<tr>
|
||||
<td style="color:#514d6a;">
|
||||
<br>
|
||||
{{ $copy2line }}<br>
|
||||
<span style="color: #cabda9; font-weight: normal; font-size: 13px; text-decoration: underline; word-wrap: break-word;">{{ $url }}</span>
|
||||
|
||||
<br><br>
|
||||
<b>{{ $greetings }}</b> <br><b>Ihr Team von STERN TOURS</b>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</center>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 0 auto;" cellpadding="0" cellspacing="0" class="force-full-width" bgcolor="#f8f8f8">
|
||||
<tr>
|
||||
<td style="color:#7B7B7E; font-size:14px;">
|
||||
<br>
|
||||
STERN TOURS GmbH | Emser Straße 3 | 10719 Berlin<br>
|
||||
Tel: +49 (0) 30 700 94 100 | Fax: +49 (0) 30 700 94 1044 | stern@sterntours.de<br>
|
||||
<br>
|
||||
<a href="https://www.sterntours.de" style="color: #7B7B7E; text-decoration: underline;">www.sterntours.de</a>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="color:#bbbbbb; font-size:12px; line-height: 14px;">
|
||||
<br>
|
||||
Geschäftsführer: Thomas Stern | Registergericht: Amtsgericht Charlottenburg | Registernummer: HRB 67111<br>
|
||||
Steuernummer: 27/545/30703 | UST-Ident.-Nr.: DE192609253 | Finanzamt: Wilmersdorf<br>
|
||||
© 2018 All Rights Reserved
|
||||
<br>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</center>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
290
resources/views/home.blade.php
Executable file
290
resources/views/home.blade.php
Executable file
|
|
@ -0,0 +1,290 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
@if ($errors->any())
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="alert alert-danger">
|
||||
<ul>
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
<style>
|
||||
|
||||
</style>
|
||||
|
||||
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
|
||||
<h4>{{ __('Your Data') }}</h4>
|
||||
<p>{{__('Here you can adjust your data.')}}</p>
|
||||
<div id="accordion">
|
||||
<div class="card mb-2">
|
||||
<a class="card-header">
|
||||
<div class="collapsed text-dark" data-toggle="collapse" href="#accordion-2" aria-expanded="false">
|
||||
{{ __('Your Data') }} <i class="ion ion-ios-arrow-down"></i>
|
||||
</div>
|
||||
</a>
|
||||
<div id="accordion-2" class="collapse" data-parent="#accordion" style="">
|
||||
<div class="card-body" style="background-color: #f5f5f5;">
|
||||
{{--
|
||||
@if($user->account->company == 1)
|
||||
<h5 class="mt-0 mb-3">{{ __('Company data') }}</h5>
|
||||
<div class="table-responsive">
|
||||
|
||||
<table class="table user-view-table m-0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>{{ __('Company name') }}:</td>
|
||||
<td>{{ $user->account->company_name }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Street') }} / {{ __('House number') }}:</td>
|
||||
<td>{{ $user->account->company_street }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Postcode') }}:</td>
|
||||
<td>{{ $user->account->company_postal_code }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('City') }}:</td>
|
||||
<td>{{ $user->account->company_city }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Country') }}:</td>
|
||||
<td>@if($user->account->company_country_id) {{ $user->account->company_country->getLocated() }} @endif</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Phone') }}:</td>
|
||||
<td>@if($user->account->company_pre_phone_id) {{ $user->account->company_pre_phone->code }}@endif {{ $user->account->company_phone }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Homepage') }}:</td>
|
||||
<td>{{ $user->account->company_homepage }}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<hr class="border-primary mt-2">
|
||||
<h5 class="mt-4 mb-3">{{ __('Industry') }}</h5>
|
||||
<div class="table-responsive">
|
||||
|
||||
<table class="table user-view-table m-0">
|
||||
<tbody>
|
||||
@foreach($user->account->getUserIndustrySectorsParents() as $user_industry_sector_parents)
|
||||
<tr>
|
||||
<td>{{ $user_industry_sector_parents->industry_sector->getLang('name') }}:</td>
|
||||
<td>
|
||||
@foreach($user->account->getUserIndustrySectorsChilds($user_industry_sector_parents->industry_sector->id) as $user_industry_sector_childs)
|
||||
{{ $user_industry_sector_childs->industry_sector->getLang('name') }},
|
||||
@endforeach
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<hr class="border-primary mt-2">
|
||||
|
||||
@endif
|
||||
|
||||
<h5 class="mt-4 mb-3">{{ __('Your Data') }}</h5>
|
||||
<div class="table-responsive">
|
||||
|
||||
<table class="table user-view-table m-0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>{{ __('Function') }}:</td>
|
||||
<td>{{ $user->account->position_text }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Salutation') }}:</td>
|
||||
<td>{!! HTMLHelper::getSalutationLang($user->account->salutation) !!}</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>{{ __('Title') }}:</td>
|
||||
<td>{{ $user->account->title }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('First name') }}:</td>
|
||||
<td>{{ $user->account->first_name }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Last Name') }}:</td>
|
||||
<td>{{ $user->account->last_name }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Street') }} / {{ __('House number') }}:</td>
|
||||
<td>{{ $user->account->street }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Postcode') }}:</td>
|
||||
<td>{{ $user->account->postal_code }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('City') }}:</td>
|
||||
<td>{{ $user->account->city }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Country') }}:</td>
|
||||
<td>@if($user->account->country_id){{ $user->account->country->getLocated() }}@endif</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Phone') }}:</td>
|
||||
<td>@if($user->account->pre_phone_id) {{ $user->account->pre_phone->code }}@endif {{ $user->account->phone }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('Mobile Phone') }}:</td>
|
||||
<td>@if($user->account->pre_mobil_id) {{ $user->account->pre_mobil->code }}@endif {{ $user->account->mobil }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ __('E-Mail Address') }}:</td>
|
||||
<td>{{ $user->email }}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<hr class="border-primary mt-2">
|
||||
<h5 class="mt-4 mb-3">{{ __('Your interests') }}</h5>
|
||||
<div class="table-responsive">
|
||||
|
||||
<table class="table user-view-table m-0">
|
||||
<tbody>
|
||||
@foreach($user->account->user_interests as $user_interest)
|
||||
<tr>
|
||||
<td>{{ $user_interest->interest->getLang('name') }}:</td>
|
||||
<td>
|
||||
<span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<hr class="border-primary mt-2">
|
||||
<div class="table-responsive">
|
||||
|
||||
<table class="table user-view-table m-0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>{{ $user->account->contactpartner }}</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
--}}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@if($user->active == 0)
|
||||
<a href="{{ route('user_edit') }}" class="btn btn-secondary"
|
||||
onclick="$('#user-edit-info-btn').click();">{{ __('Adjust data') }}</a>
|
||||
@endif
|
||||
@if($user->active == 1)
|
||||
<a href="{{ route('user_edit') }}" class="btn btn-secondary"
|
||||
onclick="$('#user-edit-info-btn').click();">{{ __('Adjust data') }}</a>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
|
||||
<h4>{{__('Activities') }}</h4>
|
||||
|
||||
@if($user->active == 1)
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('Data released')}}</strong> {{__('at')}} {{ $user->getActiveDateFormat() }}</p>
|
||||
@endif
|
||||
@if($user->confirmed == 1)
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('E-Mail verified')}}</strong> {{__('at')}} {{ $user->getConfirmationDateFormat() }}</p>
|
||||
@endif
|
||||
@if($user->account_id)
|
||||
@if($user->account->data_protection)
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('Privacy policy approved')}}</strong> {{__('at')}} {{ $user->account->getDataProtectionFormat() }}
|
||||
</p>
|
||||
@endif
|
||||
@if($user->active == 1)
|
||||
@if($user->agreement)
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('Consent for further information')}}</strong> {{__('at')}} {{ $user->getAgreementFormat() }}
|
||||
</p>
|
||||
@else
|
||||
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
|
||||
<strong>{{__('Consent for further information')}}</strong> {{ __('nicht akzeptiert') }}</p>
|
||||
|
||||
@endif
|
||||
@endif
|
||||
@endif
|
||||
</div>
|
||||
|
||||
@if($user->active == 1)
|
||||
|
||||
|
||||
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
|
||||
<h4>{{ __('Einwilligung & Datenschutz') }}</h4>
|
||||
|
||||
{!! Form::open(['url' => route('user_data_accepted_form'), 'class' => 'form-horizontal' , 'id'=>'data-privacy-form-validations']) !!}
|
||||
|
||||
<div class="form-group">
|
||||
<label class="custom-control custom-checkbox m-0">
|
||||
<input type="checkbox" class="custom-control-input" name="sender_accepted_infos"
|
||||
id="sender_accepted_infos" @if($user->agreement) checked @endif>
|
||||
<span class="custom-control-label"> {{ __('Yes, I agree that will send me more information.') }}</span>
|
||||
</label>
|
||||
</div>
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" class="btn btn-secondary">{{__('save changes') }}</button>
|
||||
|
||||
</div>
|
||||
|
||||
{!! Form::close() !!}
|
||||
|
||||
</div>
|
||||
@endif
|
||||
|
||||
|
||||
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
|
||||
<h4>{{__('Login & Security') }}</h4>
|
||||
<p>{{__('Sign in with your e-mail:')}} {{ Auth::user()->email }}</p>
|
||||
@if(!$user->isPasswort())
|
||||
<p>{{__('Assign a password for your account.')}}</p>
|
||||
<a href="{{route('user_update_password_first')}}" class="btn btn-submit">{{__('Create Password')}}</a>
|
||||
@else
|
||||
<p>{{__('Change your password here to access your account.')}}</p>
|
||||
<a href="{{route('user_update_password')}}" class="btn btn-secondary">{{__('Change password')}}</a>
|
||||
@endif
|
||||
<a href="{{route('user_update_email')}}" class="btn btn-secondary">{{__('Change E-Mail')}}</a>
|
||||
</div>
|
||||
|
||||
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
|
||||
<h4>{{ __('Logout') }}</h4>
|
||||
<a href="{{route('logout')}}" class="btn btn-primary"><i class="ion ion-ios-log-out text-default"></i>
|
||||
{{ __('Logout') }}</a>
|
||||
</div>
|
||||
|
||||
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
|
||||
<h4>{{__('Delete') }}</h4>
|
||||
<p>{{__('If you no longer want to use our offer, you can delete your account here.')}}</p>
|
||||
<a href="{{route('user_delete_account')}}" class="btn btn-default">{{__('Delete Account')}}</a>
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
79
resources/views/layouts/app.blade.php
Normal file
79
resources/views/layouts/app.blade.php
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<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('js/app.js') }}" defer></script>
|
||||
|
||||
<!-- Fonts -->
|
||||
<link rel="dns-prefetch" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet" type="text/css">
|
||||
|
||||
<!-- Styles -->
|
||||
<link href="{{ asset('css/app.css') }}" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
<div id="app">
|
||||
<nav class="navbar navbar-expand-md navbar-light navbar-laravel">
|
||||
<div class="container">
|
||||
<a class="navbar-brand" href="{{ url('/') }}">
|
||||
{{ 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
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('login') }}">{{ __('Login') }}</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('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::user()->name }} <span class="caret"></span>
|
||||
</a>
|
||||
|
||||
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
|
||||
<a class="dropdown-item" href="{{ route('logout') }}"
|
||||
onclick="event.preventDefault();
|
||||
document.getElementById('logout-form').submit();">
|
||||
{{ __('Logout') }}
|
||||
</a>
|
||||
|
||||
<form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;">
|
||||
@csrf
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
@endguest
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main class="py-4">
|
||||
@yield('content')
|
||||
</main>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
126
resources/views/layouts/application.blade.php
Executable file
126
resources/views/layouts/application.blade.php
Executable file
|
|
@ -0,0 +1,126 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html lang="{{ app()->getLocale() }}" class="default-style">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="x-ua-compatible" content="IE=edge,chrome=1">
|
||||
<meta name="description" content="">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
|
||||
<title>{{ config('app.name') }}</title>
|
||||
|
||||
<!-- Main font -->
|
||||
<link href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,500,500i,700,700i,900" rel="stylesheet">
|
||||
|
||||
<!-- Icons. Uncomment required icon fonts -->
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/fontawesome.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/ionicons.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/linearicons.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/open-iconic.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/pe-icon-7-stroke.css') }}">
|
||||
|
||||
<!-- Core stylesheets -->
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/bootstrap.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/appwork.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/theme-corporate.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/colors.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/uikit.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('/vendor/css/mycolors.css') }}">
|
||||
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/libs/growl/growl.css') }}">
|
||||
|
||||
<link rel="stylesheet" href="{{ asset('/vendor/libs/dropzone/dropzone.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/libs/bootstrap-select/bootstrap-select.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/libs/select2/select2.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/libs/datatables/datatables.css') }}">
|
||||
|
||||
|
||||
|
||||
<!-- Layout helpers -->
|
||||
<script src="{{ mix('/vendor/js/layout-helpers.js') }}"></script>
|
||||
|
||||
<!-- Libs -->
|
||||
|
||||
<!-- `perfect-scrollbar` library required by SideNav plugin -->
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/libs/perfect-scrollbar/perfect-scrollbar.css') }}">
|
||||
|
||||
<style>
|
||||
.btn.btn-light {
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.table thead th {
|
||||
border-top: none;
|
||||
}
|
||||
.card-body {
|
||||
padding: 1rem 1.5rem;
|
||||
}
|
||||
</style>
|
||||
|
||||
@yield('styles')
|
||||
|
||||
<!-- Application stylesheets -->
|
||||
<link rel="stylesheet" href="{{ mix('/css/application.css') }}">
|
||||
<script src="{{ asset('/js/jquery.min.js') }}"></script>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="{{ asset('/css/cookieconsent.min.css') }}" />
|
||||
<script src="{{ asset('/js/cookieconsent.min.js') }}"></script>
|
||||
<script>
|
||||
window.addEventListener("load", function(){
|
||||
window.cookieconsent.initialise({
|
||||
"palette": {
|
||||
"popup": {
|
||||
"background": "#5f8155",
|
||||
"text": "#ffffff"
|
||||
},
|
||||
"button": {
|
||||
"background": "#ffc926",
|
||||
"text": "#ffffff"
|
||||
}
|
||||
},
|
||||
"content": {
|
||||
"message": "{{__('This website uses cookies in order to guarantee the best possible service. With your visit to this site you agree to our use of cookies.') }}",
|
||||
"dismiss": "{{__('OK')}}",
|
||||
"link": "{{__('data protection')}}",
|
||||
"href": "{{ route('data_protected') }}",
|
||||
"target": "_blank",
|
||||
}
|
||||
})});
|
||||
</script>
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
@yield('layout-content')
|
||||
|
||||
<!-- Core scripts -->
|
||||
<script src="{{ mix('/vendor/libs/popper/popper.js') }}"></script>
|
||||
<script src="{{ mix('/vendor/js/bootstrap.js') }}"></script>
|
||||
<script src="{{ mix('/vendor/js/sidenav.js') }}"></script>
|
||||
<script src="{{ mix('/vendor/libs/growl/growl.js') }}"></script>
|
||||
|
||||
<script src="{{asset('/vendor/libs/dropzone/dropzone.js')}}"></script>
|
||||
<script src="{{ mix('/vendor/libs/validate/validate.js') }}"></script>
|
||||
|
||||
<script src="{{ mix('/vendor/libs/bootstrap-select/bootstrap-select.js') }}"></script>
|
||||
<script src="{{ mix('/vendor/libs/select2/select2.js') }}"></script>
|
||||
<script src="{{ mix('/vendor/libs/datatables/datatables.js') }}"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Libs -->
|
||||
|
||||
<!-- `perfect-scrollbar` library required by SideNav plugin -->
|
||||
<script src="{{ mix('/vendor/libs/perfect-scrollbar/perfect-scrollbar.js') }}"></script>
|
||||
|
||||
@yield('scripts')
|
||||
|
||||
<!-- Application javascripts -->
|
||||
<script src="{{ mix('/js/application.js') }}"></script>
|
||||
<script src="{{ asset('/js/custom.js') }}"></script>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
129
resources/views/layouts/auth.blade.php
Executable file
129
resources/views/layouts/auth.blade.php
Executable file
|
|
@ -0,0 +1,129 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en" class="default-style">
|
||||
|
||||
<head>
|
||||
<title>{{ config('app.name') }} Login</title>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="x-ua-compatible" content="IE=edge,chrome=1">
|
||||
<meta name="description" content="">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
|
||||
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
|
||||
<link href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,500,500i,700,700i,900" rel="stylesheet">
|
||||
|
||||
<!-- Icons. Uncomment required icon fonts -->
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/fontawesome.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/ionicons.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/linearicons.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/open-iconic.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/fonts/pe-icon-7-stroke.css') }}">
|
||||
|
||||
<!-- Core stylesheets -->
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/bootstrap.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/appwork.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/theme-corporate.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/colors.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/css/uikit.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('/vendor/css/mycolors.css') }}">
|
||||
|
||||
<link rel="stylesheet" href="{{ mix('/vendor/libs/growl/growl.css') }}">
|
||||
|
||||
|
||||
|
||||
<!-- Layout helpers -->
|
||||
<script src="{{ mix('/vendor/js/layout-helpers.js') }}"></script>
|
||||
|
||||
|
||||
<!-- Core scripts -->
|
||||
<!-- Libs -->
|
||||
<link rel="stylesheet" href="{{ asset('/vendor/libs/perfect-scrollbar/perfect-scrollbar.css') }}">
|
||||
<!-- Page -->
|
||||
<link rel="stylesheet" href="{{ asset('/vendor/css/pages/authentication.css') }}">
|
||||
<script src="{{ asset('/js/jquery.min.js') }}"></script>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="{{ asset('/css/cookieconsent.min.css') }}" />
|
||||
<script src="{{ asset('/js/cookieconsent.min.js') }}"></script>
|
||||
<script>
|
||||
window.addEventListener("load", function(){
|
||||
window.cookieconsent.initialise({
|
||||
"palette": {
|
||||
"popup": {
|
||||
"background": "#5f8155",
|
||||
"text": "#ffffff"
|
||||
},
|
||||
"button": {
|
||||
"background": "#ffc926",
|
||||
"text": "#ffffff"
|
||||
}
|
||||
},
|
||||
"content": {
|
||||
"message": "{{__('This website uses cookies in order to guarantee the best possible service. With your visit to this site you agree to our use of cookies.') }}",
|
||||
"dismiss": "{{__('OK')}}",
|
||||
"link": "{{__('data protection')}}",
|
||||
"href": "{{ route('data_protected') }}",
|
||||
"target": "_blank",
|
||||
}
|
||||
})});
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="page-loader">
|
||||
<div class="bg-primary"></div>
|
||||
</div>
|
||||
|
||||
@if(Session::has('alert-error'))
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$.growl.error({
|
||||
title: "{{__('error')}}",
|
||||
message: '{{ Session::get('alert-error') }}',
|
||||
location: 'tr'
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if(Session::has('alert-success'))
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$.growl({
|
||||
title: "{{__('saved')}}",
|
||||
message: '{{ Session::get('alert-success') }}',
|
||||
location: 'tr'
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endif
|
||||
|
||||
<!-- / Styles -->
|
||||
|
||||
@yield('content')
|
||||
|
||||
<div class="modal fade" id="modal-loading" style="display: none;" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content" id="modal-loading-response">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<script src="{{ mix('/vendor/libs/popper/popper.js') }}"></script>
|
||||
<script src="{{ mix('/vendor/js/bootstrap.js') }}"></script>
|
||||
<script src="{{ mix('/vendor/js/sidenav.js') }}"></script>
|
||||
<script src="{{ mix('/vendor/libs/growl/growl.js') }}"></script>
|
||||
|
||||
<!-- Core scripts -->
|
||||
<!-- Libs -->
|
||||
<script src="{{ mix('/vendor/libs/perfect-scrollbar/perfect-scrollbar.js') }}"></script>
|
||||
<script src="{{ asset('/js/custom.js') }}"></script>
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
24
resources/views/layouts/includes/layout-footer.blade.php
Executable file
24
resources/views/layouts/includes/layout-footer.blade.php
Executable file
|
|
@ -0,0 +1,24 @@
|
|||
<nav class="layout-footer footer bg-footer-theme">
|
||||
<div class="container-fluid container-p-x pb-3">
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
|
||||
<nav class="layout-footer footer bg-footer-theme">
|
||||
<div class="container-fluid container-p-x pb-3 text-right">
|
||||
<button type="button" class="btn btn-outline-primary mt-2 btn-sm update_modal_data_load" data-url="{{ route('loading_modal') }}" data-data="data_protection" data-target="#modal-loading">{{__('data protection')}}</button>
|
||||
<button type="button" class="btn btn-outline-primary mt-2 btn-sm update_modal_data_load" data-url="{{ route('loading_modal') }}" data-data="imprint" data-target="#modal-loading">{{__('imprint')}}</button>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
|
||||
<div class="modal fade" id="modal-loading" style="display: none;" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content" id="modal-loading-response">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
33
resources/views/layouts/includes/layout-navbar.blade.php
Executable file
33
resources/views/layouts/includes/layout-navbar.blade.php
Executable file
|
|
@ -0,0 +1,33 @@
|
|||
<nav class="layout-navbar navbar navbar-expand-lg align-items-lg-center bg-navbar-theme container-p-x" id="layout-navbar">
|
||||
|
||||
@empty($hide_layout_sidenav_toggle)
|
||||
<!-- Sidenav toggle -->
|
||||
<div class="layout-sidenav-toggle navbar-nav align-items-lg-center mr-auto mr-lg-1-5">
|
||||
<a class="nav-item nav-link px-0 ml-2" href="javascript:void(0)">
|
||||
<i class="ion ion-md-menu text-large align-middle"></i>
|
||||
</a>
|
||||
</div>
|
||||
@endempty
|
||||
|
||||
<!-- Brand -->
|
||||
<a href="https://www.sterntours.de"><img src="{{ asset('/images/stern-tours-logo.png') }}" alt="STERN TOURS" class="" style="width: 170px;"></a>
|
||||
|
||||
<div class="navbar-nav align-items-lg-center ml-auto">
|
||||
<div class="demo-navbar-messages nav-item dropdown mr-lg-3">
|
||||
<div class="demo-navbar-user nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" href="#" data-toggle="dropdown">
|
||||
<span class="d-inline-flex flex-lg-row-reverse align-items-center align-middle">
|
||||
<span class="px-1 ml-2 ml-lg-0">{{ Auth::user()->email }}</span>
|
||||
</span>
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right">
|
||||
<a href="{{ route('logout') }}" class="dropdown-item">
|
||||
<i class="ion ion-ios-log-out text-danger"></i> Log Out</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
|
||||
|
||||
86
resources/views/layouts/includes/layout-sidenav.blade.php
Executable file
86
resources/views/layouts/includes/layout-sidenav.blade.php
Executable file
|
|
@ -0,0 +1,86 @@
|
|||
|
||||
|
||||
|
||||
@if(Auth::check())
|
||||
|
||||
<div id="layout-sidenav" class="{{ isset($layout_sidenav_horizontal) ? 'layout-sidenav-horizontal sidenav-horizontal container-p-x flex-grow-0' : 'layout-sidenav sidenav-vertical' }} sidenav bg-sidenav-theme">
|
||||
|
||||
<!-- Inner -->
|
||||
<ul class="sidenav-inner{{ empty($layout_sidenav_horizontal) ? ' py-1' : '' }}">
|
||||
|
||||
<li class="sidenav-item{{ Request::is('home') ? ' active' : '' }}">
|
||||
<a href="{{ route('home') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-home"></i><div>{{__('Home')}}</div></a>
|
||||
</li>
|
||||
|
||||
|
||||
<li class="sidenav-item{{ Request::is('user/edit') ? ' active' : '' }}">
|
||||
<a href="{{ route('user_edit') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-create"></i><div>{{ __('Your Data') }}</div></a>
|
||||
</li>
|
||||
|
||||
@if(Auth::user()->isAdmin())
|
||||
<li class="sidenav-divider mb-1"></li>
|
||||
<li class="sidenav-header small font-weight-semibold">ADMIN</li>
|
||||
|
||||
|
||||
<li class="sidenav-item{{ Request::is('travel_programs') ? ' active' : '' }}">
|
||||
<a href="{{ route('travel_programs') }}" class="sidenav-link"><i class="sidenav-icon ion ion-md-airplane"></i><div>Programme</div></a>
|
||||
</li>
|
||||
<li class="sidenav-item{{ Request::is('drafts') ? ' active' : '' }}">
|
||||
<a href="{{ route('drafts') }}" class="sidenav-link"><i class="sidenav-icon ion ion-md-paper"></i><div>Vorlagen</div></a>
|
||||
</li>
|
||||
<li class="sidenav-divider mb-1"></li>
|
||||
<li class="sidenav-header small font-weight-semibold">ADMIN altes System</li>
|
||||
|
||||
<li class="sidenav-item">
|
||||
<a href="javascript:void(0)" class="sidenav-link sidenav-toggle">
|
||||
<i class="sidenav-icon ion ion-ios-people"></i>
|
||||
<div>Kundenverwaltung</div>
|
||||
</a>
|
||||
|
||||
<ul class="sidenav-menu">
|
||||
<li class="sidenav-item">
|
||||
<a href="{{ make_old_url('/index.php/customers') }}" class="sidenav-link">
|
||||
<div>Kunden</div>
|
||||
</a>
|
||||
</li>
|
||||
<li class="sidenav-item">
|
||||
<a href="{{ make_old_url('/index.php/leads') }}" class="sidenav-link">
|
||||
<div>Anfragen</div>
|
||||
</a>
|
||||
</li>
|
||||
<li class="sidenav-item">
|
||||
<a href="{{ make_old_url('/index.php/bookings') }}" class="sidenav-link">
|
||||
<div>Buchungen</div>
|
||||
</a>
|
||||
</li>
|
||||
<li class="sidenav-item">
|
||||
<a href="{{ make_old_url('/index.php/payments') }}" class="sidenav-link">
|
||||
<div>Zahlungen</div>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
@endif
|
||||
|
||||
@if(Auth::user()->isSuperAdmin())
|
||||
<li class="sidenav-divider mb-1"></li>
|
||||
<li class="sidenav-header small font-weight-semibold">SUPERADMIN</li>
|
||||
|
||||
<li class="sidenav-item{{ Request::is('admin/users') ? ' active' : '' }} {{ Request::is('admin/user/edit/*') ? ' active' : '' }}">
|
||||
<a href="{{ route('admin_users') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-ribbon"></i><div>{{ __('User Rechte') }}</div></a>
|
||||
</li>
|
||||
|
||||
<li class="sidenav-item{{ Request::is('admin/translate') ? ' active' : '' }}">
|
||||
<a href="{{ route('admin_translate') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-browsers"></i><div>{{ __('Translate') }}</div></a>
|
||||
</li>
|
||||
|
||||
@endif
|
||||
<li class="sidenav-divider mb-1"></li>
|
||||
|
||||
<li class="sidenav-item">
|
||||
<a href="{{ route('logout') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-power"></i><div>{{ __('Logout') }}</div></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
39
resources/views/layouts/layout-1-flex.blade.php
Executable file
39
resources/views/layouts/layout-1-flex.blade.php
Executable file
|
|
@ -0,0 +1,39 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
<!-- Layout wrapper -->
|
||||
<div class="layout-wrapper layout-1">
|
||||
<div class="layout-inner">
|
||||
|
||||
<!-- Layout navbar -->
|
||||
@include('layouts.includes.layout-navbar')
|
||||
|
||||
<!-- Layout container -->
|
||||
<div class="layout-container">
|
||||
<!-- Layout sidenav -->
|
||||
@include('layouts.includes.layout-sidenav')
|
||||
|
||||
<!-- Layout content -->
|
||||
<div class="layout-content">
|
||||
|
||||
<!-- Content -->
|
||||
<div class="container-fluid d-flex align-items-stretch flex-grow-1 p-0">
|
||||
@yield('content')
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<!-- Layout footer -->
|
||||
@include('layouts.includes.layout-footer')
|
||||
</div>
|
||||
<!-- Layout content -->
|
||||
|
||||
</div>
|
||||
<!-- / Layout container -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Overlay -->
|
||||
<div class="layout-overlay layout-sidenav-toggle"></div>
|
||||
</div>
|
||||
<!-- / Layout wrapper -->
|
||||
@endsection
|
||||
39
resources/views/layouts/layout-1.blade.php
Executable file
39
resources/views/layouts/layout-1.blade.php
Executable file
|
|
@ -0,0 +1,39 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
<!-- Layout wrapper -->
|
||||
<div class="layout-wrapper layout-1">
|
||||
<div class="layout-inner">
|
||||
|
||||
<!-- Layout navbar -->
|
||||
@include('layouts.includes.layout-navbar')
|
||||
|
||||
<!-- Layout container -->
|
||||
<div class="layout-container">
|
||||
<!-- Layout sidenav -->
|
||||
@include('layouts.includes.layout-sidenav')
|
||||
|
||||
<!-- Layout content -->
|
||||
<div class="layout-content">
|
||||
|
||||
<!-- Content -->
|
||||
<div class="container-fluid flex-grow-1 container-p-y">
|
||||
@yield('content')
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<!-- Layout footer -->
|
||||
@include('layouts.includes.layout-footer')
|
||||
</div>
|
||||
<!-- Layout content -->
|
||||
|
||||
</div>
|
||||
<!-- / Layout container -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Overlay -->
|
||||
<div class="layout-overlay layout-sidenav-toggle"></div>
|
||||
</div>
|
||||
<!-- / Layout wrapper -->
|
||||
@endsection
|
||||
75
resources/views/layouts/layout-2-flex.blade.php
Executable file
75
resources/views/layouts/layout-2-flex.blade.php
Executable file
|
|
@ -0,0 +1,75 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
|
||||
@if(Session::has('alert-save'))
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$.growl({
|
||||
title: "{{__('saved')}}",
|
||||
message: "{{__('The changes have been saved.')}}",
|
||||
location: 'tr'
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if(Session::has('alert-error'))
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$.growl.error({
|
||||
title: "{{__('error')}}",
|
||||
message: '{{ Session::get('alert-error') }}',
|
||||
location: 'tr'
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if(Session::has('alert-success'))
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$.growl({
|
||||
title: "{{__('saved')}}",
|
||||
message: '{{ Session::get('alert-success') }}',
|
||||
location: 'tr'
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endif
|
||||
<!-- Layout wrapper -->
|
||||
<div class="layout-wrapper layout-2">
|
||||
<div class="layout-inner">
|
||||
|
||||
<!-- Layout sidenav -->
|
||||
@include('layouts.includes.layout-sidenav')
|
||||
|
||||
<!-- Layout container -->
|
||||
<div class="layout-container">
|
||||
<!-- Layout navbar -->
|
||||
@include('layouts.includes.layout-navbar')
|
||||
|
||||
<!-- Layout content -->
|
||||
<div class="layout-content">
|
||||
|
||||
<!-- Content -->
|
||||
<div class="container-fluid d-flex align-items-stretch flex-grow-1 p-0">
|
||||
@yield('content')
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<!-- Layout footer -->
|
||||
@include('layouts.includes.layout-footer')
|
||||
</div>
|
||||
<!-- Layout content -->
|
||||
|
||||
</div>
|
||||
<!-- / Layout container -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Overlay -->
|
||||
<div class="layout-overlay layout-sidenav-toggle"></div>
|
||||
</div>
|
||||
<!-- / Layout wrapper -->
|
||||
@endsection
|
||||
77
resources/views/layouts/layout-2.blade.php
Executable file
77
resources/views/layouts/layout-2.blade.php
Executable file
|
|
@ -0,0 +1,77 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
|
||||
@if(Session::has('alert-save'))
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$.growl({
|
||||
title: "{{__('saved')}}",
|
||||
message: "{{__('The changes have been saved.')}}",
|
||||
location: 'tr'
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if(Session::has('alert-error'))
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$.growl.error({
|
||||
title: "{{__('error')}}",
|
||||
message: '{{ Session::get('alert-error') }}',
|
||||
location: 'tr'
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if(Session::has('alert-success'))
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$.growl({
|
||||
title: "{{__('saved')}}",
|
||||
message: '{{ Session::get('alert-success') }}',
|
||||
location: 'tr'
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endif
|
||||
|
||||
|
||||
<!-- Layout wrapper -->
|
||||
<div class="layout-wrapper layout-2">
|
||||
<div class="layout-inner">
|
||||
|
||||
<!-- Layout sidenav -->
|
||||
@include('layouts.includes.layout-sidenav')
|
||||
|
||||
<!-- Layout container -->
|
||||
<div class="layout-container">
|
||||
<!-- Layout navbar -->
|
||||
@include('layouts.includes.layout-navbar')
|
||||
|
||||
<!-- Layout content -->
|
||||
<div class="layout-content">
|
||||
|
||||
<!-- Content -->
|
||||
<div class="container-fluid flex-grow-1 container-p-y">
|
||||
@yield('content')
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<!-- Layout footer -->
|
||||
@include('layouts.includes.layout-footer')
|
||||
</div>
|
||||
<!-- Layout content -->
|
||||
|
||||
</div>
|
||||
<!-- / Layout container -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Overlay -->
|
||||
<div class="layout-overlay layout-sidenav-toggle"></div>
|
||||
</div>
|
||||
<!-- / Layout wrapper -->
|
||||
@endsection
|
||||
5
resources/views/layouts/layout-blank.blade.php
Executable file
5
resources/views/layouts/layout-blank.blade.php
Executable file
|
|
@ -0,0 +1,5 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
@yield('content')
|
||||
@endsection
|
||||
36
resources/views/layouts/layout-horizontal-sidenav.blade.php
Executable file
36
resources/views/layouts/layout-horizontal-sidenav.blade.php
Executable file
|
|
@ -0,0 +1,36 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
<!-- Layout wrapper -->
|
||||
<div class="layout-wrapper layout-1 layout-without-sidenav">
|
||||
<div class="layout-inner">
|
||||
|
||||
<!-- Layout navbar -->
|
||||
@include('layouts.includes.layout-navbar', ['hide_layout_sidenav_toggle' => true])
|
||||
|
||||
<!-- Layout container -->
|
||||
<div class="layout-container">
|
||||
|
||||
<!-- Layout content -->
|
||||
<div class="layout-content">
|
||||
<!-- Layout sidenav -->
|
||||
@include('layouts.includes.layout-sidenav', ['layout_sidenav_horizontal' => true])
|
||||
|
||||
<!-- Content -->
|
||||
<div class="container-fluid flex-grow-1 container-p-y">
|
||||
@yield('content')
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<!-- Layout footer -->
|
||||
@include('layouts.includes.layout-footer')
|
||||
</div>
|
||||
<!-- Layout content -->
|
||||
|
||||
</div>
|
||||
<!-- / Layout container -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Layout wrapper -->
|
||||
@endsection
|
||||
36
resources/views/layouts/layout-without-navbar-flex.blade.php
Executable file
36
resources/views/layouts/layout-without-navbar-flex.blade.php
Executable file
|
|
@ -0,0 +1,36 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
<!-- Layout wrapper -->
|
||||
<div class="layout-wrapper layout-1">
|
||||
<div class="layout-inner">
|
||||
|
||||
<!-- Layout container -->
|
||||
<div class="layout-container">
|
||||
<!-- Layout sidenav -->
|
||||
@include('layouts.includes.layout-sidenav')
|
||||
|
||||
<!-- Layout content -->
|
||||
<div class="layout-content">
|
||||
|
||||
<!-- Content -->
|
||||
<div class="container-fluid d-flex align-items-stretch flex-grow-1 p-0">
|
||||
@yield('content')
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<!-- Layout footer -->
|
||||
@include('layouts.includes.layout-footer')
|
||||
</div>
|
||||
<!-- Layout content -->
|
||||
|
||||
</div>
|
||||
<!-- / Layout container -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Overlay -->
|
||||
<div class="layout-overlay layout-sidenav-toggle"></div>
|
||||
</div>
|
||||
<!-- / Layout wrapper -->
|
||||
@endsection
|
||||
36
resources/views/layouts/layout-without-navbar.blade.php
Executable file
36
resources/views/layouts/layout-without-navbar.blade.php
Executable file
|
|
@ -0,0 +1,36 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
<!-- Layout wrapper -->
|
||||
<div class="layout-wrapper layout-1">
|
||||
<div class="layout-inner">
|
||||
|
||||
<!-- Layout container -->
|
||||
<div class="layout-container">
|
||||
<!-- Layout sidenav -->
|
||||
@include('layouts.includes.layout-sidenav')
|
||||
|
||||
<!-- Layout content -->
|
||||
<div class="layout-content">
|
||||
|
||||
<!-- Content -->
|
||||
<div class="container-fluid flex-grow-1 container-p-y">
|
||||
@yield('content')
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<!-- Layout footer -->
|
||||
@include('layouts.includes.layout-footer')
|
||||
</div>
|
||||
<!-- Layout content -->
|
||||
|
||||
</div>
|
||||
<!-- / Layout container -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Overlay -->
|
||||
<div class="layout-overlay layout-sidenav-toggle"></div>
|
||||
</div>
|
||||
<!-- / Layout wrapper -->
|
||||
@endsection
|
||||
34
resources/views/layouts/layout-without-sidenav.blade.php
Executable file
34
resources/views/layouts/layout-without-sidenav.blade.php
Executable file
|
|
@ -0,0 +1,34 @@
|
|||
@extends('layouts.application')
|
||||
|
||||
@section('layout-content')
|
||||
<!-- Layout wrapper -->
|
||||
<div class="layout-wrapper layout-1 layout-without-sidenav">
|
||||
<div class="layout-inner">
|
||||
|
||||
<!-- Layout navbar -->
|
||||
@include('layouts.includes.layout-navbar', ['hide_layout_sidenav_toggle' => true])
|
||||
|
||||
<!-- Layout container -->
|
||||
<div class="layout-container">
|
||||
|
||||
<!-- Layout content -->
|
||||
<div class="layout-content">
|
||||
|
||||
<!-- Content -->
|
||||
<div class="container-fluid flex-grow-1 container-p-y">
|
||||
@yield('content')
|
||||
</div>
|
||||
<!-- / Content -->
|
||||
|
||||
<!-- Layout footer -->
|
||||
@include('layouts.includes.layout-footer')
|
||||
</div>
|
||||
<!-- Layout content -->
|
||||
|
||||
</div>
|
||||
<!-- / Layout container -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Layout wrapper -->
|
||||
@endsection
|
||||
574
resources/views/legal/data_protect_de.blade.php
Normal file
574
resources/views/legal/data_protect_de.blade.php
Normal file
|
|
@ -0,0 +1,574 @@
|
|||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 class="modal-title" id="myModalUpdate">{{__('data protection') }}</h3>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
|
||||
<h1>Datenschutzerklärung STERN TOURS GmbH</h1>
|
||||
|
||||
<h2>I. Name und Anschrift des Verantwortlichen</h2>
|
||||
<p>
|
||||
Der Verantwortliche im Sinne der geltenden datenschutzrechtlichen Bestimmungen ist:<br><strong>Firma STERN TOURS
|
||||
GmbH</strong></p>
|
||||
<p>
|
||||
Emser Str. 3<br>
|
||||
10719 Berlin<br>
|
||||
Vertreten d. d. Geschäftsführer Herrn Thomas Stern<br>
|
||||
Telefon: +49 30 700 94 100<br>
|
||||
Telefax: +49 30 700 94 1044<br>
|
||||
E-Mail: <a href="mailto:stern@sterntours.de">stern@sterntours.de</a></p>
|
||||
|
||||
|
||||
<h2>II. Allgemeines zur Datenverarbeitung</h2>
|
||||
<p>
|
||||
<strong>1. Umfang der Verarbeitung personenbezogener Daten</strong><br>
|
||||
Wir erheben und verwenden personenbezogene Daten (nachfolgend pb. Daten) unserer Nutzer grundsätzlich nur, soweit
|
||||
dies zur Bereitstellung einer funktionsfähigen Website sowie unserer Inhalte und Leistungen erforderlich ist oder
|
||||
eine Einwilligung des Nutzers vorliegt. Eine Ausnahme gilt in solchen Fällen, in denen eine vorherige Einholung
|
||||
einer Einwilligung aus tatsächlichen Gründen nicht möglich und die Verarbeitung der Daten durch gesetzliche
|
||||
Vorschriften gestattet ist.</p>
|
||||
|
||||
<p><strong>2. Rechtsgrundlage für die Verarbeitung personenbezogener Daten</strong><br>
|
||||
Nachfolgend finden Sie die gesetzlichen Grundlagen, die die DSGVO vorsieht: <br>
|
||||
Bei der Verarbeitung pb. Daten</p>
|
||||
<ul>
|
||||
<li>auf Grundlage einer Einwilligung des Betroffenen ist Art. 6 Abs. 1 lit. a EU-Datenschutzgrundverordnung (DSGVO)
|
||||
Rechtsgrundlage;
|
||||
</li>
|
||||
<li>die zur Erfüllung eines Vertrages mit der betroffenen Person dient, ist Art. 6 Abs. 1 lit. b DSGVO
|
||||
Rechtsgrundlage.
|
||||
</li>
|
||||
<li>die zur Durchführung vorvertraglicher Maßnahmen erforderlich sind, ist Art. 6 Abs. 1 lit. b DSGVO
|
||||
Rechtsgrundlage;
|
||||
</li>
|
||||
<li>die zur Erfüllung einer uns obliegenden rechtlichen Verpflichtung erforderlich ist, dient Art. 6 Abs. 1 lit. c
|
||||
DSGVO als Rechtsgrundlage;
|
||||
</li>
|
||||
<li>die wegen lebenswichtiger Interessen der betroffenen Person oder anderer natürlicher Personen erforderlich sind,
|
||||
ist Art. 6 Abs. 1 lit. d DSGVO Rechtsgrundlage.
|
||||
</li>
|
||||
<li>die zur Wahrung eines berechtigten Interesses unseres Unternehmens oder eines Dritten erforderlich sind und den
|
||||
Interessen, Grundrechte und Grundfreiheiten des Betroffenen überwiegen, dient Art. 6 Abs. 1 lit. f DSGVO als
|
||||
Rechtsgrundlage für die Verarbeitung.
|
||||
</li>
|
||||
</ul>
|
||||
<p><strong>3. Datenlöschung und Speicherdauer</strong><br>
|
||||
Grundsätzlich löschen oder sperren wir pb. Daten, sobald der Zweck der Speicherung entfällt. Sind wir gesetzlich
|
||||
dazu verpflichtet Daten aufzubewahren, erfolgt eine Sperrung oder Löschung erst nach Ablauf der gesetzlichen
|
||||
Aufbewahrungspflicht, es sei denn, eine Erforderlichkeit zur weiteren Speicherung der Daten für einen
|
||||
Vertragsabschluss oder eine Vertragserfüllung besteht.</p>
|
||||
|
||||
<p><strong>4. Empfänger der erhobenen Daten</strong><br>
|
||||
Empfänger der über die Internetseite erhoben Daten ist der genannte Verantwortliche. Darüber hinaus haben
|
||||
Auftragsverarbeiter (Webhoster, EDV-Betreuer, Softwarenanbieter) Zugriff auf die über die Internetseite erhobenen
|
||||
Daten. Die Einhaltung der gesetzlichen Regelungen ist insoweit jedoch durch Auftragsverarbeitungsverträge, die wir
|
||||
mit unseren in der EU ansässigen Auftragsverarbeitern schließen, gewährleistet. Darüber hinaus erfolgt eine
|
||||
Übermittlung Ihrer Daten an Dritte, derer wir uns zur Durchführung unserer Leistungen bedienen (Fluglinien,
|
||||
Beförderungsunternehmen, Hotels, Mietwagenunternehmen, Zahlungsdienstleister, Kreditinstitute, etc.). Je nach
|
||||
Reiseland können sich diese Empfänger auch in Drittländern, die das Datenschutzniveau der DSGVO nicht einhalten,
|
||||
befinden (bspw. Reisen in den Oman). </p>
|
||||
|
||||
<p><strong>5. Profiling / automatisierte Entscheidungsfindung</strong><br>
|
||||
Zur Begründung und Durchführung der Geschäftsbeziehung nutzen wir grundsätzlich keine automatisierte
|
||||
Entscheidungsfindung gemäß Art. 22 EU-DSGVO. Sollten wir diese Verfahren in Einzelfällen einsetzen, werden Sie
|
||||
hierüber gesondert informiert, sofern dies gesetzlich vorgegeben ist.</p>
|
||||
|
||||
<h2>III. Bereitstellung der Website und Erstellung von Logfiles</h2>
|
||||
<p>
|
||||
<strong>1. Umfang der Datenverarbeitung</strong><br>
|
||||
Bei jedem Aufruf unserer Internetseite erfasst unser System automatisiert Daten und Informationen vom Computersystem
|
||||
des aufrufenden Rechners.<br>
|
||||
Folgende Daten werden hierbei erhoben:<br>
|
||||
(1) Informationen über den Browsertyp und die verwendete Version<br>
|
||||
(2) Das Betriebssystem des Nutzers<br>
|
||||
(3) Die IP-Adresse des Nutzers<br>
|
||||
(4) Datum und Uhrzeit des Zugriffs<br>
|
||||
(5) Seite, von der aus zugegriffen wird <br>
|
||||
(6) Name der Datei <br>
|
||||
(7) Übertragene Datenmenge<br>
|
||||
(8) Zugriffsstatus (Datei, übertragen, Datei nicht gefunden)</p>
|
||||
|
||||
<p>Die Daten werden ebenfalls in den Logfiles (Protokolldateien / Protokoll aller oder bestimmter Prozesse auf einem
|
||||
Computersystem) unseres Systems gespeichert. Nicht hiervon betroffen sind die IP-Adresse des Nutzers oder anderen
|
||||
Daten, die die Zuordnung zu einem Nutzer ermöglichen. Eine Speicherung dieser Daten zusammen mit anderen
|
||||
personenbezogenen Daten des Nutzers findet nicht statt.</p>
|
||||
|
||||
<p><strong>2. Rechtsgrundlage für die Datenverarbeitung</strong><br>
|
||||
Rechtsgrundlage für die vorübergehende Speicherung der Daten und der Logfiles ist Art. 6 Abs. 1 lit. f DSGVO.</p>
|
||||
|
||||
<p><strong>3. Zweck der Datenverarbeitung</strong><br>
|
||||
Die vorübergehende Speicherung der IP-Adresse durch das System ist notwendig, um eine Auslieferung der Website an
|
||||
den Rechner des Nutzers zu ermöglichen. Hierfür muss die IP-Adresse des Nutzers für die Dauer der Sitzung
|
||||
gespeichert bleiben.<br>
|
||||
Die Speicherung in Logfiles erfolgt, um die Funktionsfähigkeit der Website sicherzustellen. Zudem dienen uns die
|
||||
Daten zur Optimierung der Website und zur Sicherstellung der Sicherheit unserer informationstechnischen Systeme.<br>
|
||||
In diesen Zwecken liegt auch unser berechtigtes Interesse an der Datenverarbeitung nach Art. 6 Abs. 1 lit. f DSGVO.
|
||||
Da für uns ein Rückschluss von IP-Adresse auf eine natürliche Person nicht ohne weiteres möglich ist, es sich ferner
|
||||
bei einer IP-Adresse nicht um ein sensibles Datum handelt, diese umgehend nach Besuch der Internetseite gelöscht
|
||||
wird und wir diese benötigen, um unsere Internetseite anzubieten, überwiegt unser Interesse gegenüber dem Interesse
|
||||
des Betroffenen.</p>
|
||||
|
||||
<p><strong>4. Dauer der Speicherung</strong><br>
|
||||
Die erhobenen Daten werden gelöscht, sobald sie für die Erreichung des Zweckes ihrer Erhebung (Bereitstellung der
|
||||
Internetseite) nicht mehr erforderlich sind. Im Falle der Speicherung der Daten in Logfiles ist dies nach spätestens
|
||||
sieben Tagen der Fall. </p>
|
||||
|
||||
<p><strong>5. Widerspruchs- und Beseitigungsmöglichkeit</strong><br>
|
||||
Die Erfassung der Daten zur Bereitstellung der Website und die Speicherung der Daten in Logfiles ist für den Betrieb
|
||||
der Internetseite zwingend erforderlich. Es besteht folglich seitens des Nutzers keine Widerspruchsmöglichkeit.</p>
|
||||
|
||||
<h2>IV. Verwendung von Cookies</h2>
|
||||
<p>
|
||||
<strong>1. Beschreibung und Umfang der Datenverarbeitung</strong><br><u>a) Technisch notwendige Cookies</u><br>
|
||||
Unsere Webseite verwendet technisch notwendige Cookies. Bei Cookies handelt es sich um Textdateien, die im
|
||||
Internetbrowser bzw. vom Internetbrowser auf dem Computersystem des Nutzers gespeichert werden. Ruft ein Nutzer eine
|
||||
Website auf, so kann ein Cookie auf dem Betriebssystem des Nutzers gespeichert werden. Dieser Cookie enthält eine
|
||||
charakteristische Zeichenfolge, die eine eindeutige Identifizierung des Browsers beim erneuten Aufrufen der Website
|
||||
ermöglicht. <br>
|
||||
Es handelt sich dabei um den Cookie PHPSESSID. Dieses Cookie speichert Ihre aktuelle Sitzung mit Bezug auf
|
||||
PHP-Anwendungen und gewährleistet so, dass alle Funktionen der Seite, die auf der PHP-Programmiersprache basieren,
|
||||
vollständig angezeigt werden können.</p>
|
||||
|
||||
<p><u>b) Technisch nicht notwendige Cookies</u><br>
|
||||
aa) StepMap Kartendienst <br>
|
||||
Um Ihnen Reisen auf Karten anzeigen zu können, nutzen wir Dienstleistungen der StepMap GmbH , Romy-Schneider-Straße
|
||||
6, 13599 Berlin. Die Firma StepMap GmbH nutzt zur Darstellung der Karten ebenfalls Cookies.
|
||||
Auf diese Weise können folgende Daten übermittelt werden: <br><br>
|
||||
(1) IP-Adresse<br>
|
||||
(2) Datum und Uhrzeit der Anfrage<br>
|
||||
(3) Zeitzonendifferenz zur Greenwich Mean Time (GMT)<br>
|
||||
(4) Inhalt der Anforderung (konkrete Seite)<br>
|
||||
(5) Zugriffsstatus/HTTP-Statuscode<br>
|
||||
(6) jeweils übertragene Datenmenge<br>
|
||||
(7) Website, von der die Anforderung kommt<br>
|
||||
(8) Browser<br>
|
||||
(9) Betriebssystem und dessen Oberfläche<br>
|
||||
(10) Sprache und Version der Browsersoftware</p>
|
||||
<p>Die vorgenannten Informationen werden StepMap weitergegeben. StepMap wird Ihre IP-Adresse jedoch nicht mit anderen
|
||||
von Ihnen gespeicherten Daten zusammenführen. StepMap ist ein deutsches Unternehmen und unterliegt damit ebenfalls
|
||||
der DSGVO und dem BDSG-neu.</p>
|
||||
|
||||
<p><u>bb) Microsoft BING Ads</u><br>
|
||||
Diese Website nutzt das Conversion Tracking von Bing Ads (Microsoft Corporation, One Microsoft Way, Redmond, WA
|
||||
98052-6399, USA). Wenn Sie auf eine Bing Anzeige geklickt haben, wird ein Cookie auf Ihrem Rechner gesetzt. Sowohl
|
||||
Bing als auch der Websitebetreiber können dadurch erkennen, dass jemand über die Bing Anzeigen zur Website
|
||||
weitergeleitet wurde und eine vorher festgelegte Zielseite (Conversion-Seite) erreicht hat. Wir möchten Sie darauf
|
||||
hinweisen, dass durch dieses Verfahren auch ihre IP-Adresse erfasst wird. Wenn Sie nicht an dem beschriebenen
|
||||
Tracking-Verfahren teilnehmen möchten, kann das hierfür erforderliche Setzen eines Cookies per Browser-Einstellung
|
||||
abgelehnt werden. Die Deaktivierung kann auch über folgenden Link erfolgen: <a
|
||||
href="http://choice.microsoft.com/de/opt-out" target="_blank">http://choice.microsoft.com/de/opt-out</a><br>
|
||||
Weitere Informationen zum Datenschutz und zu den eingesetzten Cookies bei Microsoft Bing finden Sie auf der Website
|
||||
von Microsoft: <a href="https://privacy.microsoft.com/de-de/privacystatement" target="_blank">https://privacy.microsoft.com/de-de/privacystatement</a><br><strong>Widerspruchsmöglichkeit
|
||||
(Opt-out):</strong> <a href="http://choice.microsoft.com/de/opt-out" target="_blank">http://choice.microsoft.com/de/opt-out</a>
|
||||
</p>
|
||||
|
||||
<p><u>cc) Google Adwords</u><br>
|
||||
Wir nutzen das Online-Werbeprogramm „Google AdWords“ und im Rahmen von Google AdWords das Conversion-Tracking. Das
|
||||
Google Conversion Tracking ist ein Analysedienst der Google Inc. (1600 Amphitheatre Parkway, Mountain View, CA
|
||||
94043, USA; „Google“). Wenn Sie auf eine von Google geschaltete Anzeige klicken, wird ein Cookie für das
|
||||
Conversion-Tracking auf Ihrem Rechner abgelegt. Diese Cookies verlieren nach 30 Tagen ihre Gültigkeit, enthalten
|
||||
keine personenbezogenen Daten und dienen somit nicht der persönlichen Identifizierung. Wenn Sie bestimmte
|
||||
Internetseiten unserer Website besuchen und das Cookie noch nicht abgelaufen ist, können Google und wir erkennen,
|
||||
dass Sie auf die Anzeige geklickt haben und zu dieser Seite weitergeleitet wurden. Jeder Google AdWords-Kunde erhält
|
||||
ein anderes Cookie. Somit besteht keine Möglichkeit, dass Cookies über die Websites von AdWords-Kunden nachverfolgt
|
||||
werden können. </p>
|
||||
|
||||
<p>Wenn Sie nicht am Tracking teilnehmen möchten, können Sie dieser Nutzung widersprechen, indem Sie die Installation
|
||||
der Cookies durch eine entsprechende Einstellung Ihrer Browser Software verhindern (Deaktivierungsmöglichkeit). Sie
|
||||
werden sodann nicht in die Conversion-Tracking Statistiken aufgenommen. Weiterführende Informationen sowie die
|
||||
Datenschutzerklärung von Google finden Sie unter: <a href="http://www.google.com/policies/technologies/ads/"
|
||||
target="_blank">http://www.google.com/policies/technologies/ads/</a>,<br><a
|
||||
href="http://www.google.de/policies/privacy/" target="_blank">http://www.google.de/policies/privacy/</a><br><a
|
||||
href="https://support.google.com/adwords/answer/1722022?hl=de" target="_blank">https://support.google.com/adwords/answer/1722022?hl=de</a><br><br><strong>Widerspruchsmöglichkeit
|
||||
(Opt-out):</strong>
|
||||
<a href="https://www.google.com/settings/u/0/ads/anonymous?hl=de&sig=ACi0TCgbJZ82qHPMEYoQJIy26Ljqx57yhP0ScvxTnIVEJBZMdU77SQUCZAYG1XAFfrbRPq9NN6Q3XntWfoR5P_U_AMV-sgbC0vMVzWRy8PoL4UlDPINr8p8"
|
||||
target="_blank">https://www.google.com/settings/u/0/ads/anonymous?hl=de&sig=ACi0TCgbJZ82qHPMEYoQJIy26Ljqx57yhP0ScvxTnIVEJBZMdU77SQUCZAYG1XAFfrbRPq9NN6Q3XntWfoR5P_U_AMV-sgbC0vMVzWRy8PoL4UlDPINr8p8</a>
|
||||
|
||||
</p>
|
||||
<p><u>dd) Google Doubleclick</u><br>
|
||||
Datenschutzinformationen des Anbieters: <a href="https://www.google.de/intl/de/policies/privacy/" target="_blank">https://www.google.de/intl/de/policies/privacy/</a><br><strong>Widerspruchsmöglichkeit
|
||||
(Opt-out):</strong> <a href="https://www.google.com/settings/u/0/ads/authenticated" target="_blank">https://www.google.com/settings/u/0/ads/authenticated</a>
|
||||
|
||||
|
||||
</p>
|
||||
|
||||
<p><strong>2. Rechtsgrundlage für die Datenverarbeitung für Cookies</strong><br>
|
||||
Die Rechtsgrundlage für die Verarbeitung personenbezogener Daten unter Verwendung von Cookies ist Art. 6 Abs. 1 lit.
|
||||
f DSGVO.</p>
|
||||
|
||||
<p><strong>3. Zweck der Datenverarbeitung</strong><br><u>a) Zweck für technisch notwendige Cookies</u><br>
|
||||
Der Zweck der Verwendung technisch notwendiger Cookies ist, die Nutzung von Websites für die Nutzer zu vereinfachen.
|
||||
Einige Funktionen unserer Internetseite können ohne den Einsatz von Cookies nicht angeboten werden. Für diese ist es
|
||||
erforderlich, dass der Browser auch nach einem Seitenwechsel wiedererkannt wird.<br>
|
||||
Für folgende Anwendungen benötigen wir Cookies:<br>
|
||||
(1) Merken von Suchbegriffen<br>
|
||||
(2) Übertragen von Formularinhalten<br>
|
||||
(3) Sprachauswahl <br>
|
||||
Die durch technisch notwendige Cookies erhobenen Nutzerdaten werden nicht zur Erstellung von Nutzerprofilen
|
||||
verwendet.</p>
|
||||
|
||||
<p><u>b) Zweck technisch nicht notwendiger Cookies</u><br>
|
||||
Die Verwendung der StepMap Cookies erfolgt zu dem Zweck, Ihnen Reiseinformationen anschaulich zu vermitteln. BING
|
||||
ermöglicht uns die Aktivitäten von Nutzern auf unserer Website zu Werbezwecken und Optimierungszwecken
|
||||
nachzuverfolgen, wenn diese über Anzeigen von Bing Ads auf unsere Website gelangt sind. Die Informationen, die
|
||||
mithilfe von Google Adwords eingeholten werden, dienen dazu, Conversion-Statistiken für AdWords-Kunden zu erstellen,
|
||||
die sich für Conversion-Tracking entschieden haben. Hierbei erfahren die Kunden die Gesamtanzahl der Nutzer, die auf
|
||||
ihre Anzeige geklickt haben und zu einer mit einem Conversion-Tracking-Tag versehenen Seite weitergeleitet wurden.
|
||||
Sie erhalten jedoch keine Informationen, mit denen sich Nutzer persönlich identifizieren lassen. In den vorgenannten
|
||||
Zwecken liegt auch unser berechtigtes Interesse in der Verarbeitung der personenbezogenen Daten nach Art. 6 Abs. 1
|
||||
lit. f DSGVO.</p>
|
||||
|
||||
<p><strong>4. Dauer der Speicherung, Widerspruchs- und Beseitigungsmöglichkeit</strong><br>
|
||||
Cookies werden auf dem Rechner des Nutzers gespeichert und von diesem an unserer Seite übermittelt. Daher haben Sie
|
||||
als Nutzer auch die volle Kontrolle über die Verwendung von Cookies. Durch eine Änderung der Einstellungen in Ihrem
|
||||
Internetbrowser können Sie die Übertragung von Cookies deaktivieren oder einschränken. Bereits gespeicherte Cookies
|
||||
können jederzeit gelöscht werden. Dies kann auch automatisiert erfolgen. Werden Cookies für unsere Website
|
||||
deaktiviert, können möglicherweise nicht mehr alle Funktionen der Website vollumfänglich genutzt werden. Durch die
|
||||
Nutzung der Website erklären Sie sich mit der Bearbeitung der über Sie erhobenen Daten durch Google in der zuvor
|
||||
beschriebenen Art und Weise und zu dem zuvor benannten Zweck einverstanden.</p>
|
||||
|
||||
<p>Durch spezielle Browsereinstellungen können Sie alle oder einige Cookies auf Ihrem Gerät akzeptieren, blockieren oder
|
||||
deaktivieren. Eine entsprechende Anleitung der gängigsten Browser finden Sie hier:
|
||||
<br>
|
||||
- <a title="Firefox" target="_blank"
|
||||
href="https://support.mozilla.org/de/kb/cookies-informationen-websites-auf-ihrem-computer/">Firefox</a><br>
|
||||
- <a title="Chrom" target="_blank" href="https://support.google.com/chrome/answer/95647?hl=de">Chrom</a><br>
|
||||
- <a title="Internet Explorer" target="_blank"
|
||||
href="https://support.microsoft.com/de-de/help/278835/how-to-delete-cookie-files-in-internet-explorer">Internet
|
||||
Explorer</a><br>
|
||||
- <a title="Safari" target="_blank" href="https://support.apple.com/kb/ph21411?locale=en_US">Safari</a>
|
||||
</p>
|
||||
|
||||
<h2>V. E-Mail-Kontakt / Kontaktformular / Chat</h2>
|
||||
<p>
|
||||
<strong>1. Umfang der Datenverarbeitung</strong><br>
|
||||
Auf unserer Internetseite ist eine Kontaktaufnahme über die bereitgestellte E-Mail-Adresse, ein Kontaktformular oder
|
||||
einen Live Chat möglich. Die mit der E-Mail oder dem Kontaktformular übermittelten personenbezogenen Daten des
|
||||
Nutzers werden von uns gespeichert. Zur Kontaktaufnahmen über das Kontaktformular genügt der Nachname und die
|
||||
E-Mailadresse, welches Pflichtfelder sind. Alle anderen im Kontaktformular angegebenen Felder sind freiwillige
|
||||
Felder. Der Chat kann grundsätzlich ohne Angabe von Daten gestartet werden, um mit uns in Kontakt zu treten. Sind
|
||||
wir offline, können Sie uns über den Chat eine Nachricht hinterlassen. Wir benötigen in diesem Fall allerdings
|
||||
zumindest Ihre E-Mailadresse sowie den Inhalt Ihrer Mitteilung, um auf Ihre Anfrage reagieren zu können. Die von
|
||||
Ihnen freiwillig mitgeteilten Daten werden ausschließlich für die Verarbeitung der Konversation oder Buchungsanfrage
|
||||
verwendet.<br>
|
||||
Bei Nutzung des Kontaktformulars speichern wir zusätzlich aus Sicherheitsgründen noch Ihre IP-Adresse sowie Uhrzeit
|
||||
und Datum der Kontaktaufnahme. Bei Nutzung des Chats wird die IP-Adresse ausschließlich anonymisiert erhoben. </p>
|
||||
|
||||
<p><strong>2. Rechtsgrundlage für die Datenverarbeitung</strong><br>
|
||||
Rechtsgrundlage für die Verarbeitung der Daten ist Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse). Zielt der
|
||||
Kontakt auf den Abschluss eines Vertrages ab, so ist zusätzliche Rechtsgrundlage für die Verarbeitung Art. 6 Abs. 1
|
||||
lit. b DSGVO (zur Erfüllung eines Vertrags). </p>
|
||||
|
||||
<p><strong>3. Zweck der Datenverarbeitung</strong><br>
|
||||
Die Verarbeitung der personenbezogenen Daten der Kontaktaufnahme dient uns allein zur Bearbeitung der
|
||||
Kontaktaufnahme und Ihrem Anliegen. Darin liegt auch unser berechtigtes Interesse. Da die Kontaktaufnahme von Ihnen
|
||||
ausgeht, Ihnen freisteht und wir zuvor darüber informieren, wie wir mit den übermittelten Daten umgehen, überwiegt
|
||||
insoweit unser berechtigtes Interesse gegenüber Ihrem Persönlichkeitsrecht. Die Speicherung von IP-Adresse und
|
||||
Absendezeitpunkt dient dem Schutz vor Missbrauch. Auch insoweit überwiegt unser berechtigtes Interesse. </p>
|
||||
|
||||
<p><strong>4. Dauer der Speicherung</strong><br>
|
||||
Die Daten werden gelöscht, sobald sie für die Erreichung des Zweckes ihrer Erhebung nicht mehr erforderlich sind.
|
||||
Für die personenbezogenen Daten, die per E-Mail oder per Kontaktformular übersandt wurden, ist dies dann der Fall,
|
||||
wenn die jeweilige Konversation mit dem Nutzer beendet ist. Beendet ist die Konversation dann, wenn sich aus den
|
||||
Umständen entnehmen lässt, dass der betroffene Sachverhalt abschließend geklärt ist. Bei Nutzung der Chat-Funktion
|
||||
löschen wir die Daten unmittelbar nach erfolgreicher Kontaktaufnahme. Sollte eine Kontaktaufnahme scheitern, werden
|
||||
die Daten spätestens innerhalb von einer Woche die Daten gelöscht. </p>
|
||||
|
||||
<p><strong>5. Widerspruchs- und Beseitigungsmöglichkeit</strong><br>
|
||||
Der Nutzer hat jederzeit die Möglichkeit der Speicherung seiner personenbezogenen Daten zu widersprechen. In einem
|
||||
solchen Fall kann die Konversation nicht fortgeführt werden. Der Widerspruch kann sowohl per E-Mail, per Post oder
|
||||
Telefax erfolgen. <br>
|
||||
Alle personenbezogenen Daten, die im Zuge der Kontaktaufnahme gespeichert wurden, werden in diesem Fall von uns
|
||||
gelöscht. <br>
|
||||
Soweit Daten im Rahmen eines Vertragsverhältnisses erhoben werden, besteht die Möglichkeit des Widerspruchs nicht,
|
||||
da diese zwingend zur Durchführung des Vertrags notwendig sind.</p>
|
||||
|
||||
<h2>VI. Reisebuchung </h2>
|
||||
<p>
|
||||
<strong>1. Umfang der Datenverarbeitung</strong><br>
|
||||
Auf unserer Internetseite bieten wir Nutzern die Möglichkeit, sich unter Angabe personenbezogener Daten eine Reise
|
||||
zu buchen. Die Daten werden dabei in eine Eingabemaske eingegeben und an uns über eine Buchungssoftware übermittelt
|
||||
und gespeichert. Folgende Daten werden im Rahmen des Registrierungsprozesses erhoben:<br><u>Pflichtfelder:</u> <br>
|
||||
(1) Anrede, Vor- u. Nachname, Straße, Hausnummer, PLZ, Ort, Land, Telefonnummer,
|
||||
E-Mailadresse<br>
|
||||
(2) Zimmertyp<br>
|
||||
(3) Reiseteilnehmer (Geschlecht / Vor- u. Nachname/ Geburtsdatum) <br>
|
||||
(4) IP-Adresse des Nutzers / Datum und Uhrzeit der Registrierung<br>
|
||||
(5) Zahlungsart Kreditkartenzahlung: Kreditkartenhalter (Vor- und Nachname), Zahlung per* (Auswahl der Kreditkarte),
|
||||
Kreditkartennummer, CVC-Code, Gültig bis (Monat und Jahr)
|
||||
<br><u>Freiwillige Angaben:</u> <br>
|
||||
(6) Faxnummer<br>
|
||||
(7) Ihre Mitteilung </p>
|
||||
|
||||
<p><strong>2. Rechtsgrundlage für die Datenverarbeitung</strong><br>
|
||||
Rechtsgrundlagen für die Verarbeitung der Daten ist Art. 6 Abs. 1 lit. b DSGVO (vertragliche / vorvertragliche
|
||||
Durchführung), Ihre im Buchungsvorgang erteilte Einwilligung, Art. 6 Abs. 1 lit.a DSGVO, Art. 6 Abs. 1 lit. c DSGVO
|
||||
(gesetzliche Verpflichtung gemäß BGB, HGB, Fluggastdatengesetz, EU-Pauschalreiserichtlinie, AO, etc.) sowie Art. 6
|
||||
Abs. 1 lit. f DSGVO (berechtigtes Interesse). </p>
|
||||
|
||||
<p><strong>3. Zweck der Datenverarbeitung</strong><br>
|
||||
Die Datenverarbeitung ist zur Erfüllung des Reisevertrages und der damit verbundenen Leistungen zwingend notwendig.
|
||||
Dies ist Zweck der Datenverarbeitung. Unser berechtigtes Interesse an der jeweiligen Verarbeitung ergibt sich aus
|
||||
den nachfolgenden Zwecken:</p>
|
||||
<ul>
|
||||
<li>Unterstützung unserer Vertriebsorganisation bei der Reiseberatung und -betreuung und dem Vertrieb im Rahmen der
|
||||
Reisebetreuung
|
||||
</li>
|
||||
<li>Weiterentwicklung von Reisedienstleistungen und Zusatzprodukten</li>
|
||||
<li>Werbung, der Markt- und der Meinungsforschung</li>
|
||||
<li>Geltendmachung rechtlicher Ansprüche und Verteidigung bei rechtlichen Streitigkeiten</li>
|
||||
<li>Prävention und Aufklärung von Straftaten</li>
|
||||
<li>Gewährleistung der IT-Sicherheit und Verfügbarkeit des IT-Betriebs</li>
|
||||
</ul>
|
||||
<p>Unser Interesse an der jeweiligen Verarbeitung ergibt sich aus den jeweiligen Zwecken und ist im Übrigen
|
||||
wirtschaftlicher Natur (effiziente Aufgabenerfüllung, Vertrieb, Vermeidung von Rechtsrisiken).</p>
|
||||
|
||||
<p><strong>4. Dauer der Speicherung</strong><br>
|
||||
Die Daten werden gelöscht, sobald sie für die Erreichung des Zweckes ihrer Erhebung nicht mehr erforderlich sind, es
|
||||
sei denn wir sind gesetzlich zur Aufbewahrung der Daten, bspw. nach steuerrechtlichen Vorgaben oder aus anderen
|
||||
gesetzlichen Gründen verpflichtet. Die dort vorgegebenen Fristen zur Aufbewahrung bzw. Dokumentation betragen zwei
|
||||
bis maximal zehn Jahre. Schließlich beurteilt sich die Speicherdauer auch nach den gesetzlichen Verjährungsfristen,
|
||||
die zum Beispiel nach den §§ 195 ff. des Bürgerlichen Gesetzbuches (BGB) in der Regel drei Jahre. </p>
|
||||
|
||||
<p><strong>5. Datenübermittlung</strong><br>
|
||||
Zur Durchführung der Reise ist es notwendig Ihre Daten an Auftragsverabeiter (IT-Dienstleister, Buchungssysteme,
|
||||
Druckdienstleistungen), die Ihre Daten weisungsgebunden für uns verarbeiten sowie Dritte (Fluglinien, Hotels,
|
||||
Autovermietungen, etc.) in der EU / dem EWR, aber je nach Reiseziel auch in Drittländer, in denen keinerlei
|
||||
Datenschutzabkommen gelten (Bsp. Oman, Israel etc.) weiterzugeben. Empfänger der Daten sind insoweit auch
|
||||
Fluglinien, Hotels, Mietwagenunternehmen, öffentliche Stellen und Institutionen (Finanzbehörden, Botschaften des
|
||||
Ziellandes) bei Vorliegen einer gesetzlichen oder behördlichen Verpflichtung (Aufbewahrungspflichten,
|
||||
VISA-Beschaffung, Einholen von Einreisebestimmungen) sowie sonstige Stellen, für die Sie uns Ihre Einwilligung zur
|
||||
Datenübermittlung erteilt haben.<br><br>
|
||||
Im Hinblick auf Israel hat die EU-Kommission ein angemessenes Datenschutzniveau durch Angemessenheitsbeschluss
|
||||
2011/61/EU festgestellt. Im Hinblick auf Reiseländer wie <a href="/reisefuehrer/aegypten"
|
||||
class="intern-link show-layer keyword-link">Ägypten</a>,
|
||||
Jordanien, Oman, Usbekistan, Türkei und Marokko besteht kein angemessenes Datenschutzniveau. Wir weisen insoweit
|
||||
darauf hin, dass die Datenübermittlung in diese Länder mit Risiken verbunden ist. Buchen Sie eine Reise in eines der
|
||||
genannten Länder, ist die Übermittlung Ihrer personenbezogenen Daten für uns jedoch zwingend zur Vertragserfüllung
|
||||
notwendig. Wir sind daher gemäß Art. 49 Abs. 1 Unterabschnitt 1 lit. b) und c) berechtigt, Ihre Daten an unsere
|
||||
Dienstleister in dem jeweiligen Drittland zu übermitteln. <br><br>
|
||||
Mit der Buchung erklären Sie sich insoweit mit der Datenverarbeitung einverstanden. </p>
|
||||
|
||||
<p><strong>6. Verpflichtung zur Bereitstellung der Daten</strong><br>
|
||||
Sie sind im Rahmen einer Buchung verpflichtet, die zur Begründung, Durchführung und Beendigung der
|
||||
Geschäftsbeziehung notwendigen Daten zur Verfügung zu stellen. Sofern Sie die Daten nicht zur Verfügung stellen,
|
||||
können Sie über unsere Internetseite keine Reise buchen. </p>
|
||||
|
||||
<p><strong>7. Widerspruchs- und Beseitigungsmöglichkeit</strong><br>
|
||||
Eine vorzeitige Löschung der Daten ist nur möglich, soweit nicht vertragliche oder gesetzliche Verpflichtungen einer
|
||||
Löschung entgegenstehen. Anderenfalls sind derartige Begehren per E-Mail oder Post an den Verantwortlichen zu
|
||||
richten. </p>
|
||||
|
||||
<h2>VII. a Verwendung von YouTube-Videos</h2>
|
||||
<p>
|
||||
Unsere Website nutzt die YouTube-Einbettungsfunktion zur Anzeige und Wiedergabe von Videos des Anbieters „YouTube“,
|
||||
der zu der Google LLC., 1600 Amphitheatre Parkway, Mountain View, CA 94043, USA („Google“) gehört.<br><br>
|
||||
Hierbei wird der erweiterte Datenschutzmodus verwendet, der nach Anbieterangaben eine Speicherung von
|
||||
Nutzerinformationen erst bei Wiedergabe des/der Videos in Gang setzt. Wird die Wiedergabe eingebetteter
|
||||
YouTube-Videos gestartet, setzt der Anbieter „YouTube“ Cookies ein, um Informationen über das Nutzerverhalten zu
|
||||
sammeln. Hinweisen von „YouTube“ zufolge dienen diese unter anderem dazu, Videostatistiken zu erfassen, die
|
||||
Nutzerfreundlichkeit zu verbessern und missbräuchliche Handlungsweisen zu unterbinden. Wenn Sie bei Google
|
||||
eingeloggt sind, werden Ihre Daten direkt Ihrem Konto zugeordnet, wenn Sie ein Video anklicken. Wenn Sie die
|
||||
Zuordnung mit Ihrem Profil bei YouTube nicht wünschen, müssen Sie sich vor Aktivierung des Buttons ausloggen. Google
|
||||
speichert Ihre Daten (selbst für nicht eingeloggte Nutzer) als Nutzungsprofile und wertet diese aus. <br>
|
||||
Eine solche Auswertung erfolgt insbesondere gemäß Art. 6 Abs. 1 lit.f DSGVO auf Basis der berechtigten Interessen
|
||||
von Google an der Einblendung personalisierter Werbung, Marktforschung und/oder bedarfsgerechten Gestaltung seiner
|
||||
Website. <br>
|
||||
Ihnen steht ein Widerspruchsrecht zu gegen die Bildung dieser Nutzerprofile, wobei Sie sich zur Ausübung dessen an
|
||||
YouTube richten müssen. <br>
|
||||
Unabhängig von einer Wiedergabe der eingebetteten Videos wird bei jedem Aufruf dieser Website eine Verbindung zum
|
||||
Google-Netzwerk „DoubleClick“ aufgenommen, was ohne unseren Einfluss weitere Datenverarbeitungsvorgänge auslösen
|
||||
kann.<br>
|
||||
Google LLC mit Sitz in den USA ist für das us-europäische Datenschutzübereinkommen „Privacy Shield“ zertifiziert,
|
||||
welches die Einhaltung des in der EU geltenden Datenschutzniveaus gewährleistet.<br>
|
||||
Weitere Informationen zum Datenschutz bei „YouTube“ finden Sie in der Datenschutzerklärung des Anbieters unter: <a
|
||||
href="https://www.google.de/intl/de/policies/privacy" target="_blank">https://www.google.de/intl/de/policies/privacy</a>
|
||||
</p>
|
||||
|
||||
<h2>VII. b Verwendung von Google reCaptcha</h2>
|
||||
<p>
|
||||
</p>
|
||||
<p><strong>1. Umfang der Datenverarbeitung </strong><br>
|
||||
Zum Schutz ihrer Aufträge per Internetformular verwendet den Dienst reCAPTCHA des Unternehmens Google Inc. (Google).
|
||||
Die Abfrage dient der Unterscheidung, ob die Eingabe durch einen Menschen oder missbräuchlich durch automatisierte,
|
||||
maschinelle Verarbeitung erfolgt. <br>
|
||||
Die Abfrage schließt den Versand der IP-Adresse und ggf. weiterer von Google für den Dienst reCAPTCHA benötigter
|
||||
Daten an Google ein. Zu diesem Zweck wird Ihre Eingabe an Google übermittelt und dort weiter verwendet. Durch die
|
||||
Nutzung von reCaptcha erklären Sie sich damit einverstanden, dass die von Ihnen geleistete Erkennung in die
|
||||
Digitalisierung alter Werke einfließt. Im Falle der Aktivierung der IP-Anonymisierung auf dieser Webseite wird Ihre
|
||||
IP-Adresse von Google jedoch innerhalb von Mitgliedstaaten der Europäischen Union oder in anderen Vertragsstaaten
|
||||
des Abkommens über den Europäischen Wirtschaftsraum zuvor gekürzt. Nur in Ausnahmefällen wird die volle IP-Adresse
|
||||
an einen Server von Google in den USA übertragen und dort gekürzt. Im Auftrag des Betreibers dieser Website wird
|
||||
Google diese Informationen benutzen, um Ihre Nutzung dieses Dienstes auszuwerten. Die im Rahmen von reCaptcha von
|
||||
Ihrem Browser übermittelte IP-Adresse wird nicht mit anderen Daten von Google zusammengeführt. Für diese Daten
|
||||
gelten die abweichenden Datenschutzbestimmungen des Unternehmens Google. Weitere Informationen zu den
|
||||
Datenschutzrichtlinien von Google finden Sie unter:
|
||||
<a href="https://www.google.com/intl/de/policies/privacy/" target="_blank">https://www.google.com/intl/de/policies/privacy/</a>.
|
||||
</p>
|
||||
|
||||
<p><strong>2. Rechtsgrundlage</strong><br>
|
||||
Rechtsgrundlage ist Art. 6 Abs. 1 lit. f DSGVO.</p>
|
||||
|
||||
<p><strong>3. Zweck der Verarbeitung</strong><br>
|
||||
Die Verarbeitung dient der IT-Sicherheit und dem Schutz vor Missbrauch. Darin liegt auch unser berechtigtes
|
||||
Interesse. </p>
|
||||
|
||||
|
||||
<h2>VIII. Rechte der betroffenen Person</h2>
|
||||
<p>
|
||||
Werden personenbezogene Daten von Ihnen verarbeitet, sind Sie Betroffener i.S.d. DSGVO und es stehen Ihnen folgende
|
||||
Rechte zu:</p>
|
||||
|
||||
<p><strong>1. Auskunftsrecht</strong><br>
|
||||
Sie können von uns eine Bestätigung darüber verlangen, ob personenbezogene Daten, die Sie betreffen, von uns
|
||||
verarbeitet werden.
|
||||
Liegt eine solche Verarbeitung vor, können Sie von uns über folgende Informationen Auskunft verlangen:<br>
|
||||
(1) die Zwecke, zu denen die personenbezogenen Daten verarbeitet werden;<br>
|
||||
(2) die Kategorien von personenbezogenen Daten, welche verarbeitet werden;<br>
|
||||
(3) die Empfänger bzw. die Kategorien von Empfängern, gegenüber denen die Sie betreffenden personenbezogenen Daten
|
||||
offengelegt wurden oder noch offengelegt werden;<br>
|
||||
(4) die geplante Dauer der Speicherung der Sie betreffenden personenbezogenen Daten oder, falls konkrete Angaben
|
||||
hierzu nicht möglich sind, Kriterien für die Festlegung der Speicherdauer;<br>
|
||||
(5) das Bestehen eines Rechts auf Berichtigung oder Löschung der Sie betreffenden personenbezogenen Daten, eines
|
||||
Rechts auf Einschränkung der Verarbeitung durch den Verantwortlichen oder eines Widerspruchsrechts gegen diese
|
||||
Verarbeitung; <br>
|
||||
(6) das Bestehen eines Beschwerderechts bei einer Aufsichtsbehörde;<br>
|
||||
(7) alle verfügbaren Informationen über die Herkunft der Daten, wenn die personenbezogenen Daten nicht bei der
|
||||
betroffenen Person erhoben werden;<br>
|
||||
(8) das Bestehen einer automatisierten Entscheidungsfindung einschließlich Profiling gemäß Art. 22 Abs. 1 und 4
|
||||
DSGVO und – zumindest in diesen Fällen – aussagekräftige Informationen über die involvierte Logik sowie die
|
||||
Tragweite und die angestrebten Auswirkungen einer derartigen Verarbeitung für die betroffene Person.<br><br>
|
||||
Ihnen steht das Recht zu, Auskunft darüber zu verlangen, ob die betreffenden personenbezogenen Daten in ein
|
||||
Drittland oder an eine internationale Organisation übermittelt werden. In diesem Zusammenhang können Sie verlangen,
|
||||
über die geeigneten Garantien gem. Art. 46 DSGVO im Zusammenhang mit der Übermittlung unterrichtet zu werden.</p>
|
||||
|
||||
<p><strong>2. Recht auf Berichtigung</strong><br>
|
||||
Sie haben ein Recht auf Berichtigung und/oder Vervollständigung, sofern die verarbeiteten personenbezogenen Daten,
|
||||
die Sie betreffen, unrichtig oder unvollständig sind. Wir haben die Berichtigung dann unverzüglich vorzunehmen.</p>
|
||||
|
||||
<p><strong>3. Recht auf Einschränkung der Verarbeitung</strong><br>
|
||||
Unter den folgenden Voraussetzungen können Sie die Einschränkung der Verarbeitung der Sie betreffenden
|
||||
personenbezogenen Daten verlangen:<br>
|
||||
(1) wenn Sie die Richtigkeit der Sie betreffenden personenbezogenen für eine Dauer bestreiten, die es uns
|
||||
ermöglicht, die Richtigkeit der personenbezogenen Daten zu überprüfen;<br>
|
||||
(2) die Verarbeitung durch uns unrechtmäßig ist, Sie die Löschung der personenbezogenen Daten durch uns ablehnen und
|
||||
stattdessen die Einschränkung der Nutzung der personenbezogenen Daten von uns verlangen;<br>
|
||||
(3) wir die personenbezogenen Daten für die Zwecke der Verarbeitung nicht länger benötigen, Sie diese jedoch zur
|
||||
Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen benötigen, oder<br>
|
||||
(4) wenn Sie Widerspruch gegen die Verarbeitung gemäß Art. 21 Abs. 1 DSGVO eingelegt haben und noch nicht feststeht,
|
||||
ob unsere berechtigten Gründe gegenüber Ihren Gründen überwiegen.<br><br>
|
||||
Wurde die Verarbeitung der Sie betreffenden personenbezogenen Daten eingeschränkt, dürfen diese Daten – von ihrer
|
||||
Speicherung abgesehen – nur mit Ihrer Einwilligung oder zur Geltendmachung, Ausübung oder Verteidigung von
|
||||
Rechtsansprüchen oder zum Schutz der Rechte einer anderen natürlichen oder juristischen Person oder aus Gründen
|
||||
eines wichtigen öffentlichen Interesses der Union oder eines Mitgliedstaats von uns verarbeitet werden.<br>
|
||||
Wurde die Einschränkung der Verarbeitung nach den o.g. Voraussetzungen eingeschränkt, werden Sie von uns
|
||||
unterrichtet bevor die Einschränkung aufgehoben wird.</p>
|
||||
|
||||
<p><strong>4. Recht auf Löschung</strong><br><u>a) Löschungspflicht</u><br>
|
||||
Sie können von uns verlangen, dass die Sie betreffenden personenbezogenen Daten unverzüglich gelöscht werden. Wir
|
||||
sind verpflichtet, diese Daten unverzüglich zu löschen, sofern einer der folgenden Gründe zutrifft:<br>
|
||||
(1) Die Sie betreffenden personenbezogenen Daten sind für die Zwecke, für die sie erhoben oder auf sonstige Weise
|
||||
verarbeitet wurden, nicht mehr notwendig.<br>
|
||||
(2) Sie widerrufen Ihre Einwilligung, auf die sich die Verarbeitung gem. Art. 6 Abs. 1 lit. a oder Art. 9 Abs. 2
|
||||
lit. a DSGVO stützte, und es fehlt an einer anderweitigen Rechtsgrundlage für die Verarbeitung.<br>
|
||||
(3) Sie legen gem. Art. 21 Abs. 1 DSGVO Widerspruch gegen die Verarbeitung ein und es liegen keine vorrangigen
|
||||
berechtigten Gründe für die Verarbeitung vor, oder Sie legen gem. Art. 21 Abs. 2 DSGVO Widerspruch gegen die
|
||||
Verarbeitung ein. <br>
|
||||
(4) Die Sie betreffenden personenbezogenen Daten wurden unrechtmäßig verarbeitet. <br>
|
||||
(5) Die Löschung der Sie betreffenden personenbezogenen Daten ist zur Erfüllung einer rechtlichen Verpflichtung nach
|
||||
dem Unionsrecht oder dem Recht der Mitgliedstaaten erforderlich, dem wir unterliegen.<br>
|
||||
(6) Die Sie betreffenden personenbezogenen Daten wurden in Bezug auf angebotene Dienste der Informationsgesellschaft
|
||||
gemäß Art. 8 Abs. 1 DSGVO erhoben.</p>
|
||||
|
||||
<p><u>b) Information an Dritte</u><br>
|
||||
Haben wir die Sie betreffenden personenbezogenen Daten öffentlich gemacht und sind wir gem. Art. 17 Abs. 1 DSGVO zu
|
||||
deren Löschung verpflichtet, so treffen wir angemessene Maßnahmen (auch technischer Art), um Verantwortliche, die
|
||||
die personenbezogenen Daten verarbeiten, darüber zu informieren, dass Sie als betroffene Person die Löschung aller
|
||||
Links zu diesen personenbezogenen Daten oder von Kopien oder Replikationen dieser personenbezogenen Daten verlangt
|
||||
haben. </p>
|
||||
|
||||
<p><u>c) Ausnahmen</u><br>
|
||||
Das Recht auf Löschung besteht nicht, soweit die Verarbeitung erforderlich ist<br>
|
||||
(1) zur Ausübung des Rechts auf freie Meinungsäußerung und Information;<br>
|
||||
(2) zur Erfüllung einer rechtlichen Verpflichtung, die die Verarbeitung nach dem Recht der Union oder der
|
||||
Mitgliedstaaten, dem wir unterliegen erfordert, oder zur Wahrnehmung einer Aufgabe, die im öffentlichen Interesse
|
||||
liegt oder in Ausübung öffentlicher Gewalt erfolgt, die uns ggfs. übertragen wurde;<br>
|
||||
(3) aus Gründen des öffentlichen Interesses im Bereich der öffentlichen Gesundheit gemäß Art. 9 Abs. 2 lit. h und i
|
||||
sowie Art. 9 Abs. 3 DSGVO;<br>
|
||||
(4) für im öffentlichen Interesse liegende Archivzwecke, wissenschaftliche oder historische Forschungszwecke oder
|
||||
für statistische Zwecke gem. Art. 89 Abs. 1 DSGVO, soweit das unter Abschnitt a) genannte Recht voraussichtlich die
|
||||
Verwirklichung der Ziele dieser Verarbeitung unmöglich macht oder ernsthaft beeinträchtigt, oder<br>
|
||||
(5) zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen.</p>
|
||||
|
||||
<p><strong>5. Recht auf Unterrichtung</strong><br>
|
||||
Haben Sie das Recht auf Berichtigung, Löschung oder Einschränkung der Verarbeitung uns gegenüber geltend gemacht,
|
||||
sind wir verpflichtet, allen Empfängern, denen Ihre personenbezogenen Daten offengelegt wurden, die Berichtigung,
|
||||
Löschung der Daten oder Einschränkung der Verarbeitung mitzuteilen, es sei denn, dies erweist sich als unmöglich
|
||||
oder ist für uns mit einem unverhältnismäßigen Aufwand verbunden.
|
||||
Ihnen steht das Recht zu, von uns über diese Empfänger unterrichtet zu werden.</p>
|
||||
|
||||
<p><strong>6. Recht auf Datenübertragbarkeit</strong><br>
|
||||
Sie haben das Recht, die Sie betreffenden personenbezogenen Daten von uns in einem strukturierten, gängigen und
|
||||
maschinenlesbaren Format zu erhalten. Außerdem haben Sie das Recht diese Daten einem anderen Verantwortlichen ohne
|
||||
Behinderung durch uns zu übermitteln, sofern<br>
|
||||
(1) die Verarbeitung auf einer Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO oder Art. 9 Abs. 2 lit. a DSGVO oder auf
|
||||
einem Vertrag gem. Art. 6 Abs. 1 lit. b DSGVO beruht und<br>
|
||||
(2) die Verarbeitung mithilfe automatisierter Verfahren erfolgt.<br>
|
||||
Sie haben insoweit auch das Recht, dass wir Ihre Daten einem anderen Verantwortlichen übermitteln, soweit dies
|
||||
technisch machbar ist. Freiheiten und Rechte anderer Personen dürfen hierdurch jedoch nicht beeinträchtigt
|
||||
werden.<br>
|
||||
Dieses Recht auf Datenübertragbarkeit gilt nicht für eine Verarbeitung personenbezogener Daten, die für die
|
||||
Wahrnehmung einer Aufgabe erforderlich ist, die im öffentlichen Interesse liegt oder in Ausübung öffentlicher Gewalt
|
||||
erfolgt, die uns übertragen wurde.</p>
|
||||
|
||||
<p><strong>7. Widerspruchsrecht</strong><br>
|
||||
Sie haben das Recht, aus Gründen, die sich aus ihrer besonderen Situation ergeben, jederzeit gegen die Verarbeitung
|
||||
der Sie betreffenden personenbezogenen Daten, die aufgrund von Art. 6 Abs. 1 lit. e oder f DSGVO erfolgt,
|
||||
Widerspruch einzulegen; dies gilt auch für ein auf diese Bestimmungen gestütztes Profiling. <br>
|
||||
Wir verarbeiten die Sie betreffenden personenbezogenen Daten nicht mehr, es sei denn, wir können zwingende
|
||||
schutzwürdige Gründe für die Verarbeitung nachweisen, die Ihre Interessen, Rechte und Freiheiten überwiegen, oder
|
||||
die Verarbeitung dient der Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen.</p>
|
||||
|
||||
<p><strong>8. Recht auf Widerruf der datenschutzrechtlichen Einwilligungserklärung</strong><br>
|
||||
Sie haben das Recht, datenschutzrechtliche Einwilligungserklärungen jederzeit zu widerrufen. Durch den Widerruf der
|
||||
Einwilligung wird die Rechtmäßigkeit der aufgrund der Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht
|
||||
berührt.</p>
|
||||
|
||||
<p><strong>9. Recht auf Beschwerde bei einer Aufsichtsbehörde</strong><br>
|
||||
Unbeschadet eines anderweitigen verwaltungsrechtlichen oder gerichtlichen Rechtsbehelfs steht Ihnen das Recht auf
|
||||
Beschwerde bei einer Aufsichtsbehörde, insbesondere in dem Mitgliedstaat ihres Aufenthaltsorts, ihres Arbeitsplatzes
|
||||
oder des Orts des mutmaßlichen Verstoßes, zu, wenn Sie der Ansicht sind, dass die Verarbeitung der Sie betreffenden
|
||||
personenbezogenen Daten gegen die DSGVO verstößt.
|
||||
Die Aufsichtsbehörde, bei der die Beschwerde eingereicht wurde, unterrichtet Sie als Beschwerdeführer über den Stand
|
||||
und die Ergebnisse der Beschwerde einschließlich der Möglichkeit eines gerichtlichen Rechtsbehelfs nach Art. 78
|
||||
DSGVO.</p>
|
||||
|
||||
<h2>IX. Herausgabe von zwingend benötigten pb. Daten</h2>
|
||||
<p>
|
||||
Im Rahmen unserer Geschäftsbeziehung benötigen wir von Ihnen zwingend folgende personenbezogenen Daten</p>
|
||||
<ul>
|
||||
<li>Daten, die für die Aufnahme und die Durchführung der Geschäftsbeziehung gebraucht werden</li>
|
||||
<li>Daten, die für die Erfüllung der damit verbundenen vertraglichen Pflichten notwendig sind</li>
|
||||
<li>Daten, zu deren Erhebung wir rechtlich verpflichtet sind.</li>
|
||||
</ul>
|
||||
<p>Ohne diese personenbezogenen Daten sind wir in der Regel nicht in der Lage, einen Vertrag mit Ihnen einzugehen oder
|
||||
auszuführen.</p>
|
||||
|
||||
<h2>X. Transportverschlüsselung</h2>
|
||||
<p>
|
||||
Um Ihre Daten vor unerwünschten Zugriffen zu schützen, setzen wir auf unseren Seiten ein Verschlüsselungsverfahren
|
||||
ein. Ihre Angaben werden dann von Ihrem Rechner zu unserem Server und umgekehrt über das Internet mittels einer 128
|
||||
Bit TLS-Verschlüsselung (Transport Layer Security) (Hinweis, wir empfehlen mindestens eine TLS 1.2-Verschlüsselung)
|
||||
übertragen. Sie erkennen dies daran, dass auf der Statusleiste Ihres Browsers das Schloss-Symbol geschlossen ist und
|
||||
die Adresszeile mit https:// beginnt. Wir verzichten auf eine Verschlüsselung, wenn sie lediglich allgemein
|
||||
verfügbare Informationen mit uns austauschen.</p>
|
||||
|
||||
<p>Stand Mai 2018</p>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default waves-effect" data-dismiss="modal">{{__('close')}}</button>
|
||||
</div>
|
||||
38
resources/views/legal/data_protected.blade.php
Executable file
38
resources/views/legal/data_protected.blade.php
Executable file
|
|
@ -0,0 +1,38 @@
|
|||
@extends('layouts.auth')
|
||||
|
||||
@section('content')
|
||||
|
||||
|
||||
<!-- Content -->
|
||||
|
||||
<div class="authentication-wrapper authentication-2 ui-bg-cover ui-bg-overlay-container px-4" style="background-color:#ffc926;">
|
||||
<div class="ui-bg-overlay bg-dark opacity-25"></div>
|
||||
|
||||
<div class="authentication-inner py-5" style="max-width: none; ">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="p-4 p-sm-5">
|
||||
<a class="btn btn-primary pull-right" href="{{url('/')}}">{{__('back')}}</a>
|
||||
|
||||
<!-- Logo -->
|
||||
<div class="d-flex justify-content-center align-items-center pb-2 mb-4">
|
||||
<div class="">
|
||||
<div class="w-100 position-relative">
|
||||
<a href="https://www.sterntours.de"><img src="{{ asset('/images/stern-tours-logo.png') }}" alt="STERN TOURS" class=""></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Logo -->
|
||||
@include('legal.data_protect_de')
|
||||
|
||||
<a class="btn btn-primary pull-right" href="{{url('/')}}">{{__('back')}}</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
@endsection
|
||||
36
resources/views/legal/imprint.blade.php
Executable file
36
resources/views/legal/imprint.blade.php
Executable file
|
|
@ -0,0 +1,36 @@
|
|||
@extends('layouts.auth')
|
||||
|
||||
@section('content')
|
||||
|
||||
|
||||
<!-- Content -->
|
||||
|
||||
<div class="authentication-wrapper authentication-2 ui-bg-cover ui-bg-overlay-container px-4" style="background-color:#ffc926;">
|
||||
<div class="ui-bg-overlay bg-dark opacity-25"></div>
|
||||
|
||||
<div class="authentication-inner py-5" style="max-width: none; ">
|
||||
|
||||
<div class="card">
|
||||
|
||||
<div class="p-4 p-sm-5">
|
||||
<a class="btn btn-primary pull-right" href="{{url('/')}}">{{__('back')}}</a>
|
||||
|
||||
<!-- Logo -->
|
||||
<div class="d-flex justify-content-center align-items-center pb-2 mb-4">
|
||||
<div class="">
|
||||
<div class="w-100 position-relative">
|
||||
<a href="https://www.sterntours.de"><img src="{{ asset('/images/stern-tours-logo.png') }}" alt="STERN TOURS" class=""></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- / Logo -->
|
||||
@include('legal.imprint_de')
|
||||
|
||||
<a class="btn btn-primary pull-right" href="{{url('/')}}">{{__('back')}}</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endsection
|
||||
85
resources/views/legal/imprint_de.blade.php
Normal file
85
resources/views/legal/imprint_de.blade.php
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 class="modal-title" id="myModalUpdate">{{ __('imprint') }}
|
||||
</h3>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
<h1>Impressum vom Kulturreise-Spezialist STERN TOURS aus Berlin</h1>
|
||||
|
||||
<p class="ft">
|
||||
Verantwortlicher im Sinne des Presserechts sowie Diensteanbieter nach § 5 TMG (Telemediengesetz) und Betreiber der Webseite<br><br><strong>STERN TOURS GmbH</strong><br>Emser Straße 3<br>
|
||||
10719 Berlin
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Geschäftsführer: Thomas Stern<br>
|
||||
E-Mail: stern@sterntours.de<br>
|
||||
Tel.: 030 / 700 94 100<br>
|
||||
Fax: 030 / 700 94 1044
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Registergericht: Amtsgericht Charlottenburg<br>
|
||||
Registernummer: HRB 67111<br>
|
||||
Steuernummer: 27/545/30703<br>
|
||||
UST-Ident.-Nr.: DE192609253<br>
|
||||
Finanzamt: Wilmersdorf
|
||||
</p>
|
||||
|
||||
<p>Wir vermitteln Reiseversicherungen im Status eines erlaubnisfreien Annexvermittlers gemäß § 34d Abs. 8 Nr. 1 Gewerbeordnung (GewO).</p>
|
||||
<h2>Beschwerdestelle bei Streitigkeiten mit Versicherungsvermittlern</h2>
|
||||
<p>Versicherungsombudsmann e.V.<br>
|
||||
Postfach 08 06 32<br>
|
||||
10006 Berlin<br>
|
||||
Telefon: 0800 3696000<br>
|
||||
Fax: 0800 3699000<br>
|
||||
E-Mail: beschwerde@versicherungsombudsmann.de<br><a href="https://www.versicherungsombudsmann.de/" target="_blank" rel="nofollow">https://www.versicherungsombudsmann.de/</a></p>
|
||||
|
||||
<h2>Online-Streitbeilegung</h2>
|
||||
<p>gemäß Art. 14 Abs. 1 ODR-VO: Die Europäische Kommission stellt eine Plattform zur Online-Streitbeilegung (OS) bereit, die Sie unter <a href="http://ec.europa.eu/consumers/odr/" target="_blank">http://ec.europa.eu/consumers/odr/</a> finden.</p>
|
||||
|
||||
|
||||
<h2>Nutzungshinweis</h2>
|
||||
|
||||
<p class="ft">
|
||||
Eine unerlaubte Verwendung, Reproduktion, Weitergabe, Veröffentlichungen oder eine kommerzielle Nutzung ohne Genehmigung des Urhebers der auf dieser Website befindlichen Inhalte ist untersagt und wird sowohl straf- als auch zivilrechtlich verfolgt!
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Eine Haftung für die Richtigkeit, Vollständigkeit oder Aktualität der hier dargestellten Inhalte kann nicht übernommen werden. Ferner wird keine Haftung für Schäden übernommen, die durch den Gebrauch dieser Website entstehen könnten. Die auf der Webseite enthaltenen Daten sind nicht als offiziell anzusehen. Produktpreise und Serviceleistungen, die in der Webseite erscheinen, sind möglicherweise falsch.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
<b>Allgemeiner Hinweis</b> Alle genannten Informationen und Angebote können ohne Angabe von Gründen jederzeit geändert werden. Irrtümer und Fehler bleiben vorbehalten. Es gelten die jeweils rechtlich Allgemeine Geschäftsbedingungen und Verträge.
|
||||
</p>
|
||||
|
||||
<h2>Quellen</h2>
|
||||
|
||||
<p class="ft">
|
||||
Das Wissen, das hier zusammengetragen wurde, stammt aus Büchern, von Privatpersonen und diversen Internetseiten. Wir versichern jedoch, dass wir einzelne Sätze (abgesehen von Zahlen), denen wir uns aus Büchern oder anderen Websites bedient haben, nur sinngemäß und absolut in eigenen Worten wiedergegeben haben.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Desweiteren haben unsere User die Möglichkeit, eigene Länderinformationen und Reiseberichte zu schreiben und hier zu veröffentlichen. Diese werden dazu angehalten, nur Texte und Bilder zu verwenden, die sie selber produziert haben, um keinerlei Urheberrechte zu verletzen. Die E-Mail- und IP-Adressen aller User werden von unserem System erfasst und können zurückverfolgt werden. STERN TOURS übernimmt, trotz sorgfältiger Kontrollen, keine Haftung für von Usern gepostete Beiträge.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
<b>Sonstiger Text</b> Auswärtiges Amt, Privatpersonen, das Internet, User.
|
||||
</p>
|
||||
|
||||
<p class="ft">
|
||||
Einige der verwendeten Fotos sind aus den Datenbanken von fotolia.de, photocase.com, sxc.hu und pixelio.de. Vielen Dank für die Erlaubnis der Veröffentlichung.
|
||||
</p>
|
||||
|
||||
<h2>Bildnachweis</h2>
|
||||
|
||||
<p class="ft">
|
||||
In unserem Bildnachweis ist sämtliches Bildmaterial, das wir zur Illustration aus externen Quellen übernommen haben, aufgelistet. Solche externen Quellen sind entweder Imagestocks und Bilddatenbanken aus dem Internet wie beispielsweise die Plattform www.fotolia.de, oder es handelt sich um Bildmaterial, das uns freundlicherweise von unseren Kunden zur Nutzung zur Verfügung gestellt wurde. Vielen Dank dafür. Wir behandeln die Quellenangeben mit größter Sorgfalt, um etwaigen Rechtsstreitigkeiten vorzubeugen. Das Urheberrecht ist für viele Internetnutzer offenbar ein schwieriges Thema. Uns ist die Brisanz von Urheberrechtsverletzungen bewusst, so dass wir uns, wie gesagt, um Vollständigkeit und Transparenz bemühen. Sollten Sie dennoch einmal feststellen, dass eines Ihrer Werke ohne die Nennung Ihres Namens verwendet wurde kontaktieren Sie uns bitte zuerst. Wir werden dann umgehend die Angaben ergänzen, denn wir wollen uns nicht mit fremden Federn schmücken. Auch das darf man von einem seriösen Reiseveranstalter schließlich erwarten.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default waves-effect" data-dismiss="modal">{{__('close')}}</button>
|
||||
</div>
|
||||
130
resources/views/translation/_index.blade.php
Normal file
130
resources/views/translation/_index.blade.php
Normal file
|
|
@ -0,0 +1,130 @@
|
|||
@extends('layouts.layout-2-2')
|
||||
|
||||
|
||||
@section('content')
|
||||
<style type="text/css">
|
||||
.form-control.has-error {
|
||||
border: 1px solid #ea8e49;
|
||||
}
|
||||
</style>
|
||||
<!-- row -->
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="white-box p-0 min-height-500">
|
||||
<!-- .left-right-aside-column-->
|
||||
<div class="page-aside">
|
||||
<!-- .left-aside-column-->
|
||||
<div class="left-aside">
|
||||
<div class="scrollable">
|
||||
<ul class="list-style-none">
|
||||
<li class="box-label">Choose <select onchange="if (this.value) window.location.href=this.value" >
|
||||
<option value="">Pick one:</option>
|
||||
@foreach($langs as $lang)
|
||||
<option value="{{ url('/admin/translation/0/'.$lang.'/'.$langsource.'/'.$show) }}" @if($language == $lang) selected @endif>{{ $lang }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</li>
|
||||
<li class="divider"></li>
|
||||
@foreach($files as $fl)
|
||||
<li <?php if(substr($fl, 0, strrpos($fl,' (')) === $edit) echo 'class="font-bold"' ?>><a href="{{ url('/admin/translation/'.substr($fl, 0, strrpos($fl,' (')).'/'.$language.'/'.$langsource.'/'.$show) }}">{{ $fl }}</a></li>
|
||||
@endforeach
|
||||
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@if($translations)
|
||||
|
||||
|
||||
|
||||
{!! Form::open([ 'url' => route('admin_translation_update', [$file, $language, $langsource, $show]), 'method' => 'post', 'class' => 'form-horizontal' ]) !!}
|
||||
|
||||
<!-- /.left-aside-column-->
|
||||
<div class="right-aside">
|
||||
|
||||
|
||||
<div class="clearfix"></div>
|
||||
<div class="scrollable">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"><br></div>
|
||||
|
||||
<div class="table-responsive">
|
||||
|
||||
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="20%">Key</th>
|
||||
<th width="40%">Source
|
||||
<select onchange="if (this.value) window.location.href=this.value" >
|
||||
<option value="">Pick one:</option>
|
||||
@foreach($langs as $source)
|
||||
<option value="{{ url('/admin/translation/'.$file.'/'.$language.'/'.$source.'/'.$show) }}" @if($source == $langsource) selected @endif>{{ $source }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</th>
|
||||
<th width="40%">Translation
|
||||
<select onchange="if (this.value) window.location.href=this.value" >
|
||||
<option value="">Pick one:</option>
|
||||
@foreach($langs as $lang)
|
||||
<option value="{{ url('/admin/translation/'.$file.'/'.$lang.'/'.$langsource.'/'.$show) }}" @if($language == $lang) selected @endif>{{ $lang }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
|
||||
<select onchange="if (this.value) window.location.href=this.value" >
|
||||
<option value="{{ url('/admin/translation/'.$file.'/'.$language.'/'.$langsource.'/all') }}" @if($show == 'all') selected @endif>ALL</option>
|
||||
<option value="{{ url('/admin/translation/'.$file.'/'.$language.'/'.$langsource.'/empty') }}" @if($show == 'empty') selected @endif>EMPTY</option>
|
||||
</select>
|
||||
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@foreach($translations as $key => $value)
|
||||
@include('components.translation_row', [
|
||||
'key' => $key,
|
||||
'value' => $value,
|
||||
'language'=> $language,
|
||||
'parent' => null,
|
||||
'prefix' => $prefix,
|
||||
'langsource' => $langsource,
|
||||
'show' => $show,
|
||||
])
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
@endif
|
||||
|
||||
<!-- .left-aside-column-->
|
||||
</div>
|
||||
<!-- /.left-right-aside-column-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
|
||||
@endsection
|
||||
181
resources/views/translation/eloquent_index.blade.php
Normal file
181
resources/views/translation/eloquent_index.blade.php
Normal file
|
|
@ -0,0 +1,181 @@
|
|||
@extends('layouts.app-main')
|
||||
|
||||
|
||||
@section('content')
|
||||
|
||||
<style type="text/css">
|
||||
.form-control.has-error {
|
||||
border: 1px solid #ea8e49;
|
||||
}
|
||||
</style>
|
||||
<!-- row -->
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="white-box p-0 min-height-500">
|
||||
<!-- .left-right-aside-column-->
|
||||
<div class="page-aside">
|
||||
<!-- .left-aside-column-->
|
||||
<div class="left-aside">
|
||||
<div class="scrollable">
|
||||
<ul class="list-style-none">
|
||||
|
||||
<?php /*
|
||||
<li class="box-label">Choose <select onchange="if (this.value) window.location.href=this.value" >
|
||||
<option value="">Pick one:</option>
|
||||
@foreach($langs as $lang)
|
||||
<option value="{{ url('/admin/trans/eloquent/0/'.$lang.'/'.$langsource.'/'.$show) }}" @if($language == $lang) selected @endif>{{ $lang }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</li>
|
||||
*/?>
|
||||
<li class="divider"></li>
|
||||
@foreach($files as $k => $fl)
|
||||
<li <?php if($fl == $edit) echo 'class="font-bold"' ?>><a href="{{ url('/admin/trans/eloquent/'.$k.'/'.$language.'/'.$langsource.'/all') }}">{{ $fl }}</a></li>
|
||||
@endforeach
|
||||
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@if($entries)
|
||||
|
||||
<div class="right-aside">
|
||||
|
||||
<div class="scrollable">
|
||||
<div class="table-responsive">
|
||||
|
||||
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@foreach($entries as $entry)
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{{ url('/admin/trans/eloquent/'.$edit.'/'.$language.'/'.$langsource.'/detail/'.$entry->id) }} ">
|
||||
{{ $entry->name ? $entry->name : $entry->title }}</a>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
@endif
|
||||
|
||||
|
||||
@if($translations)
|
||||
|
||||
{!! Form::open([ 'url' => route('admin_trans_eloquent_update', [$file, $language, $langsource, $show, $id]), 'method' => 'post', 'class' => 'form-horizontal' ]) !!}
|
||||
|
||||
<!-- /.left-aside-column-->
|
||||
<div class="right-aside">
|
||||
|
||||
|
||||
<div class="clearfix"></div>
|
||||
<div class="scrollable">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"><br></div>
|
||||
|
||||
<div class="table-responsive">
|
||||
|
||||
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="50%">Source
|
||||
<select onchange="if (this.value) window.location.href=this.value" >
|
||||
<option value="">Pick one:</option>
|
||||
@foreach($langs as $source)
|
||||
<option value="{{ url('/admin/trans/eloquent/'.$file.'/'.$language.'/'.$source.'/'.$show.'/'.$id) }}" @if($source == $langsource) selected @endif>{{ $source }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</th>
|
||||
<th width="50%">Translation
|
||||
<select onchange="if (this.value) window.location.href=this.value" >
|
||||
<option value="">Pick one:</option>
|
||||
@foreach($langs as $lang)
|
||||
@if($lang != "de")
|
||||
<option value="{{ url('/admin/trans/eloquent/'.$file.'/'.$lang.'/'.$langsource.'/'.$show.'/'.$id) }}" @if($language == $lang) selected @endif>{{ $lang }}</option>
|
||||
@endif
|
||||
@endforeach
|
||||
</select>
|
||||
|
||||
<?php /* <select onchange="if (this.value) window.location.href=this.value" >
|
||||
<option value="{{ url('/admin/trans/eloquent/'.$file.'/'.$language.'/'.$langsource.'/all/'.$id) }}" @if($show == 'all') selected @endif>ALL</option>
|
||||
<option value="{{ url('/admin/trans/eloquent/'.$file.'/'.$language.'/'.$langsource.'/empty/'.$id) }}" @if($show == 'empty') selected @endif>EMPTY</option>
|
||||
</select>
|
||||
*/
|
||||
?>
|
||||
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($fields as $field)
|
||||
|
||||
<?php $bool = false; ?>
|
||||
<tr <?php if($show == 'empty' && $bool) echo 'style="display:none"'; ?>>
|
||||
<td>{!! $translations->{$field} !!}</td>
|
||||
<td>
|
||||
<?php
|
||||
$old = $field;
|
||||
$class = "";
|
||||
if($field != 'name' && $field != 'title' && $field != 'direction')
|
||||
$class = 'summernote';
|
||||
?>
|
||||
{{ $old }}
|
||||
<textarea name="trans_{{$field}}"
|
||||
class="{{$class}} form-control @if(!$bool) has-error @endif"
|
||||
rows="2">{{ old("{$old}", $translations->getTrans($field, $language)) }}</textarea>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
@endif
|
||||
|
||||
<!-- .left-aside-column-->
|
||||
</div>
|
||||
<!-- /.left-right-aside-column-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
|
||||
@endsection
|
||||
128
resources/views/translation/index.blade.php
Normal file
128
resources/views/translation/index.blade.php
Normal file
|
|
@ -0,0 +1,128 @@
|
|||
@extends('layouts.layout-2')
|
||||
@section('content')
|
||||
|
||||
<!-- row -->
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-3 col-xl-2">
|
||||
|
||||
<div>
|
||||
@foreach($files as $k => $fl)
|
||||
<a href="{{ url('/admin/translate/edit/'.$k) }}" class="media align-items-center bg-lighter text-dark py-1 px-1 @if($k == $language) active @endif">
|
||||
<div class=" text-center text-xlarge"><img src="{{asset('images/'.$k.'.png')}}" alt="" height="20"></div>
|
||||
<div class="media-body ml-3">
|
||||
{{ $k }}
|
||||
</div>
|
||||
</a>
|
||||
|
||||
@endforeach
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col">
|
||||
<div class="white-box p-0 min-height-500">
|
||||
<!-- .left-right-aside-column-->
|
||||
<div class="page-aside">
|
||||
<!-- .left-aside-column-->
|
||||
|
||||
@if($translations)
|
||||
|
||||
{!! Form::open([ 'url' => route('admin_translate_update', [$language, $from]), 'method' => 'post', 'class' => 'form-horizontal' ]) !!}
|
||||
|
||||
<!-- /.left-aside-column-->
|
||||
<div class="right-aside">
|
||||
|
||||
|
||||
<div class="clearfix"></div>
|
||||
<div class="scrollable">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="float-right">
|
||||
Translation from
|
||||
<select class="selectpicker" onchange="if (this.value) window.location.href=this.value" >
|
||||
@foreach($files as $k => $fl)
|
||||
<option value="{{ url('/admin/translate/edit/'.$language.'/'.$k) }}" @if($k == $from) selected @endif>{{ $k }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
<div class="">
|
||||
<br>
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"><br></div>
|
||||
|
||||
<div class="table-responsive">
|
||||
|
||||
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="30%">Source</th>
|
||||
|
||||
<th width="70%">Translation {{ $language }}
|
||||
|
||||
|
||||
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php
|
||||
$dest = (array) $translations['dest'];
|
||||
$from = (array) $translations['from'];
|
||||
|
||||
?>
|
||||
@foreach($translations['keys'] as $key => $value)
|
||||
<?php
|
||||
$text = $value;
|
||||
if(!empty($dest[$key])){
|
||||
$text = $dest[$key];
|
||||
}
|
||||
if(!empty($from[$key])){
|
||||
$text = $from[$key];
|
||||
}
|
||||
?>
|
||||
<tr <?php if($show == 'empty' && $bool) echo 'style="display:none"'; ?>>
|
||||
<td>{{ $text }}</td>
|
||||
<td>
|
||||
<textarea name="{{ $key }}"
|
||||
class="form-control"
|
||||
rows="4">@if(!empty($dest[$key])){{ $dest[$key] }}@endif</textarea>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
@endif
|
||||
|
||||
<!-- .left-aside-column-->
|
||||
</div>
|
||||
<!-- /.left-right-aside-column-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.row -->
|
||||
|
||||
@endsection
|
||||
47
resources/views/translation/translation_row.blade.php
Normal file
47
resources/views/translation/translation_row.blade.php
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
@if(is_array($value))
|
||||
<tr>
|
||||
<td @if(is_array($value))colspan="3"@endif>
|
||||
<h4>{{ $key }}</h4>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@foreach($value as $subKey => $subValue)
|
||||
@include('components.translation_row', [
|
||||
'language' => $language,
|
||||
'key' => $subKey,
|
||||
'value' => $subValue,
|
||||
'parent' => isset($parent) && $parent ? "{$parent}[$key]" : $key,
|
||||
'prefix' => "{$prefix}.{$key}",
|
||||
'langsource' => $langsource,
|
||||
'show' => $show,
|
||||
|
||||
])
|
||||
@endforeach
|
||||
@else
|
||||
|
||||
<?php
|
||||
$bool = Lang::has($prefix.'.'.$key, $language, false);
|
||||
?>
|
||||
<tr <?php if($show == 'empty' && $bool) echo 'style="display:none"'; ?>>
|
||||
<td>{{ $key }}</td>
|
||||
<td>{!! nl2br(htmlentities($value)) !!}</td>
|
||||
<td>
|
||||
<?php
|
||||
$old = $key;
|
||||
$name = $key;
|
||||
if (isset($parent) && $parent)
|
||||
{
|
||||
$name = "{$parent}[{$key}]";
|
||||
$old = preg_replace('/\[([^\]])\]/', ".$1", "{$parent}[{$key}]");
|
||||
}
|
||||
?>
|
||||
|
||||
<textarea name="{{ $name }}"
|
||||
class="form-control @if(!$bool) has-error @endif"
|
||||
rows="4">{{ old(
|
||||
"{$old}",
|
||||
$bool ? Lang::trans($prefix.'.'.$key, [], $language) : null
|
||||
) }}</textarea>
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
278
resources/views/travel/program/detail.blade.php
Executable file
278
resources/views/travel/program/detail.blade.php
Executable file
|
|
@ -0,0 +1,278 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
<h4 class="font-weight-bold py-3 mb-1">
|
||||
Programm verwalten
|
||||
</h4>
|
||||
|
||||
{!! Form::open(['url' => route('travel_program_detail', [$id]), 'class' => 'form-horizontal']) !!}
|
||||
<input type="hidden" name="id" id="id" value="{{$id}}">
|
||||
|
||||
<!-- draft -->
|
||||
<div class="card mb-2">
|
||||
<div class="card-body">
|
||||
<div class="form-group">
|
||||
<label class="custom-control custom-checkbox float-right">
|
||||
{!! Form::checkbox('status', 1, $program->status, ['class'=>'custom-control-input']) !!}
|
||||
<span class="custom-control-label">{{__('aktiv')}}</span>
|
||||
</label>
|
||||
|
||||
<label class="form-label" for="program_title">{{ __('Title') }}*</label>
|
||||
{{ Form::text('title', $program->title, array('placeholder'=>__('Title'), 'class'=>'form-control', 'id'=>'program_title', 'required'=>true)) }}
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="form-group col-sm-6">
|
||||
<label class="form-label" for="program_subtitle">{{ __('Subtitle') }}*</label>
|
||||
{{ Form::text('subtitle', $program->subtitle, array('placeholder'=>__('Subtitle'), 'class'=>'form-control', 'id'=>'program_subtitle', 'required'=>true)) }}
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-6">
|
||||
<label class="form-label" for="program_code">{{ __('Programm Code') }}*</label>
|
||||
{{ Form::text('program_code', $program->program_code, array('placeholder'=>__('Subtitle'), 'class'=>'form-control', 'id'=>'program_code', 'required'=>true)) }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="weekdays" class="form-label">{{__('Wochentage')}}*</label>
|
||||
<select class="selectpicker" data-style="btn-default" name="weekdays[]" multiple required>
|
||||
{!! HTMLHelper::getWeekdaysOptions(false, $program->getWeekdaysArray()) !!}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- program classes -->
|
||||
<div class="card mb-2">
|
||||
<h6 class="card-header">
|
||||
Eingetragene Kategorien/Klassen
|
||||
</h6>
|
||||
<div class="card-body">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Name</th>
|
||||
<th>Standard</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($program->classes as $value)
|
||||
|
||||
<tr>
|
||||
<td>
|
||||
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-class"
|
||||
data-id="{{ $value->id }}"
|
||||
data-name="{{ $value->name }}"
|
||||
data-description="{{ $value->description }}"
|
||||
data-standard="{{ $value->standard }}">
|
||||
<span class="far fa-edit"></span>
|
||||
</button>
|
||||
</td>
|
||||
<td>{{ $value->name }}</td>
|
||||
<td>@if($value->standard)
|
||||
<span class="badge badge-pill badge-success"><i class="far fa-check"></i></span>
|
||||
@else
|
||||
<span class="badge badge-pill badge-danger"><i class="far fa-times"></i></span>
|
||||
@endif
|
||||
</td>
|
||||
<td><a class="text-danger" href="{{ route('travel_program_class_delete', [$value->id]) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="far fa-trash-alt"></i></a></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="text-right">
|
||||
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-class"
|
||||
data-id="new"
|
||||
data-name=""
|
||||
data-description=""
|
||||
data-active="1"
|
||||
>Neue Katagorie anlegen</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- program classes -->
|
||||
<div class="card mb-2">
|
||||
<h6 class="card-header">
|
||||
Vorlagen Reiseprogramm (CRM)
|
||||
</h6>
|
||||
<div class="card-body">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Name</th>
|
||||
<th>Kategorie</th>
|
||||
<th>Wochentage</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($program->travel_program_drafts as $value)
|
||||
<tr>
|
||||
<td>
|
||||
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-draft"
|
||||
data-id="{{ $value->id }}"
|
||||
data-travel_class_id="{{ $value->travel_class_id }}"
|
||||
data-draft_id="{{ $value->draft_id }}"
|
||||
data-weekdays="{{ json_encode($value->weekdays) }}">
|
||||
<span class="far fa-edit"></span>
|
||||
</button>
|
||||
</td>
|
||||
<td>{{ $value->draft->name }}</td>
|
||||
<td>@if( $value->travel_class)
|
||||
{{ $value->travel_class->name }}
|
||||
@else
|
||||
alle Kategorien
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
{!! HTMLHelper::getWeekdaysString($value->weekdays) !!}
|
||||
</td>
|
||||
<td><a class="text-danger" href="{{ route('travel_program_draft_delete', [$value->id]) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="far fa-trash-alt"></i></a></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="text-right">
|
||||
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-draft"
|
||||
data-id="new"
|
||||
data-travel_class_id=""
|
||||
data-draft_id=""
|
||||
data-weekdays=""
|
||||
>Neue Vorlage zuordnen</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" name="action" value="saveAll" class="btn btn-submit">{{ __('save changes') }}</button>
|
||||
<a href="{{route('travel_programs')}}" class="btn btn-default">{{ __('back') }}</a>
|
||||
<a href="https://v2.stern-tours.de/acp/travel_program/show/{{$program->id}}/" class="btn btn-default float-right">{{ __('zurück ins v2 Programm') }}</a>
|
||||
</div>
|
||||
|
||||
{!! Form::close() !!}
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Modal template -->
|
||||
<div class="modal fade" id="modals-class">
|
||||
<div class="modal-dialog">
|
||||
<form class="modal-content" action="{{ route('travel_program_class_update') }}" method="post">
|
||||
@csrf
|
||||
<input type="hidden" class="form-control" name="id">
|
||||
<input type="hidden" class="form-control" name="program_id" value="{{$program->id}}">
|
||||
|
||||
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Programm Katagorie/Klassen <span class="font-weight-light">anlegen/bearbeiten</span></h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label class="custom-control custom-checkbox float-right">
|
||||
<input type="checkbox" class="custom-control-input" name="standard" checked>
|
||||
<span class="custom-control-label">{{__('Standard')}}</span>
|
||||
</label>
|
||||
<label for="name" class="form-label">Name*</label>
|
||||
<input type="text" class="form-control" name="name" placeholder="{{__('Description')}}" required>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="description" class="form-label">Beschreibung</label>
|
||||
<input type="text" class="form-control" name="description" placeholder="{{__('Description')}}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Modal template -->
|
||||
<div class="modal fade" id="modals-draft">
|
||||
<div class="modal-dialog">
|
||||
<form class="modal-content" action="{{ route('travel_program_draft_update') }}" method="post">
|
||||
@csrf
|
||||
<input type="hidden" class="form-control" name="id">
|
||||
<input type="hidden" class="form-control" name="travel_program_id" value="{{$program->id}}">
|
||||
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Vorlage Reiseprogramm <span class="font-weight-light">zuordnen</span></h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="draft_id" class="form-label">{{__('Vorlage')}}</label>
|
||||
<select class="selectpicker" data-style="btn-default" name="draft_id" data-live-search="true" required>
|
||||
{!! HTMLHelper::getDraftOptions() !!}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="travel_class_id" class="form-label">{{__('Kategorie')}}</label>
|
||||
<select class="selectpicker" data-style="btn-default" name="travel_class_id">
|
||||
{!! HTMLHelper::getTravelClassOptions($program->id) !!}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="weekdays" class="form-label">{{__('Wochentage')}}</label>
|
||||
<select class="selectpicker" data-style="btn-default" name="weekdays[]" multiple>
|
||||
{!! HTMLHelper::getWeekdaysOptions($program->id) !!}
|
||||
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$('#modals-class').on('show.bs.modal', function (event) {
|
||||
var button = $(event.relatedTarget);
|
||||
$(this).find(".modal-content input[name='id']").val(button.data('id'));
|
||||
$(this).find(".modal-body input[name='name']").val(button.data('name'));
|
||||
$(this).find(".modal-body input[name='description']").val(button.data('description'));
|
||||
$(this).find(".modal-body input[name='standard']").prop( "checked", button.data('standard'));
|
||||
});
|
||||
|
||||
$('#modals-draft').on('show.bs.modal', function (event) {
|
||||
var button = $(event.relatedTarget);
|
||||
$(this).find(".modal-content input[name='id']").val(button.data('id'));
|
||||
$(this).find(".modal-body select[name='draft_id']").val(button.data('draft_id'));
|
||||
$(this).find(".modal-body select[name='travel_class_id']").val(button.data('travel_class_id'));
|
||||
$(this).find(".modal-body select[name='weekdays[]']").val(button.data('weekdays'));
|
||||
|
||||
$('.selectpicker').selectpicker('refresh');
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
@endsection
|
||||
186
resources/views/travel/program/index.blade.php
Executable file
186
resources/views/travel/program/index.blade.php
Executable file
|
|
@ -0,0 +1,186 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
<h4 class="font-weight-bold py-3 mb-1">
|
||||
Programme
|
||||
</h4>
|
||||
<div class="nav-tabs-top mb-4">
|
||||
<ul class="nav nav-tabs">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link @if($step == false) active show @endif" data-toggle="tab" href="#navs-top-drafts">Übersicht</a>
|
||||
</li>
|
||||
{{--
|
||||
<li class="nav-item">
|
||||
<a class="nav-link @if($step == 'type') active show @endif" data-toggle="tab" href="#navs-top-draft_types">Typen</a>
|
||||
</li>
|
||||
--}}
|
||||
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane fade @if($step == false) active show @endif" id="navs-top-drafts">
|
||||
<div class="card-body">
|
||||
|
||||
<div class="card-datatable table-responsive">
|
||||
<table class="datatables-programms table table-striped table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="max-width: 60px;"> </th>
|
||||
<th>{{__('Programm')}}</th>
|
||||
<th>{{__('Code')}}</th>
|
||||
<th>{{__('Status')}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($travel_programs as $value)
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{{ route('travel_program_detail', [$value->id]) }}" class="btn icon-btn btn-sm btn-primary">
|
||||
<span class="far fa-edit"></span>
|
||||
</a>
|
||||
</td>
|
||||
<td> <a href="{{ route('travel_program_detail', [$value->id]) }}">{{ $value->title }}</a></td>
|
||||
<td>
|
||||
{{ $value->program_code }}
|
||||
</td>
|
||||
<td data-sort="{{ $value->status }}">
|
||||
@if($value->status)
|
||||
<span class="badge badge-pill badge-success"><i class="far fa-check"></i></span>
|
||||
@else
|
||||
<span class="badge badge-pill badge-danger"><i class="far fa-times"></i></span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="mt-4">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$('.datatables-programms').dataTable({
|
||||
"bLengthChange": false,
|
||||
"iDisplayLength": 50,
|
||||
"language": {
|
||||
"url": "/js/German.json"
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
{{--
|
||||
<div class="tab-pane fade @if($step == 'type') active show @endif" id="navs-top-draft_types">
|
||||
<div class="card-body">
|
||||
|
||||
<div class="card-datatable table-responsive">
|
||||
<table class="datatables-types table table-striped table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="max-width: 60px;"> </th>
|
||||
<th>{{__('Name')}}</th>
|
||||
<th>{{__('sichtbar')}}</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($draft_types as $value)
|
||||
<tr>
|
||||
<td>
|
||||
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-type"
|
||||
data-id="{{ $value->id }}"
|
||||
data-name="{{ $value->name }}"
|
||||
data-active="{{ $value->active }}">
|
||||
<span class="far fa-edit"></span>
|
||||
</button>
|
||||
</td>
|
||||
<td>{{ $value->name }}</td>
|
||||
<td data-sort="{{ $value->active }}">
|
||||
@if($value->active)
|
||||
<span class="badge badge-pill badge-success"><i class="far fa-check"></i></span>
|
||||
@else
|
||||
<span class="badge badge-pill badge-danger"><i class="far fa-times"></i></span>
|
||||
@endif
|
||||
</td>
|
||||
<td><a class="text-danger" href="{{ route('draft_type_delete', [$value->id]) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="far fa-trash-alt"></i></a></td>
|
||||
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="mt-4">
|
||||
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-type"
|
||||
data-id="new"
|
||||
data-name=""
|
||||
data-active="1"
|
||||
|
||||
>Typ anlegen</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Modal template -->
|
||||
<div class="modal fade" id="modals-type">
|
||||
<div class="modal-dialog">
|
||||
<form class="modal-content" action="{{ route('draft_type_update') }}" method="post">
|
||||
@csrf
|
||||
<input type="hidden" class="form-control" name="id">
|
||||
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Vorlagen-Typ <span class="font-weight-light">anlegen/bearbeiten</span></h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="name" class="form-label">Name*</label>
|
||||
<input type="text" class="form-control" name="name" placeholder="{{__('Description')}}" required>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="custom-control custom-checkbox m-0">
|
||||
<input type="checkbox" class="custom-control-input" name="active" checked>
|
||||
<span class="custom-control-label">{{__('sichtbar')}}</span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
$('#modals-type').on('show.bs.modal', function (event) {
|
||||
var button = $(event.relatedTarget);
|
||||
$(this).find(".modal-content input[name='id']").val(button.data('id'));
|
||||
$(this).find(".modal-body input[name='name']").val(button.data('name'));
|
||||
$('.selectpicker').selectpicker('refresh');
|
||||
$(this).find(".modal-body input[name='active']").prop( "checked", button.data('active'));
|
||||
});
|
||||
|
||||
$('.datatables-types').dataTable({
|
||||
"bLengthChange": false,
|
||||
"iDisplayLength": 50,
|
||||
|
||||
"language": {
|
||||
"url": "/js/German.json"
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
--}}
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
31
resources/views/user/delete_account.blade.php
Normal file
31
resources/views/user/delete_account.blade.php
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
<div class="card mb-4">
|
||||
<h6 class="card-header">
|
||||
{{__('Delete Account')}}
|
||||
</h6>
|
||||
<div class="card-body">
|
||||
<p>{{__('Confirm your identity with your password before proceeding.')}}</p>
|
||||
|
||||
{!! Form::open(['url' => route('user_delete_account')]) !!}
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('Password')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control {{ $errors->has('old_password') ? 'is-invalid' : '' }}" type="password" name="old_password" placeholder="{{__('Password')}}*" required>
|
||||
@if ($errors->has('old_password'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('old_password') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-10 ml-sm-auto">
|
||||
<button type="submit" class="btn btn-danger">{{__('Delete Account')}}</button>
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
36
resources/views/user/edit.blade.php
Normal file
36
resources/views/user/edit.blade.php
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
@if ($errors->any())
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="alert alert-danger">
|
||||
<ul>
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<h4 class="font-weight-bold py-3 mb-4">
|
||||
{{ __('Your Data') }}
|
||||
</h4>
|
||||
|
||||
|
||||
{!! Form::open(['url' => route('user_edit'), 'class' => 'form-horizontal', 'id'=>'lead-form-validation']) !!}
|
||||
|
||||
<input type="hidden" name="user_id" id="user_id" value="@if($user->id>0){{$user->id}}@else new @endif">
|
||||
{{-- @include('user.form') --}}
|
||||
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" class="btn btn-secondary">{{ __('save changes') }}</button>
|
||||
<a href="{{route('home')}}" class="btn btn-default">{{ __('back') }}</a>
|
||||
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
|
||||
@endsection
|
||||
252
resources/views/user/form.blade.php
Normal file
252
resources/views/user/form.blade.php
Normal file
|
|
@ -0,0 +1,252 @@
|
|||
<div class="card mb-4">
|
||||
<h5 class="card-header">
|
||||
{{ __('use') }}
|
||||
</h5>
|
||||
<div class="card-body">
|
||||
<div class="form-group">
|
||||
<label class="form-label">{{ __('business or private') }}*</label>
|
||||
<select class="selectpicker" name="company" id="company" data-style="btn-light" data-live-search="false" required, tabindex="0">
|
||||
{!! HTMLHelper::getCompanyOptions($user->account->company) !!}
|
||||
</select>
|
||||
@if ($errors->has('company'))
|
||||
<span class="help-block">
|
||||
<strong>{{ $errors->first('company') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card mb-4 show_company_holder">
|
||||
<h5 class="card-header">
|
||||
{{ __('Company data') }}
|
||||
</h5>
|
||||
<div class="card-body">
|
||||
<div class="form-group">
|
||||
<label for="company_name" class="form-label">{{ __('Company name') }}*</label>
|
||||
{{ Form::text('company_name', $user->account->company_name, array('placeholder'=>__('Company name'), 'class'=>'form-control', 'id'=>'company_name', 'required' => true, 'tabindex' => 1)) }}
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="company_street">{{ __('Street') }} / {{ __('House number') }}</label>
|
||||
{{ Form::text('company_street', $user->account->company_street, array('placeholder'=>__('Street'), 'class'=>'form-control', 'id'=>'company_street', 'tabindex' => 2)) }}
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-2">
|
||||
<label class="form-label" for="company_postal_code">{{ __('Postcode') }}</label>
|
||||
{{ Form::text('company_postal_code', $user->account->company_postal_code, array('placeholder'=>__('Postcode'), 'class'=>'form-control', 'id'=>'company_postal_code', 'tabindex' => 3)) }}
|
||||
|
||||
</div>
|
||||
<div class="form-group col-md-6">
|
||||
<label class="form-label" for="company_city">{{ __('City') }}</label>
|
||||
{{ Form::text('company_city', $user->account->company_city, array('placeholder'=>__('City'), 'class'=>'form-control', 'id'=>'company_city', 'tabindex' => 4)) }}
|
||||
|
||||
</div>
|
||||
<div class="form-group col-md-4 {{ $errors->has('company_country_id') ? 'has-error' : '' }}">
|
||||
<label class="form-label">{{ __('Country') }}*</label>
|
||||
<select class="selectpicker" name="company_country_id" id="company_country_id" data-style="btn-light" data-live-search="true" required tabindex="5">
|
||||
{!! HTMLHelper::getContriesWithMore($user->account->company_country_id) !!}
|
||||
</select>
|
||||
@if ($errors->has('company_country_id'))
|
||||
<span class="help-block">
|
||||
<strong>{{ $errors->first('company_country_id') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-4">
|
||||
<label class="form-label" for="company_pre_phone_id">{{ __('Country code') }}</label>
|
||||
<select class="selectpicker" name="company_pre_phone_id" id="company_pre_phone_id" data-style="btn-light" data-live-search="true" tabindex="19">
|
||||
{!! HTMLHelper::getContriesCodes($user->account->company_pre_phone_id) !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-md-8">
|
||||
<label class="form-label" for="company_phone">{{ __('Phone') }}</label>
|
||||
{{ Form::text('company_phone', $user->account->company_phone, array('placeholder'=>__('Phone'), 'class'=>'form-control', 'id'=>'company_phone', 'tabindex' => 7)) }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="company_homepage">{{ __('Homepage') }}</label>
|
||||
{{ Form::text('company_homepage', $user->account->company_homepage, array('placeholder'=>__('Homepage'), 'class'=>'form-control', 'id'=>'company_homepage', 'tabindex' => 8)) }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 show_company_holder">
|
||||
<h5 class="card-header">
|
||||
{{ __('Industry') }}
|
||||
</h5>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
{!! HTMLHelper::getIndustrySectorForHTML($user->account->getUserIndustrySectorIds()) !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4">
|
||||
<h5 class="card-header">
|
||||
{{ __('Your Data') }}
|
||||
</h5>
|
||||
<div class="card-body">
|
||||
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="position_text">{{ __('Function') }}</label>
|
||||
{{ Form::text('position_text', $user->account->position_text, array('placeholder'=>__('Function'), 'class'=>'form-control', 'id'=>'position_text', 'tabindex' => 9)) }}
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-4">
|
||||
<label class="form-label">{{ __('Salutation') }}*</label>
|
||||
<select class="selectpicker" data-style="btn-light" name="salutation" id="salutation" required tabindex="10">
|
||||
{!! HTMLHelper::getSalutation($user->account->salutation) !!}
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group col-md-8">
|
||||
<label class="form-label" for="title">{{ __('Title') }}</label>
|
||||
{{ Form::text('title', $user->account->title, array('placeholder'=>__('Title'), 'class'=>'form-control', 'id'=>'title', 'tabindex' => 11)) }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
|
||||
<div class="form-group col-md-6">
|
||||
<label class="form-label" for="first_name">{{ __('First name') }}</label>
|
||||
{{ Form::text('first_name', $user->account->first_name, array('placeholder'=>__('First name'), 'class'=>'form-control', 'id'=>'first_name', 'tabindex' => 12)) }}
|
||||
|
||||
</div>
|
||||
<div class="form-group col-md-6">
|
||||
<label class="form-label" for="last_name">{{ __('Last Name') }}*</label>
|
||||
{{ Form::text('last_name', $user->account->last_name, array('placeholder'=>__('Last Name'), 'class'=>'form-control', 'id'=>'last_name', 'required'=>true, 'tabindex' => 13)) }}
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="street">{{ __('Street') }} / {{ __('House number') }}</label>
|
||||
{{ Form::text('street', $user->account->street, array('placeholder'=>__('Street'), 'class'=>'form-control', 'id'=>'street', 'tabindex' => 14)) }}
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-2">
|
||||
<label class="form-label" for="postal_code">{{ __('Postcode') }}</label>
|
||||
{{ Form::text('postal_code', $user->account->postal_code, array('placeholder'=>__('Postcode'), 'class'=>'form-control', 'id'=>'postal_code', 'tabindex' => 15)) }}
|
||||
|
||||
</div>
|
||||
<div class="form-group col-md-6">
|
||||
<label class="form-label" for="city">{{ __('City') }}</label>
|
||||
{{ Form::text('city', $user->account->city, array('placeholder'=>__('City'), 'class'=>'form-control', 'id'=>'city', 'tabindex' => 16)) }}
|
||||
|
||||
</div>
|
||||
<div class="form-group col-md-4 {{ $errors->has('country_id') ? 'has-error' : '' }}">
|
||||
<label class="form-label">{{ __('Country') }}*</label>
|
||||
<select class="selectpicker" name="country_id" id="country_id" data-style="btn-light" data-live-search="true" required tabindex="17">
|
||||
{!! HTMLHelper::getContriesWithMore($user->account->country_id) !!}
|
||||
</select>
|
||||
@if ($errors->has('country_id'))
|
||||
<span class="help-block">
|
||||
<strong>{{ $errors->first('country_id') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-4">
|
||||
<label class="form-label" for="pre_mobil_id">{{ __('Country code') }}</label>
|
||||
<select class="selectpicker" name="pre_phone_id" id="pre_phone_id" data-style="btn-light" data-live-search="true" tabindex="19">
|
||||
{!! HTMLHelper::getContriesCodes($user->account->pre_phone_id) !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-md-8">
|
||||
<label class="form-label" for="phone">{{ __('Phone') }}</label>
|
||||
{{ Form::text('phone', $user->account->phone, array('placeholder'=>__('Mobile Phone'), 'class'=>'form-control', 'id'=>'phone', 'tabindex' => 18)) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-4">
|
||||
<label class="form-label" for="pre_mobil_id">{{ __('Country code') }}</label>
|
||||
<select class="selectpicker" name="pre_mobil_id" id="pre_mobil_id" data-style="btn-light" data-live-search="true" tabindex="19">
|
||||
{!! HTMLHelper::getContriesCodes($user->account->pre_mobil_id) !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-md-8">
|
||||
<label class="form-label" for="mobil">{{ __('Mobile Phone') }}</label>
|
||||
{{ Form::text('mobil', $user->account->mobil, array('placeholder'=>__('Mobile Phone'), 'class'=>'form-control', 'id'=>'mobil', 'tabindex' => 19)) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
@if($user->email)
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-6">
|
||||
<label class="form-label" for="email">{{ __('E-Mail Address') }}*</label>
|
||||
{{ Form::text('email', $user->email, array('placeholder'=>'E-Mail', 'class'=>'form-control', 'id'=>'email', 'readonly'=>true, 'tabindex' => 20)) }}
|
||||
</div>
|
||||
<div class="form-group col-md-6">
|
||||
<label class="form-label" for="email-confirm">{{ __('Confirm E-Mail') }}</label>
|
||||
{{ Form::text('email-confirm', $user->email, array('placeholder'=>__('Confirm E-Mail'), 'class'=>'form-control', 'id'=>'email-confirm', 'readonly'=>true, 'tabindex' => 21)) }}
|
||||
</div>
|
||||
</div>
|
||||
@if(isset($can_change_mail))
|
||||
@if(count($user->user_update_email) > 0)
|
||||
<p class="badge badge-primary" style=" color:#fff;">{{ $user->user_update_email->first()->email }} {{__('waiting for activation since')}} | {{ $user->user_update_email->first()->created_at->format('d.m.Y H:i') }}</p><br>
|
||||
@endif
|
||||
<a href="{{ route('admin_lead_change_mail', [$user->id]) }}" class="btn btn-submit btn-sm"> {{ __('Contact') }} {{__('Change E-Mail')}}</a>
|
||||
|
||||
|
||||
@else
|
||||
<a href="{{ route('user_update_email', [$user->id]) }}" class="btn btn-submit btn-sm">{{__('Change E-Mail')}}</a>
|
||||
@endif
|
||||
|
||||
|
||||
@else
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-6">
|
||||
<label class="form-label" for="email">{{ __('E-Mail Address') }}*</label>
|
||||
{{ Form::text('email', $user->email, array('placeholder'=>'E-Mail', 'class'=>'form-control', 'id'=>'email', 'tabindex' => 20)) }}
|
||||
</div>
|
||||
<div class="form-group col-md-6">
|
||||
<label class="form-label" for="email-confirm">{{ __('Confirm E-Mail') }}</label>
|
||||
{{ Form::text('email-confirm', $user->email, array('placeholder'=>__('Confirm E-Mail'), 'class'=>'form-control', 'id'=>'email-confirm', 'tabindex' => 21)) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4">
|
||||
<h5 class="card-header">
|
||||
{{ __('Your interests') }}
|
||||
</h5>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
{!! HTMLHelper::getIntereststForHTML($user->account->getUserInterestIds()) !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4">
|
||||
<h5 class="card-header">
|
||||
{{ __('Your contact at JACKON') }}
|
||||
</h5>
|
||||
<div class="card-body">
|
||||
<div class="form-group">
|
||||
{{ Form::text('contactpartner', $user->account->contactpartner, array('placeholder'=>__('Name'), 'class'=>'form-control', 'id'=>'contactpartner', 'tabindex' => 22)) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
52
resources/views/user/update_email.blade.php
Normal file
52
resources/views/user/update_email.blade.php
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
<div class="card mb-4">
|
||||
<h6 class="card-header">
|
||||
{{__('Change E-Mail')}}
|
||||
</h6>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-sm-2"></div>
|
||||
<div class="col-sm-10">
|
||||
<p>{{__('Change your e-mail address here. We will send you a new activation link to your new e-mail address to verify it.')}}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{!! Form::open(['url' => route('user_update_email')]) !!}
|
||||
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('New E-Mail Address')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control {{ $errors->has('email') ? 'is-invalid' : '' }}" type="email" name="email" placeholder="{{__('New E-Mail Address')}}*" required>
|
||||
@if ($errors->has('email'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('email') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('Confirm new E-Mail')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control" {{ $errors->has('email_confirmation') ? 'is-invalid' : '' }} type="email" name="email_confirmation" placeholder="{{__('Confirm new E-Mail')}}*" required>
|
||||
@if ($errors->has('email_confirmation'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('email_confirmation') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-10 ml-sm-auto">
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
<a href="{{ route('home') }}" class="btn btn-default">{{ __('back') }}</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
54
resources/views/user/update_password.blade.php
Normal file
54
resources/views/user/update_password.blade.php
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
<div class="card mb-4">
|
||||
<h6 class="card-header">
|
||||
{{__('Change Password')}}
|
||||
</h6>
|
||||
<div class="card-body">
|
||||
{!! Form::open(['url' => route('user_update_password')]) !!}
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('Old Password')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control {{ $errors->has('old_password') ? 'is-invalid' : '' }}" type="password" name="old_password" placeholder="{{__('Old Password')}}*" required>
|
||||
@if ($errors->has('old_password'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('old_password') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('New Password')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control {{ $errors->has('password') ? 'is-invalid' : '' }}" type="password" name="password" placeholder="{{__('New Password')}}*" required>
|
||||
@if ($errors->has('password'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('Confirm new Password')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control" {{ $errors->has('password_confirmation') ? 'is-invalid' : '' }} type="password" name="password_confirmation" placeholder="{{__('Confirm new Password')}}*" required>
|
||||
@if ($errors->has('password_confirmation'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password_confirmation') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-10 ml-sm-auto">
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
<a href="{{ route('home') }}" class="btn btn-default">{{ __('back') }}</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
43
resources/views/user/update_password_first.blade.php
Normal file
43
resources/views/user/update_password_first.blade.php
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
<div class="card mb-4">
|
||||
<h6 class="card-header">
|
||||
{{__('Create Password')}}
|
||||
</h6>
|
||||
<div class="card-body">
|
||||
{!! Form::open(['url' => route('user_update_password_first')]) !!}
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('New Password')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control {{ $errors->has('password') ? 'is-invalid' : '' }}" type="password" name="password" placeholder="{{__('New Password')}}*" required>
|
||||
@if ($errors->has('password'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-form-label col-sm-2 text-sm-right">{{__('Confirm new Password')}}*</label>
|
||||
<div class="col-sm-10">
|
||||
<input class="form-control" {{ $errors->has('password_confirmation') ? 'is-invalid' : '' }} type="password" name="password_confirmation" placeholder="{{__('Confirm new Password')}}*" required>
|
||||
@if ($errors->has('password_confirmation'))
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $errors->first('password_confirmation') }}</strong>
|
||||
</span>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-10 ml-sm-auto">
|
||||
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
|
||||
<a href="{{ route('home') }}" class="btn btn-default">{{ __('back') }}</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
27
resources/views/vendor/flash/message.blade.php
vendored
Normal file
27
resources/views/vendor/flash/message.blade.php
vendored
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
@foreach (session('flash_notification', collect())->toArray() as $message)
|
||||
@if ($message['overlay'])
|
||||
@include('flash::modal', [
|
||||
'modalClass' => 'flash-modal',
|
||||
'title' => $message['title'],
|
||||
'body' => $message['message']
|
||||
])
|
||||
@else
|
||||
<div class="alert
|
||||
alert-{{ $message['level'] }}
|
||||
{{ $message['important'] ? 'alert-important' : '' }}"
|
||||
role="alert"
|
||||
>
|
||||
@if ($message['important'])
|
||||
<button type="button"
|
||||
class="close"
|
||||
data-dismiss="alert"
|
||||
aria-hidden="true"
|
||||
>×</button>
|
||||
@endif
|
||||
|
||||
{!! $message['message'] !!}
|
||||
</div>
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
{{ session()->forget('flash_notification') }}
|
||||
19
resources/views/vendor/flash/modal.blade.php
vendored
Normal file
19
resources/views/vendor/flash/modal.blade.php
vendored
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
<div id="flash-overlay-modal" class="modal fade {{ $modalClass or '' }}">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
|
||||
<h4 class="modal-title">{{ $title }}</h4>
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
<p>{!! $body !!}</p>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
19
resources/views/vendor/mail/html/button.blade.php
vendored
Normal file
19
resources/views/vendor/mail/html/button.blade.php
vendored
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
<table class="action" align="center" width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table width="100%" border="0" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{{ $url }}" class="button button-{{ $color ?? 'blue' }}" target="_blank">{{ $slot }}</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
11
resources/views/vendor/mail/html/footer.blade.php
vendored
Normal file
11
resources/views/vendor/mail/html/footer.blade.php
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<tr>
|
||||
<td>
|
||||
<table class="footer" align="center" width="570" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="content-cell" align="center">
|
||||
{{ Illuminate\Mail\Markdown::parse($slot) }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
7
resources/views/vendor/mail/html/header.blade.php
vendored
Normal file
7
resources/views/vendor/mail/html/header.blade.php
vendored
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<tr>
|
||||
<td class="header">
|
||||
<a href="{{ $url }}">
|
||||
{{ $slot }}
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
54
resources/views/vendor/mail/html/layout.blade.php
vendored
Normal file
54
resources/views/vendor/mail/html/layout.blade.php
vendored
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
</head>
|
||||
<body>
|
||||
<style>
|
||||
@media only screen and (max-width: 600px) {
|
||||
.inner-body {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.footer {
|
||||
width: 100% !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 500px) {
|
||||
.button {
|
||||
width: 100% !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<table class="wrapper" width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table class="content" width="100%" cellpadding="0" cellspacing="0">
|
||||
{{ $header ?? '' }}
|
||||
|
||||
<!-- Email Body -->
|
||||
<tr>
|
||||
<td class="body" width="100%" cellpadding="0" cellspacing="0">
|
||||
<table class="inner-body" align="center" width="570" cellpadding="0" cellspacing="0">
|
||||
<!-- Body content -->
|
||||
<tr>
|
||||
<td class="content-cell">
|
||||
{{ Illuminate\Mail\Markdown::parse($slot) }}
|
||||
|
||||
{{ $subcopy ?? '' }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{ $footer ?? '' }}
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
27
resources/views/vendor/mail/html/message.blade.php
vendored
Normal file
27
resources/views/vendor/mail/html/message.blade.php
vendored
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
@component('mail::layout')
|
||||
{{-- Header --}}
|
||||
@slot('header')
|
||||
@component('mail::header', ['url' => config('app.url')])
|
||||
{{ config('app.name') }}
|
||||
@endcomponent
|
||||
@endslot
|
||||
|
||||
{{-- Body --}}
|
||||
{{ $slot }}
|
||||
|
||||
{{-- Subcopy --}}
|
||||
@isset($subcopy)
|
||||
@slot('subcopy')
|
||||
@component('mail::subcopy')
|
||||
{{ $subcopy }}
|
||||
@endcomponent
|
||||
@endslot
|
||||
@endisset
|
||||
|
||||
{{-- Footer --}}
|
||||
@slot('footer')
|
||||
@component('mail::footer')
|
||||
© {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.')
|
||||
@endcomponent
|
||||
@endslot
|
||||
@endcomponent
|
||||
13
resources/views/vendor/mail/html/panel.blade.php
vendored
Normal file
13
resources/views/vendor/mail/html/panel.blade.php
vendored
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<table class="panel" width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="panel-content">
|
||||
<table width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="panel-item">
|
||||
{{ Illuminate\Mail\Markdown::parse($slot) }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
7
resources/views/vendor/mail/html/promotion.blade.php
vendored
Normal file
7
resources/views/vendor/mail/html/promotion.blade.php
vendored
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<table class="promotion" align="center" width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td align="center">
|
||||
{{ Illuminate\Mail\Markdown::parse($slot) }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
13
resources/views/vendor/mail/html/promotion/button.blade.php
vendored
Normal file
13
resources/views/vendor/mail/html/promotion/button.blade.php
vendored
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<table width="100%" border="0" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{{ $url }}" class="button button-green" target="_blank">{{ $slot }}</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
7
resources/views/vendor/mail/html/subcopy.blade.php
vendored
Normal file
7
resources/views/vendor/mail/html/subcopy.blade.php
vendored
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<table class="subcopy" width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
{{ Illuminate\Mail\Markdown::parse($slot) }}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
3
resources/views/vendor/mail/html/table.blade.php
vendored
Normal file
3
resources/views/vendor/mail/html/table.blade.php
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
<div class="table">
|
||||
{{ Illuminate\Mail\Markdown::parse($slot) }}
|
||||
</div>
|
||||
287
resources/views/vendor/mail/html/themes/default.css
vendored
Normal file
287
resources/views/vendor/mail/html/themes/default.css
vendored
Normal file
|
|
@ -0,0 +1,287 @@
|
|||
/* Base */
|
||||
|
||||
body, body *:not(html):not(style):not(br):not(tr):not(code) {
|
||||
font-family: Avenir, Helvetica, sans-serif;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: #f5f8fa;
|
||||
color: #74787E;
|
||||
height: 100%;
|
||||
hyphens: auto;
|
||||
line-height: 1.4;
|
||||
margin: 0;
|
||||
-moz-hyphens: auto;
|
||||
-ms-word-break: break-all;
|
||||
width: 100% !important;
|
||||
-webkit-hyphens: auto;
|
||||
-webkit-text-size-adjust: none;
|
||||
word-break: break-all;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
p,
|
||||
ul,
|
||||
ol,
|
||||
blockquote {
|
||||
line-height: 1.4;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #3869D4;
|
||||
}
|
||||
|
||||
a img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
/* Typography */
|
||||
|
||||
h1 {
|
||||
color: #2F3133;
|
||||
font-size: 19px;
|
||||
font-weight: bold;
|
||||
margin-top: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
h2 {
|
||||
color: #2F3133;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
margin-top: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
h3 {
|
||||
color: #2F3133;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-top: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
p {
|
||||
color: #74787E;
|
||||
font-size: 16px;
|
||||
line-height: 1.5em;
|
||||
margin-top: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
p.sub {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
/* Layout */
|
||||
|
||||
.wrapper {
|
||||
background-color: #f5f8fa;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
-premailer-width: 100%;
|
||||
}
|
||||
|
||||
.content {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
-premailer-width: 100%;
|
||||
}
|
||||
|
||||
/* Header */
|
||||
|
||||
.header {
|
||||
padding: 25px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.header a {
|
||||
color: #bbbfc3;
|
||||
font-size: 19px;
|
||||
font-weight: bold;
|
||||
text-decoration: none;
|
||||
text-shadow: 0 1px 0 white;
|
||||
}
|
||||
|
||||
/* Body */
|
||||
|
||||
.body {
|
||||
background-color: #FFFFFF;
|
||||
border-bottom: 1px solid #EDEFF2;
|
||||
border-top: 1px solid #EDEFF2;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
-premailer-width: 100%;
|
||||
}
|
||||
|
||||
.inner-body {
|
||||
background-color: #FFFFFF;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
width: 570px;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
-premailer-width: 570px;
|
||||
}
|
||||
|
||||
/* Subcopy */
|
||||
|
||||
.subcopy {
|
||||
border-top: 1px solid #EDEFF2;
|
||||
margin-top: 25px;
|
||||
padding-top: 25px;
|
||||
}
|
||||
|
||||
.subcopy p {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
/* Footer */
|
||||
|
||||
.footer {
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
text-align: center;
|
||||
width: 570px;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
-premailer-width: 570px;
|
||||
}
|
||||
|
||||
.footer p {
|
||||
color: #AEAEAE;
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* Tables */
|
||||
|
||||
.table table {
|
||||
margin: 30px auto;
|
||||
width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
-premailer-width: 100%;
|
||||
}
|
||||
|
||||
.table th {
|
||||
border-bottom: 1px solid #EDEFF2;
|
||||
padding-bottom: 8px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.table td {
|
||||
color: #74787E;
|
||||
font-size: 15px;
|
||||
line-height: 18px;
|
||||
padding: 10px 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.content-cell {
|
||||
padding: 35px;
|
||||
}
|
||||
|
||||
/* Buttons */
|
||||
|
||||
.action {
|
||||
margin: 30px auto;
|
||||
padding: 0;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
-premailer-width: 100%;
|
||||
}
|
||||
|
||||
.button {
|
||||
border-radius: 3px;
|
||||
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16);
|
||||
color: #FFF;
|
||||
display: inline-block;
|
||||
text-decoration: none;
|
||||
-webkit-text-size-adjust: none;
|
||||
}
|
||||
|
||||
.button-blue {
|
||||
background-color: #3097D1;
|
||||
border-top: 10px solid #3097D1;
|
||||
border-right: 18px solid #3097D1;
|
||||
border-bottom: 10px solid #3097D1;
|
||||
border-left: 18px solid #3097D1;
|
||||
}
|
||||
|
||||
.button-green {
|
||||
background-color: #2ab27b;
|
||||
border-top: 10px solid #2ab27b;
|
||||
border-right: 18px solid #2ab27b;
|
||||
border-bottom: 10px solid #2ab27b;
|
||||
border-left: 18px solid #2ab27b;
|
||||
}
|
||||
|
||||
.button-red {
|
||||
background-color: #bf5329;
|
||||
border-top: 10px solid #bf5329;
|
||||
border-right: 18px solid #bf5329;
|
||||
border-bottom: 10px solid #bf5329;
|
||||
border-left: 18px solid #bf5329;
|
||||
}
|
||||
|
||||
/* Panels */
|
||||
|
||||
.panel {
|
||||
margin: 0 0 21px;
|
||||
}
|
||||
|
||||
.panel-content {
|
||||
background-color: #EDEFF2;
|
||||
padding: 16px;
|
||||
}
|
||||
|
||||
.panel-item {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.panel-item p:last-of-type {
|
||||
margin-bottom: 0;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
/* Promotions */
|
||||
|
||||
.promotion {
|
||||
background-color: #FFFFFF;
|
||||
border: 2px dashed #9BA2AB;
|
||||
margin: 0;
|
||||
margin-bottom: 25px;
|
||||
margin-top: 25px;
|
||||
padding: 24px;
|
||||
width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
-premailer-width: 100%;
|
||||
}
|
||||
|
||||
.promotion h1 {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.promotion p {
|
||||
font-size: 15px;
|
||||
text-align: center;
|
||||
}
|
||||
1
resources/views/vendor/mail/markdown/button.blade.php
vendored
Normal file
1
resources/views/vendor/mail/markdown/button.blade.php
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
{{ $slot }}: {{ $url }}
|
||||
1
resources/views/vendor/mail/markdown/footer.blade.php
vendored
Normal file
1
resources/views/vendor/mail/markdown/footer.blade.php
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
{{ $slot }}
|
||||
1
resources/views/vendor/mail/markdown/header.blade.php
vendored
Normal file
1
resources/views/vendor/mail/markdown/header.blade.php
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
[{{ $slot }}]({{ $url }})
|
||||
9
resources/views/vendor/mail/markdown/layout.blade.php
vendored
Normal file
9
resources/views/vendor/mail/markdown/layout.blade.php
vendored
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{!! strip_tags($header) !!}
|
||||
|
||||
{!! strip_tags($slot) !!}
|
||||
@isset($subcopy)
|
||||
|
||||
{!! strip_tags($subcopy) !!}
|
||||
@endisset
|
||||
|
||||
{!! strip_tags($footer) !!}
|
||||
27
resources/views/vendor/mail/markdown/message.blade.php
vendored
Normal file
27
resources/views/vendor/mail/markdown/message.blade.php
vendored
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
@component('mail::layout')
|
||||
{{-- Header --}}
|
||||
@slot('header')
|
||||
@component('mail::header', ['url' => config('app.url')])
|
||||
{{ config('app.name') }}
|
||||
@endcomponent
|
||||
@endslot
|
||||
|
||||
{{-- Body --}}
|
||||
{{ $slot }}
|
||||
|
||||
{{-- Subcopy --}}
|
||||
@isset($subcopy)
|
||||
@slot('subcopy')
|
||||
@component('mail::subcopy')
|
||||
{{ $subcopy }}
|
||||
@endcomponent
|
||||
@endslot
|
||||
@endisset
|
||||
|
||||
{{-- Footer --}}
|
||||
@slot('footer')
|
||||
@component('mail::footer')
|
||||
© {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.')
|
||||
@endcomponent
|
||||
@endslot
|
||||
@endcomponent
|
||||
1
resources/views/vendor/mail/markdown/panel.blade.php
vendored
Normal file
1
resources/views/vendor/mail/markdown/panel.blade.php
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
{{ $slot }}
|
||||
1
resources/views/vendor/mail/markdown/promotion.blade.php
vendored
Normal file
1
resources/views/vendor/mail/markdown/promotion.blade.php
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
{{ $slot }}
|
||||
1
resources/views/vendor/mail/markdown/promotion/button.blade.php
vendored
Normal file
1
resources/views/vendor/mail/markdown/promotion/button.blade.php
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
[{{ $slot }}]({{ $url }})
|
||||
1
resources/views/vendor/mail/markdown/subcopy.blade.php
vendored
Normal file
1
resources/views/vendor/mail/markdown/subcopy.blade.php
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
{{ $slot }}
|
||||
1
resources/views/vendor/mail/markdown/table.blade.php
vendored
Normal file
1
resources/views/vendor/mail/markdown/table.blade.php
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
{{ $slot }}
|
||||
64
resources/views/vendor/notifications/email.blade.php
vendored
Normal file
64
resources/views/vendor/notifications/email.blade.php
vendored
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
@component('mail::message')
|
||||
{{-- Greeting --}}
|
||||
@if (! empty($greeting))
|
||||
# {{ $greeting }}
|
||||
@else
|
||||
@if ($level == 'error')
|
||||
# @lang('Whoops!')
|
||||
@else
|
||||
# @lang('Hello!')
|
||||
@endif
|
||||
@endif
|
||||
|
||||
{{-- Intro Lines --}}
|
||||
@foreach ($introLines as $line)
|
||||
{{ $line }}
|
||||
|
||||
@endforeach
|
||||
|
||||
{{-- Action Button --}}
|
||||
@isset($actionText)
|
||||
<?php
|
||||
switch ($level) {
|
||||
case 'success':
|
||||
$color = 'green';
|
||||
break;
|
||||
case 'error':
|
||||
$color = 'red';
|
||||
break;
|
||||
default:
|
||||
$color = 'blue';
|
||||
}
|
||||
?>
|
||||
@component('mail::button', ['url' => $actionUrl, 'color' => $color])
|
||||
{{ $actionText }}
|
||||
@endcomponent
|
||||
@endisset
|
||||
|
||||
{{-- Outro Lines --}}
|
||||
@foreach ($outroLines as $line)
|
||||
{{ $line }}
|
||||
|
||||
@endforeach
|
||||
|
||||
{{-- Salutation --}}
|
||||
@if (! empty($salutation))
|
||||
{{ $salutation }}
|
||||
@else
|
||||
@lang('Regards'),<br>{{ config('app.name') }}
|
||||
@endif
|
||||
|
||||
{{-- Subcopy --}}
|
||||
@isset($actionText)
|
||||
@component('mail::subcopy')
|
||||
@lang(
|
||||
"If you’re having trouble clicking the \":actionText\" button, copy and paste the URL below\n".
|
||||
'into your web browser: [:actionURL](:actionURL)',
|
||||
[
|
||||
'actionText' => $actionText,
|
||||
'actionURL' => $actionUrl
|
||||
]
|
||||
)
|
||||
@endcomponent
|
||||
@endisset
|
||||
@endcomponent
|
||||
44
resources/views/vendor/pagination/bootstrap-4.blade.php
vendored
Normal file
44
resources/views/vendor/pagination/bootstrap-4.blade.php
vendored
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
@if ($paginator->hasPages())
|
||||
<ul class="pagination" role="navigation">
|
||||
{{-- Previous Page Link --}}
|
||||
@if ($paginator->onFirstPage())
|
||||
<li class="page-item disabled" aria-disabled="true" aria-label="@lang('pagination.previous')">
|
||||
<span class="page-link" aria-hidden="true">‹</span>
|
||||
</li>
|
||||
@else
|
||||
<li class="page-item">
|
||||
<a class="page-link" href="{{ $paginator->previousPageUrl() }}" rel="prev" aria-label="@lang('pagination.previous')">‹</a>
|
||||
</li>
|
||||
@endif
|
||||
|
||||
{{-- Pagination Elements --}}
|
||||
@foreach ($elements as $element)
|
||||
{{-- "Three Dots" Separator --}}
|
||||
@if (is_string($element))
|
||||
<li class="page-item disabled" aria-disabled="true"><span class="page-link">{{ $element }}</span></li>
|
||||
@endif
|
||||
|
||||
{{-- Array Of Links --}}
|
||||
@if (is_array($element))
|
||||
@foreach ($element as $page => $url)
|
||||
@if ($page == $paginator->currentPage())
|
||||
<li class="page-item active" aria-current="page"><span class="page-link">{{ $page }}</span></li>
|
||||
@else
|
||||
<li class="page-item"><a class="page-link" href="{{ $url }}">{{ $page }}</a></li>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
{{-- Next Page Link --}}
|
||||
@if ($paginator->hasMorePages())
|
||||
<li class="page-item">
|
||||
<a class="page-link" href="{{ $paginator->nextPageUrl() }}" rel="next" aria-label="@lang('pagination.next')">›</a>
|
||||
</li>
|
||||
@else
|
||||
<li class="page-item disabled" aria-disabled="true" aria-label="@lang('pagination.next')">
|
||||
<span class="page-link" aria-hidden="true">›</span>
|
||||
</li>
|
||||
@endif
|
||||
</ul>
|
||||
@endif
|
||||
44
resources/views/vendor/pagination/default.blade.php
vendored
Normal file
44
resources/views/vendor/pagination/default.blade.php
vendored
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
@if ($paginator->hasPages())
|
||||
<ul class="pagination" role="navigation">
|
||||
{{-- Previous Page Link --}}
|
||||
@if ($paginator->onFirstPage())
|
||||
<li class="disabled" aria-disabled="true" aria-label="@lang('pagination.previous')">
|
||||
<span aria-hidden="true">‹</span>
|
||||
</li>
|
||||
@else
|
||||
<li>
|
||||
<a href="{{ $paginator->previousPageUrl() }}" rel="prev" aria-label="@lang('pagination.previous')">‹</a>
|
||||
</li>
|
||||
@endif
|
||||
|
||||
{{-- Pagination Elements --}}
|
||||
@foreach ($elements as $element)
|
||||
{{-- "Three Dots" Separator --}}
|
||||
@if (is_string($element))
|
||||
<li class="disabled" aria-disabled="true"><span>{{ $element }}</span></li>
|
||||
@endif
|
||||
|
||||
{{-- Array Of Links --}}
|
||||
@if (is_array($element))
|
||||
@foreach ($element as $page => $url)
|
||||
@if ($page == $paginator->currentPage())
|
||||
<li class="active" aria-current="page"><span>{{ $page }}</span></li>
|
||||
@else
|
||||
<li><a href="{{ $url }}">{{ $page }}</a></li>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
{{-- Next Page Link --}}
|
||||
@if ($paginator->hasMorePages())
|
||||
<li>
|
||||
<a href="{{ $paginator->nextPageUrl() }}" rel="next" aria-label="@lang('pagination.next')">›</a>
|
||||
</li>
|
||||
@else
|
||||
<li class="disabled" aria-disabled="true" aria-label="@lang('pagination.next')">
|
||||
<span aria-hidden="true">›</span>
|
||||
</li>
|
||||
@endif
|
||||
</ul>
|
||||
@endif
|
||||
36
resources/views/vendor/pagination/semantic-ui.blade.php
vendored
Normal file
36
resources/views/vendor/pagination/semantic-ui.blade.php
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
@if ($paginator->hasPages())
|
||||
<div class="ui pagination menu" role="navigation">
|
||||
{{-- Previous Page Link --}}
|
||||
@if ($paginator->onFirstPage())
|
||||
<a class="icon item disabled" aria-disabled="true" aria-label="@lang('pagination.previous')"> <i class="left chevron icon"></i> </a>
|
||||
@else
|
||||
<a class="icon item" href="{{ $paginator->previousPageUrl() }}" rel="prev" aria-label="@lang('pagination.previous')"> <i class="left chevron icon"></i> </a>
|
||||
@endif
|
||||
|
||||
{{-- Pagination Elements --}}
|
||||
@foreach ($elements as $element)
|
||||
{{-- "Three Dots" Separator --}}
|
||||
@if (is_string($element))
|
||||
<a class="icon item disabled" aria-disabled="true">{{ $element }}</a>
|
||||
@endif
|
||||
|
||||
{{-- Array Of Links --}}
|
||||
@if (is_array($element))
|
||||
@foreach ($element as $page => $url)
|
||||
@if ($page == $paginator->currentPage())
|
||||
<a class="item active" href="{{ $url }}" aria-current="page">{{ $page }}</a>
|
||||
@else
|
||||
<a class="item" href="{{ $url }}">{{ $page }}</a>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
{{-- Next Page Link --}}
|
||||
@if ($paginator->hasMorePages())
|
||||
<a class="icon item" href="{{ $paginator->nextPageUrl() }}" rel="next" aria-label="@lang('pagination.next')"> <i class="right chevron icon"></i> </a>
|
||||
@else
|
||||
<a class="icon item disabled" aria-disabled="true" aria-label="@lang('pagination.next')"> <i class="right chevron icon"></i> </a>
|
||||
@endif
|
||||
</div>
|
||||
@endif
|
||||
25
resources/views/vendor/pagination/simple-bootstrap-4.blade.php
vendored
Normal file
25
resources/views/vendor/pagination/simple-bootstrap-4.blade.php
vendored
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
@if ($paginator->hasPages())
|
||||
<ul class="pagination" role="navigation">
|
||||
{{-- Previous Page Link --}}
|
||||
@if ($paginator->onFirstPage())
|
||||
<li class="page-item disabled" aria-disabled="true">
|
||||
<span class="page-link">@lang('pagination.previous')</span>
|
||||
</li>
|
||||
@else
|
||||
<li class="page-item">
|
||||
<a class="page-link" href="{{ $paginator->previousPageUrl() }}" rel="prev">@lang('pagination.previous')</a>
|
||||
</li>
|
||||
@endif
|
||||
|
||||
{{-- Next Page Link --}}
|
||||
@if ($paginator->hasMorePages())
|
||||
<li class="page-item">
|
||||
<a class="page-link" href="{{ $paginator->nextPageUrl() }}" rel="next">@lang('pagination.next')</a>
|
||||
</li>
|
||||
@else
|
||||
<li class="page-item disabled" aria-disabled="true">
|
||||
<span class="page-link">@lang('pagination.next')</span>
|
||||
</li>
|
||||
@endif
|
||||
</ul>
|
||||
@endif
|
||||
17
resources/views/vendor/pagination/simple-default.blade.php
vendored
Normal file
17
resources/views/vendor/pagination/simple-default.blade.php
vendored
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
@if ($paginator->hasPages())
|
||||
<ul class="pagination" role="navigation">
|
||||
{{-- Previous Page Link --}}
|
||||
@if ($paginator->onFirstPage())
|
||||
<li class="disabled" aria-disabled="true"><span>@lang('pagination.previous')</span></li>
|
||||
@else
|
||||
<li><a href="{{ $paginator->previousPageUrl() }}" rel="prev">@lang('pagination.previous')</a></li>
|
||||
@endif
|
||||
|
||||
{{-- Next Page Link --}}
|
||||
@if ($paginator->hasMorePages())
|
||||
<li><a href="{{ $paginator->nextPageUrl() }}" rel="next">@lang('pagination.next')</a></li>
|
||||
@else
|
||||
<li class="disabled" aria-disabled="true"><span>@lang('pagination.next')</span></li>
|
||||
@endif
|
||||
</ul>
|
||||
@endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue