*/ declare(strict_types = 1); /** * Class building the list of available fields for CSVXML. */ final class CsvxmlAvailableFields { public const GENERAL_FIELD_MULTIPLIER = 1; public const EVENT_MULTIPLIER = 3; /** @var array> */ private array $_availableFields; /** * Getter for available fields. * * @return array> */ public function getFields():array { return $this->_availableFields; } /** * Function for building a generic event type definition. * * @param MDTlLoader $tlLoader Translation loader. * @param integer $eventTypeId ID of the event type. * @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(MDTlLoader $tlLoader, int $eventTypeId, string $typeName, string $type, int $number):array { $output = [ ]; if (!in_array($eventTypeId, MDEventsSet::EVENTS_NO_TIME, true)) { $output[$type . '_when' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'when')); $output[$type . '_when_sure' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'when') . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", dependsOn: [$type . '_when' . $number], allowedValues: ["y", "n"]); } if (!in_array($eventTypeId, MDEventsSet::EVENTS_NO_ACTOR, true)) { $output[$type . '_who' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'who')); $output[$type . '_who_sure' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'who') . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", dependsOn: [$type . '_who' . $number], allowedValues: ["y", "n"]); $output[$type . '_who_description' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'who') . " [" . $tlLoader->tl('actor', 'actor', 'short_description') . "]", dependsOn: [$type . '_who' . $number]); $output[$type . '_who_birth' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'who') . " [" . $tlLoader->tl('actor', 'actor', 'year_birth') . "]", dependsOn: [$type . '_who' . $number]); $output[$type . '_who_death' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'who') . " [" . $tlLoader->tl('actor', 'actor', 'year_death') . "]", dependsOn: [$type . '_who' . $number]); $output[$type . '_who_gnd' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'who') . ' (' . $tlLoader->tl("event", "event", 'gnd') . ')', dependsOn: [$type . '_who_sure' . $number, $type . '_who' . $number]); $output[$type . '_who_wikidata' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'who') . ' (Wikidata)', dependsOn: [$type . '_who_sure' . $number, $type . '_who' . $number]); } if (!in_array($eventTypeId, MDEventsSet::EVENTS_NO_PLACE, true)) { $output[$type . '_where' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'where')); $output[$type . '_where_sure' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'where') . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", dependsOn: [$type . '_where' . $number], allowedValues: ["y", "n"]); $output[$type . '_where_description' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'where') . " [" . $tlLoader->tl('actor', 'actor', 'short_description') . "]", dependsOn: [$type . '_where' . $number]); $output[$type . '_where_wikidata' . $number] = new FieldEntry(name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'where') . ' (Wikidata)', dependsOn: [$type . '_where_sure' . $number, $type . '_where' . $number]); } $output[$type . '_annotation' . $number] = new FieldEntry( name_human_readable: $typeName . ': ' . $tlLoader->tl("event", "event", 'classic_annotation_intro')); return $output; } /** * Constructor. * * @param string $lang User language. * * @return void */ public function __construct(string $lang) { $tlLoader = new MDTlLoader("available_fields", $lang); $currencies = MDCurrenciesSet::getSortedList($tlLoader); $availableFields = [ $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'object_base_data') => [ "inventory_number" => new FieldEntry( required: true, 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" => new FieldEntry( required: true, 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" => new FieldEntry( required: true, 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" => new FieldEntry( required: true, 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" => new FieldEntry( remark: 'This is a cummulative field for material and technique. It is also possible to additionally save the information separate in the fields: material_separate and technique_separate', name_human_readable: $tlLoader->tl("object_basis", "object_basis", 'mattech'), explica: $tlLoader->tl("object_basis", "object_basis", 'mattech_explica') ), "object_dimensions" => new FieldEntry( remark: 'This is a cummulative field for dimensions (values and units). It is also possible to additionally save the information separate. See the block: separate dimensions', name_human_readable: $tlLoader->tl("object_basis", "object_basis", 'measurements'), explica: $tlLoader->tl("object_basis", "object_basis", 'ausmass_explica') ), "object_publication" => new FieldEntry( allowedValues: ["y", "n"], remark: 'Shall the object be visible directly after import?', name_human_readable: $tlLoader->tl("object", "objekt", 'visibility'), explica: $tlLoader->tl("object", "objekt", 'visibility_explica'), ), "institution_name" => new FieldEntry( remark: 'If name of institution is given it has to be exactly the same as already known in museum-digital', name_human_readable: $tlLoader->tl("museum", "museum", 'museum_name'), explica: $tlLoader->tl("museum", "museum", 'musnam_explica'), ), ], $tlLoader->tl("object_addendum", "object_add", "other_object_name") => [ "object_other_title" => new FieldEntry( dependsOn: ['object_other_title_kind_of'], remark: 'If the field object_other_title is used. It has to be specified where this alternative title is used. Specification should be done within the field: object_other_title_kind_of', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "other_object_name"), explica: $tlLoader->tl("object_addendum", "object_add", "other_object_name_explica"), ), "object_other_title_kind_of" => new FieldEntry( allowedValues: MDTitleTypesSet::TITLE_TYPES, dependsOn: ['object_other_title'], remark: 'This field has to be used togehter with object_other_title', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "other_object_name_type"), explica: $tlLoader->tl("object_addendum", "object_add", "other_object_name_type_explica"), ), ], $tlLoader->tl("object_addendum", "object_add", "detailed_description") => [ "detailed_description" => new FieldEntry( dependsOn: ['detailed_description_md', 'detailed_description_extern'], remark: 'If detailed_desription is made available for an object, detailed_description_md and detailed_description_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "detailed_description"), explica: $tlLoader->tl("object_addendum", "object_add", "ddesc_inhalt"), ), "detailed_description_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['detailed_description', 'detailed_description_extern'], remark: 'Shall detailed description be visible at museum-digital? If detailed_description is available for an object, detailed_description_md and detailed_description_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'ddesc_visibility_md'), ), "detailed_description_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['detailed_description_md', 'detailed_description'], remark: 'Shall later exports from museum-digital include the detailed_description?
If detailed_description is available for an object, detailed_description_md and detailed_description_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'ddesc_visibility_extern'), ), ], $tlLoader->tl("object_addendum", "object_add", "inscription") => [ "inscription" => new FieldEntry( dependsOn: ['inscription_md', 'inscription_extern'], remark: 'If inscription is made available for an object, inscription_md> and inscription_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "inscription"), explica: $tlLoader->tl("object_addendum", "object_add", "besch_inhalt"), ), "inscription_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['inscription', 'inscription_extern'], remark: 'Shall a given inscription be displayed at museum-digital? If inscription is available for an object, inscription_md> and inscription_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'besch_visibility_md'), ), "inscription_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['inscription_md', 'inscription'], remark: 'Shall later exports from museum-digital inlude inscription? If inscription is available for an object, inscription_md> and inscription_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'besch_visibility_extern'), ), ], $tlLoader->tl("basis", "basis", "language") => [ "content_language" => new FieldEntry( allowedValues: MDLanguagesSet::AVAILABLE_LANGUAGES_SHORT, dependsOn: ['content_language_md', 'content_language_extern'], remark: 'If content_language is made available for an object, content_language_md> and content_language_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "language"), explica: $tlLoader->tl("object_addendum", "object_add", "content_language_explica"), ), "content_language_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['content_language', 'content_language_extern'], remark: 'Shall a given content_language be displayed at museum-digital? If content_language is available for an object, content_language_md> and content_language_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "language") . ' (md)', ), "content_language_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['content_language', 'content_language_md'], remark: 'Shall later exports from museum-digital inlude content_language? If content_language is available for an object, content_language_md> and content_language_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "language") . ' (extern)', ), ], $tlLoader->tl("basis", "basis", "color") => [ "color" => new FieldEntry( allowedValues: MDColorsSet::COLOR_NAMES, dependsOn: ['color_md', 'color_extern'], remark: 'If color is made available for an object, color_md> and color_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "color"), explica: $tlLoader->tl("object_addendum", "object_add", "color_explica"), ), "color_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['color', 'color_extern'], remark: 'Shall a given color be displayed at museum-digital? If color is available for an object, color_md> and color_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "color") . ' (md)', ), "color_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['color_md', 'color'], remark: 'Shall later exports from museum-digital inlude color? If color is available for an object, color_md> and color_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "color") . ' (extern)', ), ], $tlLoader->tl("basis", "basis", "sex") => [ "sex" => new FieldEntry( allowedValues: MDGenderSet::GENDERS, dependsOn: ['sex_md', 'sex_extern'], remark: 'If sex is made available for an object, sex_md> and sex_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "sex"), explica: $tlLoader->tl("object_addendum", "object_add", "sex_explica"), ), "sex_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['sex', 'sex_extern'], remark: 'Shall a given sex be displayed at museum-digital? If sex is available for an object, sex_md> and sex_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "sex") . ' (md)', ), "sex_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['sex_md', 'sex'], remark: 'Shall later exports from museum-digital inlude sex? If sex is available for an object, sex_md> and sex_extern have to have values too', name_human_readable: $tlLoader->tl("basis", "basis", "sex") . ' (extern)', ), ], $tlLoader->tl("object_addendum", "object_add", "form") => [ "form" => new FieldEntry( allowedValues: MDObjectFormSet::FORMS, dependsOn: ['form_md', 'form_extern'], remark: 'If form is made available for an object, form_md> and form_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "form"), explica: $tlLoader->tl("object_addendum", "object_add", "form_explica"), ), "form_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['form', 'form_extern'], remark: 'Shall a given form be displayed at museum-digital? If form is available for an object, form_md> and form_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "form") . ' (md)', ), "form_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['form_md', 'form'], remark: 'Shall later exports from museum-digital inlude form? If form is available for an object, form_md> and form_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "form") . ' (extern)', ), ], $tlLoader->tl("object_addendum", "object_add", "material") . " / " . $tlLoader->tl("object_addendum", "object_add", "technique") => [ "material_separate" => new FieldEntry( remark: 'Additional to collecting material and technique in a combined field (see above), the material(s) can be given here separately', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "material"), explica: $tlLoader->tl("object_addendum", "object_add", "separate_material_explica"), ), "technique_separate" => new FieldEntry( remark: 'Additional to collecting material and technique in a combined field (see above), the technique(s) can be given here separately', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "technique"), explica: $tlLoader->tl("object_addendum", "object_add", "separate_technique_explica"), ), ], $tlLoader->tl("object_addendum", "object_add", 'separated_measurements') => [ "dimensions_separate_length_value" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_length_value'), ), "dimensions_separate_length_unit" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_length_unit'), ), "dimensions_separate_width_value" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_width_value'), ), "dimensions_separate_width_unit" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_width_unit'), ), "dimensions_separate_height_value" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_height_value'), ), "dimensions_separate_height_unit" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_height_unit'), ), "dimensions_separate_weight_value" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_weight_value'), ), "dimensions_separate_weight_unit" => new FieldEntry( allowedValues: MDUnitsSet::UNITS_WEIGHT, dependsOn: ['dimensions_separate_weight_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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_weight_unit'), explica: $tlLoader->tl("object_basis", "object_basis", 'inv_explica') ), "dimensions_separate_diameter_value" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_diameter_value'), ), "dimensions_separate_diameter_unit" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_diameter_unit'), ), "dimensions_separate_wall_thickness_value" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_wall_size_value'), ), "dimensions_separate_wall_thickness_unit" => new FieldEntry( 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, dimensions_separate_show_md and dimensions_separate_show_extern need to be filled in, too.', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_wall_size_unit'), ), "dimensions_separate_show_md" => new FieldEntry( allowedValues: ["y", "n"], 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_addendum", "object_add", 'ausm_visibility_md'), ), "dimensions_separate_show_extern" => new FieldEntry( allowedValues: ["y", "n"], 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_addendum", "object_add", 'ausm_visibility_extern'), ), "number_of_pieces" => new FieldEntry( dependsOn: ['dimensions_separate_show_md', 'dimensions_separate_show_extern'], 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: $tlLoader->tl("export", "export", 'exact_measurements_number_pieces'), ), "number_of_pages" => new FieldEntry( dependsOn: ['dimensions_separate_show_md', 'dimensions_separate_show_extern'], remark: 'Only to be given for books (etc.)', name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_number_pages'), ), "dimensions_separate_stamp_position" => new FieldEntry( dependsOn: ['dimensions_separate_show_md', 'dimensions_separate_show_extern'], name_human_readable: $tlLoader->tl("export", "export", 'exact_measurements_stamp_position'), ), ], $tlLoader->tl("object_addendum", "object_add", "similar_objects") => [ "comparable_objects_other_museums" => new FieldEntry( 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 comparable_objects_other_museums is given comparable_objects_other_museums_show_md and comparable_objects_other_museums_show_extern have to be given too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "similar_objects"), explica: $tlLoader->tl("object_addendum", "object_add", 'vergl_inhalt'), ), "comparable_objects_other_museums_show_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['comparable_objects_other_museums', 'comparable_objects_other_museums_show_extern'], remark: 'Necessary if comparable_objects_other_museums is given. Should the information about comparable objects be displayed at museum-digital?', name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'vergl_visibility_md'), ), "comparable_objects_other_museums_show_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['comparable_objects_other_museums', 'comparable_objects_other_museums_show_md'], remark: 'Necessary if comparable_objects_other_museums is given. Should the information about comparable objects be part of later exports from museum-digital?', name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'vergl_visibility_extern'), ), ], $tlLoader->tl("object_addendum", "object_add", "closer_location") => [ "closer_location" => new FieldEntry( dependsOn: ['closer_location_as'], remark: 'A place in a special relation to the object. The kind of relation has to specified in closer_location_as', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "closer_location"), explica: $tlLoader->tl("object_addendum", "object_add", 'loka_inhalt'), ), "closer_location_as" => new FieldEntry( allowedValues: MDCloserLocationTypesSet::getSortedList($tlLoader), dependsOn: ['closer_location'], remark: 'A place in a special relation to the object can be given in closer_location. Here the kind of relation between object and place has to specified', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "closer_location") . ", " . $tlLoader->tl("object_addendum", "object_add", 'as'), explica: $tlLoader->tl("object_addendum", "object_add", "closer_location_kind_explica"), ), ], $tlLoader->tl("object_addendum", "object_add", 'classification') => [ "entry_number" => new FieldEntry( remark: 'The entry number of the object if available', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "entry_number"), explica: $tlLoader->tl("object_addendum", "object_add", 'einu_inhalt'), ), "other_inventory_number" => new FieldEntry( remark: 'All other inventory numbers (older ones presumably) in one field', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "additional_invent_no"), explica: $tlLoader->tl("object_addendum", "object_add", 'invp_inhalt'), ), "subject_group" => new FieldEntry( remark: 'If the object is part of an subject group this information should be given here', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "subject_group"), ), "systematic" => new FieldEntry( remark: 'If the object is put into a museum-systematic the place it has there', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "classification"), ), "bundle" => new FieldEntry( remark: 'The bundle the object belongs to', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "konvolut"), ), "part_of" => new FieldEntry( remark: 'If the object is part of something it can be given here', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "part_of"), explica: $tlLoader->tl("object_addendum", "object_add", "konv_inhalt"), ), ], $tlLoader->tl("object_addendum", "object_add", "acknowledgements") => [ "acknowledgements" => new FieldEntry( dependsOn: ['acknowledgements_md', 'acknowledgements_extern'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "acknowledgements"), explica: $tlLoader->tl("object_addendum", "object_add", "acknowledgements_explica"), ), "acknowledgements_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['acknowledgements', 'acknowledgements_extern'], remark: 'Shall a given acknowledgement be displayed at museum-digital? If acknowledgements is available for an object, acknowledgements_md> and acknowledgements_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'besch_visibility_md'), ), "acknowledgements_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['acknowledgements', 'acknowledgements_md'], remark: 'Shall later exports from museum-digital inlude acknowledgements? If acknowledgements is available for an object, acknowledgements_md> and acknowledgements_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'besch_visibility_extern'), ), ], $tlLoader->tl("object_addendum", "object_add", "reception_notes") => [ "reception_notes" => new FieldEntry( dependsOn: ['reception_notes_md', 'reception_notes_extern'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "reception_notes"), ), "reception_notes_md" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['reception_notes', 'reception_notes_extern'], remark: 'Shall a given note on reception be displayed at museum-digital? If note on receptions is available for an object, note on receptions_md> and note on receptions_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "reception_notes") . ' (visibility)', ), "reception_notes_extern" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ['reception_notes', 'reception_notes_md'], remark: 'Shall later exports from museum-digital inlude note on receptions? If note on receptions is available for an object, note on receptions_md> and note on receptions_extern have to have values too', name_human_readable: $tlLoader->tl("object_addendum", "object_add", "reception_notes") . ' (visibility)', ), ], $tlLoader->tl("basis", "basis", 'administration') => [ "ownership_status" => new FieldEntry( name_human_readable: $tlLoader->tl("basis", "basis", "status"), explica: $tlLoader->tl("object_addendum", "object_add", "status_explica"), ), "owner" => new FieldEntry( name_human_readable: $tlLoader->tl("basis", "basis", "owner"), explica: $tlLoader->tl("object_addendum", "object_add", "owner_explica"), ), "inclusion_when" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "date_of_acquisition"), explica: $tlLoader->tl("object_basis", "object_basis", 'inv_explica') ), "inclusion_kind_of" => new FieldEntry( allowedValues: MDEntryTypesSet::getSortedList($tlLoader), name_human_readable: $tlLoader->tl("object_addendum", "object_add", "date_of_acquisition") . ", " . $tlLoader->tl("object_addendum", "object_add", 'as'), ), "inclusion_who" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "acquirer"), ), "inclusion_where" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "acquisition_place"), ), "registration_first_who" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "first_registered_by"), ), "registration_first_when" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "first_registered_at"), ), ], $tlLoader->tl("object_addendum", "object_add", 'object_history') => [ "owner_previous" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "previous_owner"), explica: $tlLoader->tl("object_addendum", "object_add", 'vorb_inhalt'), ), "object_history" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "object_history"), explica: $tlLoader->tl("object_addendum", "object_add", 'obge_inhalt'), ), "bought_for" => new FieldEntry( dependsOn: ["bought_for_currency"], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "date_of_acquisition") . ", " . $tlLoader->tl("object_addendum", "object_add", 'for'), explica: $tlLoader->tl("object_basis", "object_basis", 'inv_explica') ), "bought_for_currency" => new FieldEntry( allowedValues: $currencies, dependsOn: ["bought_for"], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "date_of_acquisition") . ", " . $tlLoader->tl("object_addendum", "object_add", 'for'), ), ], $tlLoader->tl("object_addendum", "object_add", 'values') => [ "worth_determiner" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "estimated_value_when") . "; " . $tlLoader->tl("object_addendum", "object_add", 'by'), ), "worth_when" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "estimated_value_when"), ), "worth_value" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "estimated_value_when") . "; " . $tlLoader->tl("object_addendum", "object_add", 'at'), ), "worth_unit" => new FieldEntry( allowedValues: $currencies, name_human_readable: $tlLoader->tl("object_addendum", "object_add", "estimated_value_when") . "; Currency", ), "worth_insurance_determiner" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "insurance_value_when") . "; " . $tlLoader->tl("object_addendum", "object_add", 'by'), ), "worth_insurance_when" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "insurance_value_when"), ), "worth_insurance_value" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "insurance_value_when") . "; " . $tlLoader->tl("object_addendum", "object_add", 'at'), ), "worth_insurance_unit" => new FieldEntry( allowedValues: $currencies, name_human_readable: $tlLoader->tl("object_addendum", "object_add", "insurance_value_when") . "; Currency", ), ], $tlLoader->tl("object_addendum", "object_add", 'state') => [ "state" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'condition_short'), explica: $tlLoader->tl("object_addendum", "object_add", 'zust_inhalt'), ), "restauration" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "restauration"), explica: $tlLoader->tl("object_addendum", "object_add", 'rest_inhalt'), ), ], $tlLoader->tl("basis", "basis", 'abode') => [ "abode_actual" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "current_location") . '(' . $tlLoader->tl("basis", "basis", "free_text") . ')', explica: $tlLoader->tl("object_addendum", "object_add", 'aktu_inhalt'), ), "space_name_actual" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "current_location") . ' (controlled)', explica: $tlLoader->tl("object_addendum", "object_add", 'aktu_inhalt'), ), "abode_regular" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "home_location") . '(' . $tlLoader->tl("basis", "basis", "free_text") . ')', explica: $tlLoader->tl("object_addendum", "object_add", 'stan_inhalt'), ), "space_name_regular" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "home_location") . ' (controlled)', explica: $tlLoader->tl("object_addendum", "object_add", 'stan_inhalt'), ), "exhibition" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "exhibition_when_where"), explica: $tlLoader->tl("object_addendum", "object_add", 'aust_inhalt'), ), "on_loan_to" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "momentarily_on_load_at"), explica: $tlLoader->tl("object_addendum", "object_add", 'verl_inhalt'), ), "on_loan_contact" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "contact_person_loan"), explica: $tlLoader->tl("object_addendum", "object_add", 'ansp_inhalt'), ), "on_loan_when" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "on_loan_from_until"), explica: $tlLoader->tl("object_addendum", "object_add", 'vher_inhalt'), ), "on_loan_insurance_value" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "insurance_value_loan"), explica: $tlLoader->tl("object_addendum", "object_add", 'vlei_inhalt'), ), "on_loan_annotation" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "loan_remarks"), explica: $tlLoader->tl("object_addendum", "object_add", 'alei_inhalt'), ), ], $tlLoader->tl("basis", "basis", 'rights') => [ "rights_object" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "copyright"), explica: $tlLoader->tl("object_addendum", "object_add", 'urhe_inhalt'), ), "rights_of_use" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "rights_of_use"), explica: $tlLoader->tl("object_addendum", "object_add", 'nure_inhalt'), ), "rights_annotation" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "rights_remarks"), explica: $tlLoader->tl("object_addendum", "object_add", 'arec_inhalt') ), "rights_metadata_holder" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'metadata_rights_holder'), ), "rights_metadata_license" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'metadata_rights_status'), ), ], $tlLoader->tl("basis", "basis", 'remarks') => [ "remarks_short" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "short_remark"), explica: $tlLoader->tl("object_addendum", "object_add", 'kurz_inhalt'), ), "remarks_long" => new FieldEntry( name_human_readable: $tlLoader->tl("basis", "basis", "remarks"), explica: $tlLoader->tl("object_addendum", "object_add", 'noti_inhalt') ), "images_in_museum" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "images_at_museum"), explica: $tlLoader->tl("object_addendum", "object_add", 'oaim_inhalt') ), "negative_id" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "negative_id"), explica: $tlLoader->tl("object_addendum", "object_add", 'negative_id_explica') ), "documents_in_museum" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "documents_in_the_museum"), explica: $tlLoader->tl("object_addendum", "object_add", 'odim_inhalt') ), "handling_recommendations" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "handling_recommendations"), explica: $tlLoader->tl("object_addendum", "object_add", 'handling_recommendations_explica') ), "shipping_note" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "shipping_note"), explica: $tlLoader->tl("object_addendum", "object_add", 'shipping_note_explica') ), "hazards_note" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "hazards_note"), explica: $tlLoader->tl("object_addendum", "object_add", 'hazards_note_explica') ), "condition_checking_requirements" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "condition_checking_requirements"), explica: $tlLoader->tl("object_addendum", "object_add", 'condition_checking_requirements_explica') ), "installation_note" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "installation_note"), explica: $tlLoader->tl("object_addendum", "object_add", 'installation_note_explica') ), "display_recommendations" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "display_recommendations"), explica: $tlLoader->tl("object_addendum", "object_add", 'display_recommendations_explica') ), "security_requirements" => new FieldEntry( name_human_readable: $tlLoader->tl("object_addendum", "object_add", "security_requirements"), explica: $tlLoader->tl("object_addendum", "object_add", 'security_requirements_explica') ), ], $tlLoader->tl("object_addendum", "object_add", 'acquisition') => [ "acquisition_type" => new FieldEntry( dependsOn: ['acquisition_name', 'acquisition_date'], name_human_readable: $tlLoader->tl("basis", "basis", "type"), explica: $tlLoader->tl("acquisitions", "acquisitions", "type_explica")), "acquisition_name" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_date'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "name"), explica: $tlLoader->tl("acquisitions", "acquisitions", "name_explica")), "acquisition_date" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "date"), explica: $tlLoader->tl("acquisitions", "acquisitions", "date_explica")), "acquisition_source_name" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "source"), explica: $tlLoader->tl("acquisitions", "acquisitions", "source_explica")), "acquisition_source_organization" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date', 'acquisition_source_name'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "source") . ': ' . $tlLoader->tl("contacts", "contacts", "organization"), explica: $tlLoader->tl("contacts", "contacts", "organization_explica")), "acquisition_source_street" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date', 'acquisition_source_name'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "source") . ': ' . $tlLoader->tl("contacts", "contacts", "street"), explica: $tlLoader->tl("contacts", "contacts", "street_explica")), "acquisition_source_zip_code" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date', 'acquisition_source_name'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "source") . ': ' . $tlLoader->tl("contacts", "contacts", "zip_code"), explica: $tlLoader->tl("contacts", "contacts", "zip_code_explica")), "acquisition_source_place" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date', 'acquisition_source_name'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "source") . ': ' . $tlLoader->tl("contacts", "contacts", "place"), explica: $tlLoader->tl("contacts", "contacts", "place_explica")), "acquisition_price" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "price"), explica: $tlLoader->tl("acquisitions", "acquisitions", "price_explica")), "acquisition_price_currency" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "price_currency"), explica: $tlLoader->tl("acquisitions", "acquisitions", "price_currency_explica")), "acquisition_done_by" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "done_by"), explica: $tlLoader->tl("acquisitions", "acquisitions", "done_by_explica")), "acquisition_note" => new FieldEntry( dependsOn: ['acquisition_type', 'acquisition_name', 'acquisition_date'], name_human_readable: $tlLoader->tl("acquisitions", "acquisitions", "note"), explica: $tlLoader->tl("acquisitions", "acquisitions", "note_explica")), ], $tlLoader->tl("object_addendum", "object_add", 'deaccession') => [ "deaccession_approved_by" => new FieldEntry( dependsOn: ['deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "deaccession_approved_by"), explica: $tlLoader->tl("object_addendum", "object_add", "deaccession_approved_by_explica")), "deaccession_approved_date" => new FieldEntry( dependsOn: ['deaccession_approved_by'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "deaccession_approved_date"), explica: $tlLoader->tl("object_addendum", "object_add", "deaccession_approved_date_explica")), "disposal_recipient" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_recipient"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_recipient_explica")), "disposal_recipient_new_id" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date_new_id'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_recipient_new_id"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_recipient_new_id_explica")), "disposal_reason" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_reason"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_reason_explica")), "disposal_method" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_method"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_method_explica")), "disposal_date" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_date"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_date_explica")), "deaccession_date" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "deaccession_date"), explica: $tlLoader->tl("object_addendum", "object_add", "deaccession_date_explica")), "disposal_note" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_note"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_note_explica")), "disposal_cost_value" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_cost_value"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_cost_value_explica")), "disposal_cost_currency" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_cost_currency"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_cost_currency_explica")), "disposal_price_value" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_price_value"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_price_value_explica")), "disposal_price_currency" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_price_currency"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_price_currency_explica")), "disposal_conditions" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_conditions"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_conditions_explica")), "disposal_authorized_by" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_authorized_by"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_authorized_by_explica")), "disposal_authorized_date" => new FieldEntry( dependsOn: ['deaccession_approved_by', 'deaccession_approved_date'], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "disposal_authorized_date"), explica: $tlLoader->tl("object_addendum", "object_add", "disposal_authorized_date_explica")), ], $tlLoader->tl("overview", "overview", 'links') => [], $tlLoader->tl("overview", "overview", 'links') . ": " . $tlLoader->tl("basis", "basis", 'single_object') => [], "translations" => [], $tlLoader->tl("basis", "basis", 'literature') => [], $tlLoader->tl("basis", "basis", 'objectgroup') => [], $tlLoader->tl("overview", "overview", 'tags') => [], $tlLoader->tl("eventtype_name", "eventname", "22") => [], $tlLoader->tl("eventtype_name", "eventname", "23") => [], $tlLoader->tl("eventtype_name", "eventname", "24") => [], $tlLoader->tl("overview", "overview", 'images') => [], $tlLoader->tl("basis", "basis", 'resource') => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "1") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "2") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "3") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "4") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "5") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "36") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "6") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "7") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "8") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "9") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "10") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "11") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "12") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "13") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "14") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "15") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "16") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "19") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "20") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "21") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "25") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "26") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "27") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "28") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "29") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "30") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "31") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "32") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "33") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "34") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "35") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "37") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "38") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "39") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "40") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "41") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "42") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "43") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "44") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "45") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "46") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "47") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "48") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "49") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "50") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "51") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "52") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "53") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "54") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "55") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "56") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "57") => [], $tlLoader->tl("basis", "basis", 'event') . ": " . $tlLoader->tl("eventtype_name", "eventname", "58") => [], $tlLoader->tl("basis", "basis", 'exhibitions') => [], $tlLoader->tl("object_addendum", "object_add", 'markings') => [], $tlLoader->tl("object_addendum", "object_add", 'additional_numbers') => [], ]; /* * Repeat fields */ for ($i = 1; $i <= 2 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("overview", "overview", 'links')] = array_merge( $availableFields[$tlLoader->tl("overview", "overview", 'links')], [ "link_url{$i}" => new FieldEntry( dependsOn: ["link_show{$i}"], name_human_readable: $tlLoader->tl("link", "link", 'url'), explica: $tlLoader->tl("link", "link", 'linklink_explica'), ), "link_show{$i}" => new FieldEntry( dependsOn: ["link_url{$i}"], name_human_readable: $tlLoader->tl("link", "link", 'text'), explica: $tlLoader->tl("link", "link", 'linkname_explica'), ) ] ); } for ($i = 1; $i <= 2 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("overview", "overview", 'links') . ": " . $tlLoader->tl("basis", "basis", 'single_object')] = array_merge( $availableFields[$tlLoader->tl("overview", "overview", 'links') . ": " . $tlLoader->tl("basis", "basis", 'single_object')], [ "linked_obj_invno{$i}" => new FieldEntry( dependsOn: ["linked_obj_show{$i}"], name_human_readable: "Inventarnummer des verknüpften Objektes", ), "linked_obj_show{$i}" => new FieldEntry( dependsOn: ["linked_obj_invno{$i}"], name_human_readable: "Verknüpftes Objekt: Text", ) ] ); } for ($i = 1; $i <= 2 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields["translations"] = array_merge( $availableFields["translations"], [ "obj_trans_language{$i}" => new FieldEntry( dependsOn: ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"], name_human_readable: "Translation language", ), "obj_trans_object_type{$i}" => new FieldEntry( dependsOn: ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"], 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}" => new FieldEntry( dependsOn: ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"], 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}" => new FieldEntry( dependsOn: ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"], 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}" => new FieldEntry( dependsOn: ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"], name_human_readable: $tlLoader->tl("object_basis", "object_basis", 'mattech'), explica: $tlLoader->tl("object_basis", "object_basis", 'mattech_explica') ), "obj_trans_object_dimensions{$i}" => new FieldEntry( dependsOn: ["obj_trans_language{$i}", "obj_trans_object_type{$i}", "obj_trans_object_title{$i}", "obj_trans_object_description{$i}"], name_human_readable: $tlLoader->tl("object_basis", "object_basis", 'measurements'), explica: $tlLoader->tl("object_basis", "object_basis", 'ausmass_explica') ), ] ); } for ($i = 1; $i <= 5 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("basis", "basis", 'literature')] = array_merge( $availableFields[$tlLoader->tl("basis", "basis", 'literature')], [ "literature_type" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl('basis', 'basis', 'literature') . ': ' . $tlLoader->tl('basis', 'basis', 'type'), explica: $tlLoader->tl("literature", "literature", 'autor_explica') ), "literature_author" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'author'), explica: $tlLoader->tl("literature", "literature", 'autor_explica') ), "literature_year" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'year'), explica: $tlLoader->tl("literature", "literature", 'jahr_explica') ), "literature_title" . $i => new FieldEntry( name_human_readable: $tlLoader->tl("literature", "literature", 'title'), explica: $tlLoader->tl("literature", "literature", 'titel_explica') ), "literature_place" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'place'), explica: $tlLoader->tl("literature", "literature", 'ort_explica') ), "literature_editor" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'editor'), explica: $tlLoader->tl("literature", "literature", 'editor_explica') ), "literature_volume" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'volume'), explica: $tlLoader->tl("literature", "literature", 'volume_explica') ), "literature_issue" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'issue'), explica: $tlLoader->tl("literature", "literature", 'issue_explica') ), "literature_series" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'series'), explica: $tlLoader->tl("literature", "literature", 'series_explica') ), "literature_abbreviation" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'abbr'), explica: $tlLoader->tl("literature", "literature", 'abbr_explica') ), "literature_gnd" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'gnd'), explica: $tlLoader->tl("literature", "literature", 'gnd_explica') ), "literature_isbn" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'isbn'), explica: $tlLoader->tl("literature", "literature", 'isbn_explica') ), "literature_issn" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'issn'), explica: $tlLoader->tl("literature", "literature", 'issn_explica') ), "literature_issn" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'issn'), explica: $tlLoader->tl("literature", "literature", 'issn_explica') ), "literature_signature" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'id_in_museum'), explica: $tlLoader->tl("literature", "literature", 'id_in_museum_explica') ), "literature_online" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'online'), explica: $tlLoader->tl("literature", "literature", 'online_explica') ), "literature_annotation" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'annotation'), explica: $tlLoader->tl("literature", "literature", 'annotation_explica') ), "literature_inlit" . $i => new FieldEntry( dependsOn: ["literature_title" . $i], name_human_readable: $tlLoader->tl("literature", "literature", 'where_inside'), explica: $tlLoader->tl("literature", "literature", 'where_in_explica') ), ] ); } // Collection names for ($i = 1; $i <= 2 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl('csvxml-overview', 'csvxml_overview', 'object_base_data')]["collection_name{$i}"] = new FieldEntry( remark: 'Use if object belongs to a collection. If collection is already in museum-digital, please use exactly the same name', name_human_readable: $tlLoader->tl("collection", "collection", 'name'), explica: $tlLoader->tl("collection", "collection", 'samnam_explica'), ); } for ($i = 1; $i <= 5 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("basis", "basis", 'objectgroup')] = array_merge( $availableFields[$tlLoader->tl("basis", "basis", 'objectgroup')], [ "object_group_name{$i}" => new FieldEntry( name_human_readable: $tlLoader->tl("link", "link", 'series_name'), explica: $tlLoader->tl("link", "link", 'seriename_explica'), ), "object_group_description{$i}" => new FieldEntry( dependsOn: ["object_group_name{$i}"], name_human_readable: $tlLoader->tl("link", "link", 'series_description'), explica: $tlLoader->tl("link", "link", 'series_description'), ), "object_group_show{$i}" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ["object_group_name{$i}"], name_human_readable: $tlLoader->tl("link", "link", 'hide_objectgroup'), ), ] ); } for ($i = 1; $i <= 10 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("overview", "overview", 'tags')]["tag" . $i] = new FieldEntry( name_human_readable: $tlLoader->tl("overview", "overview", 'tags'), ); $availableFields[$tlLoader->tl("overview", "overview", 'tags')]["tag_relation_type" . $i] = new FieldEntry( allowedValues: MDTagRelationType::caseNames(), dependsOn: ["tag" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", 'tag_relation_type'), explica: $tlLoader->tl("object_addendum", "object_add", 'tag_relation_type_explica'), ); $availableFields[$tlLoader->tl("overview", "overview", 'tags')]["tag_wikidata" . $i] = new FieldEntry( dependsOn: ["tag" . $i], name_human_readable: $tlLoader->tl("overview", "overview", 'tags') . " (Wikidata)", ); $availableFields[$tlLoader->tl("overview", "overview", 'tags')]["tag_gnd" . $i] = new FieldEntry( dependsOn: ["tag" . $i], name_human_readable: $tlLoader->tl("overview", "overview", 'tags') . " (GND)", ); $availableFields[$tlLoader->tl("overview", "overview", 'tags')]["tag_related_identifier_type" . $i] = new FieldEntry( dependsOn: ["tag" . $i, "tag_related_identifier" . $i], name_human_readable: $tlLoader->tl("overview", "overview", 'tags') . " (related identifier type)", allowedValues: MDNodaRepositoriesSet::REPOSITORIES_TAG, ); $availableFields[$tlLoader->tl("overview", "overview", 'tags')]["tag_related_identifier" . $i] = new FieldEntry( dependsOn: ["tag" . $i, "tag_related_identifier_type" . $i], name_human_readable: $tlLoader->tl("overview", "overview", 'tags') . " (related identifier)", ); } for ($i = 1; $i <= self::EVENT_MULTIPLIER * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("eventtype_name", "eventname", "22")] = array_merge( $availableFields[$tlLoader->tl("eventtype_name", "eventname", "22")], [ "related_place{$i}" => new FieldEntry( name_human_readable: $tlLoader->tl("event", "event", 'where'), ), ] ); } for ($i = 1; $i <= self::EVENT_MULTIPLIER * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("eventtype_name", "eventname", "23")] = array_merge( $availableFields[$tlLoader->tl("eventtype_name", "eventname", "23")], [ "related_actor{$i}" => new FieldEntry( name_human_readable: $tlLoader->tl("event", "event", 'who'), ), "related_actor_description{$i}" => new FieldEntry( dependsOn: ["related_actor{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'who') . " [" . $tlLoader->tl('actor', 'actor', 'short_description') . "]", ), "related_actor_gnd{$i}" => new FieldEntry( dependsOn: ["related_actor{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'who') . " (" . $tlLoader->tl("event", "event", 'gnd') . ")", ), "related_actor_wikidata{$i}" => new FieldEntry( dependsOn: ["related_actor{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'who') . " (Wikidata)", ), ] ); } for ($i = 1; $i <= self::EVENT_MULTIPLIER * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("eventtype_name", "eventname", "24")] = array_merge( $availableFields[$tlLoader->tl("eventtype_name", "eventname", "24")], [ "related_time{$i}" => new FieldEntry( name_human_readable: $tlLoader->tl("event", "event", 'when'), ), ] ); } for ($i = 1; $i <= 10 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl('overview', 'overview', 'images')] = array_merge( $availableFields[$tlLoader->tl('overview', 'overview', 'images')], [ "image_name{$i}" => new FieldEntry( dependsOn: [ "image_owner{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}" ], name_human_readable: $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'image_filename'), ), "image_description{$i}" => new FieldEntry( dependsOn: [ "image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}" ], name_human_readable: $tlLoader->tl('image_incha', 'image_incha', 'image_description'), explica: $tlLoader->tl('image_incha', 'image_incha', 'bildbesch_explica'), ), "image_owner{$i}" => new FieldEntry( dependsOn: [ "image_name{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}" ], name_human_readable: $tlLoader->tl('image_incha', 'image_incha', 'image_rightsholder'), explica: $tlLoader->tl('image_incha', 'image_incha', 'owner_explica'), ), "image_creator{$i}" => new FieldEntry( dependsOn: [ "image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}" ], name_human_readable: $tlLoader->tl('image_incha', 'image_incha', 'photographer'), explica: $tlLoader->tl('image_incha', 'image_incha', 'creator_explica'), ), "image_rights{$i}" => new FieldEntry( allowedValues: array_keys(MDLicensesSet::AVAILABLE_LICENSES), dependsOn: [ "image_name{$i}", "image_owner{$i}", "image_visible{$i}", "image_main{$i}" ], name_human_readable: $tlLoader->tl('image_incha', 'image_incha', 'rights_status'), explica: $tlLoader->tl('image_incha', 'image_incha', 'rechte_explica'), ), "image_visible{$i}" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: [ "image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_main{$i}" ], name_human_readable: $tlLoader->tl("basis", "basis", 'image') . ": " . $tlLoader->tl("object", "objekt", 'visibility'), ), "image_main{$i}" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: [ "image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_visible{$i}" ], name_human_readable: $tlLoader->tl("object", "object", 'main_image'), ), "image_master_filename{$i}" => new FieldEntry( dependsOn: [ "image_name{$i}", "image_owner{$i}", "image_rights{$i}", "image_visible{$i}", "image_main{$i}" ], name_human_readable: $tlLoader->tl('image_incha', 'image_incha', 'master_filename'), explica: $tlLoader->tl('image_incha', 'image_incha', 'master_filename_explica'), ), ] ); } for ($i = 1; $i <= 10 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("basis", "basis", 'resource')] = array_merge( $availableFields[$tlLoader->tl("basis", "basis", 'resource')], [ "resource_media_type{$i}" => new FieldEntry( 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') . ', ' . $tlLoader->tl("sources", "tlSources", 'type'), ), "resource_fileformat{$i}" => new FieldEntry( 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'), ), "resource_location{$i}" => new FieldEntry( 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: $tlLoader->tl("resource_incha", "resource_incha", 'image_filename'), ), "resource_name{$i}" => new FieldEntry( 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: $tlLoader->tl("resource_incha", "resource_incha", 'resource_name'), explica: $tlLoader->tl("resource_incha", "resource_incha", 'bildname_explica'), ), "resource_description{$i}" => new FieldEntry( dependsOn: [ "resource_media_type{$i}", "resource_fileformat{$i}", "resource_location{$i}", "resource_name{$i}", "resource_owner{$i}", "resource_rights{$i}", "resource_visible{$i}", ], remark: 'Use if you want to describe the resource. Might be left empty.', name_human_readable: $tlLoader->tl("resource_incha", "resource_incha", 'resource_description'), explica: $tlLoader->tl("resource_incha", "resource_incha", 'bildbesch_explica'), ), "resource_owner{$i}" => new FieldEntry( 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: $tlLoader->tl("resource_incha", "resource_incha", 'resource_rightsholder'), explica: $tlLoader->tl("resource_incha", "resource_incha", 'owner_explica'), ), "resource_creator{$i}" => new FieldEntry( 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: $tlLoader->tl("resource_incha", "resource_incha", 'creator'), explica: $tlLoader->tl("resource_incha", "resource_incha", 'creator_explica') ), "resource_rights{$i}" => new FieldEntry( 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}", ], name_human_readable: $tlLoader->tl("resource_incha", "resource_incha", 'rights_status'), explica: $tlLoader->tl("resource_incha", "resource_incha", 'rechte_explica'), ), "resource_visible{$i}" => new FieldEntry( 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') . ": " . $tlLoader->tl("object", "objekt", 'visibility'), ), ] ); } for ($i = 1; $i <= self::EVENT_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $tlLoader->tl("eventtype_name", "eventname", "5")] = array_merge( $availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $tlLoader->tl("eventtype_name", "eventname", "5")], [ "was_depicted_who{$i}" => new FieldEntry( dependsOn: ["was_depicted_who_sure{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'who'), ), "was_depicted_who_sure{$i}" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ["was_depicted_who{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'who') . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", ), "was_depicted_who_wikidata{$i}" => new FieldEntry( dependsOn: ["was_depicted_who{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'who') . " (Wikidata)", ), 'was_depicted_who_description' . $i => new FieldEntry(name_human_readable: $tlLoader->tl("event", "event", 'who') . " [" . $tlLoader->tl('actor', 'actor', 'short_description') . "]", dependsOn: ['was_depicted_who' . $i]), ] ); } for ($i = 1; $i <= self::EVENT_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $tlLoader->tl("eventtype_name", "eventname", "36")] = array_merge( $availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $tlLoader->tl("eventtype_name", "eventname", "36")], [ "was_depicted_place{$i}" => new FieldEntry( dependsOn: ["was_depicted_place_sure{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'where'), ), "was_depicted_place_sure{$i}" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ["was_depicted_place{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'where') . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", ), "was_depicted_place_wikidata{$i}" => new FieldEntry( dependsOn: ["was_depicted_place{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'where') . " (Wikidata)", ), ] ); } for ($i = 1; $i <= self::EVENT_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $tlLoader->tl("eventtype_name", "eventname", "52")] = array_merge( $availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $tlLoader->tl("eventtype_name", "eventname", "52")], [ "emerged_place{$i}" => new FieldEntry( dependsOn: ["emerged_place_sure{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'where'), ), "emerged_place_sure{$i}" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ["emerged_place{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'where') . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", ), "emerged_place_wikidata{$i}" => new FieldEntry( dependsOn: ["emerged_place{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'where') . " (Wikidata)", ), "emerged_when{$i}" => new FieldEntry( dependsOn: ["emerged_when_sure{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'when'), ), "emerged_when_sure{$i}" => new FieldEntry( allowedValues: ["y", "n"], dependsOn: ["emerged_when{$i}"], name_human_readable: $tlLoader->tl("event", "event", 'when') . " [" . $tlLoader->tl('csvxml-overview', 'csvxml_overview', 'certainty') . "]", ), ] ); } $eventNamesByType = [ 1 => "production", 2 => "finding", 3 => "publication", 4 => "template_creation", 6 => "was_used", 7 => "written", 8 => "collected", 9 => "painted", 10 => "taken", 11 => "received", 12 => "printing_plate_produced", 13 => "sent", 14 => "issued", 15 => "signed", 16 => "type_described", 19 => "drawn", 20 => "copied", 21 => "has_lived", 25 => "commissioned", 26 => "printed", 27 => "spoken", 28 => "sung", 29 => "decor_designed", 30 => "form_designed", 31 => "modelled", 32 => "signed_artwork", 33 => "was_mentioned", 34 => "buried", 35 => "intellectual_creation", // Was depicted 37 => "painted_on", 38 => "illustrated", 39 => "assembled", 40 => "auctioned", 41 => "bought_event", 42 => "owned_event", 43 => "sold_event", 44 => "restorated", 45 => "damaged", 46 => "destroyed", 47 => "lost", 48 => "edited", 49 => "gifted_donated", 50 => "bequeathed", 51 => 'subject_of', 53 => 'production_of_material', 54 => 'mentioned_place', 55 => 'mentioned_time', 56 => 'received_ownership', 57 => 'transferred_ownership', 58 => 'object_modified', ]; foreach ($eventNamesByType as $eventType => $eventIdentifierCsvxml) { for ($i = 1; $i <= self::EVENT_MULTIPLIER * self::GENERAL_FIELD_MULTIPLIER; $i++) { $eventTypeName = $tlLoader->tl("eventtype_name", "eventname", "$eventType"); $availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventTypeName] = array_merge( $availableFields[$tlLoader->tl("basis", "basis", 'event') . ': ' . $eventTypeName], $this->_generateGenericFullEvent($tlLoader, $eventType, $eventTypeName, $eventIdentifierCsvxml, $i) ); } } for ($i = 1; $i <= 5 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("basis", "basis", "exhibitions")]["exhibition_name" . $i] = new FieldEntry( name_human_readable: $tlLoader->tl("basis", "basis", "exhibitions"), ); $availableFields[$tlLoader->tl("basis", "basis", "exhibitions")]["exhibition_description" . $i] = new FieldEntry( dependsOn: ["exhibition_name" . $i], name_human_readable: $tlLoader->tl("basis", "basis", "exhibitions"), ); $availableFields[$tlLoader->tl("basis", "basis", "exhibitions")]["exhibition_start" . $i] = new FieldEntry( dependsOn: ["exhibition_name" . $i], name_human_readable: $tlLoader->tl("basis", "basis", "exhibitions"), ); $availableFields[$tlLoader->tl("basis", "basis", "exhibitions")]["exhibition_end" . $i] = new FieldEntry( dependsOn: ["exhibition_name" . $i], name_human_readable: $tlLoader->tl("basis", "basis", "exhibitions"), ); } for ($i = 1; $i <= 2 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("object_addendum", "object_add", "markings")]["marking_type" . $i] = new FieldEntry( dependsOn: ["marking_position" . $i, "marking_text" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "markings") . ": Type", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "markings")]["marking_position" . $i] = new FieldEntry( dependsOn: ["marking_type" . $i, "marking_text" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "markings") . ": Position", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "markings")]["marking_width_mm" . $i] = new FieldEntry( dependsOn: ["marking_type" . $i, "marking_position" . $i, "marking_text" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "markings") . ": Width (mm)", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "markings")]["marking_height_mm" . $i] = new FieldEntry( dependsOn: ["marking_type" . $i, "marking_position" . $i, "marking_text" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "markings") . ": Height (mm)", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "markings")]["marking_text" . $i] = new FieldEntry( dependsOn: ["marking_type" . $i, "marking_position" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "markings") . ": Text", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "markings")]["marking_note" . $i] = new FieldEntry( dependsOn: ["marking_type" . $i, "marking_position" . $i, "marking_text" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "markings") . ": Note", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "markings")]["marking_time" . $i] = new FieldEntry( dependsOn: ["marking_type" . $i, "marking_position" . $i, "marking_text" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "markings") . ": Time", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "markings")]["marking_persinst" . $i] = new FieldEntry( dependsOn: ["marking_type" . $i, "marking_position" . $i, "marking_text" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "markings") . ": Actor", ); } for ($i = 1; $i <= 2 * self::GENERAL_FIELD_MULTIPLIER; $i++) { $availableFields[$tlLoader->tl("object_addendum", "object_add", "additional_numbers")]["additional_number" . $i] = new FieldEntry( dependsOn: ["additional_number_type" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "additional_numbers"), ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "additional_numbers")]["additional_number_type" . $i] = new FieldEntry( dependsOn: ["additional_number" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "additional_numbers") . ": Type", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "additional_numbers")]["additional_number_note" . $i] = new FieldEntry( dependsOn: ["additional_number" . $i, "additional_number_type" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "additional_numbers") . ": Note", ); $availableFields[$tlLoader->tl("object_addendum", "object_add", "additional_numbers")]["additional_number_public" . $i] = new FieldEntry( dependsOn: ["additional_number" . $i, "additional_number_type" . $i], name_human_readable: $tlLoader->tl("object_addendum", "object_add", "additional_numbers") . ": public", allowedValues: ["y", "n"], ); } $this->_availableFields = $availableFields; } }