FeWo Mail, Booking Services

This commit is contained in:
Kevin Adametz 2020-07-09 12:36:15 +02:00
parent 730832c8e1
commit e6cc042aee
62 changed files with 1766 additions and 284 deletions

View file

@ -0,0 +1,36 @@
<div class="modal-content">
{!! Form::open(['url' => $data['url'], 'class' => '', 'enctype' => 'multipart/form-data']) !!}
{{ Form::hidden('travel_company_service_id', $data['id']) }}
{{ Form::hidden('back', $data['back']) }}
<div class="modal-header">
<h5 class="modal-title">
Reiseveranstalter Leistungen
<span class="font-weight-light">hinzufügen</span>
</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="name" class="form-label">{{ __('Name') }}</label>
{{ Form::text('name', $value->name, array('placeholder'=>__('Name'), 'class'=>'form-control', 'required')) }}
</div>
<div class="form-group ">
<label for="full_text" class="form-label">{{ __('Beschreibung') }}</label>
{{ Form::textarea('description', $value->description, array('Beschreibung'=>__('Beschreibung'), 'class'=>'form-control', 'rows'=>2)) }}
</div>
<div class="form-group">
<label for="pos" class="form-label">{{ __('Position') }}</label>
{{ Form::text('pos', $value->pos, array('class'=>'form-control')) }}
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">schließen</button>
<button type="submit" class="btn btn-primary" name="update-action" value="save-travel-company-service">speichern</button>
</div>
{!! Form::close() !!}
</div>
<script type="text/javascript">
</script>

View file

@ -0,0 +1,36 @@
<div class="modal-content">
{!! Form::open(['url' => $data['url'], 'class' => '', 'enctype' => 'multipart/form-data']) !!}
{{ Form::hidden('service_provider_service_id', $data['id']) }}
{{ Form::hidden('back', $data['back']) }}
<div class="modal-header">
<h5 class="modal-title">
Leistungsträger Leistungen
<span class="font-weight-light">hinzufügen</span>
</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="name" class="form-label">{{ __('Name') }}</label>
{{ Form::text('name', $value->name, array('placeholder'=>__('Name'), 'class'=>'form-control', 'required')) }}
</div>
<div class="form-group ">
<label for="full_text" class="form-label">{{ __('Beschreibung') }}</label>
{{ Form::textarea('description', $value->description, array('Beschreibung'=>__('Beschreibung'), 'class'=>'form-control', 'rows'=>2)) }}
</div>
<div class="form-group">
<label for="pos" class="form-label">{{ __('Position') }}</label>
{{ Form::text('pos', $value->pos, array('class'=>'form-control')) }}
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">schließen</button>
<button type="submit" class="btn btn-primary" name="update-action" value="save-service-provider-service">speichern</button>
</div>
{!! Form::close() !!}
</div>
<script type="text/javascript">
</script>

View file

@ -99,29 +99,6 @@
{{ Form::text('notice', $booking->notice, array('placeholder'=>__('Bemerkung'), 'class'=>'form-control', 'id'=>'notice')) }}
</div>
<div class="col-12">
<h5 class="card-title mt-3 mb-1">Leistungen</h5>
<hr class="mt-0">
</div>
@foreach($booking->travel_country->getContactLandsModels() as $TravelCountry)
@if($TravelCountry->stern_travel_country)
@foreach($TravelCountry->stern_travel_country->travel_country_services as $travel_country_service)
<div class="col-sm-6 col-md-4">
<label class="switcher switcher-on-off">
{{ Form::hidden('country_service['.$travel_country_service->id.']', 0) }}
{{ Form::checkbox('country_service['.$travel_country_service->id.']', 1, \App\Models\BookingCountryService::getStatus($travel_country_service->id, $booking->id), array('class'=>'switcher-input')) }}
<span class="switcher-indicator">
<span class="switcher-yes"><span class="ion ion-md-checkmark"></span></span>
<span class="switcher-no"><span class="ion ion-md-close"></span></span>
</span>
<span class="switcher-label">{{ $travel_country_service->name }}</span>
</label>
</div>
@endforeach
@endif
@endforeach
<div class="col-12">
<hr>
<div class="text-left mt-3">

View file

