geoblacklight_admin 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.editorconfig +18 -0
- data/.gitignore +75 -0
- data/.standard.yml +4 -0
- data/Gemfile +59 -0
- data/LICENSE +21 -0
- data/README.md +84 -0
- data/Rakefile +72 -0
- data/app/assets/images/.keep +0 -0
- data/app/assets/images/aerial_photo.jpg +0 -0
- data/app/assets/images/archive-solid.svg +1 -0
- data/app/assets/images/bookmark-regular.svg +1 -0
- data/app/assets/images/bookmark-solid.svg +1 -0
- data/app/assets/images/btaa-logo.jpg +0 -0
- data/app/assets/images/cloud-download-alt-solid.svg +1 -0
- data/app/assets/images/file-import-solid.svg +1 -0
- data/app/assets/images/trash-alt-solid.svg +1 -0
- data/app/assets/javascripts/geoblacklight_admin/chosen.js +4 -0
- data/app/assets/javascripts/geoblacklight_admin/date_range_picker.js +173 -0
- data/app/assets/javascripts/geoblacklight_admin/datepicker.js +22 -0
- data/app/assets/javascripts/geoblacklight_admin/elements.js +38 -0
- data/app/assets/javascripts/geoblacklight_admin/exports.js +3 -0
- data/app/assets/javascripts/geoblacklight_admin/fields.js +11 -0
- data/app/assets/javascripts/geoblacklight_admin/geoblacklight_admin.js +2 -0
- data/app/assets/javascripts/geoblacklight_admin/inputmask.js +4 -0
- data/app/assets/javascripts/geoblacklight_admin/locale.js +5 -0
- data/app/assets/javascripts/geoblacklight_admin/sortable.js +2544 -0
- data/app/assets/javascripts/geoblacklight_admin/tooltips.js +3 -0
- data/app/assets/javascripts/geoblacklight_admin/truncate.js +4 -0
- data/app/assets/javascripts/geoblacklight_admin.js +40 -0
- data/app/assets/stylesheets/geoblacklight_admin/_core.scss +47 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_autocomplete.scss +32 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_blazer.scss +3 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_code.scss +3 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_datepicker.scss +477 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_elements.scss +3 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_forms.scss +28 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_icons.scss +15 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_nav.scss +9 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_tables.scss +4 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_toasts.scss +7 -0
- data/app/assets/stylesheets/geoblacklight_admin/modules/_visibility.scss +3 -0
- data/app/assets/stylesheets/geoblacklight_admin/settings/_variables.scss +1 -0
- data/app/channels/export_channel.rb +12 -0
- data/app/controllers/admin/admin_controller.rb +16 -0
- data/app/controllers/admin/advanced_search_controller.rb +365 -0
- data/app/controllers/admin/api_controller.rb +386 -0
- data/app/controllers/admin/bookmarks_controller.rb +68 -0
- data/app/controllers/admin/bulk_actions_controller.rb +94 -0
- data/app/controllers/admin/concerns/.keep +0 -0
- data/app/controllers/admin/concerns/upload_util.rb +8 -0
- data/app/controllers/admin/document_accesses_controller.rb +125 -0
- data/app/controllers/admin/document_assets_controller.rb +198 -0
- data/app/controllers/admin/document_downloads_controller.rb +127 -0
- data/app/controllers/admin/documents_controller.rb +219 -0
- data/app/controllers/admin/elements_controller.rb +81 -0
- data/app/controllers/admin/form_elements_controller.rb +81 -0
- data/app/controllers/admin/ids_controller.rb +379 -0
- data/app/controllers/admin/import_documents_controller.rb +18 -0
- data/app/controllers/admin/imports_controller.rb +105 -0
- data/app/controllers/admin/mappings_controller.rb +95 -0
- data/app/controllers/admin/notifications_controller.rb +51 -0
- data/app/controllers/admin/search_controller.rb +10 -0
- data/app/controllers/admin/users_controller.rb +10 -0
- data/app/helpers/bulk_actions_helper.rb +9 -0
- data/app/helpers/document_helper.rb +60 -0
- data/app/helpers/form_input_helper.rb +73 -0
- data/app/helpers/geoblacklight_admin_helper.rb +118 -0
- data/app/helpers/import_documents_helper.rb +5 -0
- data/app/helpers/mappings_helper.rb +27 -0
- data/app/indexers/document_indexer.rb +34 -0
- data/app/jobs/bulk_action_revert_document_job.rb +49 -0
- data/app/jobs/bulk_action_revert_job.rb +25 -0
- data/app/jobs/bulk_action_run_document_job.rb +42 -0
- data/app/jobs/bulk_action_run_job.rb +27 -0
- data/app/jobs/export_job.rb +72 -0
- data/app/jobs/export_json_job.rb +120 -0
- data/app/jobs/import_document_job.rb +25 -0
- data/app/jobs/import_run_job.rb +33 -0
- data/app/models/active_storage_attachment.rb +5 -0
- data/app/models/active_storage_blob.rb +5 -0
- data/app/models/api_search_builder.rb +12 -0
- data/app/models/application_record.rb +6 -0
- data/app/models/blacklight_api.rb +93 -0
- data/app/models/blacklight_api_facets.rb +15 -0
- data/app/models/blacklight_api_ids.rb +103 -0
- data/app/models/bookmark.rb +17 -0
- data/app/models/bulk_action.rb +88 -0
- data/app/models/bulk_action_document.rb +22 -0
- data/app/models/bulk_action_document_state_machine.rb +16 -0
- data/app/models/bulk_action_document_transition.rb +19 -0
- data/app/models/bulk_action_state_machine.rb +16 -0
- data/app/models/bulk_action_transition.rb +26 -0
- data/app/models/concerns/.keep +0 -0
- data/app/models/document/bbox_validator.rb +70 -0
- data/app/models/document/controlled_lists.rb +104 -0
- data/app/models/document/date_range_validator.rb +63 -0
- data/app/models/document/geom_validator.rb +117 -0
- data/app/models/document/reference.rb +107 -0
- data/app/models/document.rb +264 -0
- data/app/models/document_access.rb +35 -0
- data/app/models/document_download.rb +35 -0
- data/app/models/document_state_machine.rb +14 -0
- data/app/models/document_transition.rb +26 -0
- data/app/models/element.rb +90 -0
- data/app/models/form_control.rb +2 -0
- data/app/models/form_element.rb +19 -0
- data/app/models/form_feature.rb +2 -0
- data/app/models/form_group.rb +2 -0
- data/app/models/form_header.rb +2 -0
- data/app/models/geoblacklight_admin/field_mappings_btaa_aardvark.rb +379 -0
- data/app/models/geoblacklight_admin/field_mappings_gblv1.rb +344 -0
- data/app/models/geoblacklight_admin/iso_language_codes.rb +515 -0
- data/app/models/geoblacklight_admin/schema.rb +194 -0
- data/app/models/geoblacklight_admin.rb +3 -0
- data/app/models/import/csv_duplicates_validator.rb +36 -0
- data/app/models/import/csv_header_validator.rb +24 -0
- data/app/models/import.rb +186 -0
- data/app/models/import_btaa.rb +91 -0
- data/app/models/import_btaa_aardvark.rb +109 -0
- data/app/models/import_document.rb +34 -0
- data/app/models/import_document_state_machine.rb +12 -0
- data/app/models/import_document_transition.rb +19 -0
- data/app/models/import_gblv1.rb +92 -0
- data/app/models/import_state_machine.rb +16 -0
- data/app/models/import_transition.rb +26 -0
- data/app/models/mapping.rb +10 -0
- data/app/models/notification.rb +9 -0
- data/app/models/user.rb +26 -0
- data/app/notifications/export_notification.rb +30 -0
- data/app/services/export_csv_document_access_links_service.rb +47 -0
- data/app/services/export_csv_document_downloads_service.rb +47 -0
- data/app/services/export_csv_service.rb +44 -0
- data/app/services/export_json_service.rb +35 -0
- data/app/services/zip_file_generator.rb +56 -0
- data/app/views/admin/advanced_search/facets.json.jbuilder +80 -0
- data/app/views/admin/advanced_search/index.json.jbuilder +90 -0
- data/app/views/admin/api/_field.json.jbuilder +10 -0
- data/app/views/admin/api/fetch.json.jbuilder +86 -0
- data/app/views/admin/api/index.json.jbuilder +90 -0
- data/app/views/admin/bookmarks/_bookmark.json.jbuilder +4 -0
- data/app/views/admin/bookmarks/create.js.erb +7 -0
- data/app/views/admin/bookmarks/destroy.js.erb +7 -0
- data/app/views/admin/bookmarks/index.html.erb +21 -0
- data/app/views/admin/bookmarks/index.json.jbuilder +3 -0
- data/app/views/admin/bulk_actions/_bulk_action.json.jbuilder +4 -0
- data/app/views/admin/bulk_actions/_form.html.erb +17 -0
- data/app/views/admin/bulk_actions/edit.html.erb +6 -0
- data/app/views/admin/bulk_actions/index.html.erb +54 -0
- data/app/views/admin/bulk_actions/index.json.jbuilder +3 -0
- data/app/views/admin/bulk_actions/new.html.erb +5 -0
- data/app/views/admin/bulk_actions/show.html.erb +100 -0
- data/app/views/admin/bulk_actions/show.json.jbuilder +3 -0
- data/app/views/admin/devise/confirmations/new.html.erb +16 -0
- data/app/views/admin/devise/invitations/edit.html.erb +15 -0
- data/app/views/admin/devise/invitations/new.html.erb +15 -0
- data/app/views/admin/devise/mailer/invitation_instructions.html.erb +11 -0
- data/app/views/admin/devise/mailer/invitation_instructions.text.erb +11 -0
- data/app/views/admin/devise/passwords/edit.html.erb +26 -0
- data/app/views/admin/devise/passwords/new.html.erb +16 -0
- data/app/views/admin/devise/registrations/edit.html.erb +35 -0
- data/app/views/admin/devise/registrations/new.html.erb +30 -0
- data/app/views/admin/devise/sessions/new.html.erb +28 -0
- data/app/views/admin/devise/shared/_links.html.erb +27 -0
- data/app/views/admin/devise/unlocks/new.html.erb +16 -0
- data/app/views/admin/document_accesses/_document_access.json.jbuilder +4 -0
- data/app/views/admin/document_accesses/_form.html.erb +17 -0
- data/app/views/admin/document_accesses/destroy_all.html.erb +70 -0
- data/app/views/admin/document_accesses/edit.html.erb +5 -0
- data/app/views/admin/document_accesses/import.html.erb +70 -0
- data/app/views/admin/document_accesses/index.html.erb +74 -0
- data/app/views/admin/document_accesses/index.json.jbuilder +3 -0
- data/app/views/admin/document_accesses/new.html.erb +6 -0
- data/app/views/admin/document_accesses/show.html.erb +19 -0
- data/app/views/admin/document_accesses/show.json.jbuilder +3 -0
- data/app/views/admin/document_assets/display_attach_form.html.erb +44 -0
- data/app/views/admin/document_assets/index.html.erb +65 -0
- data/app/views/admin/document_downloads/_document_download.json.jbuilder +4 -0
- data/app/views/admin/document_downloads/_form.html.erb +15 -0
- data/app/views/admin/document_downloads/destroy_all.html.erb +70 -0
- data/app/views/admin/document_downloads/edit.html.erb +6 -0
- data/app/views/admin/document_downloads/import.html.erb +74 -0
- data/app/views/admin/document_downloads/index.html.erb +70 -0
- data/app/views/admin/document_downloads/index.json.jbuilder +3 -0
- data/app/views/admin/document_downloads/new.html.erb +5 -0
- data/app/views/admin/document_downloads/show.html.erb +24 -0
- data/app/views/admin/document_downloads/show.json.jbuilder +3 -0
- data/app/views/admin/documents/_document.html.erb +29 -0
- data/app/views/admin/documents/_document_bookmark.html.erb +17 -0
- data/app/views/admin/documents/_document_fields.html.erb +24 -0
- data/app/views/admin/documents/_form.html.erb +49 -0
- data/app/views/admin/documents/_form_control.html.erb +86 -0
- data/app/views/admin/documents/_form_group.html.erb +1 -0
- data/app/views/admin/documents/_form_header.html.erb +1 -0
- data/app/views/admin/documents/_form_nav.html.erb +21 -0
- data/app/views/admin/documents/_json_aardvark.jbuilder +47 -0
- data/app/views/admin/documents/_json_btaa_aardvark.jbuilder +16 -0
- data/app/views/admin/documents/_json_gbl_v1.jbuilder +32 -0
- data/app/views/admin/documents/_result_facets.html.erb +35 -0
- data/app/views/admin/documents/_result_pagination.html.erb +21 -0
- data/app/views/admin/documents/_result_selected_options.html.erb +54 -0
- data/app/views/admin/documents/_result_selection_options.html.erb +10 -0
- data/app/views/admin/documents/_result_toggle.html.erb +13 -0
- data/app/views/admin/documents/edit.html.erb +7 -0
- data/app/views/admin/documents/features/_assets.html.erb +3 -0
- data/app/views/admin/documents/features/_institutional_access_links.html.erb +3 -0
- data/app/views/admin/documents/features/_multiple_download_links.html.erb +27 -0
- data/app/views/admin/documents/fetch.json_aardvark.jbuilder +9 -0
- data/app/views/admin/documents/fetch.json_btaa_aardvark.jbuilder +9 -0
- data/app/views/admin/documents/fetch.json_gbl_v1.jbuilder +9 -0
- data/app/views/admin/documents/index.html.erb +49 -0
- data/app/views/admin/documents/index.json_aardvark.jbuilder +9 -0
- data/app/views/admin/documents/index.json_btaa_aardvark.jbuilder +9 -0
- data/app/views/admin/documents/index.json_gbl_v1.jbuilder +9 -0
- data/app/views/admin/documents/show.json_aardvark.jbuilder +3 -0
- data/app/views/admin/documents/show.json_btaa_aardvark.jbuilder +3 -0
- data/app/views/admin/documents/show.json_gbl_v1.jbuilder +3 -0
- data/app/views/admin/documents/versions.html.erb +110 -0
- data/app/views/admin/elements/_element.json.jbuilder +2 -0
- data/app/views/admin/elements/_form.html.erb +45 -0
- data/app/views/admin/elements/edit.html.erb +6 -0
- data/app/views/admin/elements/index.html.erb +68 -0
- data/app/views/admin/elements/index.json.jbuilder +1 -0
- data/app/views/admin/elements/new.html.erb +5 -0
- data/app/views/admin/elements/show.html.erb +121 -0
- data/app/views/admin/elements/show.json.jbuilder +1 -0
- data/app/views/admin/form_elements/_form.html.erb +46 -0
- data/app/views/admin/form_elements/_form_element.json.jbuilder +2 -0
- data/app/views/admin/form_elements/edit.html.erb +6 -0
- data/app/views/admin/form_elements/index.html.erb +49 -0
- data/app/views/admin/form_elements/index.json.jbuilder +1 -0
- data/app/views/admin/form_elements/new.html.erb +5 -0
- data/app/views/admin/form_elements/show.html.erb +19 -0
- data/app/views/admin/form_elements/show.json.jbuilder +1 -0
- data/app/views/admin/ids/fetch.json.jbuilder +86 -0
- data/app/views/admin/ids/index.json.jbuilder +41 -0
- data/app/views/admin/import_documents/show.html.haml +20 -0
- data/app/views/admin/imports/_form.html.erb +27 -0
- data/app/views/admin/imports/_import.json.jbuilder +4 -0
- data/app/views/admin/imports/_show_failed_tab.html.erb +37 -0
- data/app/views/admin/imports/_show_success_tab.html.erb +31 -0
- data/app/views/admin/imports/edit.html.erb +8 -0
- data/app/views/admin/imports/index.html.erb +56 -0
- data/app/views/admin/imports/index.json.jbuilder +3 -0
- data/app/views/admin/imports/new.html.erb +7 -0
- data/app/views/admin/imports/show.html.erb +123 -0
- data/app/views/admin/imports/show.json.jbuilder +3 -0
- data/app/views/admin/layouts/application.html.erb +30 -0
- data/app/views/admin/layouts/blazer/application.html.erb +23 -0
- data/app/views/admin/layouts/mailer.html.erb +13 -0
- data/app/views/admin/layouts/mailer.text.erb +1 -0
- data/app/views/admin/mappings/_form.html.erb +17 -0
- data/app/views/admin/mappings/_mapping.json.jbuilder +4 -0
- data/app/views/admin/mappings/edit.html.erb +6 -0
- data/app/views/admin/mappings/index.html.erb +37 -0
- data/app/views/admin/mappings/index.json.jbuilder +3 -0
- data/app/views/admin/mappings/new.html.erb +5 -0
- data/app/views/admin/mappings/show.html.erb +27 -0
- data/app/views/admin/mappings/show.json.jbuilder +3 -0
- data/app/views/admin/notifications/_notification.html.haml +31 -0
- data/app/views/admin/notifications/index.html.erb +54 -0
- data/app/views/admin/notifications/update.js.erb +7 -0
- data/app/views/admin/search/index.html.erb +38 -0
- data/app/views/admin/shared/_flash_messages.html.erb +5 -0
- data/app/views/admin/shared/_footer.html.erb +56 -0
- data/app/views/admin/shared/_js_behaviors.html.erb +147 -0
- data/app/views/admin/shared/_navbar.html.erb +78 -0
- data/app/views/admin/shared/_navbar_blazer.html.erb +42 -0
- data/app/views/admin/shared/_schema_timestamp.html.erb +16 -0
- data/app/views/admin/shared/_toast.html.erb +13 -0
- data/app/views/admin/users/index.html.erb +21 -0
- data/config/authorities/formats.yml +25 -0
- data/config/authorities/languages.yml +50 -0
- data/config/authorities/resource_type.yml +82 -0
- data/config/blazer.yml +79 -0
- data/config/gbl_v1_schema.json +118 -0
- data/config/geomg_aardvark_schema.json +211 -0
- data/config/geomg_schema.json +123 -0
- data/config/locales/devise.en.yml +65 -0
- data/config/locales/devise_invitable.en.yml +31 -0
- data/config/locales/documents.en.yml +189 -0
- data/config/locales/en.yml +51 -0
- data/config/locales/geoblacklight.en.yml +178 -0
- data/config/locales/simple_form.en.yml +31 -0
- data/config/routes.rb +162 -0
- data/db/migrate/20230316183001_add_geoblacklight_admin.rb +399 -0
- data/db/seeds.rb +26 -0
- data/db/seeds_elements.csv +56 -0
- data/db/seeds_elements.numbers +0 -0
- data/db/seeds_form_elements.csv +71 -0
- data/db/seeds_form_elements.numbers +0 -0
- data/db/structure.sql +816 -0
- data/geoblacklight_admin.gemspec +67 -0
- data/lib/generators/geoblacklight_admin/config_generator.rb +336 -0
- data/lib/generators/geoblacklight_admin/example_docs_generator.rb +18 -0
- data/lib/generators/geoblacklight_admin/helpers_generator.rb +18 -0
- data/lib/generators/geoblacklight_admin/install_generator.rb +60 -0
- data/lib/generators/geoblacklight_admin/jobs_generator.rb +21 -0
- data/lib/generators/geoblacklight_admin/models_generator.rb +23 -0
- data/lib/generators/geoblacklight_admin/templates/.env.development.example +28 -0
- data/lib/generators/geoblacklight_admin/templates/.solr_wrapper.yml +7 -0
- data/lib/generators/geoblacklight_admin/templates/_user_util_links.html.erb +30 -0
- data/lib/generators/geoblacklight_admin/templates/config/database.yml +18 -0
- data/lib/generators/geoblacklight_admin/templates/config/geomg_aardvark_schema.json +211 -0
- data/lib/generators/geoblacklight_admin/templates/config/initializers/geoblacklight_admin.rb +25 -0
- data/lib/generators/geoblacklight_admin/templates/config/initializers/kithe.rb +31 -0
- data/lib/generators/geoblacklight_admin/templates/config/initializers/pagy.rb +158 -0
- data/lib/generators/geoblacklight_admin/templates/config/initializers/statesman.rb +7 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/channels/consumer.js +6 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/channels/export_channel.js +30 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/channels/index.js +5 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/controllers/application_controller.js +17 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/controllers/document_controller.js +26 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/controllers/index.js +10 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/controllers/results_controller.js +310 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/packs/application.js +23 -0
- data/lib/generators/geoblacklight_admin/templates/javascript/src/js/admin/qa_autocomplete.js +1134 -0
- data/lib/generators/geoblacklight_admin/templates/package.json +32 -0
- data/lib/generators/geoblacklight_admin/templates/solr/README-geoblacklight-solr-development.txt +3 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/_rest_managed.json +3 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/admin-extra.html +31 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/core.properties +5 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/elevate.xml +36 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/mapping-ISOLatin1Accent.txt +246 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/protwords.txt +21 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/schema.xml +229 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/scripts.conf +24 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/solrconfig.xml +266 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/spellings.txt +2 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/stopwords.txt +58 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/stopwords_en.txt +58 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/synonyms.txt +43 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/xslt/example.xsl +132 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/xslt/example_atom.xsl +67 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/xslt/example_rss.xsl +66 -0
- data/lib/generators/geoblacklight_admin/templates/solr/conf/xslt/luke.xsl +337 -0
- data/lib/generators/geoblacklight_admin/templates/solr/snapshots/.keep +0 -0
- data/lib/generators/geoblacklight_admin/views_generator.rb +19 -0
- data/lib/geoblacklight_admin/engine.rb +20 -0
- data/lib/geoblacklight_admin/version.rb +5 -0
- data/lib/geoblacklight_admin.rb +7 -0
- data/lib/tasks/.keep +0 -0
- data/lib/tasks/geoblacklight_admin.rake +209 -0
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +35 -0
- data/template.rb +16 -0
- metadata +1037 -0
@@ -0,0 +1,399 @@
|
|
1
|
+
class AddGeoblacklightAdmin < ActiveRecord::Migration[6.1]
|
2
|
+
def change
|
3
|
+
# These are extensions that must be enabled in order to support this database
|
4
|
+
enable_extension "pgcrypto"
|
5
|
+
enable_extension "plpgsql"
|
6
|
+
|
7
|
+
create_function :kithe_models_friendlier_id_gen, sql_definition: <<-'SQL'
|
8
|
+
CREATE OR REPLACE FUNCTION public.kithe_models_friendlier_id_gen(min_value bigint, max_value bigint)
|
9
|
+
RETURNS text
|
10
|
+
LANGUAGE plpgsql
|
11
|
+
AS $function$
|
12
|
+
DECLARE
|
13
|
+
new_id_int bigint;
|
14
|
+
new_id_str character varying := '';
|
15
|
+
done bool;
|
16
|
+
tries integer;
|
17
|
+
alphabet char[] := ARRAY['0','1','2','3','4','5','6','7','8','9',
|
18
|
+
'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n',
|
19
|
+
'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'];
|
20
|
+
alphabet_length integer := array_length(alphabet, 1);
|
21
|
+
|
22
|
+
BEGIN
|
23
|
+
done := false;
|
24
|
+
tries := 0;
|
25
|
+
WHILE (NOT done) LOOP
|
26
|
+
tries := tries + 1;
|
27
|
+
IF (tries > 3) THEN
|
28
|
+
RAISE 'Could not find non-conflicting friendlier_id in 3 tries';
|
29
|
+
END IF;
|
30
|
+
|
31
|
+
new_id_int := trunc(random() * (max_value - min_value) + min_value);
|
32
|
+
|
33
|
+
-- convert bigint to a Base-36 alphanumeric string
|
34
|
+
-- see https://web.archive.org/web/20130420084605/http://www.jamiebegin.com/base36-conversion-in-postgresql/
|
35
|
+
-- https://gist.github.com/btbytes/7159902
|
36
|
+
WHILE new_id_int != 0 LOOP
|
37
|
+
new_id_str := alphabet[(new_id_int % alphabet_length)+1] || new_id_str;
|
38
|
+
new_id_int := new_id_int / alphabet_length;
|
39
|
+
END LOOP;
|
40
|
+
|
41
|
+
done := NOT exists(SELECT 1 FROM kithe_models WHERE friendlier_id=new_id_str);
|
42
|
+
END LOOP;
|
43
|
+
RETURN new_id_str;
|
44
|
+
END;
|
45
|
+
$function$
|
46
|
+
SQL
|
47
|
+
|
48
|
+
create_table "blazer_audits", force: :cascade do |t|
|
49
|
+
t.bigint "user_id"
|
50
|
+
t.bigint "query_id"
|
51
|
+
t.text "statement"
|
52
|
+
t.string "data_source"
|
53
|
+
t.datetime "created_at"
|
54
|
+
t.index ["query_id"], name: "index_blazer_audits_on_query_id"
|
55
|
+
t.index ["user_id"], name: "index_blazer_audits_on_user_id"
|
56
|
+
end
|
57
|
+
|
58
|
+
create_table "blazer_checks", force: :cascade do |t|
|
59
|
+
t.bigint "creator_id"
|
60
|
+
t.bigint "query_id"
|
61
|
+
t.string "state"
|
62
|
+
t.string "schedule"
|
63
|
+
t.text "emails"
|
64
|
+
t.text "slack_channels"
|
65
|
+
t.string "check_type"
|
66
|
+
t.text "message"
|
67
|
+
t.datetime "last_run_at"
|
68
|
+
t.datetime "created_at", precision: 6, null: false
|
69
|
+
t.datetime "updated_at", precision: 6, null: false
|
70
|
+
t.index ["creator_id"], name: "index_blazer_checks_on_creator_id"
|
71
|
+
t.index ["query_id"], name: "index_blazer_checks_on_query_id"
|
72
|
+
end
|
73
|
+
|
74
|
+
create_table "blazer_dashboard_queries", force: :cascade do |t|
|
75
|
+
t.bigint "dashboard_id"
|
76
|
+
t.bigint "query_id"
|
77
|
+
t.integer "position"
|
78
|
+
t.datetime "created_at", precision: 6, null: false
|
79
|
+
t.datetime "updated_at", precision: 6, null: false
|
80
|
+
t.index ["dashboard_id"], name: "index_blazer_dashboard_queries_on_dashboard_id"
|
81
|
+
t.index ["query_id"], name: "index_blazer_dashboard_queries_on_query_id"
|
82
|
+
end
|
83
|
+
|
84
|
+
create_table "blazer_dashboards", force: :cascade do |t|
|
85
|
+
t.bigint "creator_id"
|
86
|
+
t.string "name"
|
87
|
+
t.datetime "created_at", precision: 6, null: false
|
88
|
+
t.datetime "updated_at", precision: 6, null: false
|
89
|
+
t.index ["creator_id"], name: "index_blazer_dashboards_on_creator_id"
|
90
|
+
end
|
91
|
+
|
92
|
+
create_table "blazer_queries", force: :cascade do |t|
|
93
|
+
t.bigint "creator_id"
|
94
|
+
t.string "name"
|
95
|
+
t.text "description"
|
96
|
+
t.text "statement"
|
97
|
+
t.string "data_source"
|
98
|
+
t.string "status"
|
99
|
+
t.datetime "created_at", precision: 6, null: false
|
100
|
+
t.datetime "updated_at", precision: 6, null: false
|
101
|
+
t.index ["creator_id"], name: "index_blazer_queries_on_creator_id"
|
102
|
+
end
|
103
|
+
|
104
|
+
create_table "blazer_uploads", force: :cascade do |t|
|
105
|
+
t.bigint "creator_id"
|
106
|
+
t.string "table"
|
107
|
+
t.text "description"
|
108
|
+
t.datetime "created_at", precision: 6, null: false
|
109
|
+
t.datetime "updated_at", precision: 6, null: false
|
110
|
+
t.index ["creator_id"], name: "index_blazer_uploads_on_creator_id"
|
111
|
+
end
|
112
|
+
|
113
|
+
create_table "bookmarks", force: :cascade do |t|
|
114
|
+
t.integer "user_id", null: false
|
115
|
+
t.string "user_type"
|
116
|
+
t.string "document_id"
|
117
|
+
t.string "document_type"
|
118
|
+
t.binary "title"
|
119
|
+
t.datetime "created_at", precision: 6, null: false
|
120
|
+
t.datetime "updated_at", precision: 6, null: false
|
121
|
+
t.index ["document_id"], name: "index_bookmarks_on_document_id"
|
122
|
+
t.index ["user_id"], name: "index_bookmarks_on_user_id"
|
123
|
+
end
|
124
|
+
|
125
|
+
create_table "bulk_action_document_transitions", force: :cascade do |t|
|
126
|
+
t.string "to_state", null: false
|
127
|
+
t.text "metadata", default: "{}"
|
128
|
+
t.integer "sort_key", null: false
|
129
|
+
t.integer "bulk_action_document_id", null: false
|
130
|
+
t.boolean "most_recent", null: false
|
131
|
+
t.datetime "created_at", precision: 6, null: false
|
132
|
+
t.datetime "updated_at", precision: 6, null: false
|
133
|
+
t.index ["bulk_action_document_id", "most_recent"], name: "index_bulk_action_document_transitions_parent_most_recent", unique: true, where: "most_recent"
|
134
|
+
t.index ["bulk_action_document_id", "sort_key"], name: "index_bulk_action_document_transitions_parent_sort", unique: true
|
135
|
+
end
|
136
|
+
|
137
|
+
create_table "bulk_action_documents", force: :cascade do |t|
|
138
|
+
t.string "friendlier_id", null: false
|
139
|
+
t.integer "version", null: false
|
140
|
+
t.bigint "bulk_action_id", null: false
|
141
|
+
t.datetime "created_at", precision: 6, null: false
|
142
|
+
t.datetime "updated_at", precision: 6, null: false
|
143
|
+
t.uuid "document_id"
|
144
|
+
t.index ["bulk_action_id"], name: "index_bulk_action_documents_on_bulk_action_id"
|
145
|
+
end
|
146
|
+
|
147
|
+
create_table "bulk_action_transitions", force: :cascade do |t|
|
148
|
+
t.string "to_state", null: false
|
149
|
+
t.text "metadata", default: "{}"
|
150
|
+
t.integer "sort_key", null: false
|
151
|
+
t.integer "bulk_action_id", null: false
|
152
|
+
t.boolean "most_recent", null: false
|
153
|
+
t.datetime "created_at", precision: 6, null: false
|
154
|
+
t.datetime "updated_at", precision: 6, null: false
|
155
|
+
t.index ["bulk_action_id", "most_recent"], name: "index_bulk_action_transitions_parent_most_recent", unique: true, where: "most_recent"
|
156
|
+
t.index ["bulk_action_id", "sort_key"], name: "index_bulk_action_transitions_parent_sort", unique: true
|
157
|
+
end
|
158
|
+
|
159
|
+
create_table "bulk_actions", force: :cascade do |t|
|
160
|
+
t.string "name"
|
161
|
+
t.string "scope", null: false
|
162
|
+
t.string "field_name", null: false
|
163
|
+
t.string "field_value", null: false
|
164
|
+
t.text "notes"
|
165
|
+
t.datetime "created_at", precision: 6, null: false
|
166
|
+
t.datetime "updated_at", precision: 6, null: false
|
167
|
+
end
|
168
|
+
|
169
|
+
create_table "document_accesses", force: :cascade do |t|
|
170
|
+
t.string "friendlier_id", null: false
|
171
|
+
t.string "institution_code", null: false
|
172
|
+
t.text "access_url", null: false
|
173
|
+
t.datetime "created_at", precision: 6, null: false
|
174
|
+
t.datetime "updated_at", precision: 6, null: false
|
175
|
+
end
|
176
|
+
|
177
|
+
create_table "document_downloads", force: :cascade do |t|
|
178
|
+
t.string "friendlier_id"
|
179
|
+
t.string "label"
|
180
|
+
t.string "value"
|
181
|
+
t.integer "position"
|
182
|
+
t.datetime "created_at", precision: 6, null: false
|
183
|
+
t.datetime "updated_at", precision: 6, null: false
|
184
|
+
end
|
185
|
+
|
186
|
+
create_table "document_transitions", force: :cascade do |t|
|
187
|
+
t.string "to_state", null: false
|
188
|
+
t.text "metadata", default: "{}"
|
189
|
+
t.integer "sort_key", null: false
|
190
|
+
t.uuid "kithe_model_id", null: false
|
191
|
+
t.boolean "most_recent", null: false
|
192
|
+
t.datetime "created_at", precision: 6, null: false
|
193
|
+
t.datetime "updated_at", precision: 6, null: false
|
194
|
+
t.index ["kithe_model_id", "most_recent"], name: "index_document_transitions_parent_most_recent", unique: true, where: "most_recent"
|
195
|
+
t.index ["kithe_model_id", "sort_key"], name: "index_document_transitions_parent_sort", unique: true
|
196
|
+
end
|
197
|
+
|
198
|
+
create_table "elements", force: :cascade do |t|
|
199
|
+
t.string "label", null: false
|
200
|
+
t.string "solr_field", null: false
|
201
|
+
t.string "field_definition"
|
202
|
+
t.string "field_type", null: false
|
203
|
+
t.boolean "required", default: false, null: false
|
204
|
+
t.boolean "repeatable", default: false, null: false
|
205
|
+
t.boolean "formable", default: true, null: false
|
206
|
+
t.string "placeholder_text"
|
207
|
+
t.string "data_entry_hint"
|
208
|
+
t.string "test_fixture_example"
|
209
|
+
t.string "controlled_vocabulary"
|
210
|
+
t.string "js_behaviors"
|
211
|
+
t.text "html_attributes"
|
212
|
+
t.boolean "display_only_on_persisted", default: false, null: false
|
213
|
+
t.boolean "importable", default: true, null: false
|
214
|
+
t.boolean "import_deliminated", default: false, null: false
|
215
|
+
t.string "import_transformation_method"
|
216
|
+
t.boolean "exportable", default: true, null: false
|
217
|
+
t.string "export_transformation_method"
|
218
|
+
t.boolean "indexable", default: true, null: false
|
219
|
+
t.string "index_transformation_method"
|
220
|
+
t.string "validation_method"
|
221
|
+
t.datetime "created_at", precision: 6, null: false
|
222
|
+
t.datetime "updated_at", precision: 6, null: false
|
223
|
+
t.integer "position"
|
224
|
+
end
|
225
|
+
|
226
|
+
create_table "form_elements", force: :cascade do |t|
|
227
|
+
t.string "type", null: false
|
228
|
+
t.string "label"
|
229
|
+
t.string "element_solr_field"
|
230
|
+
t.integer "position"
|
231
|
+
t.datetime "created_at", precision: 6, null: false
|
232
|
+
t.datetime "updated_at", precision: 6, null: false
|
233
|
+
end
|
234
|
+
|
235
|
+
create_table "import_document_transitions", force: :cascade do |t|
|
236
|
+
t.string "to_state", null: false
|
237
|
+
t.text "metadata", default: "{}"
|
238
|
+
t.integer "sort_key", null: false
|
239
|
+
t.integer "import_document_id", null: false
|
240
|
+
t.boolean "most_recent", null: false
|
241
|
+
t.datetime "created_at", precision: 6, null: false
|
242
|
+
t.datetime "updated_at", precision: 6, null: false
|
243
|
+
t.index ["import_document_id", "most_recent"], name: "index_import_document_transitions_parent_most_recent", unique: true, where: "most_recent"
|
244
|
+
t.index ["import_document_id", "sort_key"], name: "index_import_document_transitions_parent_sort", unique: true
|
245
|
+
end
|
246
|
+
|
247
|
+
create_table "import_documents", force: :cascade do |t|
|
248
|
+
t.string "friendlier_id", null: false
|
249
|
+
t.string "title", null: false
|
250
|
+
t.json "json_attributes", default: "{}"
|
251
|
+
t.bigint "import_id", null: false
|
252
|
+
t.datetime "created_at", precision: 6, null: false
|
253
|
+
t.datetime "updated_at", precision: 6, null: false
|
254
|
+
t.index ["import_id"], name: "index_import_documents_on_import_id"
|
255
|
+
end
|
256
|
+
|
257
|
+
create_table "import_transitions", force: :cascade do |t|
|
258
|
+
t.string "to_state", null: false
|
259
|
+
t.text "metadata", default: "{}"
|
260
|
+
t.integer "sort_key", null: false
|
261
|
+
t.integer "import_id", null: false
|
262
|
+
t.boolean "most_recent", null: false
|
263
|
+
t.datetime "created_at", precision: 6, null: false
|
264
|
+
t.datetime "updated_at", precision: 6, null: false
|
265
|
+
t.index ["import_id", "most_recent"], name: "index_import_transitions_parent_most_recent", unique: true, where: "most_recent"
|
266
|
+
t.index ["import_id", "sort_key"], name: "index_import_transitions_parent_sort", unique: true
|
267
|
+
end
|
268
|
+
|
269
|
+
create_table "imports", force: :cascade do |t|
|
270
|
+
t.string "name", null: false
|
271
|
+
t.string "source"
|
272
|
+
t.text "description"
|
273
|
+
t.string "filename"
|
274
|
+
t.integer "row_count"
|
275
|
+
t.text "headers", default: [], array: true
|
276
|
+
t.string "encoding"
|
277
|
+
t.string "content_type"
|
278
|
+
t.string "extension"
|
279
|
+
t.boolean "validity", default: false, null: false
|
280
|
+
t.text "validation_result"
|
281
|
+
t.datetime "created_at", precision: 6, null: false
|
282
|
+
t.datetime "updated_at", precision: 6, null: false
|
283
|
+
t.string "type"
|
284
|
+
end
|
285
|
+
|
286
|
+
create_table "kithe_derivatives", force: :cascade do |t|
|
287
|
+
t.string "key", null: false
|
288
|
+
t.jsonb "file_data"
|
289
|
+
t.uuid "asset_id", null: false
|
290
|
+
t.datetime "created_at", null: false
|
291
|
+
t.datetime "updated_at", null: false
|
292
|
+
t.index ["asset_id", "key"], name: "index_kithe_derivatives_on_asset_id_and_key", unique: true
|
293
|
+
t.index ["asset_id"], name: "index_kithe_derivatives_on_asset_id"
|
294
|
+
end
|
295
|
+
|
296
|
+
create_table "kithe_model_contains", id: false, force: :cascade do |t|
|
297
|
+
t.uuid "containee_id"
|
298
|
+
t.uuid "container_id"
|
299
|
+
t.index ["containee_id"], name: "index_kithe_model_contains_on_containee_id"
|
300
|
+
t.index ["container_id"], name: "index_kithe_model_contains_on_container_id"
|
301
|
+
end
|
302
|
+
|
303
|
+
create_table "kithe_models", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t|
|
304
|
+
t.string "title", null: false
|
305
|
+
t.string "type", null: false
|
306
|
+
t.integer "position"
|
307
|
+
t.jsonb "json_attributes"
|
308
|
+
t.datetime "created_at", null: false
|
309
|
+
t.datetime "updated_at", null: false
|
310
|
+
t.uuid "parent_id"
|
311
|
+
t.string "friendlier_id", default: -> { "kithe_models_friendlier_id_gen('2821109907456'::bigint, '101559956668415'::bigint)" }, null: false
|
312
|
+
t.jsonb "file_data"
|
313
|
+
t.uuid "representative_id"
|
314
|
+
t.uuid "leaf_representative_id"
|
315
|
+
t.integer "kithe_model_type", null: false
|
316
|
+
t.bigint "import_id"
|
317
|
+
t.string "publication_state", default: "draft"
|
318
|
+
t.index ["friendlier_id"], name: "index_kithe_models_on_friendlier_id", unique: true
|
319
|
+
t.index ["import_id"], name: "index_kithe_models_on_import_id"
|
320
|
+
t.index ["leaf_representative_id"], name: "index_kithe_models_on_leaf_representative_id"
|
321
|
+
t.index ["parent_id"], name: "index_kithe_models_on_parent_id"
|
322
|
+
t.index ["representative_id"], name: "index_kithe_models_on_representative_id"
|
323
|
+
end
|
324
|
+
|
325
|
+
create_table "mappings", force: :cascade do |t|
|
326
|
+
t.string "source_header"
|
327
|
+
t.string "destination_field"
|
328
|
+
t.boolean "delimited"
|
329
|
+
t.string "transformation_method"
|
330
|
+
t.bigint "import_id", null: false
|
331
|
+
t.datetime "created_at", precision: 6, null: false
|
332
|
+
t.datetime "updated_at", precision: 6, null: false
|
333
|
+
t.index ["import_id"], name: "index_mappings_on_import_id"
|
334
|
+
end
|
335
|
+
|
336
|
+
create_table "notifications", force: :cascade do |t|
|
337
|
+
t.string "recipient_type", null: false
|
338
|
+
t.bigint "recipient_id", null: false
|
339
|
+
t.string "type", null: false
|
340
|
+
t.jsonb "params"
|
341
|
+
t.datetime "read_at"
|
342
|
+
t.datetime "created_at", precision: 6, null: false
|
343
|
+
t.datetime "updated_at", precision: 6, null: false
|
344
|
+
t.index ["read_at"], name: "index_notifications_on_read_at"
|
345
|
+
t.index ["recipient_type", "recipient_id"], name: "index_notifications_on_recipient"
|
346
|
+
end
|
347
|
+
|
348
|
+
create_table "users", force: :cascade do |t|
|
349
|
+
t.string "email", default: "", null: false
|
350
|
+
t.string "encrypted_password", default: "", null: false
|
351
|
+
t.string "reset_password_token"
|
352
|
+
t.datetime "reset_password_sent_at"
|
353
|
+
t.datetime "remember_created_at"
|
354
|
+
t.datetime "created_at", precision: 6, null: false
|
355
|
+
t.datetime "updated_at", precision: 6, null: false
|
356
|
+
t.string "invitation_token"
|
357
|
+
t.datetime "invitation_created_at"
|
358
|
+
t.datetime "invitation_sent_at"
|
359
|
+
t.datetime "invitation_accepted_at"
|
360
|
+
t.integer "invitation_limit"
|
361
|
+
t.string "invited_by_type"
|
362
|
+
t.bigint "invited_by_id"
|
363
|
+
t.integer "invitations_count", default: 0
|
364
|
+
t.boolean "admin", default: false, null: false
|
365
|
+
t.index ["email"], name: "index_users_on_email", unique: true
|
366
|
+
t.index ["invitation_token"], name: "index_users_on_invitation_token", unique: true
|
367
|
+
t.index ["invitations_count"], name: "index_users_on_invitations_count"
|
368
|
+
t.index ["invited_by_id"], name: "index_users_on_invited_by_id"
|
369
|
+
t.index ["invited_by_type", "invited_by_id"], name: "index_users_on_invited_by_type_and_invited_by_id"
|
370
|
+
t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
|
371
|
+
end
|
372
|
+
|
373
|
+
create_table "versions", force: :cascade do |t|
|
374
|
+
t.string "item_type", null: false
|
375
|
+
t.uuid "item_id", null: false
|
376
|
+
t.string "event", null: false
|
377
|
+
t.string "whodunnit"
|
378
|
+
t.text "object"
|
379
|
+
t.datetime "created_at"
|
380
|
+
t.text "object_changes"
|
381
|
+
t.index ["item_type", "item_id"], name: "index_versions_on_item_type_and_item_id"
|
382
|
+
end
|
383
|
+
|
384
|
+
add_foreign_key "bulk_action_document_transitions", "bulk_action_documents"
|
385
|
+
add_foreign_key "bulk_action_documents", "bulk_actions"
|
386
|
+
add_foreign_key "bulk_action_transitions", "bulk_actions"
|
387
|
+
add_foreign_key "import_document_transitions", "import_documents"
|
388
|
+
add_foreign_key "import_documents", "imports"
|
389
|
+
add_foreign_key "import_transitions", "imports"
|
390
|
+
add_foreign_key "kithe_derivatives", "kithe_models", column: "asset_id"
|
391
|
+
add_foreign_key "kithe_model_contains", "kithe_models", column: "containee_id"
|
392
|
+
add_foreign_key "kithe_model_contains", "kithe_models", column: "container_id"
|
393
|
+
add_foreign_key "kithe_models", "kithe_models", column: "leaf_representative_id"
|
394
|
+
add_foreign_key "kithe_models", "kithe_models", column: "parent_id"
|
395
|
+
add_foreign_key "kithe_models", "kithe_models", column: "representative_id"
|
396
|
+
add_foreign_key "mappings", "imports"
|
397
|
+
|
398
|
+
end
|
399
|
+
end
|
data/db/seeds.rb
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
require "csv"
|
2
|
+
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# This file should contain all the record creation needed to seed the database with its default values.
|
5
|
+
# The data can then be loaded with the rails db:seed command (or created alongside the database with db:setup).
|
6
|
+
#
|
7
|
+
# Examples:
|
8
|
+
#
|
9
|
+
# movies = Movie.create([{ name: 'Star Wars' }, { name: 'Lord of the Rings' }])
|
10
|
+
# Character.create(name: 'Luke', movie: movies.first)
|
11
|
+
|
12
|
+
# Elements
|
13
|
+
CSV.foreach(File.expand_path("seeds_elements.csv", File.dirname(__FILE__)), headers: true) do |row|
|
14
|
+
hash = row.to_hash
|
15
|
+
# YES, I'm calling eval - It's hard to seed a serialized field via a CSV file
|
16
|
+
hash["html_attributes"] = eval(hash["html_attributes"]) if hash["html_attributes"].present?
|
17
|
+
Element.create!(hash)
|
18
|
+
end
|
19
|
+
|
20
|
+
# FormElements
|
21
|
+
CSV.foreach(File.expand_path("seeds_form_elements.csv", File.dirname(__FILE__)), headers: true) do |row|
|
22
|
+
FormElement.create!(row.to_hash)
|
23
|
+
end
|
24
|
+
|
25
|
+
# Users
|
26
|
+
User.create(email: "admin@geoblacklight.org", password: "123456", password_confirmation: "123456", admin: true)
|
@@ -0,0 +1,56 @@
|
|
1
|
+
label,solr_field,field_definition,field_type,required,repeatable,formable,placeholder_text,data_entry_hint,test_fixture_example,controlled_vocabulary,js_behaviors,html_attributes,display_only_on_persisted,importable,import_deliminated,import_transformation_method,exportable,export_transformation_method,indexable,index_transformation_method,validation_method,position
|
2
|
+
Title,dct_title_s,https://opengeometadata.org/docs/ogm-aardvark/title,string,TRUE,FALSE,TRUE,,"Theme: city, state, temporal coverage",title,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,title,presence,1
|
3
|
+
Alternative Title,dct_alternative_sm,https://opengeometadata.org/docs/ogm-aardvark/alternative-title,string,FALSE,TRUE,TRUE,,,alternative-title1|alternative-title2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,2
|
4
|
+
Description,dct_description_sm,https://opengeometadata.org/docs/ogm-aardvark/description,text,FALSE,TRUE,TRUE,,,description1|description2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,3
|
5
|
+
Language,dct_language_sm,https://opengeometadata.org/docs/ogm-aardvark/language,string,FALSE,TRUE,TRUE,,,language1|language2,languages,autocomplete,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,4
|
6
|
+
B1G Language,b1g_language_sm,https://geobtaa.github.io/metadata/b1g-custom-elements.html#language-string,string,FALSE,TRUE,TRUE,,,b1g_language1|b1g_language2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,iso_language_mapping,,5
|
7
|
+
Creator,dct_creator_sm,https://opengeometadata.org/docs/ogm-aardvark/creator,string,FALSE,TRUE,TRUE,,,creator1|creator2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,6
|
8
|
+
Creator ID,b1g_creatorID_sm,https://geobtaa.github.io/metadata/b1g-custom-elements/#creatorID,string,FALSE,TRUE,TRUE,,,creatorID1|creatorID2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,7
|
9
|
+
Publisher,dct_publisher_sm,https://opengeometadata.org/docs/ogm-aardvark/publisher,string,FALSE,TRUE,TRUE,,,publisher1|publisher2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,8
|
10
|
+
Provider,schema_provider_s,https://opengeometadata.org/docs/ogm-aardvark/provider,string,FALSE,FALSE,TRUE,,,Provider,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,9
|
11
|
+
Resource Class,gbl_resourceClass_sm,https://opengeometadata.org/docs/ogm-aardvark/resource-class,string,TRUE,TRUE,TRUE,,,Geospatial data|Maps,resource_classes,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,presence,10
|
12
|
+
Resource Type,gbl_resourceType_sm,https://opengeometadata.org/docs/ogm-aardvark/resource-type,string,FALSE,TRUE,TRUE,,,resource-type1|resource-type2,resource_types,autocomplete,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,11
|
13
|
+
Subject,dct_subject_sm,https://opengeometadata.org/docs/ogm-aardvark/subject,string,FALSE,TRUE,TRUE,,,subject1|subject2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,12
|
14
|
+
Theme,dcat_theme_sm,https://opengeometadata.org/docs/ogm-aardvark/theme,string,FALSE,TRUE,TRUE,,,Farming|Biota,themes,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,13
|
15
|
+
Keyword,dcat_keyword_sm,https://opengeometadata.org/docs/ogm-aardvark/keyword,string,FALSE,TRUE,TRUE,,,keyword1|keyword2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,14
|
16
|
+
Temporal Coverage,dct_temporal_sm,https://opengeometadata.org/docs/ogm-aardvark/temporal-coverage,string,FALSE,TRUE,TRUE,,,2019|2020,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,15
|
17
|
+
Date Issued,dct_issued_s,https://opengeometadata.org/docs/ogm-aardvark/date-issued,string,FALSE,FALSE,TRUE,,YYYY,1/1/20,,datepicker-years,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,16
|
18
|
+
Index Year,gbl_indexYear_im,https://opengeometadata.org/docs/ogm-aardvark/index-year,integer,FALSE,TRUE,TRUE,,YYYY,2020|2021,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,17
|
19
|
+
Date Range,gbl_dateRange_drsim,https://opengeometadata.org/docs/ogm-aardvark/date-range,string,FALSE,TRUE,TRUE,YYYY-YYYY,,2020-2020,,mask,"{:""data-inputmask""=>""'mask': '9999-9999'""}",FALSE,TRUE,TRUE,,TRUE,date_range_json,TRUE,date_range_json,Document::DateRangeValidator,18
|
20
|
+
Spatial Coverage,dct_spatial_sm,https://opengeometadata.org/docs/ogm-aardvark/spatial-coverage,string,FALSE,TRUE,TRUE,,,spatial-coverage1|spatial-coverage2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,19
|
21
|
+
Bounding Box,dcat_bbox,https://opengeometadata.org/docs/ogm-aardvark/bounding-box,string,FALSE,FALSE,TRUE,,"W,S,E,N - A centroid will be derived from this value.","-95.0379,40.6333,-91.198,43.1373",,,,FALSE,TRUE,FALSE,,TRUE,derive_dcat_bbox,TRUE,derive_dcat_bbox,Document::BboxValidator,20
|
22
|
+
Geometry,locn_geometry,https://opengeometadata.org/docs/ogm-aardvark/geometry,string,FALSE,FALSE,TRUE,,"WKT - An ENVELOPE, POLYGON, or MULTIPOLYGON value. Use ENVELOPE(-180,180,90,-90) for a whole earth geometry.","POLYGON((-88.11 41.75, -84.75 41.75, -84.75 37.86, -88.11 37.86, -88.11 41.75))",,,,FALSE,TRUE,FALSE,,TRUE,derive_locn_geometry,TRUE,derive_locn_geometry,Document::GeomValidator,21
|
23
|
+
Centroid,dcat_centroid,https://opengeometadata.org/docs/ogm-aardvark/centroid,string,FALSE,FALSE,TRUE,,,"39.805,-86.43",,,,FALSE,TRUE,FALSE,,TRUE,derive_dcat_centroid,TRUE,derive_dcat_centroid,,22
|
24
|
+
GeoNames,b1g_geonames_sm,https://geobtaa.github.io/metadata/b1g-custom-elements.html#geonames,string,FALSE,TRUE,TRUE,,,geonames1|geonames2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,23
|
25
|
+
Relation,dct_relation_sm,https://opengeometadata.org/docs/ogm-aardvark/relation,string,FALSE,TRUE,TRUE,,,relation1|relation2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,24
|
26
|
+
Member Of,pcdm_memberOf_sm,https://opengeometadata.org/docs/ogm-aardvark/member-of,string,FALSE,TRUE,TRUE,,,member-of1|member-of2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,25
|
27
|
+
Is Part Of,dct_isPartOf_sm,https://opengeometadata.org/docs/ogm-aardvark/is-part-of,string,FALSE,TRUE,TRUE,,,is-part-of1|is-part-of2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,26
|
28
|
+
Source,dct_source_sm,https://opengeometadata.org/docs/ogm-aardvark/source,string,FALSE,TRUE,TRUE,,,source1|source2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,27
|
29
|
+
Is Version Of,dct_isVersionOf_sm,https://opengeometadata.org/docs/ogm-aardvark/is-version-of,string,FALSE,TRUE,TRUE,,,version1|version2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,28
|
30
|
+
Replaces,dct_replaces_sm,https://opengeometadata.org/docs/ogm-aardvark/replaces,string,FALSE,TRUE,TRUE,,,replaces1|replaces2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,29
|
31
|
+
Is Replaced By,dct_isReplacedBy_sm,https://opengeometadata.org/docs/ogm-aardvark/is-replaced-by,string,FALSE,TRUE,TRUE,,,is-replaced-by1|is-replaced-by2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,30
|
32
|
+
Format,dct_format_s,https://opengeometadata.org/docs/ogm-aardvark/format,string,FALSE,FALSE,TRUE,,,format,formats,autocomplete,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,31
|
33
|
+
File Size,gbl_fileSize_s,https://opengeometadata.org/docs/ogm-aardvark/file-size,string,FALSE,FALSE,TRUE,,,60mb,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,32
|
34
|
+
WxS Identifier,gbl_wxsIdentifier_s,https://opengeometadata.org/docs/ogm-aardvark/wxs-identifier,string,FALSE,FALSE,TRUE,,,wxs-identifier,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,33
|
35
|
+
Georeferenced,gbl_georeferenced_b,https://opengeometadata.org/docs/ogm-aardvark/georeferenced,boolean,FALSE,FALSE,TRUE,,,FALSE,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,34
|
36
|
+
Reference,dct_references_s,https://opengeometadata.org/docs/ogm-aardvark/references,text,FALSE,TRUE,TRUE,,URIs and Values,,reference_values,,,FALSE,TRUE,FALSE,build_dct_references,TRUE,references_json,TRUE,references_json,,35
|
37
|
+
B1G Image URL,b1g_image_ss,https://geobtaa.github.io/metadata/b1g-custom-elements.html#image,string,FALSE,FALSE,TRUE,,,image,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,36
|
38
|
+
ID,geomg_id_s,https://opengeometadata.org/docs/ogm-aardvark/id,string,TRUE,FALSE,TRUE,,,slug,,disable_if_persisted,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,presence,37
|
39
|
+
Identifier,dct_identifier_sm,https://opengeometadata.org/docs/ogm-aardvark/identifier,string,FALSE,TRUE,TRUE,,,identifier1|identifier2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,38
|
40
|
+
Code,b1g_code_s,https://geobtaa.github.io/metadata/b1g-custom-elements.html#code,string,FALSE,FALSE,TRUE,,,code,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,39
|
41
|
+
Access Rights,dct_accessRights_s,https://opengeometadata.org/docs/ogm-aardvark/access-rights,string,TRUE,FALSE,TRUE,,,access-rights1|access-rights2,access_rights,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,presence,40
|
42
|
+
Rights Holder,dct_rightsHolder_sm,https://opengeometadata.org/docs/ogm-aardvark/rights-holder,string,FALSE,TRUE,TRUE,,,rights-holder1|rights-holder2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,41
|
43
|
+
License,dct_license_sm,https://opengeometadata.org/docs/ogm-aardvark/license,string,FALSE,TRUE,TRUE,,,license1|license2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,42
|
44
|
+
Rights,dct_rights_sm,https://opengeometadata.org/docs/ogm-aardvark/rights,string,FALSE,TRUE,TRUE,,,rights,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,43
|
45
|
+
Accrual Method,b1g_dct_accrualMethod_s,https://geobtaa.github.io/metadata/b1g-custom-elements.html#accrual-method,string,FALSE,FALSE,TRUE,,,accrual-method,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,44
|
46
|
+
Accrual Periodicity,b1g_dct_accrualPeriodicity_s,https://geobtaa.github.io/metadata/b1g-custom-elements.html#accrual-periodicity,string,FALSE,FALSE,TRUE,,,Annually,accrual_periodicity,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,45
|
47
|
+
Date Accessioned,b1g_dateAccessioned_sm,https://geobtaa.github.io/metadata/b1g-custom-elements.html#date-accessioned,string,FALSE,TRUE,TRUE,,,date-accessioned1|date-accessioned2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,46
|
48
|
+
Date Retired,b1g_dateRetired_s,https://geobtaa.github.io/metadata/b1g-custom-elements.html#date-retired,string,FALSE,FALSE,TRUE,,YYYY-MM-DD,date-retired,,datepicker,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,47
|
49
|
+
Status,b1g_status_s,https://geobtaa.github.io/metadata/b1g-custom-elements.html#status,string,FALSE,FALSE,TRUE,,,Active,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,48
|
50
|
+
Publication State,b1g_publication_state_s,https://geobtaa.github.io/metadata/b1g-custom-elements.html#publication-state,string,TRUE,FALSE,TRUE,,,published,publication_states,,,TRUE,FALSE,FALSE,,TRUE,current_state,TRUE,current_state,,49
|
51
|
+
Suppressed Record,gbl_suppressed_b,https://opengeometadata.org/docs/ogm-aardvark/suppressed,boolean,FALSE,FALSE,TRUE,,,FALSE,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,50
|
52
|
+
Child Record,b1g_child_record_b,https://geobtaa.github.io/metadata/b1g-custom-elements.html#child-record,boolean,FALSE,FALSE,TRUE,,,FALSE,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,,,51
|
53
|
+
Mediator,b1g_dct_mediator_sm,https://geobtaa.github.io/metadata/b1g-custom-elements.html#mediator,string,FALSE,TRUE,TRUE,,,mediator1|mediator2,,,,FALSE,TRUE,TRUE,,TRUE,,TRUE,,,52
|
54
|
+
Access,b1g_access_s,https://geobtaa.github.io/metadata/b1g-custom-elements.html#access,string,FALSE,FALSE,TRUE,,,access,,,,FALSE,TRUE,FALSE,,TRUE,,TRUE,access_json,,53
|
55
|
+
Created At,date_created_dtsi,,datetime,FALSE,FALSE,FALSE,,,2021-12-09 15:50:49.803415,,,,TRUE,FALSE,FALSE,,TRUE,created_at_dt,TRUE,created_at_dt,,54
|
56
|
+
Updated At,date_modified_dtsi,,datetime,FALSE,FALSE,FALSE,,,2022-12-12 17:02:03.422663,,,,TRUE,FALSE,FALSE,,TRUE,gbl_mdModified_dt,TRUE,gbl_mdModified_dt,,55
|
Binary file
|
@@ -0,0 +1,71 @@
|
|
1
|
+
type,label,element_solr_field,position
|
2
|
+
FormHeader,Identification,,1
|
3
|
+
FormGroup,Descriptive,,2
|
4
|
+
FormControl,,dct_title_s,3
|
5
|
+
FormControl,NULL,dct_alternative_sm,4
|
6
|
+
FormControl,,dct_description_sm,5
|
7
|
+
FormControl,,dct_language_sm,6
|
8
|
+
FormGroup,Credits,,7
|
9
|
+
FormControl,,dct_creator_sm,8
|
10
|
+
FormControl,,b1g_creatorID_sm,9
|
11
|
+
FormControl,,dct_publisher_sm,10
|
12
|
+
FormControl,,schema_provider_s,11
|
13
|
+
FormGroup,Categories,,12
|
14
|
+
FormControl,,gbl_resourceClass_sm,13
|
15
|
+
FormControl,,gbl_resourceType_sm,14
|
16
|
+
FormControl,,dct_subject_sm,15
|
17
|
+
FormControl,,dcat_theme_sm,16
|
18
|
+
FormControl,,dcat_keyword_sm,17
|
19
|
+
FormGroup,Temporal,,18
|
20
|
+
FormControl,,dct_temporal_sm,19
|
21
|
+
FormControl,,dct_issued_s,20
|
22
|
+
FormControl,,gbl_dateRange_drsim,21
|
23
|
+
FormGroup,Spatial,,22
|
24
|
+
FormControl,,dct_spatial_sm,23
|
25
|
+
FormControl,,dcat_bbox,24
|
26
|
+
FormControl,,locn_geometry,25
|
27
|
+
FormControl,,b1g_geonames_sm,26
|
28
|
+
FormGroup,Relations,,27
|
29
|
+
FormControl,,dct_relation_sm,28
|
30
|
+
FormControl,,pcdm_memberOf_sm,29
|
31
|
+
FormControl,,dct_isPartOf_sm,30
|
32
|
+
FormControl,,dct_source_sm,31
|
33
|
+
FormControl,,dct_isVersionOf_sm,32
|
34
|
+
FormControl,,dct_replaces_sm,33
|
35
|
+
FormControl,,dct_isReplacedBy_sm,34
|
36
|
+
FormHeader,Distribution,,35
|
37
|
+
FormGroup,Object,,36
|
38
|
+
FormControl,,dct_format_s,37
|
39
|
+
FormControl,,gbl_fileSize_s,38
|
40
|
+
FormControl,,gbl_wxsIdentifier_s,39
|
41
|
+
FormControl,,gbl_georeferenced_b,40
|
42
|
+
FormGroup,Links,,41
|
43
|
+
FormControl,,dct_references_s,42
|
44
|
+
FormControl,,b1g_image_ss,43
|
45
|
+
FormFeature,Multiple Download Links,,44
|
46
|
+
FormHeader,Administrative,,45
|
47
|
+
FormGroup,Codes,,46
|
48
|
+
FormControl,,geomg_id_s,47
|
49
|
+
FormControl,,dct_identifier_sm,48
|
50
|
+
FormControl,,b1g_code_s,49
|
51
|
+
FormGroup,Rights,,50
|
52
|
+
FormControl,,dct_accessRights_s,51
|
53
|
+
FormControl,,dct_rightsHolder_sm,52
|
54
|
+
FormControl,,dct_license_sm,53
|
55
|
+
FormControl,,dct_rights_sm,54
|
56
|
+
FormGroup,Life Cycle,,55
|
57
|
+
FormControl,,date_created_dtsi,56
|
58
|
+
FormControl,,date_modified_dtsi,57
|
59
|
+
FormControl,,b1g_dct_accrualMethod_s,58
|
60
|
+
FormControl,,b1g_dct_accrualPeriodicity_s,59
|
61
|
+
FormControl,,b1g_dateAccessioned_sm,60
|
62
|
+
FormControl,,b1g_dateRetired_s,61
|
63
|
+
FormControl,,b1g_status_s,62
|
64
|
+
FormControl,,b1g_publication_state_s,63
|
65
|
+
FormGroup,Accessibility,,64
|
66
|
+
FormControl,,gbl_suppressed_b,65
|
67
|
+
FormControl,,b1g_child_record_b,66
|
68
|
+
FormControl,,b1g_dct_mediator_sm,67
|
69
|
+
FormControl,,b1g_access_s,68
|
70
|
+
FormHeader,Related Items,,69
|
71
|
+
FormFeature,Institutional Access Links,,70
|
Binary file
|