update 20.10.2025

This commit is contained in:
Kevin Adametz 2025-10-20 17:42:08 +02:00
parent 8c11130b5d
commit a939cd51ef
616 changed files with 84821 additions and 4121 deletions

View file

@ -1,8 +1,6 @@
@extends('layouts.layout-2')
@section('content')
<h4 class="font-weight-bold py-2 mb-2">
{{ __('User') }}
</h4>
@ -12,23 +10,24 @@
<table class="datatables-users table table-striped table-bordered">
<thead>
<tr>
<th>#</th>
<th>{{__('tables.firstname')}}</th>
<th>{{__('tables.lastname')}}</th>
<th>{{__('E-Mail')}}</th>
<th>{{__('Zugang')}}</th>
<th>{{__('verified')}} (seit)</th>
<th>{{__('active')}} (seit)</th>
<th>{{__('tables.account')}} (bis)</th>
<th>{{__('tables.shop')}} (bis)</th>
<th>{{__('tables.shop')}} ab</th>
<th>{{__('Zahlungsarten')}}</th>
<th>{{__('Land')}}</th>
<th>{{__('Test Modus')}}</th>
<th>{{__('login')}}</th>
<th>{{__('delete')}}</th>
</tr>
<tr>
<th>#</th>
<th>{{ __('tables.firstname') }}</th>
<th>{{ __('tables.lastname') }}</th>
<th>{{ __('E-Mail') }}</th>
<th>{{ __('Zugang') }}</th>
<th>{{ __('verified') }} (seit)</th>
<th>{{ __('active') }} (seit)</th>
<th>{{ __('tables.account') }} (bis)</th>
<th>{{ __('tables.shop') }} (bis)</th>
<th>{{ __('tables.shop') }} ab</th>
<th>{{ __('Shop URL') }}</th>
<th>{{ __('Zahlungsarten') }}</th>
<th>{{ __('Land') }}</th>
<th>{{ __('Test Modus') }}</th>
<th>{{ __('login') }}</th>
<th>{{ __('delete') }}</th>
</tr>
</thead>
</table>
</div>
@ -44,31 +43,34 @@
<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>
<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>
<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>
<label for="admin" class="form-label">{{ __('Role') }}</label>
<select class="selectpicker" data-style="btn-default" name="admin">
{!! HTMLHelper::getRolesOptions() !!}
{!! HTMLHelper::getRolesOptions() !!}
</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" name="save-admin" value="save-admin">{{__('save')}}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('close') }}</button>
<button type="submit" class="btn btn-primary" name="save-admin"
value="save-admin">{{ __('save') }}</button>
</div>
</form>
</div>
@ -82,32 +84,36 @@
<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>
<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>
<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-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>
<span class="custom-control-label">{{ __('verified') }}</span>
</label>
</div>
<div class="form-row">
<div class="form-group col">
<label for="confirmation_date" class="form-label">{{__('Datum')}} seit</label>
<input type="text" name="confirmation_date" class="form-control b-material-datetime-picker" placeholder="25.10.2020 10:30">
<label for="confirmation_date" class="form-label">{{ __('Datum') }} seit</label>
<input type="text" name="confirmation_date" class="form-control b-material-datetime-picker"
placeholder="25.10.2020 10:30">
</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" name="save-confirmed" value="save-confirmed">{{__('save')}}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('close') }}</button>
<button type="submit" class="btn btn-primary" name="save-confirmed"
value="save-confirmed">{{ __('save') }}</button>
</div>
</form>
</div>
@ -121,34 +127,38 @@
<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>
<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>
<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-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>
<span class="custom-control-label">{{ __('active') }}</span>
</label>
</div>
<div class="form-row">
<div class="form-group col">
<label for="active_date" class="form-label">{{__('Datum')}} seit</label>
<input type="text" name="active_date" class="form-control b-material-datetime-picker" placeholder="25.10.2020 10:30">
<label for="active_date" class="form-label">{{ __('Datum') }} seit</label>
<input type="text" name="active_date" class="form-control b-material-datetime-picker"
placeholder="25.10.2020 10:30">
</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" name="save-active" value="save-active">{{__('save')}}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('close') }}</button>
<button type="submit" class="btn btn-primary" name="save-active"
value="save-active">{{ __('save') }}</button>
</div>
</form>
</div>
@ -162,28 +172,32 @@
<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>
<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>
<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="payment_account" class="form-label">{{__('tables.account')}} bis</label>
<input type="text" name="payment_account" class="form-control b-material-datetime-picker" placeholder="25.10.2020 10:30">
<label for="payment_account" class="form-label">{{ __('tables.account') }} bis</label>
<input type="text" name="payment_account" class="form-control b-material-datetime-picker"
placeholder="25.10.2020 10:30">
</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" name="save-account" value="save-account">{{__('save')}}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('close') }}</button>
<button type="submit" class="btn btn-primary" name="save-account"
value="save-account">{{ __('save') }}</button>
</div>
</form>
</div>
@ -197,27 +211,31 @@
<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>
<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>
<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="payment_shop" class="form-label">{{__('tables.shop')}} bis</label>
<input type="text" name="payment_shop" class="form-control b-material-datetime-picker" placeholder="25.10.2020 10:30">
<label for="payment_shop" class="form-label">{{ __('tables.shop') }} bis</label>
<input type="text" name="payment_shop" class="form-control b-material-datetime-picker"
placeholder="25.10.2020 10:30">
</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" name="save-shop" value="save-shop">{{__('save')}}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('close') }}</button>
<button type="submit" class="btn btn-primary" name="save-shop"
value="save-shop">{{ __('save') }}</button>
</div>
</form>
</div>
@ -230,22 +248,25 @@
<form class="modal-content" action="{{ route('admin_user_delete') }}" 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">{{__('löschen')}}</span></h5>
<h5 class="modal-title">{{ __('User') }} <span
class="font-weight-light">{{ __('löschen') }}</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>
<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-group">
<hr>
<h5>User löschen</h5>
<p>Dieser User wird gelöscht, alle Daten werden auf den übergeordneten Berater übertragen, jedoch sind die Grunddaten als Admin hier noch einsehbar.</p>
<p>Dieser User wird gelöscht, alle Daten werden auf den übergeordneten Berater übertragen, jedoch
sind die Grunddaten als Admin hier noch einsehbar.</p>
<label class="custom-control custom-checkbox m-0">
<input type="checkbox" class="custom-control-input" name="realy_delete_user">
<span class="custom-control-label">User wirklich löschen?</span>
@ -262,8 +283,9 @@
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
<button type="submit" class="btn btn-danger" name="user-delete" value="user-delete">{{__('User löschen')}}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('close') }}</button>
<button type="submit" class="btn btn-danger" name="user-delete"
value="user-delete">{{ __('User löschen') }}</button>
</div>
</form>
</div>
@ -277,29 +299,34 @@
<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>
<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>
<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-group">
<p>Aktiviert den Testmodus beim den Zahlungsdiensten. Käufe werden als TEST markiert und die Mails gehen an devtest@mivita.care</p>
<p><a target="_blank" href="https://docs.payone.com/display/public/PLATFORM/Testdata">Zu den Testdaten für den Kauf von Payone</a>.</p>
<p>Aktiviert den Testmodus beim den Zahlungsdiensten. Käufe werden als TEST markiert und die Mails
gehen an devtest@mivita.care</p>
<p><a target="_blank" href="https://docs.payone.com/display/public/PLATFORM/Testdata">Zu den
Testdaten für den Kauf von Payone</a>.</p>
<label class="custom-control custom-checkbox m-0">
<input type="checkbox" class="custom-control-input" name="test_mode" checked>
<span class="custom-control-label">{{__('Test Mode')}}</span>
<span class="custom-control-label">{{ __('Test Mode') }}</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" name="save-test_mode" value="save-test_mode">{{__('save')}}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('close') }}</button>
<button type="submit" class="btn btn-primary" name="save-test_mode"
value="save-test_mode">{{ __('save') }}</button>
</div>
</form>
</div>
@ -313,36 +340,41 @@
<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>
<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>
<label for="email" class="form-label">{{ __('E-Mail') }}</label>
<input type="text" class="form-control" name="email" placeholder="{{ __('E-Mail') }}"
readonly>
</div>
</div>
@foreach(\App\Models\PaymentMethod::where('active', true)->get() as $payment_method)
<div class="form-group">
<label class="custom-control custom-checkbox m-0">
<input type="checkbox" class="custom-control-input input-payment-methods" name="payment_methods[]" value="{{$payment_method->id}}" @if($payment_method->default) checked @endif>
<span class="custom-control-label">{{ $payment_method->name }}</span>
</label>
</div>
@foreach (\App\Models\PaymentMethod::where('active', true)->get() as $payment_method)
<div class="form-group">
<label class="custom-control custom-checkbox m-0">
<input type="checkbox" class="custom-control-input input-payment-methods"
name="payment_methods[]" value="{{ $payment_method->id }}"
@if ($payment_method->default) checked @endif>
<span class="custom-control-label">{{ $payment_method->name }}</span>
</label>
</div>
@endforeach
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
<button type="submit" class="btn btn-primary" name="save-payment_methods" value="save-payment_methods">{{__('save')}}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('close') }}</button>
<button type="submit" class="btn btn-primary" name="save-payment_methods"
value="save-payment_methods">{{ __('save') }}</button>
</div>
</form>
</div>
</div>
<script>
$( document ).ready(function() {
$('#modals-admin').on('show.bs.modal', function (event) {
$(document).ready(function() {
$('#modals-admin').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'));
@ -350,64 +382,68 @@
$('.selectpicker').selectpicker('refresh');
});
$('#modals-confirmed').on('show.bs.modal', function (event) {
$('#modals-confirmed').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 input[name='confirmed']").prop( "checked", button.data('confirmed'));
$(this).find(".modal-body input[name='confirmation_date']").val(button.data('confirmation_date'));
$(this).find(".modal-body input[name='confirmed']").prop("checked", button.data(
'confirmed'));
$(this).find(".modal-body input[name='confirmation_date']").val(button.data(
'confirmation_date'));
});
$('#modals-active').on('show.bs.modal', function (event) {
$('#modals-active').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 input[name='active']").prop( "checked", button.data('active'));
$(this).find(".modal-body input[name='active']").prop("checked", button.data('active'));
$(this).find(".modal-body input[name='active_date']").val(button.data('active_date'));
});
$('#modals-account').on('show.bs.modal', function (event) {
$('#modals-account').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 input[name='payment_account']").val(button.data('payment_account'));
$(this).find(".modal-body input[name='payment_account']").val(button.data(
'payment_account'));
});
$('#modals-shop').on('show.bs.modal', function (event) {
$('#modals-shop').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 input[name='payment_shop']").val(button.data('payment_shop'));
});
$('#modals-user-delete').on('show.bs.modal', function (event) {
$('#modals-user-delete').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'));
});
$('#modals-payment_methods').on('show.bs.modal', function (event) {
$('#modals-payment_methods').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'));
var payment_methods = button.data('payment_methods');
if(payment_methods){
if (payment_methods) {
$.each($(this).find(".modal-body .input-payment-methods"), function (i, item) {
if($.inArray(parseInt($(item).val()), payment_methods) !== -1){
$(item).prop( "checked", true);
}else{
$(item).prop( "checked", false);
$.each($(this).find(".modal-body .input-payment-methods"), function(i, item) {
if ($.inArray(parseInt($(item).val()), payment_methods) !== -1) {
$(item).prop("checked", true);
} else {
$(item).prop("checked", false);
}
});
}
});
$('#modals-test_mode').on('show.bs.modal', function (event) {
$('#modals-test_mode').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 input[name='test_mode']").prop( "checked", button.data('test_mode'));
$(this).find(".modal-body input[name='test_mode']").prop("checked", button.data(
'test_mode'));
});
@ -415,23 +451,75 @@
"processing": true,
"serverSide": true,
"ajax": '{!! route('admin_user_datatable') !!}',
"order": [[0, "desc" ]],
"columns": [
{ data: 'id', searchable: false},
{ data: 'first_name', name: 'account.first_name' },
{ data: 'last_name', name: 'account.last_name' },
{ data: 'email', name: 'email' },
{ data: 'admin', name: 'admin' },
{ data: 'confirmed', name: 'confirmed' },
{ data: 'active', name: 'active' },
{ data: 'account', name: 'account' },
{ data: 'shop', name: 'shop' },
{ data: 'since', name: 'since' },
{ data: 'my_payment_methods', name: 'my_payment_methods' },
{ data: 'country', name: 'country' },
{ data: 'test_mode', name: 'test_mode' },
{ data: 'action_login', orderable: false, searchable: false},
{ data: 'action_delete', orderable: false, searchable: false},
"order": [
[0, "desc"]
],
"columns": [{
data: 'id',
searchable: false
},
{
data: 'first_name',
name: 'account.first_name'
},
{
data: 'last_name',
name: 'account.last_name'
},
{
data: 'email',
name: 'email'
},
{
data: 'admin',
name: 'admin'
},
{
data: 'confirmed',
name: 'confirmed'
},
{
data: 'active',
name: 'active'
},
{
data: 'account',
name: 'account'
},
{
data: 'shop',
name: 'shop'
},
{
data: 'shop_domain',
name: 'shop_domain'
},
{
data: 'since',
name: 'since'
},
{
data: 'my_payment_methods',
name: 'my_payment_methods'
},
{
data: 'country',
name: 'country'
},
{
data: 'test_mode',
name: 'test_mode'
},
{
data: 'action_login',
orderable: false,
searchable: false
},
{
data: 'action_delete',
orderable: false,
searchable: false
},
],
"bLengthChange": false,
"iDisplayLength": 50,
@ -442,4 +530,4 @@
});
</script>
@endsection
@endsection