@ -0,0 +1,70 @@
<div class="card mb-2">
<h6 class="card-header bg-primary text-white py-2" data-toggle="collapse" data-target="#collapseBookingCompany" aria-expanded="false" aria-controls="collapseBookingCompany">
<strong style="line-height: 1.6em">Reiseveranstalter</strong>
</h6>
<div class="collapse" id="collapseBookingCompany">
<div class="card-body row">
<div class="table-responsive" id="booking_files_table">
<table class="table table-striped table-sm">
<thead>
<tr>
<th>Veranstalter</th>
<th>Bezeichnung</th>
<th>Abreisedatum</th>
<th>Reisepreis inkl. MwSt</th>
<th>Rabatt</th>
<th>Erzielte Provision</th>
<th>&nbsp;</th>
<th>&nbsp;</th>
</tr>
</thead>
<tbody>
@if($booking->booking_service_items)
@foreach($booking->booking_service_items as $item)
<tr>
<th scope="row">
{{$item->travel_company->name}}
<!--<a href="#" target="_blank" class="badge badge-md badge-primary">
</a>-->
</th>
<td>{{$item->name}}</td>
<td>{{\App\Services\Util::_format_date($item->travel_data, 'date')}}</td>
<td>{{$item->service_price}}</td>
<td>{{$item->commission}}</td>
<td>{{$item->service_price_refund}}</td>
<td>
<label class="custom-control custom-checkbox mt-2">
{!! Form::checkbox('booking_service_item['.$item->id.']', 1, $item->is_commission_locked, ['class'=>'custom-control-input', 'disabled']) !!}
<span class="custom-control-label"></span>
</label>
</td>
<td>
<i class="fa fa-trash-alt"></i>
{{--<a class="btn text-danger" href="#" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="fa fa-trash-alt"></i></a> --}}
</td>
</tr>
@endforeach
@endif
</tbody>
</table>
</div>
{{--
<div class="text-right d-block w-100">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal"
data-target="#modals-load-content"
data-id="new-file"
data-model="bookingFile"
data-action="modal-upload-booking-file"
data-url=""
data-redirect="back"
data-booking_id="{{$booking->id}}"
data-route="#"><i class="ion ion-md-cloud-upload"></i>&nbsp;Datei hinzufügen</button>
</div>
--}}
</div>
</div>
</div>

View file

@ -0,0 +1,68 @@
<div class="card mb-2">
<h6 class="card-header bg-primary text-white py-2" data-toggle="collapse" data-target="#collapseBookingProvider" aria-expanded="false" aria-controls="collapseBookingProvider">
<strong style="line-height: 1.6em">Leistungsträger</strong>
</h6>
<div class="collapse" id="collapseBookingProvider">
<div class="card-body row">
<div class="table-responsive" id="booking_files_table">
<table class="table table-striped table-sm">
<thead>
<tr>
<th>Leistungsträger</th>
<th>Betrag</th>
<th>Faktor</th>
<th>Betrag </th>
<th>Zahlungsdatum</th>
<th>Re.Nr.</th>
<th>bezahlt</th>
<th>&nbsp;</th>
</tr>
</thead>
<tbody>
@if($booking->service_provider_entries)
@foreach($booking->service_provider_entries as $item)
<tr>
<th scope="row">
{{$item->service_provider->name}}
<!--<a href="#" target="_blank" class="badge badge-md badge-primary">
</a>-->
</th>
<td>{{$item->amount}}</td>
<td>{{$item->factor}}</td>
<td>{{$item->amount_eur}}</td>
<td>{{\App\Services\Util::_format_date($item->payment_date, 'date')}}</td>
<td>{{$item->invoice_number}}</td>
<td>
<label class="custom-control custom-checkbox mt-2">
{!! Form::checkbox('service_provider_entry['.$item->id.']', 1, $item->is_cleared, ['class'=>'custom-control-input', 'disabled']) !!}
<span class="custom-control-label"></span>
</label>
</td>
<td>
<i class="fa fa-trash-alt"></i>
{{--<a class="btn text-danger" href="#" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="fa fa-trash-alt"></i></a> --}} </td>
</tr>
@endforeach
@endif
</tbody>
</table>
</div>
{{--
<div class="text-right d-block w-100">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal"
data-target="#modals-load-content"
data-id="new-file"
data-model="bookingFile"
data-action="modal-upload-booking-file"
data-url=""
data-redirect="back"
data-booking_id="{{$booking->id}}"
data-route="#"><i class="ion ion-md-cloud-upload"></i>&nbsp;Datei hinzufügen</button>
</div>
--}}
</div>
</div>
</div>

