first commit
This commit is contained in:
commit
0baac018a2
1011 changed files with 145854 additions and 0 deletions
113
resources/views/admin/lead/edit.blade.php
Normal file
113
resources/views/admin/lead/edit.blade.php
Normal file
|
|
@ -0,0 +1,113 @@
|
|||
@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-2 mb-2">
|
||||
@if(!$user->id || $user->id === 'new')
|
||||
{{ __('Neuen Berater erstellen') }}
|
||||
@else
|
||||
{{ __('Berater bearbeiten') }}
|
||||
@endif
|
||||
</h4>
|
||||
|
||||
{!! Form::open(['url' => route('admin_lead_store')."?show=".$show, 'class' => 'form-horizontal', 'id'=>'lead-form-validation']) !!}
|
||||
|
||||
<div class="text-left mt-0 mb-2">
|
||||
<button type="submit" class="btn btn-submit btn-primary">{{ __('save') }}</button>
|
||||
<a href="{{ route('admin_leads') }}" class="btn btn-default">{{ __('back') }}</a>
|
||||
</div>
|
||||
|
||||
@include('admin.lead.m_register_data')
|
||||
|
||||
@if(!$user->id || $user->id === 'new')
|
||||
@include('user.user_new_form')
|
||||
@include('user.data_verify')
|
||||
@else
|
||||
@include('user.user_form')
|
||||
@endif
|
||||
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" class="btn btn-submit btn-primary">{{ __('save') }}</button>
|
||||
<a href="{{ route('admin_leads') }}" class="btn btn-default">{{ __('back') }}</a>
|
||||
</div>
|
||||
|
||||
{!! Form::close() !!}
|
||||
|
||||
|
||||
<!-- Modal template -->
|
||||
<div class="modal fade" id="modals-edit-m-data">
|
||||
<div class="modal-dialog">
|
||||
<form class="modal-content" action="{{route('admin_lead_edit', [$user->id])}}?show={{$show}}" method="post">
|
||||
@csrf
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title"> {{__('Daten mivita')}} <span class="font-weight-light">{{__('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="name" class="form-label">{{__('Passwort eingeben')}}</label>
|
||||
<input type="text" class="form-control" name="edit_m_data_key" placeholder="gseele">
|
||||
</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">{{__('öffnen')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Modal template -->
|
||||
<div class="modal fade" id="modals-register-m-data">
|
||||
<div class="modal-dialog">
|
||||
<form class="modal-content" action="{{route('admin_lead_released', ['incomplete', $user->id])}}?show={{$show}}" method="post">
|
||||
@csrf
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title"> {{__('Berater Daten nicht vollständig')}}</h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>Berater eine E-Mail senden, dass die Daten nicht vollständig sind?<br>
|
||||
Vervollständige die Nachricht welche Daten fehlerhaft sind, die Nachricht wird an den Berater gesendet. Anrede, Links, Absender wird automatisch in die E-Mail eingefügt. </p>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="name" class="form-label">{{__('Betreff')}}</label>
|
||||
<input type="text" class="form-control" name="account_incomplete_subject" value="{{__('email.email_incomplete')}}">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<div class="form-group col">
|
||||
<label for="name" class="form-label">{{__('Nachricht')}}</label>
|
||||
<textarea name="account_incomplete_message" class="form-control" rows="6">{{__('email.account_incomplete_copy1line')}}</textarea>
|
||||
</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>
|
||||
|
||||
|
||||
|
||||
@endsection
|
||||
75
resources/views/admin/lead/index.blade.php
Normal file
75
resources/views/admin/lead/index.blade.php
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
|
||||
|
||||
<h4 class="font-weight-bold py-2 mb-2">
|
||||
{{ __('Berater') }}
|
||||
</h4>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-datatable table-responsive">
|
||||
{{-- <div class="ml-4">
|
||||
<a href="{{ route('admin_lead_edit', ['new']) }}" class="btn btn-sm btn-primary">{{__('Neuen Berater erstellen')}}</a>
|
||||
</div>--}}
|
||||
<table class="datatables-leads table table-striped table-bordered">
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>{{__('E-Mail')}}</th>
|
||||
<th>{{__('Vorname')}}</th>
|
||||
<th>{{__('Nachname')}}</th>
|
||||
<th>{{__('Level')}}</th>
|
||||
<th>{{__('Mitglied')}}</th>
|
||||
<th>{{__('bis')}}</th>
|
||||
<th>{{__('Umsatz')}}</th>
|
||||
<th>{{__('Sales')}}</th>
|
||||
<th>{{__('verifiziert')}}</th>
|
||||
<th>{{__('freigegeben')}}</th>
|
||||
<th>{{__('Einv.')}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
{{-- <div class="mt-4 ml-4">
|
||||
<a href="{{ route('admin_lead_edit', ['new']) }}" class="btn btn-sm btn-primary">{{__('Neuen Berater erstellen')}}</a>
|
||||
</div> --}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
|
||||
$('.datatables-leads').dataTable({
|
||||
"processing": true,
|
||||
"serverSide": true,
|
||||
"ajax": '{!! route('admin_leads_datatable') !!}',
|
||||
"order": [[0, "desc" ]],
|
||||
"columns": [
|
||||
{data: 'id', searchable: false},
|
||||
{ data: 'email', name: 'email' },
|
||||
{ data: 'first_name', name: 'account.first_name' },
|
||||
{ data: 'last_name', name: 'account.last_name' },
|
||||
{ data: 'user_level', name: 'user_level' },
|
||||
{ data: 'payment_account', name: 'payment_account' },
|
||||
{ data: 'payment_account_date', name: 'payment_account_date' },
|
||||
{ data: 'turnover', name: 'turnover' },
|
||||
{ data: 'sales_total', name: 'sales_total' },
|
||||
{ data: 'confirmed', name: 'confirmed' },
|
||||
{ data: 'active', name: 'active' },
|
||||
{ data: 'agreement', name: 'agreement' },
|
||||
],
|
||||
"bLengthChange": false,
|
||||
"iDisplayLength": 50,
|
||||
"language": {
|
||||
"url": "/js/German.json"
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endsection
|
||||
|
||||
49
resources/views/admin/lead/m_data_form.blade.php
Normal file
49
resources/views/admin/lead/m_data_form.blade.php
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
@if($m_data_error)
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="alert alert-danger">
|
||||
<ul>
|
||||
<li>{{ $m_data_error }}</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
<div class="card-body">
|
||||
<div class="float-right">
|
||||
<button type="button" class="btn btn-sm btn-secondary" data-toggle="modal" data-target="#modals-edit-m-data">
|
||||
<span class="far fa-edit"></span> Berater Daten bearbeiten
|
||||
</button>
|
||||
</div>
|
||||
<div class="table-responsive">
|
||||
<table class="table card-table m-0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>{{ __('Name') }}</th>
|
||||
<th>{{ __('Account ID') }}</th>
|
||||
<th>{{ __('Rolle') }}</th>
|
||||
<th>{{ __('Sponsor') }}</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ \App\Services\HTMLHelper::getSalutationLang($user->account->m_salutation) }} {{ $user->account->m_first_name }} {{ $user->account->m_last_name }}</td>
|
||||
<td>{{ $user->account->m_account }}</td>
|
||||
<td>@if($user->user_level){{ $user->user_level->name }}@endif</td>
|
||||
<td>@if($user->m_sponsor){{ $user->getMUserSponsor() }}@endif</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="table card-table m-0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>{{ __('weitere Daten') }}</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{$user->account->m_notes}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
49
resources/views/admin/lead/m_data_form_edit.blade.php
Normal file
49
resources/views/admin/lead/m_data_form_edit.blade.php
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
|
||||
<input type="hidden" name="m_data_edit" value="TSOK">
|
||||
<div class="card-body">
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-4">
|
||||
<label for="m_account" class="form-label">{{ __('Account ID') }} (unique)</label>
|
||||
<span class="badge badge-secondary float-right">Nächste freie ID: {{$next_account_id}}</span>
|
||||
{{ Form::text('m_account', $user->account->m_account, array('placeholder'=>__('Account ID'), 'class'=>'form-control', 'id'=>'m_account')) }}
|
||||
</div>
|
||||
<div class="form-group col-md-4">
|
||||
<label class="form-label">{{ __('Rolle') }}</label>
|
||||
<select class="selectpicker" data-style="btn-light" name="m_level" id="m_level">
|
||||
{!! HTMLHelper::getUserLevelOptions($user->m_level) !!}
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group col-md-4">
|
||||
<label class="form-label">{{ __('Sponsor') }}</label>
|
||||
<select class="selectpicker" data-style="btn-light" name="m_sponsor" id="m_sponsor" data-live-search="true">
|
||||
{!! HTMLHelper::getMembersOptions($user->m_sponsor, true) !!}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-2">
|
||||
<label class="form-label">{{ __('Salutation') }}</label>
|
||||
<select class="selectpicker" data-style="btn-light" name="m_salutation" id="m_salutation">
|
||||
{!! HTMLHelper::getSalutation($user->account->m_salutation) !!}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-md-5">
|
||||
<label class="form-label" for="first_name">{{ __('First name') }}</label>
|
||||
{{ Form::text('m_first_name', $user->account->m_first_name, array('placeholder'=>__('First name'), 'class'=>'form-control', 'id'=>'m_first_name')) }}
|
||||
</div>
|
||||
<div class="form-group col-md-5">
|
||||
<label class="form-label" for="last_name">{{ __('Last name') }}</label>
|
||||
{{ Form::text('m_last_name', $user->account->m_last_name, array('placeholder'=>__('Last name'), 'class'=>'form-control', 'id'=>'m_last_name')) }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label" for="m_notes">{{ __('weitere Daten') }}</label>
|
||||
{{ Form::textarea('m_notes', $user->account->m_notes , array('placeholder'=>__('weitere Daten'), 'class'=>'form-control', 'id'=>'m_notes', 'rows'=>4)) }}
|
||||
</div>
|
||||
<div class="text-left mt-3">
|
||||
<button type="submit" class="btn btn-submit btn-primary">{{ __('save') }}</button>
|
||||
</div>
|
||||
<hr>
|
||||
</div>
|
||||
|
||||
178
resources/views/admin/lead/m_register_data.blade.php
Normal file
178
resources/views/admin/lead/m_register_data.blade.php
Normal file
|
|
@ -0,0 +1,178 @@
|
|||
|
||||
<div class="card mb-4">
|
||||
<h5 class="card-header">
|
||||
<a href="#" class="@if($show !== 'check_lead' || !$m_data_load) collapsed @endif" data-toggle="collapse" data-target="#collapseMRegister" aria-expanded="@if($show !== 'check_lead' || !$m_data_load) false @else true @endif" aria-controls="collapseMRegister">
|
||||
<i class="fa fa-caret-expand"></i> {{__('Berater Status') }}
|
||||
</a>
|
||||
</h5>
|
||||
<div class="collapse @if($show === 'check_lead' || $m_data_load) show @endif" id="collapseMRegister">
|
||||
@if($m_data_load)
|
||||
@include('admin.lead.m_data_form_edit')
|
||||
@endif
|
||||
@if(!$m_data_load)
|
||||
@include('admin.lead.m_data_form')
|
||||
@endif
|
||||
|
||||
|
||||
<div class="card-body mb-2 pb-1">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
|
||||
@if($user->payment_account )
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('Berater-Account aktiv')}}</strong> {{__('bis zum:')}} {{ $user->getPaymentAccountDateFormat() }}</p>
|
||||
@else
|
||||
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
|
||||
<strong>{{__('Berater-Account inaktiv')}}</strong></p>
|
||||
@endif
|
||||
|
||||
@if($user->active == 1)
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('Daten vollständig, freigeschaltet')}}</strong>: {{ $user->getActiveDateFormat() }}</p>
|
||||
@if($user->files->count())
|
||||
@foreach($user->files()->whereIdentifier('contract')->get() as $file)
|
||||
<a class="btn btn-secondary" href="{{ route('storage_file', [$file->id, 'user']) }}" target="_blank">MIVITA_Beratervertrag.pdf</a>
|
||||
@endforeach
|
||||
@endif
|
||||
@else
|
||||
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
|
||||
<strong>{{__('Daten nicht vollständigt, inaktiv')}}</strong></p>
|
||||
@endif
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
@if($user->account_id)
|
||||
@if($user->agreement)
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('Einverständniserklärung')}}</strong>: {{ $user->getAgreementFormat() }}
|
||||
</p>
|
||||
@else
|
||||
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
|
||||
<strong>{{__('Einverständniserklärung')}}</strong> {{ __('nicht akzeptiert') }}</p>
|
||||
@endif
|
||||
@if($user->account->data_protection)
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('Privacy policy approved')}}</strong>: {{ $user->account->getDataProtectionFormat() }}
|
||||
</p>
|
||||
@endif
|
||||
@endif
|
||||
@if($user->confirmed == 1)
|
||||
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||
<strong>{{__('E-Mail verified')}}</strong>: {{ $user->getConfirmationDateFormat() }}</p>
|
||||
@else
|
||||
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
|
||||
<strong>{{__('E-Mail not verified')}}</strong></p>
|
||||
<a class="btn btn-warning btn-sm" href="{{route('admin_lead_new_mail_verified', $user->id)}}">Neue E-Mail für die Registrierung zusenden</a>
|
||||
@endif
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
@if(!$user->active)
|
||||
<hr>
|
||||
@if($user->release_account)
|
||||
<strong>Registrierung abgeschlossen {{ $user->getReleaseAccountFormat() }}</strong><br>
|
||||
<a href="{{route('admin_lead_released', ['completed', $user->id])}}" class="btn btn-success" onclick="return confirm('Alle Daten vollständig und Berater freischalten?');">Die Daten sind vollständigt => Berater freischalten</a>
|
||||
<button type="button" class="btn btn-sm btn-danger float-right" data-toggle="modal" data-target="#modals-register-m-data">
|
||||
Berater eine E-Mail senden => Daten nicht vollständigt
|
||||
</button>
|
||||
@else
|
||||
<strong><span class="text-danger">Berater muss Registrierung noch abschließen</span></strong>
|
||||
@endif
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
</div>
|
||||
@if($user->files->count())
|
||||
<div class="card-body mb-4 pb-1">
|
||||
<div class="table-responsive">
|
||||
<table class="table card-table m-0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>Ausweisdaten</th>
|
||||
<th>Name</th>
|
||||
<th>Größe</th>
|
||||
<th class="text-right">löschen</th>
|
||||
</tr>
|
||||
@foreach($user->files()->whereIdentifier('id_card')->get() as $file)
|
||||
<tr>
|
||||
<td><a target="_blank" href="{{ route('storage_file', [$file->id, 'user']) }}">
|
||||
@if(strtolower($file->ext ) === 'pdf')
|
||||
<object data="{{ route('storage_file', [$file->id, 'user']) }}" type="application/pdf" width="160"></object>
|
||||
@else
|
||||
<img src="{{ route('storage_file', [$file->id, 'user']) }}" alt="" width="160">
|
||||
@endif
|
||||
</a>
|
||||
</td>
|
||||
<td><a target="_blank" href="{{ route('storage_file', [$file->id, 'user']) }}">{{ $file->original_name }}</a></td>
|
||||
<td>{{ $file->formatBytes() }}</td>
|
||||
<td class="text-right">
|
||||
<a href="{{ route('admin_lead_delete_file', [$user->id, $file->id, 'upload']) }}" class="btn btn-sm" onclick="return confirm('Datei wirklich löschen?');">
|
||||
<span class="ion ion-md-trash text-danger"></span>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<hr>
|
||||
@if($user->account_id)
|
||||
|
||||
@if($user->account->getNotice('business_license') === 'later')
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="bg-warning rounded py-2 px-3">
|
||||
{{__('register.business_license_later')}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
@if($user->account->getNotice('business_license') === 'non')
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="bg-warning rounded py-2 px-3">
|
||||
<div class="font-weight-semibold mb-1">{{__('register.business_license_non')}}</div>
|
||||
<em>{{$user->account->getNotice('business_license_reason')}}</em>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
@endif
|
||||
|
||||
<div class="table-responsive">
|
||||
<table class="table card-table m-0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>Gewerbenachweis</th>
|
||||
<th>Name</th>
|
||||
<th>Größe</th>
|
||||
<th class="text-right">löschen</th>
|
||||
</tr>
|
||||
@foreach($user->files()->whereIdentifier('business_license')->get() as $file)
|
||||
<tr>
|
||||
<td>
|
||||
<a target="_blank" href="{{ route('storage_file', [$file->id, 'user']) }}">
|
||||
@if(strtolower($file->ext ) == 'pdf')
|
||||
<object data="{{ route('storage_file', [$file->id, 'user']) }}" type="application/pdf" width="160"></object>
|
||||
@else
|
||||
<img src="{{ route('storage_file', [$file->id, 'user']) }}" alt="" width="160">
|
||||
@endif
|
||||
</a>
|
||||
</td>
|
||||
<td><a target="_blank" href="{{ route('storage_file', [$file->id, 'user']) }}">{{ $file->original_name }}</a></td>
|
||||
<td>{{ $file->formatBytes() }}</td>
|
||||
<td class="text-right">
|
||||
<a href="{{ route('admin_lead_delete_file', [$user->id, $file->id, 'upload']) }}" class="btn btn-sm" onclick="return confirm('Datei wirklich löschen?');">
|
||||
<span class="ion ion-md-trash text-danger"></span>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue