gruene-seele/resources/views/sys/admin/import.blade.php
2025-08-12 15:51:04 +02:00

109 lines
3.6 KiB
PHP

@extends('layouts.layout-2')
@section('content')
<style>
/* Dropzone */
.dropzone {
min-height: 230px;
border: 2px dashed rgba(0, 0, 0, 0.3);
background: white;
border-radius: 6px;
}
.dropzone .dz-message {
font-size: 28px;
}
</style>
<h4 class="font-weight-bold py-3 mb-4">
Kontakte importieren
</h4>
<div class="card mb-4">
<h6 class="card-header">
Excel-Datei hochladen
</h6>
<div class="card-body">
{!! Form::open(['action' => route('sysadmin_import_store'), 'method' => 'post', 'files' => true, 'enctype' => 'multipart/form-data', 'class' => 'dropzone', 'id' => 'realDropzone' ]) !!}
<div class="fallback">
<input name="file" type="file" multiple>
</div>
{!! Form::close() !!}
<br>
<div class="alert alert-danger alert-dismissable" style="display:none;"></div>
</div>
</div>
@endsection
@section('scripts')
<script type="text/javascript">
var real_dropzone = {
uploadMultiple: false,
parallelUploads: 1,
maxFilesize: 32,
addRemoveLinks: true,
dictDefaultMessage: 'Hier klicken, oder Datei hier reinziehen (Drag&Drop)',
dictFallbackMessage: 'Dein Browser unterstützt Drag&Drop Dateiuploads nicht',
dictFallbackText: 'Benutze das Formular um Deine Dateien hochzuladen',
dictFileTooBig: "Die Datei ist zu groß. Die maximale Dateigröße beträgt 32 MB",
dictInvalidFileType: 'Eine Datei dieses Typs kann nicht hochgeladen werden',
dictResponseError: "Der Server hat ihre Anfrage mit Status error abgelehnt",
dictCancelUpload: 'Hochladen abbrechen',
dictCancelUploadConfirmation: null,
dictRemoveFile: 'Datei entfernen',
dictMaxFilesExceeded: 'Du kannst keine weiteren Dateien mehr hochladen',
// The setting up of the dropzone
init:function() {
console.log("init");
this.on("removedfile", function(file) {
var _ele = $('.alert-danger');
_ele.fadeOut();
} );
this.on("addedfile", function (file) {
var _ele = $('.alert-danger');
_ele.fadeOut();
});
},
error: function(file, response) {
console.log(file);
console.log(response);
var message
if($.type(response) === "string")
message = response; //dropzone sends it's own error messages in string
else
message = response.message;
var _ele = $('.alert-danger');
_ele.fadeIn();
_ele.text(message);
},
success: function(file,response) {
console.log(file);
console.log(response.filename);
console.log(response.filedata);
console.log(response);
if(response.redirect){
window.location.href = response.redirect;
}else{
if(response.error === false){
//true
window.location.href = window.location.href;
}
}
}
};
Dropzone.options.realDropzone = real_dropzone;
</script>
@endsection