View file

@ -0,0 +1,90 @@
<div class="card mb-2">
<h6 class="card-header bg-primary text-white py-2" data-toggle="collapse" data-target="#collapseBookingServices" aria-expanded="false" aria-controls="collapseBookingServices">
<strong style="line-height: 1.6em">Leistungen</strong>
</h6>
<div class="collapse" id="collapseBookingServices">
<div class="card-body row">
<div class="col-md-4 col-sm-12">
<h5 class="card-title mt-3 mb-1">Agentur</h5>
<hr class="mt-0 mb-0">
@foreach($booking->travel_country->getContactLandsModels() as $TravelCountry)
@if($TravelCountry->stern_travel_country->count())
<h6 class="pt-2 pb-2 mb-0">{{$TravelCountry->stern_travel_country->name}}</h6>
@foreach($TravelCountry->stern_travel_country->travel_country_services as $travel_country_service)
<div class="pb-3">
<label class="switcher switcher-on-off">
{{ Form::hidden('country_service['.$travel_country_service->id.']', 0) }}
{{ Form::checkbox('country_service['.$travel_country_service->id.']', 1, \App\Models\BookingCountryService::getStatus($travel_country_service->id, $booking->id), array('class'=>'switcher-input')) }}
<span class="switcher-indicator">
<span class="switcher-yes"><span class="ion ion-md-checkmark"></span></span>
<span class="switcher-no"><span class="ion ion-md-close"></span></span>
</span>
<span class="switcher-label">{{ $travel_country_service->name }}</span>
</label>
</div>
@endforeach
@endif
@endforeach
</div>
<div class="col-md-4 col-sm-12">
<h5 class="card-title mt-3 mb-1">Leistungsträger</h5>
<hr class="mt-0 mb-0">
@if($booking->service_provider_entries->count())
@foreach($booking->service_provider_entries as $service_provider_entry)
@if($service_provider_entry->service_provider->service_provider_services->count())
<h6 class="pt-2 pb-2 mb-0">{{$service_provider_entry->service_provider->name}}</h6>
@foreach($service_provider_entry->service_provider->service_provider_services as $service_provider_service)
<div class="pb-3">
<label class="switcher switcher-on-off">
{{ Form::hidden('provider_service['.$service_provider_service->id.']', 0) }}
{{ Form::checkbox('provider_service['.$service_provider_service->id.']', 1, \App\Models\BookingProviderService::getStatus($service_provider_service->id, $booking->id), array('class'=>'switcher-input')) }}
<span class="switcher-indicator">
<span class="switcher-yes"><span class="ion ion-md-checkmark"></span></span>
<span class="switcher-no"><span class="ion ion-md-close"></span></span>
</span>
<span class="switcher-label">{{ $service_provider_service->name }}</span>
</label>
</div>
@endforeach
@endif
@endforeach
@endif
</div>
<div class="col-md-4 col-sm-12">
<h5 class="card-title mt-3 mb-1">Reiseveranstalter</h5>
<hr class="mt-0 mb-0">
@if($booking->booking_service_items->count())
@foreach($booking->booking_service_items as $booking_service_item)
@if($booking_service_item->travel_company->travel_company_services->count())
<h6 class="pt-2 pb-2 mb-0">{{$booking_service_item->travel_company->name}}</h6>
@foreach($booking_service_item->travel_company->travel_company_services as $travel_company_service)
<div class="pb-3">
<label class="switcher switcher-on-off">
{{ Form::hidden('company_service['.$travel_company_service->id.']', 0) }}
{{ Form::checkbox('company_service['.$travel_company_service->id.']', 1, \App\Models\BookingCompanyService::getStatus($travel_company_service->id, $booking->id), array('class'=>'switcher-input')) }}
<span class="switcher-indicator">
<span class="switcher-yes"><span class="ion ion-md-checkmark"></span></span>
<span class="switcher-no"><span class="ion ion-md-close"></span></span>
</span>
<span class="switcher-label">{{ $travel_company_service->name }}</span>
</label>
</div>
@endforeach
@endif
@endforeach
@endif
</div>
<div class="col-12">
<hr>
<div class="text-left mt-3">
<button type="submit" name="action" value="update_booking" class="btn btn-sm btn-secondary">{{ __('save changes') }}</button>&nbsp;
<a href="{{route('bookings')}}" class="btn btn-sm btn-default">{{ __('zur Übersicht') }}</a>
</div>
</div>
</div>
</div>
</div>

