diff --git a/assets/css/app.css b/assets/css/app.css index dd35ffd2..6c1be5cc 100644 --- a/assets/css/app.css +++ b/assets/css/app.css @@ -614,7 +614,7 @@ BS 4 overrides } } -label:not(.form-check-label) { +label:not(.form-check-label, custom-control-label) { font-weight: bold; } diff --git a/assets/js/app.js b/assets/js/app.js index 62f2ae18..4fc13339 100644 --- a/assets/js/app.js +++ b/assets/js/app.js @@ -26,6 +26,8 @@ import 'awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css' import "patternfly-bootstrap-treeview/src/css/bootstrap-treeview.css" +import "bootstrap-fileinput/css/fileinput.css" + //require( 'jszip' ); //#require( 'pdfmake' ); require( 'datatables.net-bs4' ); @@ -42,7 +44,9 @@ require('jquery-form'); //Define jquery globally window.$ = window.jQuery = require("jquery"); -require('patternfly-bootstrap-treeview/src/js/bootstrap-treeview') +require('patternfly-bootstrap-treeview/src/js/bootstrap-treeview'); + +require('bootstrap-fileinput'); require('./datatables.js'); diff --git a/assets/ts_src/event_listeners.ts b/assets/ts_src/event_listeners.ts index 4b418615..2c135d2e 100644 --- a/assets/ts_src/event_listeners.ts +++ b/assets/ts_src/event_listeners.ts @@ -212,6 +212,11 @@ $(document).on("ajaxUI:start ajaxUI:reload", function() { }); }); +//Re initialize fileinputs on reload +$(document).on("ajaxUI:reload", function () { + //@ts-ignore + $(".file").fileinput(); +}); /** * Register the button, to jump to the top of the page. diff --git a/config/packages/twig.yaml b/config/packages/twig.yaml index 02f6b9a4..a0bb844b 100644 --- a/config/packages/twig.yaml +++ b/config/packages/twig.yaml @@ -2,7 +2,7 @@ twig: default_path: '%kernel.project_dir%/templates' debug: '%kernel.debug%' strict_variables: '%kernel.debug%' - form_themes: ['bootstrap_4_horizontal_layout.html.twig'] + form_themes: ['bootstrap_4_horizontal_layout.html.twig', 'Form/extendedBootstrap4_layout.html.twig' ] globals: partdb_title: '%partdb_title%' diff --git a/package.json b/package.json index 3da3488f..c94f11c6 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "@types/js-cookie": "^2.2.1", "awesome-bootstrap-checkbox": "^1.0.1", "bootbox": "^5.1.0", + "bootstrap-fileinput": "^5.0.1", "bootstrap-select": "^1.13.8", "datatables.net-bs4": "^1.10.19", "datatables.net-buttons-bs4": "^1.5.4", diff --git a/src/Form/ImportType.php b/src/Form/ImportType.php index 15e66aa8..f5777bd9 100644 --- a/src/Form/ImportType.php +++ b/src/Form/ImportType.php @@ -51,13 +51,17 @@ class ImportType extends AbstractType $builder ->add('format', ChoiceType::class, ['choices' => - ['JSON' => 'json', 'XML' => 'xml','CSV'=>'csv' ,'YAML' => 'yaml']]) - ->add('csv_separator', TextType::class, ['data' => ';']) + ['JSON' => 'json', 'XML' => 'xml','CSV'=>'csv' ,'YAML' => 'yaml'], 'label' => 'export.format']) + ->add('csv_separator', TextType::class, ['data' => ';', 'label' => 'import.csv_separator']) ->add('parent', EntityType::class, ['class' => $data['entity_class'], 'choice_label' => 'full_path', - 'attr' => ['class' => 'selectpicker', 'data-live-search' => true], 'required' => false, 'label' => 'parent.label', - ]) - ->add('preserve_children', CheckboxType::class, ['data' => true, 'required' => false]) - ->add('file', FileType::class) + 'attr' => ['class' => 'selectpicker', 'data-live-search' => true], 'required' => false, 'label' => 'parent.label']) + ->add('file', FileType::class, ['label' => 'import.file', + 'attr' => ['class' => 'file', 'data-show-preview' => 'false', 'data-show-upload' => 'false']]) + + ->add('preserve_children', CheckboxType::class, ['data' => true, 'required' => false, + 'label' => 'import.preserve_children', 'label_attr'=> ['class' => 'checkbox-custom']]) + ->add('abort_on_validation_error', CheckboxType::class, ['data' => true, 'required' => false, + 'label' => 'import.abort_on_validation', 'help'=> 'import.abort_on_validation.help', 'label_attr'=> ['class' => 'checkbox-custom']]) //Buttons ->add('import', SubmitType::class, ['label' => 'import.btn']); diff --git a/templates/AdminPages/EntityAdminBase.html.twig b/templates/AdminPages/EntityAdminBase.html.twig index dae0dcbb..28511c28 100644 --- a/templates/AdminPages/EntityAdminBase.html.twig +++ b/templates/AdminPages/EntityAdminBase.html.twig @@ -129,9 +129,9 @@