csvxml/classes/CsvxmlAvailableFields.php

1653 lines
94 KiB
PHP
Raw Normal View History

<?PHP
/**
* Contains a class for building the list of available fields.
*
* @author Joshua Ramon Enslin <joshua@museum-digital.de>
*/
declare(strict_types = 1);
/**
* Class building the list of available fields for CSVXML.
*/
final class CsvxmlAvailableFields {
/** @var array<mixed> */
private array $_availableFields;
/**
* Getter for available fields.
*
* @return array<mixed>
*/
public function getFields():array {
return $this->_availableFields;
}
/**
* Function for getting a simple array definition of an available field.
*
* @param string $nameTL Translation of the field name. Optional.
* @param string $explica Explanation of the field (from musdb). Optional.
* @param array $dependsOn Dependent fields. Optional.
* @param array $allowedValues Allowed values. Optional.
* @param string $remark Explanation of the field (for importer). Optional.
* @param boolean $required Determines whether the field is required. Defaults
to false.
*
* @return array
*/
private function _getSimpleAvailableFieldEntry(string $nameTL = "", string $explica = "", array $dependsOn = [], array $allowedValues = [], string $remark = "", bool $required = false):array {
return [
"required" => $required,
"allowedValues" => $allowedValues,
"dependsOn" => $dependsOn,
"remark" => $remark,
"name_human_readable" => $nameTL,
"explica" => $explica,
];
}
/**
* Function for building a generic event type definition.
*
* @param string[] $event Translation variable.
* @param MDTlLoader $tlLoader Translation loader.
* @param string $typeName Translated name of event type.
* @param string $type Event type name (e.g. production).
* @param integer $number Number of event of this type.
*
* @return array
*/
private function _generateGenericFullEvent(array $event, MDTlLoader $tlLoader, string $typeName, string $type, int $number):array {
return [
"{$type}_when{$number}" => $this->_getSimpleAvailableFieldEntry("{$typeName}: {$event['when']}", "", ["{$type}_when_sure{$number}"]),
"{$type}_when_sure{$number}" => $this->_getSimpleAvailableFieldEntry("{$typeName}: {$event['when']} [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", "", ["{$type}_when{$number}"], ["y", "n"]),
"{$type}_who{$number}" => $this->_getSimpleAvailableFieldEntry("{$typeName}: {$event['who']}", "", ["{$type}_who_sure{$number}"]),
"{$type}_who_sure{$number}" => $this->_getSimpleAvailableFieldEntry("{$typeName}: {$event['who']} [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", "", ["{$type}_who{$number}"], ["y", "n"]),
"{$type}_who_gnd{$number}" => $this->_getSimpleAvailableFieldEntry("{$typeName}: {$event['who']} ({$event['gnd']})", "", ["{$type}_who_sure{$number}", "{$type}_who{$number}"]),
"{$type}_where{$number}" => $this->_getSimpleAvailableFieldEntry("{$typeName}: {$event['where']}", "", ["{$type}_where_sure{$number}"]),
"{$type}_where_sure{$number}" => $this->_getSimpleAvailableFieldEntry("{$typeName}: {$event['where']} [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", "", ["{$type}_where{$number}"], ["y", "n"]),
"{$type}_annotation{$number}" => $this->_getSimpleAvailableFieldEntry("{$typeName}: {$event['classic_annotation_intro']}", ""),
];
}
/**
* Constructor.
*
* @param string $lang User language.
*
* @return void
*/
public function __construct(string $lang) {
$tlLoader = new MDTlLoader("available_fields", $lang);
foreach (MD_STD::scandir(__DIR__ . "/../l10n/musdb/$lang/") as $fileName) {
if (in_array($fileName, ['start.php', 'start2.php'])) continue;
include __DIR__ . "/../l10n/musdb/{$lang}/{$fileName}";
}
include __DIR__ . "/../commonservices/$lang/search_all_fields.php";
include __DIR__ . "/../commonservices/units.php";
include __DIR__ . "/../classes/MDAllowedValueSets/l18n/$lang/eventtype_name.php";
$currencies = MDCurrenciesSet::getSortedList($tlLoader);
if (empty($fieldNoMultiplicator) or !is_numeric($fieldNoMultiplicator)) {
$fieldNoMultiplicator = 1;
}
$availableFields = [
$tlLoader->tl('csvxml-overview', 'csvxml_overview', 'object_base_data') => [
"inventory_number" => [
"required" => true,
"allowedValues" => [],
"dependsOn" => [],
"remark" => 'Only unique values allowed',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'inventory_number'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'inv_explica'),
],
"object_type" => [
"required" => true,
"allowedValues" => [],
"dependsOn" => [],
"remark" => 'Keep it short! Field is needed to create valid LIDO from museum-digital entries',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'object_type'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'oart_explica'),
],
"object_title" => [
"required" => true,
"allowedValues" => [],
"dependsOn" => [],
"remark" => 'Best is not to repeat the title again and again for many objects, e.g. vase, vase, vase ... better: Green vase, Blue vase, Yellow vase, ...',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'object_name'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'oname_explica'),
],
"object_description" => [
"required" => true,
"allowedValues" => [],
"dependsOn" => [],
"remark" => 'A good description of the objects is fundamental to make the objects searchable in the internet',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'description'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'obesch_explica'),
],
"object_material_technique" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [],
"remark" => 'This is a cummulative field for material and technique. It is also possible to additionally save the information separate in the fields: <i>material_separate</i> and <i>technique_separate</i>',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'mattech'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'mattech_explica'),
],
"object_dimensions" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [],
"remark" => 'This is a cummulative field for dimensions (values and units). It is also possible to additionally save the information separate. See the block: <i>separate dimensions</i>',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'measurements'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'ausmass_explica'),
],
"object_publication" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => [],
"remark" => 'Shall the object be visible directly after import?',
"name_human_readable" => $objekt['visibility'],
"explica" => '',
],
"institution_name" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [],
"remark" => 'If name of institution is given it has to be exactly the same as already known in museum-digital',
"name_human_readable" => $museum['museum_name'],
"explica" => $museum['musnam_explica'],
],
],
$searchvar[0][0] => [
"object_other_title" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['object_other_title_kind_of'],
"remark" => 'If the field <i>object_other_title</i> is used. It has to be specified where this alternative title is used. Specification should be done within the field: <i>object_other_title_kind_of</i>',
"name_human_readable" => $searchvar[0][0],
"explica" => '',
],
"object_other_title_kind_of" => [
"required" => false,
"allowedValues" => array_values(MDTitleTypesSet::TITLE_TYPES),
"dependsOn" => ['object_other_title'],
"remark" => 'This field has to be used togehter with <i>object_other_title</i>',
"name_human_readable" => $searchvar[0][0] . ', in: ',
"explica" => '',
],
],
$searchvar[46][0] => [
"detailed_description" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['detailed_description_md', 'detailed_description_extern'],
"remark" => 'If <i>detailed_desription</i> is made available for an object, <i>detailed_description_md</i> and <i>detailed_description_extern</i> have to have values too',
"name_human_readable" => $searchvar[46][0],
"explica" => $object_add['ddesc_inhalt'],
],
"detailed_description_md" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ['detailed_description', 'detailed_description_extern'],
"remark" => 'Shall detailed description be visible at museum-digital? If <i>detailed_desription</i> is available for an object, <i>detailed_description_md</i> and <i>detailed_description_extern</i> have to have values too',
"name_human_readable" => $object_add['ddesc_visibility_md'],
"explica" => "",
],
"detailed_description_extern" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ['detailed_description_md', 'detailed_description'],
"remark" => 'Shall later exports from museum-digital include the detailed_description?</br>If <i>detailed_desription</i> is available for an object, <i>detailed_description_md</i> and <i>detailed_description_extern</i> have to have values too',
"name_human_readable" => $object_add['ddesc_visibility_extern'],
"explica" => "",
],
],
$searchvar[2][0] => [
"inscription" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['inscription_md', 'inscription_extern'],
"remark" => 'If <i>inscription</i> is made available for an object, <i>inscription_md></i> and <i>inscription_extern</i> have to have values too',
"name_human_readable" => $searchvar[2][0],
"explica" => $object_add['besch_inhalt'],
],
"inscription_md" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ['inscription_md', 'inscription_extern'],
"remark" => 'Shall a given inscription be displayed at museum-digital? If <i>inscription</i> is available for an object, <i>inscription_md></i> and <i>inscription_extern</i> have to have values too',
"name_human_readable" => $object_add['besch_visibility_md'],
"explica" => "",
],
"inscription_extern" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ['inscription_md', 'inscription_extern'],
"remark" => 'Shall later exports from museum-digital inlude inscription? If <i>inscription</i> is available for an object, <i>inscription_md></i> and <i>inscription_extern</i> have to have values too',
"name_human_readable" => $object_add['besch_visibility_extern'],
"explica" => "",
],
],
"{$searchvar[52][0]} / {$searchvar[53][0]}" => [
"material_separate" => [
"required" => false,
"allowedValues" => [],
"remark" => 'Additional to collecting material and technique in a combined field (see above), the material(s) can be given here separately',
"name_human_readable" => $searchvar[52][0],
"explica" => "",
],
"technique_separate" => [
"required" => false,
"allowedValues" => [],
"remark" => 'Additional to collecting material and technique in a combined field (see above), the technique(s) can be given here separately',
"name_human_readable" => $searchvar[53][0],
"explica" => "",
],
],
$object_add['separated_measurements'] => [
"dimensions_separate_length_value" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['dimensions_separate_length_unit', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_length_value'],
"explica" => "",
],
"dimensions_separate_length_unit" => [
"required" => false,
"allowedValues" => MDUnitsSet::UNITS_LENGTH,
"dependsOn" => ['dimensions_separate_length_value', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_length_unit'],
"explica" => "",
],
"dimensions_separate_width_value" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['dimensions_separate_width_unit', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_width_value'],
"explica" => "",
],
"dimensions_separate_width_unit" => [
"required" => false,
"allowedValues" => MDUnitsSet::UNITS_LENGTH,
"dependsOn" => ['dimensions_separate_width_value', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_width_unit'],
"explica" => "",
"required" => false,
],
"dimensions_separate_height_value" => [
"allowedValues" => [],
"dependsOn" => ['dimensions_separate_height_unit', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_height_value'],
"explica" => "",
],
"dimensions_separate_height_unit" => [
"required" => false,
"allowedValues" => MDUnitsSet::UNITS_LENGTH,
"dependsOn" => ['dimensions_separate_height_value', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_height_unit'],
"explica" => "",
],
"dimensions_separate_weight_value" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['dimensions_separate_weight_unit', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_weight_value'],
"explica" => "",
],
"dimensions_separate_weight_unit" => [
"required" => false,
"allowedValues" => MDUnitsSet::UNITS_WEIGHT,
"dependsOn" => ['dimensions_separate_width_value', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_weight_unit'],
"explica" => $tlLoader->tl("object_basis", "object_basis", 'inv_explica'),
],
"dimensions_separate_diameter_value" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['dimensions_separate_diameter_unit', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_diameter_value'],
"explica" => "",
],
"dimensions_separate_diameter_unit" => [
"required" => false,
"allowedValues" => MDUnitsSet::UNITS_LENGTH,
"dependsOn" => ['dimensions_separate_diameter_value', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_diameter_unit'],
"explica" => "",
],
"dimensions_separate_wall_thickness_value" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['dimensions_separate_wall_thickness_unit', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_wall_size_value'],
"explica" => "",
],
"dimensions_separate_wall_thickness_unit" => [
"required" => false,
"allowedValues" => MDUnitsSet::UNITS_LENGTH,
"dependsOn" => ['dimensions_separate_wall_thickness_value', 'dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => 'If a separated value is given an entry for the respective unit is necessary. If a separated dimension entry is given, <i>dimensions_separate_show_md</i> and <i>dimensions_separate_show_extern</i> need to be filled in, too.',
"name_human_readable" => $export['exact_measurements_wall_size_unit'],
"explica" => "",
],
"dimensions_separate_show_md" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => [
"dimensions_separate_length_value", "dimensions_separate_length_unit", "dimensions_separate_width_value",
"dimensions_separate_width_unit", "dimensions_separate_height_value", "dimensions_separate_height_unit",
"dimensions_separate_weight_value", "dimensions_separate_weight_unit", "dimensions_separate_diameter_value",
"dimensions_separate_diameter_unit", "dimensions_separate_wall_thickness_value", "dimensions_separate_wall_thickness_unit"
],
"remark" => 'If one or more separate dimension-value (and -unit) is given it has to be specified if the separated entries should be made visible at museum-digital',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'inventory_number'),
"explica" => "",
],
"dimensions_separate_show_extern" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => [
"dimensions_separate_length_value", "dimensions_separate_length_unit", "dimensions_separate_width_value",
"dimensions_separate_width_unit", "dimensions_separate_height_value", "dimensions_separate_height_unit",
"dimensions_separate_weight_value", "dimensions_separate_weight_unit", "dimensions_separate_diameter_value",
"dimensions_separate_diameter_unit", "dimensions_separate_wall_thickness_value", "dimensions_separate_wall_thickness_unit"
],
"remark" => 'If one or more separate dimension-value (and -unit) is given it has to be specified if the separated entries should be included in a later export from museum-digital',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'inventory_number'),
"explica" => "",
],
"number_of_pieces" => [
"required" => false,
"allowedValues" => [],
"remark" => 'Only to be given if more than one copies of an object are available and catalogued with the same inventory number',
"name_human_readable" => $export['exact_measurements_number_pieces'],
"explica" => "",
],
"number_of_pages" => [
"required" => false,
"allowedValues" => [],
"remark" => 'Only to be given for books (etc.)',
"name_human_readable" => $export['exact_measurements_number_pages'],
"explica" => "",
],
"dimensions_separate_stamp_position" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['dimensions_separate_show_md', 'dimensions_separate_show_extern'],
"remark" => '',
"name_human_readable" => $export['exact_measurements_stamp_position'],
"explica" => "",
],
],
$searchvar[11][0] => [
"comparable_objects_other_museums" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['comparable_objects_other_museums_show_md', 'comparable_objects_other_museums_show_extern'],
"remark" => 'Name of other museum and if available the inventory number of the respective object. If <i>comparable_objects_other_museums</i> is given <i>comparable_objects_other_museums_show_md</i> and <i>comparable_objects_other_museums_show_extern</i> have to be given too',
"name_human_readable" => $searchvar[11][0],
"explica" => $object_add['vergl_inhalt'],
],
"comparable_objects_other_museums_show_md" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ['comparable_objects_other_museums', 'comparable_objects_other_museums_show_extern'],
"remark" => 'Necessary if <i>comparable_objects_other_museums</i> is given. Should the information about comparable objects be displayed at museum-digital?',
"name_human_readable" => $object_add['vergl_visibility_md'],
"explica" => "",
],
"comparable_objects_other_museums_show_extern" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ['comparable_objects_other_museums', 'comparable_objects_other_museums_show_md'],
"remark" => 'Necessary if <i>comparable_objects_other_museums</i> is given. Should the information about comparable objects be part of later exports from museum-digital?',
"name_human_readable" => $object_add['vergl_visibility_extern'],
"explica" => "",
],
],
$searchvar[1][0] => [
"closer_location" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ['closer_location_as'],
"remark" => 'A place in a special relation to the object. The kind of relation has to specified in <i>closer_location_as</i>',
"name_human_readable" => $searchvar[1][0],
"explica" => $object_add['loka_inhalt'],
],
"closer_location_as" => [
"required" => false,
"allowedValues" => array_values($ortart),
"dependsOn" => ['closer_location'],
"remark" => 'A place in a special relation to the object can be given in <i>closer_location</i>. Here the kind of relation between object and place has to specified',
"name_human_readable" => "{$searchvar[1][0]}, {$object_add['as']}",
"explica" => "",
],
],
$object_add['classification'] => [
"entry_number" => [
"required" => false,
"allowedValues" => [],
"remark" => 'The entry number of the object if available',
"name_human_readable" => $searchvar[12][0],
"explica" => $object_add['einu_inhalt'],
],
"other_inventory_number" => [
"required" => false,
"allowedValues" => [],
"remark" => 'All other inventory numbers (older ones presumably) in one field',
"name_human_readable" => $searchvar[13][0],
"explica" => $object_add['invp_inhalt'],
],
"subject_group" => [
"required" => false,
"allowedValues" => [],
"remark" => 'If the object is part of an subject group this information should be given here',
"name_human_readable" => $searchvar[16][0],
"explica" => "",
],
"systematic" => [
"required" => false,
"allowedValues" => [],
"remark" => 'If the object is put into a museum-systematic the place it has there',
"name_human_readable" => $searchvar[17][0],
"explica" => "",
],
"bundle" => [
"required" => false,
"allowedValues" => [],
"remark" => 'The bundle the object belongs to',
"name_human_readable" => $searchvar[14][0],
"explica" => "",
],
"part_of" => [
"required" => false,
"allowedValues" => [],
"remark" => 'If the object is part of something it can be given here',
"name_human_readable" => $searchvar[15][0],
"explica" => "",
],
],
$tlLoader->tl("basis", "basis", 'administration') => [
"inclusion_when" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[19][0],
"explica" => $tlLoader->tl("object_basis", "object_basis", 'inv_explica'),
],
"inclusion_kind_of" => [
"required" => false,
"allowedValues" => MDEntryTypesSet::getSortedList($tlLoader),
"remark" => '',
"name_human_readable" => "{$searchvar[19][0]}, {$object_add['as']}",
"explica" => "",
],
"inclusion_who" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => "{$searchvar[47][0]}",
"explica" => "",
],
"inclusion_where" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[48][0],
"explica" => "",
],
"registration_first_who" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[49][0],
"explica" => "",
],
"registration_first_when" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[50][0],
"explica" => "",
],
],
$object_add['object_history'] => [
"owner_previous" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[18][0],
"explica" => $object_add['vorb_inhalt'],
],
"object_history" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[22][0],
"explica" => $object_add['obge_inhalt'],
],
"bought_for" => [
"required" => false,
"allowedValues" => '',
"dependsOn" => ["bought_for_currency"],
"remark" => '',
"name_human_readable" => "{$searchvar[19][0]}, {$object_add['for']}",
"explica" => $tlLoader->tl("object_basis", "object_basis", 'inv_explica'),
],
"bought_for_currency" => [
"required" => false,
"allowedValues" => $currencies,
"dependsOn" => ["bought_for"],
"remark" => '',
"name_human_readable" => "{$searchvar[19][0]}, {$object_add['for']}",
"explica" => "",
],
],
$object_add['values'] => [
"worth_determiner" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => "{$searchvar[23][0]}; {$object_add['by']}",
"explica" => "",
],
"worth_when" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[23][0],
"explica" => "",
],
"worth_value" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => "{$searchvar[23][0]}; {$object_add['at']}",
"explica" => "",
],
"worth_unit" => [
"required" => false,
"allowedValues" => $currencies,
"remark" => '',
"name_human_readable" => "{$searchvar[23][0]}; Currency",
"explica" => "",
],
"worth_insurance_determiner" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => "{$searchvar[26][0]}; {$object_add['by']}",
"explica" => "",
],
"worth_insurance_when" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => "{$searchvar[26][0]}",
"explica" => "",
],
"worth_insurance_value" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => "{$searchvar[26][0]}; {$object_add['at']}",
"explica" => "",
],
"worth_insurance_unit" => [
"required" => false,
"allowedValues" => $currencies,
"remark" => '',
"name_human_readable" => "{$searchvar[26][0]}; Currency",
"explica" => "",
],
],
$object_add['state'] => [
"state" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[29][0],
"explica" => $object_add['zust_inhalt'],
],
"restauration" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[30][0],
"explica" => $object_add['rest_inhalt'],
],
],
$tlLoader->tl("basis", "basis", 'abode') => [
"abode_actual" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[31][0],
"explica" => $object_add['aktu_inhalt'],
],
"abode_regular" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[32][0],
"explica" => $object_add['stan_inhalt'],
],
"exhibition" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[33][0],
"explica" => $object_add['aust_inhalt'],
],
"on_loan_to" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[34][0],
"explica" => $object_add['verl_inhalt'],
],
"on_loan_contact" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[35][0],
"explica" => $object_add['ansp_inhalt'],
],
"on_loan_when" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[36][0],
"explica" => $object_add['vher_inhalt'],
],
"on_loan_insurance_value" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[37][0],
"explica" => $object_add['vlei_inhalt'],
],
"on_loan_annotation" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[38][0],
"explica" => $object_add['alei_inhalt'],
],
],
$tlLoader->tl("basis", "basis", 'rights') => [
"rights_object" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[39][0],
"explica" => $object_add['urhe_inhalt'],
],
"rights_of_use" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[40][0],
"explica" => $object_add['nure_inhalt'],
],
"rights_annotation" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[41][0],
"explica" => $object_add['arec_inhalt'],
],
"rights_metadata_holder" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $object_add['metadata_rights_holder'],
"explica" => "",
],
"rights_metadata_license" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $object_add['metadata_rights_status'],
"explica" => "",
],
],
$tlLoader->tl("basis", "basis", 'remarks') => [
"remarks_short" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[42][0],
"explica" => $object_add['kurz_inhalt'],
],
"remarks_long" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[43][0],
"explica" => $object_add['noti_inhalt'],
],
"images_in_museum" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[44][0],
"explica" => $object_add['oaim_inhalt'],
],
"documents_in_museum" => [
"required" => false,
"allowedValues" => '',
"remark" => '',
"name_human_readable" => $searchvar[45][0],
"explica" => $object_add['odim_inhalt'],
],
],
$overview['links'] => [],
$overview['links'] . ": " . $tlLoader->tl("basis", "basis", 'single_object') => [],
"translations" => [],
$tlLoader->tl("basis", "basis", 'literature') => [],
$tlLoader->tl("basis", "basis", 'objectgroup') => [],
$overview['tags'] => [],
$eventname[22] => [],
$eventname[23] => [],
$eventname[24] => [],
$overview['images'] => [],
$tlLoader->tl("basis", "basis", 'resource') => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[1] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[2] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[3] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[4] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[5] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[36] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[6] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[7] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[8] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[9] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[10] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[11] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[12] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[13] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[14] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[15] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[16] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[19] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[20] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[21] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[25] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[26] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[27] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[28] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[29] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[30] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[31] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[32] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[33] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[34] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[35] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[37] => [],
$tlLoader->tl("basis", "basis", 'event') . ": " . $eventname[38] => [],
];
/*
* Repeat fields
*/
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$overview['links']] = array_merge($availableFields[$overview['links']],
[
"link_url{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["link_show{$i}"],
"remark" => '',
"name_human_readable" => $link['url'],
"explica" => $link['linklink_explica'],
],
"link_show{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["link_url{$i}"],
"remark" => '',
"name_human_readable" => $link['text'],
"explica" => $link['linkname_explica'],
],
]);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$overview['links'] . ": " . $tlLoader->tl("basis", "basis", 'single_object')] = array_merge($availableFields[$overview['links'] . ": " . $tlLoader->tl("basis", "basis", 'single_object')],
[
"linked_obj_invno{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["linked_obj_show{$i}"],
"remark" => '',
"name_human_readable" => "Inventarnummer des verknüpften Objektes",
"explica" => "",
],
"linked_obj_show{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["linked_obj_invno{$i}"],
"remark" => '',
"name_human_readable" => "Verknüpftes Objekt: Text",
"explica" => "",
],
]);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields["translations"] = array_merge($availableFields["translations"],
[
"obj_trans_language{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"],
"remark" => '',
"name_human_readable" => "Translation language",
"explica" => "",
],
"obj_trans_object_type{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'object_type'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'oart_explica'),
],
"obj_trans_object_title{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'object_name'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'oname_explica'),
],
"obj_trans_object_description{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'description'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'obesch_explica'),
],
"obj_trans_object_material_technique{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'mattech'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'mattech_explica'),
],
"obj_trans_object_dimensions{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("object_basis", "object_basis", 'measurements'),
"explica" => $tlLoader->tl("object_basis", "object_basis", 'ausmass_explica'),
],
]);
}
for ($i = 1; $i <= 5 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'literature')] = array_merge($availableFields[$tlLoader->tl("basis", "basis", 'literature')],
[
"literature_author{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'author'),
"explica" => $tlLoader->tl("literature", "literature", 'autor_explica'),
],
"literature_year{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'year'),
"explica" => $tlLoader->tl("literature", "literature", 'jahr_explica'),
],
"literature_title{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'title'),
"explica" => $tlLoader->tl("literature", "literature", 'titel_explica'),
],
"literature_place{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'place'),
"explica" => $tlLoader->tl("literature", "literature", 'ort_explica'),
],
"literature_abbreviation{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'abbr'),
"explica" => $tlLoader->tl("literature", "literature", 'abbr_explica'),
],
"literature_gnd{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'gnd'),
"explica" => $tlLoader->tl("literature", "literature", 'gnd_explica'),
],
"literature_isbn{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'isbn'),
"explica" => $tlLoader->tl("literature", "literature", 'isbn_explica'),
],
"literature_signature{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'id_in_museum'),
"explica" => $tlLoader->tl("literature", "literature", 'id_in_museum_explica'),
],
"literature_online{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'online'),
"explica" => $tlLoader->tl("literature", "literature", 'online_explica'),
],
"literature_annotation{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'annotation'),
"explica" => $tlLoader->tl("literature", "literature", 'annotation_explica'),
],
"literature_inlit{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["literature_title{$i}"],
"remark" => '',
"name_human_readable" => $tlLoader->tl("literature", "literature", 'where_inside'),
"explica" => $tlLoader->tl("literature", "literature", 'where_in_explica'),
],
]);
}
// Collection names
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl('csvxml-overview', 'csvxml_overview', 'object_base_data')]["collection_name{$i}"] = [
"required" => false,
"allowedValues" => [],
"dependsOn" => [],
"remark" => 'Use if object belongs to a collection. If collection is already in museum-digital, please use exactly the same name',
"name_human_readable" => $collection['name'],
"explica" => $collection['samnam_explica'],
];
}
for ($i = 1; $i <= 5 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'objectgroup')] = array_merge($availableFields[$tlLoader->tl("basis", "basis", 'objectgroup')],
[
"object_group_name{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [],
"remark" => '',
"name_human_readable" => $link['series_name'],
"explica" => $link['seriename_explica'],
],
"object_group_description{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["object_group_name{$i}"],
"remark" => '',
"name_human_readable" => $link['series_description'],
"explica" => $link['series_description'],
],
"object_group_show{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ["object_group_name{$i}"],
"remark" => '',
"name_human_readable" => $link['hide_objectgroup'],
"explica" => "",
],
]);
}
for ($i = 1; $i <= 10 * $fieldNoMultiplicator; $i++) {
$availableFields[$overview['tags']]["tag{$i}"] = [
"required" => false,
"allowedValues" => [],
"remark" => '',
"name_human_readable" => $overview['tags'],
"explica" => "",
];
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$eventname[22]] = array_merge($availableFields[$eventname[22]],
[
"related_place{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["related_place_sure{$i}"],
"remark" => '',
"name_human_readable" => $event['where'],
"explica" => "",
],
"related_place_sure{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ["related_place{$i}"],
"remark" => '',
"name_human_readable" => "{$event['where']} [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]",
"explica" => "",
],
]);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$eventname[23]] = array_merge($availableFields[$eventname[23]],
[
"related_actor{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["related_actor_sure{$i}"],
"remark" => '',
"name_human_readable" => $event['who'],
"explica" => "",
],
"related_actor_sure{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ["related_actor{$i}"],
"remark" => '',
"name_human_readable" => "{$event['who']} [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]",
"explica" => "",
],
"related_actor_gnd{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["related_actor{$i}", "related_actor_sure{$i}"],
"remark" => '',
"name_human_readable" => "{$event['who']} ({$event['gnd']})",
"explica" => "",
],
]);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$eventname[24]] = array_merge($availableFields[$eventname[24]],
[
"related_time{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["related_time_sure{$i}"],
"remark" => '',
"name_human_readable" => $event['when'],
"explica" => "",
],
"related_time_sure{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ["related_time{$i}"],
"remark" => '',
"name_human_readable" => $event['when'] . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]",
"explica" => "",
],
]);
}
for ($i = 1; $i <= 10 * $fieldNoMultiplicator; $i++) {
$availableFields[$overview['images']] = array_merge($availableFields[$overview['images']],
[
"image_name{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"image_owner{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}"
],
"remark" => '',
"name_human_readable" => $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'image_filename'),
"explica" => "",
],
"image_description{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}"
],
"remark" => '',
"name_human_readable" => $image_incha['image_description'],
"explica" => $image_incha['bildbesch_explica'],
],
"image_owner{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"image_name{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}"
],
"remark" => '',
"name_human_readable" => $image_incha['image_rightsholder'],
"explica" => $image_incha['owner_explica'],
],
"image_creator{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}"
],
"remark" => '',
"name_human_readable" => $image_incha['photographer'],
"explica" => $image_incha['creator_explica'],
],
"image_rights{$i}" => [
"required" => false,
"allowedValues" => array_keys(MDLicensesSet::AVAILABLE_LICENSES),
"dependsOn" => [
"image_name{$i}", "image_owner{$i}", "image_visible{$i}", "image_main{$i}"
],
"remark" => '',
"name_human_readable" => $image_incha['rights_status'],
"explica" => $image_incha['rechte_explica'],
],
"image_visible{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => [
"image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_main{$i}"
],
"remark" => '',
"name_human_readable" => $tlLoader->tl("basis", "basis", 'image') . ": {$objekt['visibility']}",
"explica" => "",
],
"image_main{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => [
"image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_visible{$i}"
],
"remark" => '',
"name_human_readable" => $object['main_image'],
"explica" => "",
],
"image_master_filename{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}"
],
"remark" => '',
"name_human_readable" => $image_incha['master_filename'],
"explica" => $image_incha['master_filename_explica'],
],
]);
}
for ($i = 1; $i <= 10 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'resource')] = array_merge($availableFields[$tlLoader->tl("basis", "basis", 'resource')],
[
"resource_media_type{$i}" => [
"required" => false,
"allowedValues" => ['image', 'text', 'video', 'audio'],
"dependsOn" => [
"resource_fileformat{$i}", "resource_location{$i}", "resource_name{$i}", "resource_owner{$i}", "resource_rights{$i}", "resource_visible{$i}",
],
"remark" => 'Allowed values: image, text, video, audio',
"name_human_readable" => $tlLoader->tl("basis", "basis", 'resource') . ', ' . $tlSources['type'],
"explica" => "",
],
"resource_fileformat{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"resource_media_type{$i}", "resource_location{$i}", "resource_name{$i}", "resource_owner{$i}", "resource_rights{$i}", "resource_visible{$i}",
],
"remark" => 'e.g. pdf, mp3',
"name_human_readable" => $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'file_format'),
"explica" => "",
],
"resource_location{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"resource_media_type{$i}", "resource_fileformat{$i}", "resource_name{$i}", "resource_owner{$i}", "resource_rights{$i}", "resource_visible{$i}",
],
"remark" => 'In case the resource is stored externally: please include the whole path (incl. http or https) to the file. If the resource is uploaded to museum-digital: please put the filename here (e.g. file.pdf)',
"name_human_readable" => $resource_incha['image_filename'],
"explica" => "",
],
"resource_name{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"resource_media_type{$i}", "resource_fileformat{$i}", "resource_location{$i}", "resource_owner{$i}", "resource_rights{$i}", "resource_visible{$i}",
],
"remark" => 'Use, if you want to give the resource an own name. If not, you might want to repeat the object_title',
"name_human_readable" => $resource_incha['resource_name'],
"explica" => $resource_incha['bildname_explica'],
],
"resource_description{$i}" => [
"required" => false,
"allowedValues" => ['Use if you want to describe the resource. Might be left empty.'],
"dependsOn" => [
"resource_media_type{$i}", "resource_fileformat{$i}", "resource_location{$i}", "resource_name{$i}", "resource_owner{$i}", "resource_rights{$i}", "resource_visible{$i}",
],
"remark" => '',
"name_human_readable" => $resource_incha['resource_description'],
"explica" => $resource_incha['bildbesch_explica'],
],
"resource_owner{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"resource_media_type{$i}", "resource_fileformat{$i}", "resource_location{$i}", "resource_name{$i}", "resource_rights{$i}", "resource_visible{$i}",
],
"remark" => 'The owner should be named. Usually it is the institution uploading the resource.',
"name_human_readable" => $resource_incha['resource_rightsholder'],
"explica" => $resource_incha['owner_explica'],
],
"resource_creator{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => [
"resource_media_type{$i}", "resource_fileformat{$i}", "resource_location{$i}", "resource_name{$i}", "resource_owner{$i}", "resource_rights{$i}", "resource_visible{$i}",
],
"remark" => 'Name of the person that created the resource. Might be left empty.',
"name_human_readable" => $resource_incha['creator'],
"explica" => $resource_incha['creator_explica'],
],
"resource_rights{$i}" => [
"required" => false,
"allowedValues" => array_keys(MDLicensesSet::AVAILABLE_LICENSES),
"dependsOn" => [
"resource_media_type{$i}", "resource_fileformat{$i}", "resource_location{$i}", "resource_name{$i}", "resource_owner{$i}", "resource_visible{$i}",
],
"remark" => '',
"name_human_readable" => $resource_incha['rights_status'],
"explica" => $resource_incha['rechte_explica'],
],
"resource_visible{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => [
"resource_media_type{$i}", "resource_fileformat{$i}", "resource_location{$i}", "resource_name{$i}", "resource_owner{$i}", "resource_rights{$i}",
],
"remark" => 'Should the resource be publicly visible? Allowed values are either y and n',
"name_human_readable" => $tlLoader->tl("basis", "basis", 'resource') . ": {$objekt['visibility']}",
"explica" => "",
],
]);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[1]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[1]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[1], "production", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[2]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[2]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[2], "finding", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[3]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[3]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[3], "publication", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[4]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[4]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[4], "template_creation", $i)
);
}
for ($i = 1; $i <= 5 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[5]] = array_merge($availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[5]],
[
"was_depicted_who{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["was_depicted_who_sure{$i}"],
"remark" => '',
"name_human_readable" => $event['who'],
"explica" => "",
],
"was_depicted_who_sure{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ["was_depicted_who{$i}"],
"remark" => '',
"name_human_readable" => $event['who'] . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]",
"explica" => "",
],
]);
}
for ($i = 1; $i <= 5 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[36]] = array_merge($availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[36]],
[
"was_depicted_place{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["was_depicted_place_sure{$i}"],
"remark" => '',
"name_human_readable" => $event['where'],
"explica" => "",
],
"was_depicted_place_sure{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ["was_depicted_place{$i}"],
"remark" => '',
"name_human_readable" => $event['where'] . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]",
"explica" => "",
],
]);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[6]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[6]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[6], "was_used", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[7]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[7]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[7], "written", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[8]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[8]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[8], "collected", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[9]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[9]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[9], "painted", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[10]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[10]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[10], "taken", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[11]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[11]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[11], "received", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[12]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[12]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[12], "printing_plate_produced", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[13]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[13]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[13], "sent", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[14]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[14]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[14], "issued", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[15]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[15]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[15], "signed", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[16]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[16]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[16], "type_described", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[19]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[19]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[19], "drawn", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[20]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[20]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[20], "copied", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[25]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[25]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[25], "commissioned", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[26]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[26]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[26], "printed", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[27]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[27]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[27], "spoken", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[28]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[28]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[28], "sung", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[29]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[29]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[29], "decor_designed", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[30]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[30]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[30], "form_designed", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[31]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[31]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[31], "modelled", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[32]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[32]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[32], "signed_artwork", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[33]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[33]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[33], "was_mentioned", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[34]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[34]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[34], "buried", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[35]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[35]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[35], "intellectual_creation", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[37]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[37]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[37], "painted_on", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[38]] = array_merge(
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[38]],
$this->_generateGenericFullEvent($event, $tlLoader, $eventname[38], "illustrated", $i)
);
}
for ($i = 1; $i <= 2 * $fieldNoMultiplicator; $i++) {
$availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[21]] = array_merge($availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventname[21]],
[
"has_lived_when{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["has_lived_when_sure{$i}"],
"remark" => '',
"name_human_readable" => $event['when'],
"explica" => "",
],
"has_lived_when_sure{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ["has_lived_when{$i}"],
"remark" => '',
"name_human_readable" => $event['when'] . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]",
"explica" => "",
],
"has_lived_where{$i}" => [
"required" => false,
"allowedValues" => [],
"dependsOn" => ["has_lived_where_sure{$i}"],
"remark" => '',
"name_human_readable" => $event['where'],
"explica" => "",
],
"has_lived_where_sure{$i}" => [
"required" => false,
"allowedValues" => ["y", "n"],
"dependsOn" => ["has_lived_where{$i}"],
"remark" => '',
"name_human_readable" => $event['where'] . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]",
"explica" => "",
],
"has_lived_annotation{$i}" => [
"required" => false,
"allowedValues" => '',
"dependsOn" => [],
"remark" => '',
"name_human_readable" => $event['classic_annotation_intro'],
"explica" => "",
],
]);
}
$this->_availableFields = $availableFields;
}
}