Skip to content

Commit 88a76b6

Browse files
Daniel BerthereauDaniel Berthereau
authored andcommitted
Upgraded batch edit form for groups.
1 parent 959b3ca commit 88a76b6

3 files changed

Lines changed: 18 additions & 38 deletions

File tree

Module.php

Lines changed: 5 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -187,11 +187,6 @@ public function attachListeners(SharedEventManagerInterface $sharedEventManager)
187187
'form.add_elements',
188188
[$this, 'formAddElementsResourceBatchUpdateForm']
189189
);
190-
$sharedEventManager->attach(
191-
\Omeka\Form\ResourceBatchUpdateForm::class,
192-
'form.add_input_filters',
193-
[$this, 'formAddInputFiltersResourceBatchUpdateForm']
194-
);
195190

196191
// TODO The conversion to coordinates can be done for other resources but the module Mapping doesn't manage them.
197192
$sharedEventManager->attach(
@@ -403,35 +398,21 @@ public function formAddElementsResourceBatchUpdateForm(Event $event): void
403398
$formElementManager = $services->get('FormElementManager');
404399
// $resourceType = $form->getOption('resource_type');
405400

401+
/** @var \DataTypeGeometry\Form\BatchEditFieldset $fieldset */
406402
$fieldset = $formElementManager->get(BatchEditFieldset::class);
407403
$form->add($fieldset);
408404

405+
$groups = $form->getOption('element_groups');
406+
$groups['geometry'] = 'Geometry and geography'; // @translate
407+
$form->setOption('element_groups', $groups);
408+
409409
if (!$this->isModuleActive('Mapping')) {
410410
$fieldset->remove('manage_coordinates_features');
411411
$fieldset->get('from_properties')->setLabel('Properties to convert from literal to geometric data'); // @translate
412412
$fieldset->remove('to_property');
413413
}
414414
}
415415

416-
public function formAddInputFiltersResourceBatchUpdateForm(Event $event): void
417-
{
418-
/** @var \Laminas\InputFilter\InputFilterInterface $inputFilter */
419-
$inputFilter = $event->getParam('inputFilter');
420-
$inputFilter->get('geometry')
421-
->add([
422-
'name' => 'manage_coordinates_features',
423-
'required' => false,
424-
])
425-
->add([
426-
'name' => 'from_properties',
427-
'required' => false,
428-
])
429-
->add([
430-
'name' => 'to_property',
431-
'required' => false,
432-
]);
433-
}
434-
435416
/**
436417
* Clean params for batch update.
437418
*/

asset/js/data-type-geometry.js

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -202,13 +202,6 @@
202202

203203
$(document).ready(function() {
204204

205-
// Batch edit form.
206-
207-
$('#geometry_manage_coordinates_features, #geometry_convert_literal_to_coordinates, #geometry_convert_literal_order, #geometry_convert_literal_strict, #geometry_from_property, #geometry_to_property').closest('.field')
208-
.wrapAll('<fieldset id="geometry" class="field-container">');
209-
$('#geometry')
210-
.prepend('<legend>' + Omeka.jsTranslate('Geographic coordinates') + '</legend>');
211-
212205
// Resource form.
213206

214207
$(document).on('keyup change', '.geography-coordinates', function(e) {

src/Form/BatchEditFieldset.php

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
use Common\Form\Element as CommonElement;
66
use Laminas\Form\Element;
77
use Laminas\Form\Fieldset;
8-
use Omeka\Form\Element\PropertySelect;
98

109
class BatchEditFieldset extends Fieldset
1110
{
@@ -14,8 +13,9 @@ public function init(): void
1413
$this
1514
->setName('geometry')
1615
->setOptions([
17-
'label' => 'Geometry and geography', // @translate
18-
])
16+
'element_group' => 'geometry',
17+
'label' => 'Geometry and geography', // @translate
18+
])
1919
->setAttributes([
2020
'id' => 'geometry',
2121
'class' => 'field-container',
@@ -27,6 +27,7 @@ public function init(): void
2727
'name' => 'convert_literal_to_coordinates',
2828
'type' => Element\Checkbox::class,
2929
'options' => [
30+
'element_group' => 'geometry',
3031
'label' => 'Convert literal values to coordinates', // @translate
3132
],
3233
'attributes' => [
@@ -39,6 +40,7 @@ public function init(): void
3940
'name' => 'convert_literal_order',
4041
'type' => CommonElement\OptionalRadio::class,
4142
'options' => [
43+
'element_group' => 'geometry',
4244
'label' => 'Order of literal value', // @translate
4345
'value_options' => [
4446
'latitude_longitude' => 'Latitude then longitude (most frequent)', // @translate
@@ -56,6 +58,7 @@ public function init(): void
5658
'name' => 'convert_literal_strict',
5759
'type' => Element\Checkbox::class,
5860
'options' => [
61+
'element_group' => 'geometry',
5962
'label' => 'Check format strictly ("," as separator)', // @translate
6063
],
6164
'attributes' => [
@@ -67,9 +70,10 @@ public function init(): void
6770
])
6871
->add([
6972
'name' => 'manage_coordinates_features',
70-
'type' => Element\Select::class,
73+
'type' => CommonElement\OptionalSelect::class,
7174
'options' => [
72-
'label' => 'Manage geographic coordinates', // @translate
75+
'element_group' => 'geometry',
76+
'label' => 'Manage geographic coordinates for module Mapping', // @translate
7377
'value_options' => [
7478
'sync' => 'Synchronize coordinates and mapping markers', // @translate
7579
'coordinates_to_features' => 'Copy coordinates to mapping markers', // @translate
@@ -86,8 +90,9 @@ public function init(): void
8690
])
8791
->add([
8892
'name' => 'from_properties',
89-
'type' => PropertySelect::class,
93+
'type' => CommonElement\OptionalPropertySelect::class,
9094
'options' => [
95+
'element_group' => 'geometry',
9196
'label' => 'Source properties to create markers or to convert from literal', // @translate
9297
'term_as_value' => true,
9398
'prepend_value_options' => [
@@ -108,8 +113,9 @@ public function init(): void
108113
])
109114
->add([
110115
'name' => 'to_property',
111-
'type' => PropertySelect::class,
116+
'type' => CommonElement\OptionalPropertySelect::class,
112117
'options' => [
118+
'element_group' => 'geometry',
113119
'label' => 'Property where to copy markers', // @translate
114120
'term_as_value' => true,
115121
'empty_option' => '',

0 commit comments

Comments
 (0)