View file

@ -54,6 +54,11 @@
Buchung
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="javascript:void(0)" data-collapse="#collapseBookingServices">
Leistungen
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="javascript:void(0)" data-collapse="#collapseBookingMyJack">
MyJack
@ -69,6 +74,16 @@
Organisation
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="javascript:void(0)" data-collapse="#collapseBookingCompany">
Veranstalter
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="javascript:void(0)" data-collapse="#collapseBookingProvider">
Leistungsträger
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="javascript:void(0)" data-collapse="#collapseBookingMails">
E-Mails
@ -98,6 +113,9 @@
<!-- Buchung -->
@include('booking._detail_booking')
<!-- Leistungen -->
@include('booking._detail_services')
<!-- MyJack -->
@include('booking._detail_myjack')
@ -107,6 +125,12 @@
<!-- Organisation -->
@include('booking._detail_drafs')
<!-- Veranstalter -->
@include('booking._detail_company')
<!-- Leistungsträger -->
@include('booking._detail_provider')
{!! Form::close() !!}
@include('booking._detail_mails')

View file

@ -267,7 +267,7 @@
{ data: 'start_date', name: 'start_date' },
{ data: 'end_date', name: 'end_date' },
{ data: 'travel_documents', name: 'travel_documents', orderable: false },
{ data: 'booking_country_services', name: 'booking_country_services', orderable: false },
{ data: 'booking_services', name: 'booking_services', orderable: false },
{ data: 'sf_guard_user_id', name: 'sf_guard_user_id', orderable: false },
{ data: 'lead.status_id', name: 'lead.status_id', orderable: false },
{ data: 'last_customer_email', name: 'last_customer_email', orderable: true },

View file

@ -0,0 +1,132 @@
@extends('layouts.layout-2')
@section('content')
{!! Form::open(['url' => route('admin_settings_service_provider_update', [$id]), 'class' => 'form-horizontal']) !!}
<h4 class="font-weight-bold py-3 mb-1">
Leistungsträger Inhalte {{ $model->name }}
<div class="float-right">
<a href="{{route('admin_settings_service_provider')}}" class="btn btn-default btn-sm">{{ __('back') }}</a>
</div>
</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-site">Allgemein</a>
</li>
<li class="nav-item">
<a class="nav-link @if($step === 'services') active show @endif" data-toggle="tab" href="#navs-services">Leistungen</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane fade @if($step == false) active show @endif" id="navs-site">
<div class="card">
<div class="card-body">
<h4>Allgemein</h4>
<div class="form-row">
<div class="form-group col-sm-12">
<label class="form-label" for="name">{{ __('Name') }} *</label>
{{ Form::text('name', $model->name, array('placeholder'=>__('Name'), 'class'=>'form-control', 'id'=>'name', 'required'=>true)) }}
</div>
</div>
<div class="form-row">
<div class="form-group col-sm-12">
<label for="percentage" class="form-label">Type</label>
{{ Form::select('type', \App\Models\ServiceProvider::$types , $model->type, array('class'=>'custom-select', 'required'=>true)) }}
</div>
</div>
<div class="form-row">
<div class="form-group col-sm-12">
<label class="form-label" for="contact_emails">Für interene Mails <span class="text-muted">(jede E-Mail in eine extra Zeile)</span></label>
{{ Form::textarea('contact_emails', \App\Services\Util::_implodeLines($model->contact_emails), array('class'=>'form-control', 'rows'=>4)) }}
</div>
</div>
<div class="form-row">
<div class="col-12 py-2">
<label class="switcher switcher-on-off">
{{ Form::hidden('active', 0) }}
{{ Form::checkbox('active', 1, $model->active, array('class'=>'switcher-input')) }}
<span class="switcher-indicator">
<span class="switcher-yes"></span>
<span class="switcher-no"></span>
</span>
<span class="switcher-label">sichtbar</span>
</label>
</div>
</div>
<br>
<button type="submit" name="action" value="" class="btn btn-submit">{{ __('save changes') }}</button>&nbsp;
</div>
</div>
</div>
<div class="tab-pane fade @if($step === 'services') active show @endif" id="navs-services">
<div class="card">
<div class="card-body">
<br>
<h4>Leistungen <span class="text-muted">für diesen Leistungsträger</span></h4>
<div class="table-responsive" id="booking_files_table">
<table class="table table-striped table-sm">
<thead>
<tr>
<th style="width: 2%;">&nbsp;</th>
<th style="width: 6%;">{{__('POS')}}</th>
<th>Leistung</th>
<th>Beschreibung</th>
<th>&nbsp;</th>
</tr>
</thead>
<tbody>
@if($model->service_provider_services)
@foreach($model->service_provider_services as $service_provider_service)
<tr>
<td class="not">
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-load-content"
data-id="{{$service_provider_service->id}}"
data-model="TravelCompanyService"
data-action="modal-service_provider-services"
data-back="{{route('admin_settings_service_provider_detail', [$model->id, 'services'])}}"
data-url="{{ route('admin_settings_service_provider_update', [$model->id]) }}"
data-route="{{ route('modal_load') }}"><span class="fa fa-edit"></span></button>
</td>
<td>{{$service_provider_service->pos }}</td>
<td>{{$service_provider_service->name}}</td>
<td>{{$service_provider_service->description}}</td>
<td>
<a class="ml-2 btn btn-xs btn-danger" href="{{ route('admin_settings_service_provider_delete', [$service_provider_service->id, 'provider_service']) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="fa fa-trash-alt"></i></a>
</td>
</tr>
@endforeach
@endif
</tbody>
</table>
</div>
<div class="text-right d-block w-100">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-load-content"
data-id="new"
data-model="TravelCompanyService"
data-action="modal-service_provider-services"
data-back="{{route('admin_settings_service_provider_detail', [$model->id, 'services'])}}"
data-url="{{ route('admin_settings_service_provider_update', [$model->id]) }}"
data-route="{{ route('modal_load') }}"><i class="ion ion-md-add-circle"></i>&nbsp;Leistung hinzufügen</button>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="text-left mt-3">
<a href="{{route('admin_settings_service_provider')}}" class="btn btn-default">{{ __('back') }}</a>
</div>
{!! Form::close() !!}
@endsection

