598 lines
30 KiB
PHP
Executable File
598 lines
30 KiB
PHP
Executable File
<?php if (isset($component)) { $__componentOriginal8001c520f4b7dcb40a16cd3b411856d1 = $component; } ?>
|
|
<?php if (isset($attributes)) { $__attributesOriginal8001c520f4b7dcb40a16cd3b411856d1 = $attributes; } ?>
|
|
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'admin::components.layouts.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? (array) $attributes->getIterator() : [])); ?>
|
|
<?php $component->withName('admin::layouts'); ?>
|
|
<?php if ($component->shouldRender()): ?>
|
|
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
|
|
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag && $constructor = (new ReflectionClass(Illuminate\View\AnonymousComponent::class))->getConstructor()): ?>
|
|
<?php $attributes = $attributes->except(collect($constructor->getParameters())->map->getName()->all()); ?>
|
|
<?php endif; ?>
|
|
<?php $component->withAttributes([]); ?>
|
|
<?php $__env->slot('title', null, []); ?>
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.title'); ?>
|
|
<?php $__env->endSlot(); ?>
|
|
|
|
<!-- Page Header -->
|
|
<div class="flex items-center justify-between rounded-lg border border-gray-200 bg-white px-4 py-2 text-sm dark:border-gray-800 dark:bg-gray-900 dark:text-gray-300">
|
|
<div class="flex flex-col gap-2">
|
|
<?php echo view_render_event('admin.settings.data_transfers.import.breadcrumbs.before'); ?>
|
|
|
|
|
|
<!-- Breadcrumbs -->
|
|
<?php if (isset($component)) { $__componentOriginal477735b45b070062c5df1d72c43d48f5 = $component; } ?>
|
|
<?php if (isset($attributes)) { $__attributesOriginal477735b45b070062c5df1d72c43d48f5 = $attributes; } ?>
|
|
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'admin::components.breadcrumbs.index','data' => ['name' => 'settings.data_transfers.import','entity' => $import]] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? (array) $attributes->getIterator() : [])); ?>
|
|
<?php $component->withName('admin::breadcrumbs'); ?>
|
|
<?php if ($component->shouldRender()): ?>
|
|
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
|
|
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag && $constructor = (new ReflectionClass(Illuminate\View\AnonymousComponent::class))->getConstructor()): ?>
|
|
<?php $attributes = $attributes->except(collect($constructor->getParameters())->map->getName()->all()); ?>
|
|
<?php endif; ?>
|
|
<?php $component->withAttributes(['name' => 'settings.data_transfers.import','entity' => \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($import)]); ?>
|
|
<?php echo $__env->renderComponent(); ?>
|
|
<?php endif; ?>
|
|
<?php if (isset($__attributesOriginal477735b45b070062c5df1d72c43d48f5)): ?>
|
|
<?php $attributes = $__attributesOriginal477735b45b070062c5df1d72c43d48f5; ?>
|
|
<?php unset($__attributesOriginal477735b45b070062c5df1d72c43d48f5); ?>
|
|
<?php endif; ?>
|
|
<?php if (isset($__componentOriginal477735b45b070062c5df1d72c43d48f5)): ?>
|
|
<?php $component = $__componentOriginal477735b45b070062c5df1d72c43d48f5; ?>
|
|
<?php unset($__componentOriginal477735b45b070062c5df1d72c43d48f5); ?>
|
|
<?php endif; ?>
|
|
|
|
<?php echo view_render_event('admin.settings.data_transfers.import.breadcrumbs.after'); ?>
|
|
|
|
|
|
<div class="text-xl font-bold dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.title'); ?>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="flex items-center gap-x-2.5">
|
|
<!-- Create button for person -->
|
|
<div class="flex items-center gap-x-2.5">
|
|
<?php echo view_render_event('admin.settings.data_transfers.import.edit_button.before'); ?>
|
|
|
|
|
|
<!-- Edit Button -->
|
|
<?php if(bouncer()->hasPermission('settings.data_transfer.imports.edit')): ?>
|
|
<a
|
|
href="<?php echo e(route('admin.settings.data_transfer.imports.edit', $import->id)); ?>"
|
|
class="primary-button"
|
|
>
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.edit-btn'); ?>
|
|
</a>
|
|
<?php endif; ?>
|
|
|
|
<?php echo view_render_event('admin.settings.data_transfers.import.edit_button.after'); ?>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Import Vue Compontent -->
|
|
<v-import />
|
|
|
|
<?php if (! $__env->hasRenderedOnce('35c4cc68-7a74-4dd7-a899-e2a4f9100e19')): $__env->markAsRenderedOnce('35c4cc68-7a74-4dd7-a899-e2a4f9100e19');
|
|
$__env->startPush('scripts'); ?>
|
|
<script
|
|
type="text/x-template"
|
|
id="v-import-template"
|
|
>
|
|
<!-- Body Content -->
|
|
<div class="box-shadow mt-3.5 grid gap-2.5 p-5 max-xl:flex-wrap">
|
|
<!-- Validate CSV File -->
|
|
<div
|
|
class="flex w-full place-content-between items-center rounded-sm border border-orange-200 bg-orange-50 p-3 dark:border-gray-800 dark:bg-gray-900 dark:text-white"
|
|
v-if="importResource.state == 'pending'"
|
|
>
|
|
<p class="flex items-center gap-2">
|
|
<i class="icon-info rounded-full bg-orange-200 text-2xl text-orange-600 dark:!text-orange-600"></i>
|
|
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.validate-info'); ?>
|
|
</p>
|
|
|
|
<button
|
|
class="primary-button place-self-start"
|
|
@click="validate"
|
|
>
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.validate'); ?>
|
|
</button>
|
|
</div>
|
|
|
|
<!-- Validation In Process -->
|
|
<div
|
|
class="flex w-full place-content-between items-center rounded-sm border border-blue-200 bg-blue-50 p-3 dark:border-gray-800 dark:bg-gray-900 dark:text-white"
|
|
v-if="importResource.state == 'validating'"
|
|
>
|
|
<p class="flex items-center gap-2">
|
|
<i class="icon-info rounded-full bg-blue-200 text-2xl text-blue-600 dark:!text-blue-600"></i>
|
|
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.validating-info'); ?>
|
|
|
|
<!-- Spinner -->
|
|
<?php if (isset($component)) { $__componentOriginal991e5e3816aa635af8067aa2abbd328b = $component; } ?>
|
|
<?php if (isset($attributes)) { $__attributesOriginal991e5e3816aa635af8067aa2abbd328b = $attributes; } ?>
|
|
<?php $component = Illuminate\View\AnonymousComponent::resolve(['view' => 'admin::components.spinner.index','data' => []] + (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag ? (array) $attributes->getIterator() : [])); ?>
|
|
<?php $component->withName('admin::spinner'); ?>
|
|
<?php if ($component->shouldRender()): ?>
|
|
<?php $__env->startComponent($component->resolveView(), $component->data()); ?>
|
|
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag && $constructor = (new ReflectionClass(Illuminate\View\AnonymousComponent::class))->getConstructor()): ?>
|
|
<?php $attributes = $attributes->except(collect($constructor->getParameters())->map->getName()->all()); ?>
|
|
<?php endif; ?>
|
|
<?php $component->withAttributes([]); ?>
|
|
<?php echo $__env->renderComponent(); ?>
|
|
<?php endif; ?>
|
|
<?php if (isset($__attributesOriginal991e5e3816aa635af8067aa2abbd328b)): ?>
|
|
<?php $attributes = $__attributesOriginal991e5e3816aa635af8067aa2abbd328b; ?>
|
|
<?php unset($__attributesOriginal991e5e3816aa635af8067aa2abbd328b); ?>
|
|
<?php endif; ?>
|
|
<?php if (isset($__componentOriginal991e5e3816aa635af8067aa2abbd328b)): ?>
|
|
<?php $component = $__componentOriginal991e5e3816aa635af8067aa2abbd328b; ?>
|
|
<?php unset($__componentOriginal991e5e3816aa635af8067aa2abbd328b); ?>
|
|
<?php endif; ?>
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Validation Results -->
|
|
<div
|
|
class="flex w-full place-content-between rounded-sm border p-3"
|
|
:class="isValid ? 'border-green-200 bg-green-50 dark:bg-gray-900 dark:border-gray-800' : 'border-red-200 bg-red-50 dark:bg-gray-900 dark:border-gray-800'"
|
|
v-else-if="importResource.state == 'validated'"
|
|
>
|
|
<!-- Import Stats -->
|
|
<div class="grid gap-2">
|
|
<p
|
|
class="mb-2 flex items-center gap-2 dark:text-white"
|
|
v-if="isValid"
|
|
>
|
|
<i class="icon-success h-fit rounded-full bg-green-200 text-2xl text-green-600 dark:!text-green-600"></i>
|
|
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.validation-success-info'); ?>
|
|
</p>
|
|
|
|
<p
|
|
class="flex items-center gap-2 dark:text-white"
|
|
v-else
|
|
>
|
|
<i class="icon-error h-fit rounded-full bg-red-200 text-2xl text-red-600 dark:!text-red-600"></i>
|
|
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.validation-failed-info'); ?>
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2 dark:text-white">
|
|
<i
|
|
class="icon-info rounded-full text-2xl"
|
|
:class="isValid ? 'bg-green-200 text-green-600 dark:!text-green-600' : 'bg-red-200 text-red-600 dark:!text-red-600'"
|
|
></i>
|
|
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-rows-processed'); ?>
|
|
</span>
|
|
|
|
{{ importResource.processed_rows_count }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2 dark:text-white">
|
|
<i
|
|
class="icon-info rounded-full text-2xl"
|
|
:class="isValid ? 'bg-green-200 text-green-600 dark:!text-green-600' : 'bg-red-200 text-red-600 dark:!text-red-600'"
|
|
></i>
|
|
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-invalid-rows'); ?>
|
|
</span>
|
|
|
|
{{ importResource.invalid_rows_count }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2 dark:text-white">
|
|
<i
|
|
class="icon-info rounded-full text-2xl"
|
|
:class="isValid ? 'bg-green-200 text-green-600 dark:!text-green-600' : 'bg-red-200 text-red-600 dark:!text-red-600'"
|
|
></i>
|
|
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-errors'); ?>
|
|
</span>
|
|
|
|
{{ importResource.errors_count }}
|
|
</p>
|
|
|
|
<div
|
|
class="flex place-items-start items-center gap-2 dark:text-white"
|
|
v-if="importResource.errors.length"
|
|
>
|
|
<i class="icon-info rounded-full bg-red-200 text-2xl text-red-600 dark:!text-red-600"></i>
|
|
|
|
<div class="grid gap-2">
|
|
<p
|
|
class="break-all"
|
|
v-for="error in importResource.errors"
|
|
>
|
|
{{ error }}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Actions -->
|
|
<div class="flex gap-2">
|
|
<button
|
|
class="primary-button place-self-start"
|
|
v-if="isValid"
|
|
@click="start"
|
|
>
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.title'); ?>
|
|
</button>
|
|
|
|
<a
|
|
class="primary-button place-self-start"
|
|
href="<?php echo e(route('admin.settings.data_transfer.imports.download_error_report', $import->id)); ?>"
|
|
target="_blank"
|
|
v-if="importResource.errors_count"
|
|
>
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.download-error-report'); ?>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Import In Process -->
|
|
<div
|
|
class="grid w-full gap-2 rounded-sm border border-green-200 bg-green-50 p-3 dark:border-gray-800 dark:bg-gray-900 dark:text-white"
|
|
v-else-if="importResource.state == 'processing'"
|
|
>
|
|
<p class="flex items-center gap-2">
|
|
<i class="icon-info rounded-full bg-green-200 text-2xl text-green-600 dark:!text-green-600"></i>
|
|
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.importing-info'); ?>
|
|
</p>
|
|
|
|
<div class="h-5 w-full rounded-sm bg-green-200 dark:bg-green-700">
|
|
<div
|
|
class="h-5 rounded-sm bg-green-600"
|
|
:style="{ 'width': stats.progress + '%' }"
|
|
></div>
|
|
</div>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.progress'); ?>
|
|
</span>
|
|
|
|
{{ stats.progress }}%
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-batches'); ?>
|
|
</span>
|
|
|
|
{{ stats.batches.total }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.completed-batches'); ?>
|
|
</span>
|
|
|
|
{{ stats.batches.completed }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-created'); ?>
|
|
</span>
|
|
|
|
{{ stats.summary.created }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-updated'); ?>
|
|
</span>
|
|
|
|
{{ stats.summary.updated }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-deleted'); ?>
|
|
</span>
|
|
|
|
{{ stats.summary.deleted }}
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Linking In Process -->
|
|
<div
|
|
class="grid w-full gap-2 rounded-sm border border-green-200 bg-green-50 p-3 dark:border-gray-800 dark:bg-gray-900"
|
|
v-else-if="importResource.state == 'linking'"
|
|
>
|
|
<p class="flex items-center gap-2">
|
|
<i class="icon-info rounded-full bg-green-200 text-2xl text-green-600 dark:!text-green-600"></i>
|
|
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.linking-info'); ?>
|
|
</p>
|
|
|
|
<div class="h-5 w-full rounded-sm bg-green-200 dark:bg-green-700">
|
|
<div
|
|
class="h-5 rounded-sm bg-green-600"
|
|
:style="{ 'width': stats.progress + '%' }"
|
|
></div>
|
|
</div>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.progress'); ?>
|
|
</span>
|
|
|
|
{{ stats.progress }}%
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-batches'); ?>
|
|
</span>
|
|
|
|
{{ stats.batches.total }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.completed-batches'); ?>
|
|
</span>
|
|
|
|
{{ stats.batches.completed }}
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Indexing In Process -->
|
|
<div
|
|
class="grid w-full gap-2 rounded-sm border border-green-200 bg-green-50 p-3"
|
|
v-else-if="importResource.state == 'indexing'"
|
|
>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<i class="icon-info rounded-full bg-green-200 text-2xl text-green-600 dark:!text-green-600"></i>
|
|
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.indexing-info'); ?>
|
|
</p>
|
|
|
|
<div class="h-5 w-full rounded-sm bg-green-200 dark:bg-green-700">
|
|
<div
|
|
class="h-5 rounded-sm bg-green-600"
|
|
:style="{ 'width': stats.progress + '%' }"
|
|
></div>
|
|
</div>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.progress'); ?>
|
|
</span>
|
|
|
|
{{ stats.progress }}%
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-batches'); ?>
|
|
</span>
|
|
|
|
{{ stats.batches.total }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<span class="font-medium text-gray-800">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.completed-batches'); ?>
|
|
</span>
|
|
|
|
{{ stats.batches.completed }}
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Import Completed -->
|
|
<div
|
|
class="flex w-full place-content-between rounded-sm border border-green-200 bg-green-50 p-3 dark:border-gray-800 dark:bg-gray-900 dark:text-white"
|
|
v-else-if="importResource.state == 'completed'"
|
|
>
|
|
<!-- Stats -->
|
|
<div class="grid gap-2">
|
|
<p
|
|
class="mb-2 flex items-center gap-2 text-base dark:text-white"
|
|
v-if="isValid"
|
|
>
|
|
<i class="icon-success h-fit rounded-full bg-green-200 text-2xl text-green-600 dark:!text-green-600"></i>
|
|
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.imported-info'); ?>
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<i class="icon-info rounded-full bg-green-200 text-2xl text-green-600 dark:!text-green-600"></i>
|
|
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-created'); ?>
|
|
</span>
|
|
|
|
{{ importResource.summary.created }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<i class="icon-info rounded-full bg-green-200 text-2xl text-green-600 dark:!text-green-600"></i>
|
|
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-updated'); ?>
|
|
</span>
|
|
|
|
{{ importResource.summary.updated }}
|
|
</p>
|
|
|
|
<p class="flex items-center gap-2">
|
|
<i class="icon-info rounded-full bg-green-200 text-2xl text-green-600 dark:!text-green-600"></i>
|
|
|
|
<span class="font-medium text-gray-800 dark:text-white">
|
|
<?php echo app('translator')->get('admin::app.settings.data-transfer.imports.import.total-deleted'); ?>
|
|
</span>
|
|
|
|
{{ importResource.summary.deleted }}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</script>
|
|
|
|
<script type="module">
|
|
app.component('v-import', {
|
|
template: '#v-import-template',
|
|
|
|
data() {
|
|
return {
|
|
importResource: <?php echo json_encode($import, 15, 512) ?>,
|
|
|
|
isValid: "<?php echo e($isValid); ?>",
|
|
|
|
stats: <?php echo json_encode($stats, 15, 512) ?>,
|
|
};
|
|
},
|
|
|
|
mounted() {
|
|
if (this.importResource.process_in_queue) {
|
|
if (
|
|
this.importResource.state == 'processing'
|
|
|| this.importResource.state == 'linking'
|
|
|| this.importResource.state == 'indexing'
|
|
) {
|
|
this.getStats();
|
|
}
|
|
} else {
|
|
if (this.importResource.state == 'processing') {
|
|
this.start();
|
|
}
|
|
|
|
if (this.importResource.state == 'linking') {
|
|
this.link();
|
|
}
|
|
|
|
if (this.importResource.state == 'indexing') {
|
|
this.index();
|
|
}
|
|
}
|
|
},
|
|
|
|
methods: {
|
|
validate() {
|
|
this.importResource.state = 'validating';
|
|
|
|
this.$axios.get("<?php echo e(route('admin.settings.data_transfer.imports.validate', $import->id)); ?>")
|
|
.then((response) => {
|
|
this.importResource = response.data.import;
|
|
|
|
this.isValid = response.data.is_valid;
|
|
})
|
|
.catch(error => {
|
|
this.$emitter.emit('add-flash', { type: 'error', message: error.response.data.message });
|
|
});
|
|
},
|
|
|
|
start() {
|
|
this.importResource.state = 'processing';
|
|
|
|
this.$axios.get("<?php echo e(route('admin.settings.data_transfer.imports.start', $import->id)); ?>")
|
|
.then((response) => {
|
|
this.importResource = response.data.import;
|
|
|
|
this.stats = response.data.stats;
|
|
|
|
if (this.importResource.process_in_queue) {
|
|
this.getStats();
|
|
} else {
|
|
if (this.importResource.state == 'processing') {
|
|
this.start();
|
|
} else if (this.importResource.state == 'linking') {
|
|
this.link();
|
|
} else if (this.importResource.state == 'indexing') {
|
|
this.index();
|
|
}
|
|
}
|
|
})
|
|
.catch(error => {
|
|
this.importResource.state = 'validated';
|
|
|
|
this.$emitter.emit('add-flash', { type: 'error', message: error.response.data.message });
|
|
});
|
|
},
|
|
|
|
link() {
|
|
this.$axios.get("<?php echo e(route('admin.settings.data_transfer.imports.link', $import->id)); ?>")
|
|
.then((response) => {
|
|
this.importResource = response.data.import;
|
|
|
|
this.stats = response.data.stats;
|
|
|
|
if (this.importResource.state == 'linking') {
|
|
this.link();
|
|
} else if (this.importResource.state == 'indexing') {
|
|
this.index();
|
|
}
|
|
})
|
|
.catch(error => {
|
|
this.$emitter.emit('add-flash', { type: 'error', message: error.response.data.message });
|
|
});
|
|
},
|
|
|
|
index() {
|
|
this.$axios.get("<?php echo e(route('admin.settings.data_transfer.imports.index_data', $import->id)); ?>")
|
|
.then((response) => {
|
|
this.importResource = response.data.import;
|
|
|
|
this.stats = response.data.stats;
|
|
|
|
if (this.importResource.state == 'indexing') {
|
|
this.index();
|
|
}
|
|
})
|
|
.catch(error => {
|
|
this.$emitter.emit('add-flash', { type: 'error', message: error.response.data.message });
|
|
});
|
|
},
|
|
|
|
getStats() {
|
|
let state = 'processed';
|
|
|
|
if (this.importResource.state == 'linking') {
|
|
state = 'linked';
|
|
} else if (this.importResource.state == 'indexing') {
|
|
state = 'indexed';
|
|
}
|
|
|
|
this.$axios.get("<?php echo e(route('admin.settings.data_transfer.imports.stats', $import->id)); ?>/" + state)
|
|
.then((response) => {
|
|
this.importResource = response.data.import;
|
|
|
|
this.stats = response.data.stats;
|
|
|
|
if (this.importResource.state != 'completed') {
|
|
setTimeout(() => {
|
|
this.getStats();
|
|
}, 1000);
|
|
}
|
|
})
|
|
.catch(error => {
|
|
this.$emitter.emit('add-flash', { type: 'error', message: error.response.data.message });
|
|
});
|
|
}
|
|
}
|
|
})
|
|
</script>
|
|
<?php $__env->stopPush(); endif; ?>
|
|
<?php echo $__env->renderComponent(); ?>
|
|
<?php endif; ?>
|
|
<?php if (isset($__attributesOriginal8001c520f4b7dcb40a16cd3b411856d1)): ?>
|
|
<?php $attributes = $__attributesOriginal8001c520f4b7dcb40a16cd3b411856d1; ?>
|
|
<?php unset($__attributesOriginal8001c520f4b7dcb40a16cd3b411856d1); ?>
|
|
<?php endif; ?>
|
|
<?php if (isset($__componentOriginal8001c520f4b7dcb40a16cd3b411856d1)): ?>
|
|
<?php $component = $__componentOriginal8001c520f4b7dcb40a16cd3b411856d1; ?>
|
|
<?php unset($__componentOriginal8001c520f4b7dcb40a16cd3b411856d1); ?>
|
|
<?php endif; ?>
|
|
<?php /**PATH /var/www/html/packages/Webkul/Admin/src/Resources/views/settings/data-transfer/imports/import.blade.php ENDPATH**/ ?>
|