1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-21 17:01:33 +02:00
invoiceninja/resources/views/accounts/import_export.blade.php

144 lines
4.7 KiB
PHP
Raw Normal View History

2015-10-14 16:15:39 +02:00
@extends('header')
2015-03-16 22:45:25 +01:00
2015-11-18 15:40:50 +01:00
@section('head')
@parent
<style type="text/css">
2016-05-31 22:15:55 +02:00
.import-file {
2015-11-18 15:40:50 +01:00
display: none;
}
</style>
@stop
2015-03-16 22:45:25 +01:00
@section('content')
@parent
2015-10-14 16:15:39 +02:00
@include('accounts.nav', ['selected' => ACCOUNT_IMPORT_EXPORT])
2015-04-20 16:34:23 +02:00
<div class="panel panel-default">
<div class="panel-heading">
2015-11-18 15:40:50 +01:00
<h3 class="panel-title">{!! trans('texts.import_data') !!}</h3>
2015-04-20 16:34:23 +02:00
</div>
<div class="panel-body">
2015-03-16 22:45:25 +01:00
{!! Former::open_for_files('/import')
->addClass('warn-on-exit') !!}
2015-11-18 15:40:50 +01:00
{!! Former::select('source')
->onchange('setFileTypesVisible()')
->options(array_combine(\App\Services\ImportService::$sources, \App\Services\ImportService::$sources))
->style('width: 200px') !!}
@foreach (\App\Services\ImportService::$entityTypes as $entityType)
{!! Former::file("{$entityType}_file")
2016-05-31 22:15:55 +02:00
->addGroupClass("import-file {$entityType}-file") !!}
2015-11-18 15:40:50 +01:00
@endforeach
{!! Former::actions( Button::info(trans('texts.upload'))->submit()->large()->appendIcon(Icon::create('open'))) !!}
{!! Former::close() !!}
</div>
2015-11-17 14:53:14 +01:00
</div>
2015-04-20 16:34:23 +02:00
2015-11-12 21:36:28 +01:00
{!! Former::open('/export') !!}
2015-04-20 16:34:23 +02:00
<div class="panel panel-default">
<div class="panel-heading">
2015-11-12 21:36:28 +01:00
<h3 class="panel-title">{!! trans('texts.export_data') !!}</h3>
2015-04-20 16:34:23 +02:00
</div>
<div class="panel-body">
2015-11-12 21:36:28 +01:00
{!! Former::select('format')
->onchange('setEntityTypesVisible()')
->addOption('CSV', 'CSV')
->addOption('XLS', 'XLS')
->addOption('JSON', 'JSON')
2016-06-02 21:03:59 +02:00
->style('max-width: 200px')
->inlineHelp('export_help') !!}
2015-11-12 21:36:28 +01:00
2016-07-05 15:09:52 +02:00
{!! Former::inline_radios('include_radio')
->onchange('onIncludeChange()')
->label(trans('texts.include'))
->radios([
trans('texts.all') => ['value' => 'all', 'name' => 'include'],
trans('texts.selected') => ['value' => 'selected', 'name' => 'include'],
])->check('all') !!}
<div class="form-group entity-types">
<label class="control-label col-lg-4 col-sm-4"></label>
<div class="col-lg-3 col-sm-2">
@include('partials/checkbox', ['field' => 'clients'])
@include('partials/checkbox', ['field' => 'contacts'])
@include('partials/checkbox', ['field' => 'credits'])
@include('partials/checkbox', ['field' => 'tasks'])
@include('partials/checkbox', ['field' => 'invoices'])
</div>
<div class="col-lg-3 col-sm-3">
@include('partials/checkbox', ['field' => 'quotes'])
@include('partials/checkbox', ['field' => 'recurring'])
@include('partials/checkbox', ['field' => 'payments'])
@include('partials/checkbox', ['field' => 'vendors'])
@include('partials/checkbox', ['field' => 'vendor_contacts'])
</div>
</div>
2015-11-12 21:36:28 +01:00
2016-05-31 22:15:55 +02:00
{!! Former::actions( Button::primary(trans('texts.download'))->submit()->large()->appendIcon(Icon::create('download-alt'))) !!}
2015-04-20 16:34:23 +02:00
</div>
</div>
2015-04-01 21:57:02 +02:00
{!! Former::close() !!}
2015-03-16 22:45:25 +01:00
<script type="text/javascript">
2016-05-31 22:15:55 +02:00
$(function() {
setFileTypesVisible();
2016-07-05 15:09:52 +02:00
onIncludeChange();
2016-05-31 22:15:55 +02:00
});
2015-11-12 21:36:28 +01:00
function setEntityTypesVisible() {
var selector = '.entity-types input[type=checkbox]';
if ($('#format').val() === 'JSON') {
$(selector).attr('disabled', true);
} else {
$(selector).removeAttr('disabled');
}
}
2015-11-18 15:40:50 +01:00
function setFileTypesVisible() {
var val = $('#source').val();
@foreach (\App\Services\ImportService::$entityTypes as $entityType)
$('.{{ $entityType }}-file').hide();
@endforeach
@foreach (\App\Services\ImportService::$sources as $source)
if (val === '{{ $source }}') {
2015-11-24 20:45:38 +01:00
@foreach (\App\Services\ImportService::$entityTypes as $entityType)
@if ($source != IMPORT_WAVE && $entityType == ENTITY_PAYMENT)
// do nothing
@elseif (class_exists(\App\Services\ImportService::getTransformerClassName($source, $entityType)))
2015-11-24 20:45:38 +01:00
$('.{{ $entityType }}-file').show();
@endif
@endforeach
2015-11-18 15:40:50 +01:00
}
2016-06-02 21:03:59 +02:00
@if ($source === IMPORT_JSON)
if (val === '{{ $source }}') {
$('.JSON-file').show();
}
@endif
2015-11-18 15:40:50 +01:00
@endforeach
}
2016-07-05 15:09:52 +02:00
function onIncludeChange() {
var $checkboxes = $('input[type=checkbox]');
var val = $('input[name=include]:checked').val()
if (val == 'all') {
$checkboxes.attr('disabled', true);
} else {
$checkboxes.removeAttr('disabled');
}
}
2015-03-16 22:45:25 +01:00
</script>
2016-05-31 22:15:55 +02:00
@stop