View file

@ -23,14 +23,9 @@
@foreach($service_provider as $value)
<tr>
<td data-sort="{{ $value->id }}">
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-default"
data-id="{{ $value->id }}"
data-name="{{ $value->name }}"
data-type="{{ $value->type }}"
data-contact_emails="{{\App\Services\Util::_implodeLines($value->contact_emails)}}"
data-active="{{ $value->active }}">
<a href="{{ route('admin_settings_service_provider_detail', [$value->id]) }}" class="btn icon-btn btn-sm btn-primary">
<span class="fa fa-edit"></span>
</button>
</a>
</td>
<td>{{ $value->name }}</td>
<td>{!! \App\Services\Util::_implodeLines($value->contact_emails, "<br>") !!}</td>
@ -42,70 +37,13 @@
</tbody>
</table>
<div class="mt-4 col">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-default"
data-id="new"
data-name=""
data-type=""
data-contact_emails=""
data-active="1"
>Neuen Leistungsträger anlegen</button>
<a href="{{ route('admin_settings_service_provider_detail', ['new']) }}" class="btn btn-sm btn-primary">Neuen Leistungsträger anlegen</a>
</div>
</div>
<div class="modal fade" id="modals-default">
<div class="modal-dialog">
{!! Form::open([ 'url' => route('admin_settings_service_provider_update'), 'method' => 'post', 'class' => 'modal-content' ]) !!}
{{ Form::hidden('id', '') }}
<div class="modal-header">
<h5 class="modal-title">Leistungsträger <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>
{{ Form::text('name', '', array('placeholder'=>__('Description'), 'class'=>'form-control', 'required'=>true)) }}
</div>
</div>
<div class="form-row">
<div class="form-group col">
<label class="form-label" for="type">Type</label>
{{ Form::select('type', \App\Models\ServiceProvider::$types , '', array('class'=>'custom-select', 'required'=>true)) }}
</div>
</div>
<div class="form-row">
<div class="form-group col">
<label class="form-label" for="contact_emails">Für interene Mails <span class="text-muted">(jede E-Mail in eine extra Zeile)</span></label>
{{ Form::textarea('contact_emails', '', array('class'=>'form-control', 'rows'=>4)) }}
</div>
</div>
<div class="form-group">
<label class="custom-control custom-checkbox m-0">
{{ Form::checkbox('active', 1, '', array('class'=>'custom-control-input')) }}
<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::close() !!}
</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='name']").val(button.data('name'));
$(this).find(".modal-body select[name='type']").val(button.data('type'));
$(this).find(".modal-body textarea[name='contact_emails']").val(button.data('contact_emails'));
$(this).find(".modal-body input[name='active']").prop( "checked", button.data('active'));
});
$('.datatables-default').dataTable({
"bLengthChange": false,
"iDisplayLength": 50,

View file

@ -0,0 +1,156 @@
@extends('layouts.layout-2')
@section('content')
{!! Form::open(['url' => route('admin_settings_travel_company_update', [$id]), 'class' => 'form-horizontal']) !!}
<h4 class="font-weight-bold py-3 mb-1">
Reiseveranstalter Inhalte {{ $model->name }}
<div class="float-right">
<a href="{{route('admin_settings_travel_company')}}" class="btn btn-default btn-sm">{{ __('back') }}</a>
</div>
</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-site">Allgemein</a>
</li>
<li class="nav-item">
<a class="nav-link @if($step === 'services') active show @endif" data-toggle="tab" href="#navs-services">Leistungen</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane fade @if($step == false) active show @endif" id="navs-site">
<div class="card">
<div class="card-body">
<h4>Allgemein</h4>
<div class="form-row">
<div class="form-group col-sm-12">
<label class="form-label" for="name">{{ __('Name') }} *</label>
{{ Form::text('name', $model->name, array('placeholder'=>__('Name'), 'class'=>'form-control', 'id'=>'name', 'required'=>true)) }}
</div>
</div>
<div class="form-row">
<div class="form-group col-sm-12">
<label for="percentage" class="form-label">Prozentsatz für Provision*</label>
{{ Form::text('percentage', $model->percentage, array('placeholder'=>__('%'), 'class'=>'form-control', 'required'=>true)) }}
</div>
</div>
<div class="form-row">
<div class="form-group col-sm-12">
<label class="form-label" for="contact_emails">Für interene Mails <span class="text-muted">(jede E-Mail in eine extra Zeile)</span></label>
{{ Form::textarea('contact_emails', \App\Services\Util::_implodeLines($model->contact_emails), array('class'=>'form-control', 'rows'=>4)) }}
</div>
</div>
<div class="form-row">
<div class="col-12 py-2">
<label class="switcher switcher-on-off">
{{ Form::hidden('is_allowed_edit_commission', 0) }}
{{ Form::checkbox('is_allowed_edit_commission', 1, $model->is_allowed_edit_commission, array('class'=>'switcher-input')) }}
<span class="switcher-indicator">
<span class="switcher-yes"></span>
<span class="switcher-no"></span>
</span>
<span class="switcher-label">Provision änderbar</span>
</label>
</div>
<div class="col-12 py-2">
<label class="switcher switcher-on-off">
{{ Form::hidden('is_inhouse', 0) }}
{{ Form::checkbox('is_inhouse', 1, $model->is_inhouse, array('class'=>'switcher-input')) }}
<span class="switcher-indicator">
<span class="switcher-yes"></span>
<span class="switcher-no"></span>
</span>
<span class="switcher-label">In-House</span>
</label>
</div>
<div class="col-12 py-2">
<label class="switcher switcher-on-off">
{{ Form::hidden('active', 0) }}
{{ Form::checkbox('active', 1, $model->active, array('class'=>'switcher-input')) }}
<span class="switcher-indicator">
<span class="switcher-yes"></span>
<span class="switcher-no"></span>
</span>
<span class="switcher-label">sichtbar</span>
</label>
</div>
</div>
<br>
<button type="submit" name="action" value="" class="btn btn-submit">{{ __('save changes') }}</button>&nbsp;
</div>
</div>
</div>
<div class="tab-pane fade @if($step === 'services') active show @endif" id="navs-services">
<div class="card">
<div class="card-body">
<br>
<h4>Leistungen <span class="text-muted">für dieses Reiseveranstalter</span></h4>
<div class="table-responsive" id="booking_files_table">
<table class="table table-striped table-sm">
<thead>
<tr>
<th style="width: 2%;">&nbsp;</th>
<th style="width: 6%;">{{__('POS')}}</th>
<th>Leistung</th>
<th>Beschreibung</th>
<th>&nbsp;</th>
</tr>
</thead>
<tbody>
@if($model->travel_company_services)
@foreach($model->travel_company_services as $travel_company_service)
<tr>
<td class="not">
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-load-content"
data-id="{{$travel_company_service->id}}"
data-model="TravelCompanyService"
data-action="modal-travel_company-services"
data-back="{{route('admin_settings_travel_company_detail', [$model->id, 'services'])}}"
data-url="{{ route('admin_settings_travel_company_update', [$model->id]) }}"
data-route="{{ route('modal_load') }}"><span class="fa fa-edit"></span></button>
</td>
<td>{{$travel_company_service->pos }}</td>
<td>{{$travel_company_service->name}}</td>
<td>{{$travel_company_service->description}}</td>
<td>
<a class="ml-2 btn btn-xs btn-danger" href="{{ route('admin_settings_travel_company_delete', [$travel_company_service->id, 'company_service']) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="fa fa-trash-alt"></i></a>
</td>
</tr>
@endforeach
@endif
</tbody>
</table>
</div>
<div class="text-right d-block w-100">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-load-content"
data-id="new"
data-model="TravelCompanyService"
data-action="modal-travel_company-services"
data-back="{{route('admin_settings_travel_company_detail', [$model->id, 'services'])}}"
data-url="{{ route('admin_settings_travel_company_update', [$model->id]) }}"
data-route="{{ route('modal_load') }}"><i class="ion ion-md-add-circle"></i>&nbsp;Leistung hinzufügen</button>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="text-left mt-3">
<a href="{{route('admin_settings_travel_company')}}" class="btn btn-default">{{ __('back') }}</a>
</div>
{!! Form::close() !!}
@endsection

View file

@ -25,16 +25,9 @@
@foreach($travel_company as $value)
<tr>
<td data-sort="{{ $value->id }}">
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-default"
data-id="{{ $value->id }}"
data-name="{{ $value->name }}"
data-percentage="{{ $value->percentage }}"
data-is_allowed_edit_commission="{{ $value->is_allowed_edit_commission }}"
data-is_inhouse="{{ $value->is_inhouse }}"
data-contact_emails="{{\App\Services\Util::_implodeLines($value->contact_emails)}}"
data-active="{{ $value->active }}">
<a href="{{ route('admin_settings_travel_company_detail', [$value->id]) }}" class="btn icon-btn btn-sm btn-primary">
<span class="fa fa-edit"></span>
</button>
</a>
</td>
<td>{{ $value->name }}</td>
<td>{!! \App\Services\Util::_implodeLines($value->contact_emails, "<br>") !!}</td>
@ -49,85 +42,12 @@
</tbody>
</table>
<div class="mt-4 col">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-default"
data-id="new"
data-name=""
data-percentage=""
data-is_allowed_edit_commission=""
data-contact_emails=""
data-active="1"
>Neuen Reiseveranstalter anlegen</button>
</div>
</div>
<div class="modal fade" id="modals-default">
<div class="modal-dialog">
{!! Form::open([ 'url' => route('admin_settings_travel_company_update'), 'method' => 'post', 'class' => 'modal-content' ]) !!}
{{ Form::hidden('id', '') }}
<div class="modal-header">
<h5 class="modal-title">Reiseveranstalter <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>
{{ Form::text('name', '', array('placeholder'=>__('Description'), 'class'=>'form-control', 'required'=>true)) }}
</div>
</div>
<div class="form-row">
<div class="form-group col">
<label for="percentage" class="form-label">Prozentsatz für Provision*</label>
{{ Form::text('percentage', '', array('placeholder'=>__('%'), 'class'=>'form-control', 'required'=>true)) }}
</div>
</div>
<div class="form-row">
<div class="form-group col">
<label class="form-label" for="contact_emails">Für interene Mails <span class="text-muted">(jede E-Mail in eine extra Zeile)</span></label>
{{ Form::textarea('contact_emails', '', array('class'=>'form-control', 'rows'=>4)) }}
</div>
</div>
<div class="form-group">
<label class="custom-control custom-checkbox m-0">
{{ Form::checkbox('is_allowed_edit_commission', 1, '', array('class'=>'custom-control-input')) }}
<span class="custom-control-label">{{__('Provision änderbar')}}</span>
</label>
</div>
<div class="form-group">
<label class="custom-control custom-checkbox m-0">
{{ Form::checkbox('is_inhouse', 1, '', array('class'=>'custom-control-input')) }}
<span class="custom-control-label">{{__('In-House')}}</span>
</label>
</div>
<div class="form-group">
<label class="custom-control custom-checkbox m-0">
{{ Form::checkbox('active', 1, '', array('class'=>'custom-control-input')) }}
<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::close() !!}
<a href="{{ route('admin_settings_travel_company_detail', ['new']) }}" class="btn btn-sm btn-primary">Neuen Reiseveranstalter anlegen</a>
</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='name']").val(button.data('name'));
$(this).find(".modal-body input[name='percentage']").val(button.data('percentage'));
$(this).find(".modal-body input[name='is_allowed_edit_commission']").prop( "checked", button.data('is_allowed_edit_commission'));
$(this).find(".modal-body input[name='is_inhouse']").prop( "checked", button.data('is_inhouse'));
$(this).find(".modal-body textarea[name='contact_emails']").val(button.data('contact_emails'));
$(this).find(".modal-body input[name='active']").prop( "checked", button.data('active'));
});
$('.datatables-default').dataTable({
"bLengthChange": false,
"iDisplayLength": 50,

View file

@ -38,6 +38,7 @@
<div class="tab-content">
<div class="tab-pane fade @if($step == false) active show @endif" id="navs-site">
<div class="card">
<div class="card-body">
<div class="form-row">
<div class="form-group col-sm-12">
@ -95,9 +96,11 @@
<button type="submit" name="action" value="" class="btn btn-submit">{{ __('save changes') }}</button>&nbsp;
</div>
</div>
</div>
<div class="tab-pane fade @if($step === 'form') active show @endif" id="navs-form">
<div class="card">
<div class="card-body">
<br>
<h4>Inhalte für Formular</h4>
@ -112,11 +115,12 @@
</div>
</div>
<button type="submit" name="action" value="form" class="btn btn-submit">{{ __('save changes') }}</button>&nbsp;
</div>
</div>
</div>
<div class="tab-pane fade @if($step === 'contact') active show @endif" id="navs-contact">
<div class="card">
<div class="card-body">
<h4>Land/Länder für Kontaktdaten definieren</h4>
<div class="form-row">
@ -169,9 +173,11 @@
<button type="submit" name="action" value="contact" class="btn btn-submit">{{ __('save changes') }}</button>&nbsp;
</div>
</div>
</div>
<div class="tab-pane fade @if($step === 'emails') active show @endif" id="navs-emails">
<div class="card">
<div class="card-body">
<div class="form-row">
<div class="form-group col-sm-12">
@ -212,9 +218,11 @@
@endforeach
<button type="submit" name="action" value="emails" class="btn btn-submit">{{ __('save changes') }}</button>&nbsp;
</div>
</div>
</div>
<div class="tab-pane fade @if($step === 'data') active show @endif" id="navs-data">
<div class="card">
<div class="card-body">
<br>
<h4>PDF-Dateien <span class="text-muted">für dieses Reiseland</span></h4>
@ -268,10 +276,11 @@
data-route="{{ route('modal_load') }}"><i class="ion ion-md-cloud-upload"></i>&nbsp;Datei hinzufügen</button>
</div>
</div>
</div>
</div>
<div class="tab-pane fade @if($step === 'services') active show @endif" id="navs-services">
<div class="card">
<div class="card-body">
<br>
<h4>Länderleistungen/Agenturleistungen <span class="text-muted">für dieses Reiseland</span></h4>
@ -322,10 +331,11 @@
data-route="{{ route('modal_load') }}"><i class="ion ion-md-add-circle"></i>&nbsp;Leistung hinzufügen</button>
</div>
</div>
</div>
</div>
<div class="tab-pane fade @if($step === 'travel') active show @endif" id="navs-travel">
<div class="card">
<div class="card-body">
<br>
<h4>Einreisebestimmungen</h4>
@ -339,6 +349,7 @@
@endforeach
<button type="submit" name="action" value="travel" class="btn btn-submit">{{ __('save changes') }}</button>&nbsp;
</div>
</div>
</div>
</div>
</div>