geoblacklight_admin 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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,56 @@
|
|
|
1
|
+
<!-- Footer -->
|
|
2
|
+
<footer class="page-footer font-small pt-4 bg-secondary text-white">
|
|
3
|
+
|
|
4
|
+
<!-- Footer Links -->
|
|
5
|
+
<div class="container-fluid text-center text-md-left">
|
|
6
|
+
|
|
7
|
+
<!-- Grid row -->
|
|
8
|
+
<div class="row">
|
|
9
|
+
<div class="col-12 ">
|
|
10
|
+
<h4 style="margin-bottom:1.5rem;">
|
|
11
|
+
GeoBlacklight \\ Admin
|
|
12
|
+
</h4>
|
|
13
|
+
</div>
|
|
14
|
+
|
|
15
|
+
<!-- Grid column -->
|
|
16
|
+
<div class="col-md-6 mt-md-0 mt-3">
|
|
17
|
+
|
|
18
|
+
<!-- Content -->
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
</div>
|
|
22
|
+
<!-- Grid column -->
|
|
23
|
+
|
|
24
|
+
<hr class="clearfix w-100 d-md-none pb-3">
|
|
25
|
+
|
|
26
|
+
<!-- Grid column -->
|
|
27
|
+
<div class="col-md-3 mb-md-0 mb-3">
|
|
28
|
+
|
|
29
|
+
<!-- Links -->
|
|
30
|
+
<h5>Resources</h5>
|
|
31
|
+
|
|
32
|
+
<ul class="list-unstyled">
|
|
33
|
+
<li>
|
|
34
|
+
<a href="https://opengeometadata.org" class="text-white">OpenGeoMetadata</a>
|
|
35
|
+
</li>
|
|
36
|
+
</ul>
|
|
37
|
+
|
|
38
|
+
</div>
|
|
39
|
+
<!-- Grid column -->
|
|
40
|
+
<div class="col-md-3 mb-md-0 mb-3">
|
|
41
|
+
<!-- Links -->
|
|
42
|
+
<h5>Help</h5>
|
|
43
|
+
<ul class="list-unstyled">
|
|
44
|
+
<li>
|
|
45
|
+
<a href="#" class="text-white">Contact Support</a>
|
|
46
|
+
</li>
|
|
47
|
+
</ul>
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
</div>
|
|
51
|
+
<!-- Grid row -->
|
|
52
|
+
|
|
53
|
+
</div>
|
|
54
|
+
<!-- Footer Links -->
|
|
55
|
+
|
|
56
|
+
</footer>
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
<script>
|
|
2
|
+
$(function () {
|
|
3
|
+
if ($('[data-toggle="tooltip"]').length > 0) {
|
|
4
|
+
//$('[data-toggle="tooltip"]').tooltip();
|
|
5
|
+
}
|
|
6
|
+
});
|
|
7
|
+
|
|
8
|
+
// Date Range picker
|
|
9
|
+
$('#date-range').on('change', function(event){
|
|
10
|
+
GBLADMIN.DateRangeSelect();
|
|
11
|
+
|
|
12
|
+
if ($('#compare').length > 0) {
|
|
13
|
+
GBLADMIN.CompareRangeSelect();
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
// Compare Range checkbox toggle
|
|
18
|
+
$("input#compare").on('change', function(event){
|
|
19
|
+
GBLADMIN.DisplayCompareDateRange();
|
|
20
|
+
GBLADMIN.CompareRangeSelect();
|
|
21
|
+
GBLADMIN.ToggleCompare();
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
// Compare Range picker
|
|
25
|
+
$('#compare-options').on('change', function(event){
|
|
26
|
+
GBLADMIN.CompareRangeSelect();
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
// Bootstrap DateRangePicker
|
|
30
|
+
$('input[name="daterange"]').daterangepicker({
|
|
31
|
+
autoUpdateInput: false,
|
|
32
|
+
locale: { cancelLabel: 'Clear' }
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
$('input[name="daterange"]').on('apply.daterangepicker', function(ev, picker) {
|
|
36
|
+
$(this).val(picker.startDate.format('MM/DD/YYYY') + ' - ' + picker.endDate.format('MM/DD/YYYY'));
|
|
37
|
+
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
$('input[name="daterange"]').on('cancel.daterangepicker', function(ev, picker) {
|
|
41
|
+
$(this).val('');
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
$(document).on('ready turbolinks:load', function() {
|
|
45
|
+
GBLADMIN.DisableIfPersisted();
|
|
46
|
+
});
|
|
47
|
+
</script>
|
|
48
|
+
|
|
49
|
+
<script type="module">
|
|
50
|
+
import {Uppy, Dashboard, XHRUpload} from "https://releases.transloadit.com/uppy/v3.6.1/uppy.min.mjs"
|
|
51
|
+
|
|
52
|
+
if (document.getElementsByClassName('uppy-dashboard-container').length > 0) {
|
|
53
|
+
|
|
54
|
+
var closest = function(el, fn) {
|
|
55
|
+
return el && (fn(el) ? el : closest(el.parentNode, fn));
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
var container = document.getElementsByClassName('uppy-dashboard-container')[0];
|
|
59
|
+
var containerForm = closest(container, function(el) { return el.tagName.toLowerCase() == "form" });
|
|
60
|
+
var cachedFileTableEl = containerForm.querySelector("*[data-toggle='cached-files-table']");
|
|
61
|
+
var browseEverythingButton = containerForm.querySelector('*[data-toggle="kithe-browse-everything"]');
|
|
62
|
+
var submitButton = containerForm.querySelector("*[data-toggle='kithe-upload-submit']");
|
|
63
|
+
|
|
64
|
+
var uppy = new Uppy()
|
|
65
|
+
.use(Dashboard, {
|
|
66
|
+
inline: true,
|
|
67
|
+
target: '.uppy-dashboard-container'
|
|
68
|
+
})
|
|
69
|
+
.use(XHRUpload, {
|
|
70
|
+
endpoint: '/direct_upload',
|
|
71
|
+
fieldName: 'file'
|
|
72
|
+
})
|
|
73
|
+
|
|
74
|
+
// Turns a number of bytes into human readable eg "12GB"
|
|
75
|
+
// https://stackoverflow.com/a/38897674
|
|
76
|
+
var fileSizeSI = function(size) {
|
|
77
|
+
var e = (Math.log(size) / Math.log(1e3)) | 0;
|
|
78
|
+
return +(size / Math.pow(1e3, e)).toFixed(1) + ' ' + ('kMGTPEZY'[e - 1] || '') + 'B';
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// Returns the <input type="hidden"> representing a direct-uploaded
|
|
82
|
+
// file, to be sent to controller for attachment. Value will be a JSON
|
|
83
|
+
// serialization of the hash describing the uploaded-to-cache file,
|
|
84
|
+
// to be sent to the controller.
|
|
85
|
+
var makeHiddenFieldForCachedFile = function(shrineHash) {
|
|
86
|
+
var hidden = document.createElement("input");
|
|
87
|
+
hidden.setAttribute("type", "hidden");
|
|
88
|
+
hidden.setAttribute("name", "cached_files[]");
|
|
89
|
+
hidden.setAttribute("value", JSON.stringify(shrineHash));
|
|
90
|
+
|
|
91
|
+
return hidden;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// create a DOM element for a table row that will be the list of succesfully
|
|
95
|
+
// direct uploaded files, including hidden inputs to be submitted with form,
|
|
96
|
+
// and a remove button to remove it from list.
|
|
97
|
+
//
|
|
98
|
+
// With just browser API, yeah, it's a bit ugly code.
|
|
99
|
+
var makeCachedFileRow = function(shrineHash) {
|
|
100
|
+
var row = document.createElement("tr");
|
|
101
|
+
|
|
102
|
+
var firstCell = row.appendChild(document.createElement("td"));
|
|
103
|
+
firstCell.appendChild(makeHiddenFieldForCachedFile(shrineHash));
|
|
104
|
+
firstCell.appendChild(document.createTextNode(shrineHash.metadata.filename));
|
|
105
|
+
|
|
106
|
+
if (shrineHash.metadata.size) {
|
|
107
|
+
var size = fileSizeSI(shrineHash.metadata.size);
|
|
108
|
+
} else {
|
|
109
|
+
var size = "";
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
row.appendChild(document.createElement("td")).innerText = size;
|
|
113
|
+
|
|
114
|
+
// Storage type control, put in params keyed by file ID
|
|
115
|
+
row.appendChild(document.createElement("td")).innerHTML =
|
|
116
|
+
"<select name='storage_type_for[" + shrineHash.id + "]' class='form-control derivative-storage-type'>" +
|
|
117
|
+
"<option>public</option><option>restricted</option>" +
|
|
118
|
+
"</select>";
|
|
119
|
+
|
|
120
|
+
row.appendChild(document.createElement("td")).innerHTML =
|
|
121
|
+
"<button type='button' data-cached-file-remove='true' class='btn btn-link' aria-label='Remove' title='Remove'>" +
|
|
122
|
+
"<i class='fa fa-times-circle' style='font-size: 180%' aria-hidden='true'></i>" +
|
|
123
|
+
"</button>";
|
|
124
|
+
|
|
125
|
+
return row;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
// Upload Success
|
|
129
|
+
// When a file is fully direct uploaded by uppy, we remove it from uppy dashboard,
|
|
130
|
+
// and instead list it in our list of files to be attached on form submit.
|
|
131
|
+
uppy.on("upload-success", function(file, response) {
|
|
132
|
+
var shrineHash = response.body;
|
|
133
|
+
|
|
134
|
+
// add the file to our list that will be submitted with form
|
|
135
|
+
cachedFileTableEl.appendChild(makeCachedFileRow(shrineHash));
|
|
136
|
+
|
|
137
|
+
// And remove from uppy dashboard, we're treating that just as the in-progress
|
|
138
|
+
// list. This means we won't get a `complete` callback though. :(
|
|
139
|
+
uppy.removeFile(file.id);
|
|
140
|
+
});
|
|
141
|
+
|
|
142
|
+
// Upload Complete
|
|
143
|
+
uppy.on('complete', (result) => {
|
|
144
|
+
console.log('Upload complete! We’ve uploaded these files:', result.successful)
|
|
145
|
+
})
|
|
146
|
+
}
|
|
147
|
+
</script>
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
<nav class="navbar fixed-top navbar-expand-lg navbar-light bg-light">
|
|
2
|
+
<a class="navbar-brand" href="<%=root_url%>">
|
|
3
|
+
<strong>G·E·O·M·G</strong>
|
|
4
|
+
</a>
|
|
5
|
+
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
|
|
6
|
+
<span class="navbar-toggler-icon"></span>
|
|
7
|
+
</button>
|
|
8
|
+
<%= form_tag(admin_documents_path, { method: :get, class: "form-inline my-2 my-lg-0" }) do %>
|
|
9
|
+
|
|
10
|
+
<div class="input-group">
|
|
11
|
+
<input name="q" class="form-control" type="search" placeholder="Search documents" aria-label="Search" value="<%= params[:q] ? params[:q] : ''%>">
|
|
12
|
+
<%- if params[:f].present? %>
|
|
13
|
+
<%= params_as_hidden_fields(
|
|
14
|
+
params
|
|
15
|
+
.to_hash
|
|
16
|
+
.with_indifferent_access
|
|
17
|
+
.except(:q, :controller, :action, :commit)
|
|
18
|
+
) %>
|
|
19
|
+
<% end %>
|
|
20
|
+
|
|
21
|
+
<div class="input-group-append">
|
|
22
|
+
<button class="btn btn-outline-secondary my-2 my-sm-0" type="submit">Search</button>
|
|
23
|
+
<button type="button" class="btn btn-outline-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|
24
|
+
<span class="sr-only">Toggle Dropdown</span>
|
|
25
|
+
</button>
|
|
26
|
+
<div class="dropdown-menu">
|
|
27
|
+
<%= link_to "Advanced", admin_advanced_search_path, { class: 'dropdown-item' } %>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
<% end %>
|
|
32
|
+
|
|
33
|
+
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
|
34
|
+
<ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex">
|
|
35
|
+
<% if user_signed_in? %>
|
|
36
|
+
<li class="nav-item">
|
|
37
|
+
<%= link_to admin_notifications_url, { class: 'nav-link' } do %>
|
|
38
|
+
<%= "Notifications #{notifications_badge}".html_safe %>
|
|
39
|
+
<% end %>
|
|
40
|
+
</li>
|
|
41
|
+
<% end %>
|
|
42
|
+
<li class="nav-item dropdown">
|
|
43
|
+
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|
44
|
+
Admin Tools
|
|
45
|
+
</a>
|
|
46
|
+
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
|
|
47
|
+
<%= link_to "Documents", admin_documents_path, {class: 'dropdown-item'} %>
|
|
48
|
+
<%= link_to "Imports", admin_imports_path, {class: 'dropdown-item'} %>
|
|
49
|
+
<%= link_to "Bulk Actions", admin_bulk_actions_path, {class: 'dropdown-item'} %>
|
|
50
|
+
<div class="dropdown-divider"></div>
|
|
51
|
+
<%= link_to "Access Links", admin_document_accesses_path, {class: 'dropdown-item'} %>
|
|
52
|
+
<%= link_to "Download Links", admin_document_downloads_path, {class: 'dropdown-item'} %>
|
|
53
|
+
<div class="dropdown-divider"></div>
|
|
54
|
+
<%= link_to "Blazer", '/blazer', {class: 'dropdown-item', data: { turbolinks: false }} %>
|
|
55
|
+
<div class="dropdown-divider"></div>
|
|
56
|
+
<%= link_to "Elements", admin_elements_path, {class: 'dropdown-item', data: { turbolinks: false }} %>
|
|
57
|
+
<%= link_to "Form Elements", admin_form_elements_path, {class: 'dropdown-item', data: { turbolinks: false }} %>
|
|
58
|
+
<div class="dropdown-divider"></div>
|
|
59
|
+
<%= link_to "Users", admin_users_index_path, {class: 'dropdown-item'} %>
|
|
60
|
+
</div>
|
|
61
|
+
<li class="nav-item">
|
|
62
|
+
<%= link_to "Bookmarks", admin_bookmarks_path, {class: 'nav-link'} if current_user %>
|
|
63
|
+
</li>
|
|
64
|
+
<% if user_signed_in? %>
|
|
65
|
+
<li class="nav-item">
|
|
66
|
+
<%= link_to(current_user.email, edit_user_registration_path, {class: 'nav-link'}) %>
|
|
67
|
+
</li>
|
|
68
|
+
<li class="nav-item">
|
|
69
|
+
<%= link_to "Sign out", destroy_user_session_path, { :method => :delete, class: 'nav-link'} %>
|
|
70
|
+
</li>
|
|
71
|
+
<% else %>
|
|
72
|
+
<li class="nav-item">
|
|
73
|
+
<%= link_to('Sign in', new_user_session_path, {class: 'nav-link'}) %>
|
|
74
|
+
</li>
|
|
75
|
+
<% end %>
|
|
76
|
+
</ul>
|
|
77
|
+
</div>
|
|
78
|
+
</nav>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<nav class="navbar fixed-top navbar-expand-lg navbar-light bg-light">
|
|
2
|
+
<a class="navbar-brand" href="/">
|
|
3
|
+
<strong>G·E·O·M·G</strong>
|
|
4
|
+
</a>
|
|
5
|
+
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
|
|
6
|
+
<span class="navbar-toggler-icon"></span>
|
|
7
|
+
</button>
|
|
8
|
+
<%= form_tag('/documents', { method: :get, class: "form-inline my-2 my-lg-0" }) do %>
|
|
9
|
+
|
|
10
|
+
<div class="input-group">
|
|
11
|
+
<input name="q" class="form-control" type="search" placeholder="Search documents" aria-label="Search" value="<%= params[:q] ? params[:q] : ''%>">
|
|
12
|
+
<%- if params[:f].present? %>
|
|
13
|
+
<%= params_as_hidden_fields(
|
|
14
|
+
params
|
|
15
|
+
.to_hash
|
|
16
|
+
.with_indifferent_access
|
|
17
|
+
.except(:q, :controller, :action, :commit)
|
|
18
|
+
) %>
|
|
19
|
+
<% end %>
|
|
20
|
+
|
|
21
|
+
<div class="input-group-append">
|
|
22
|
+
<button class="btn btn-outline-secondary my-2 my-sm-0" type="submit">Search</button>
|
|
23
|
+
<button type="button" class="btn btn-outline-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|
24
|
+
<span class="sr-only">Toggle Dropdown</span>
|
|
25
|
+
</button>
|
|
26
|
+
<div class="dropdown-menu">
|
|
27
|
+
<%= link_to "Advanced", '/search', { class: 'dropdown-item' } %>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
<% end %>
|
|
32
|
+
|
|
33
|
+
<!-- Collect the nav links, forms, and other content for toggling -->
|
|
34
|
+
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
|
|
35
|
+
<ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex">
|
|
36
|
+
<li class="nav-item">
|
|
37
|
+
<%= link_to "Blazer · Business Intelligence Tools".html_safe, '/blazer', {class: 'nav-link'} if current_user %>
|
|
38
|
+
</li>
|
|
39
|
+
</ul>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
</nav>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<%-
|
|
2
|
+
schema_warning = false
|
|
3
|
+
if File.exist?(Rails.root.join("tmp/schema_timestamp.txt").to_s)
|
|
4
|
+
current_timestamp = File.read(Rails.root.join("tmp/schema_timestamp.txt").to_s)
|
|
5
|
+
if current_timestamp != GEOMG_SCHEMA_TIMESTAMP
|
|
6
|
+
schema_warning = true
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
%>
|
|
10
|
+
|
|
11
|
+
<%- if schema_warning %>
|
|
12
|
+
<div class="alert alert-danger" role="alert">
|
|
13
|
+
<strong>Warning:</strong> The project's metadata schema has changed. You need to restart the application server.
|
|
14
|
+
</div>
|
|
15
|
+
<%- end %>
|
|
16
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!-- Toast -->
|
|
2
|
+
<div class="toast" role="alert" aria-live="assertive" aria-atomic="true" style="position:relative; top:0; right:0;" data-delay="5000">
|
|
3
|
+
<div class="toast-header">
|
|
4
|
+
<strong class="mr-auto">GEOMG</strong>
|
|
5
|
+
<small class="text-muted">just now</small>
|
|
6
|
+
<button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close">
|
|
7
|
+
<span aria-hidden="true">×</span>
|
|
8
|
+
</button>
|
|
9
|
+
</div>
|
|
10
|
+
<div class="toast-body">
|
|
11
|
+
<%= toast %>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<%- @page_title = "GEOMG - Users" %>
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
<h1 style="width:100%; margin-bottom:2rem;">
|
|
5
|
+
Users
|
|
6
|
+
<%= link_to '+ New User', new_user_invitation_path, {class: 'btn btn-primary float-right'} %>
|
|
7
|
+
</h1>
|
|
8
|
+
|
|
9
|
+
<table class="table table-striped table-bordered sortable">
|
|
10
|
+
<thead class="thead-dark">
|
|
11
|
+
<tr>
|
|
12
|
+
<th class="header">Email</th>
|
|
13
|
+
<tr>
|
|
14
|
+
<tbody>
|
|
15
|
+
<% @users.each do |user| %>
|
|
16
|
+
<tr>
|
|
17
|
+
<td><%= user.email %><br/></td>
|
|
18
|
+
</tr>
|
|
19
|
+
<% end %>
|
|
20
|
+
</tbody>
|
|
21
|
+
</table>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# This is a configuration file for the `qa` (questioning authorities) gem, to create a local
|
|
2
|
+
# authority. It looks for the configuration file at this exact location.
|
|
3
|
+
#
|
|
4
|
+
# WARNING: Do not edit this data without changing existing metadata; additions are fine.
|
|
5
|
+
terms:
|
|
6
|
+
- ArcGRID
|
|
7
|
+
- DEM
|
|
8
|
+
- Feature Class
|
|
9
|
+
- Files
|
|
10
|
+
- GeoDatabase
|
|
11
|
+
- GeoJSON
|
|
12
|
+
- GeoPackage
|
|
13
|
+
- GeoTIFF
|
|
14
|
+
- Imagery
|
|
15
|
+
- JPEG
|
|
16
|
+
- JPEG2000
|
|
17
|
+
- Mixed
|
|
18
|
+
- MrSID
|
|
19
|
+
- PDF
|
|
20
|
+
- PNG
|
|
21
|
+
- Raster Dataset
|
|
22
|
+
- Shapefile
|
|
23
|
+
- Tabular Data
|
|
24
|
+
- TIFF
|
|
25
|
+
- Web Application
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# This is a configuration file for the `qa` (questioning authorities) gem, to create a local
|
|
2
|
+
# authority. It looks for the configuration file at this exact location.
|
|
3
|
+
#
|
|
4
|
+
# WARNING: Do not edit this data without changing existing metadata; additions are fine.
|
|
5
|
+
terms:
|
|
6
|
+
- Afrikaans
|
|
7
|
+
- Arabic
|
|
8
|
+
- Bulgarian
|
|
9
|
+
- Catalan
|
|
10
|
+
- Chinese
|
|
11
|
+
- Croatian
|
|
12
|
+
- Czech
|
|
13
|
+
- Danish
|
|
14
|
+
- Dutch
|
|
15
|
+
- English
|
|
16
|
+
- Esperanto
|
|
17
|
+
- Estonian
|
|
18
|
+
- Finnish
|
|
19
|
+
- French
|
|
20
|
+
- Galician
|
|
21
|
+
- German
|
|
22
|
+
- German, Middle High
|
|
23
|
+
- Greek, Ancient (to 1453)
|
|
24
|
+
- Greek, Modern (1453-)
|
|
25
|
+
- Hebrew
|
|
26
|
+
- Hungarian
|
|
27
|
+
- Icelandic
|
|
28
|
+
- Indonesian
|
|
29
|
+
- Italian
|
|
30
|
+
- Japanese
|
|
31
|
+
- Latin
|
|
32
|
+
- Latvian
|
|
33
|
+
- Norwegian
|
|
34
|
+
- Polish
|
|
35
|
+
- Portuguese
|
|
36
|
+
- Romani
|
|
37
|
+
- Romanian
|
|
38
|
+
- Russian
|
|
39
|
+
- Serbian
|
|
40
|
+
- Slovak
|
|
41
|
+
- Slovenian
|
|
42
|
+
- Spanish
|
|
43
|
+
- Swazi
|
|
44
|
+
- Swedish
|
|
45
|
+
- Tahitian
|
|
46
|
+
- Tereno
|
|
47
|
+
- Thai
|
|
48
|
+
- Turkish
|
|
49
|
+
- Ukrainian
|
|
50
|
+
- Yiddish
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# This is a configuration file for the `qa` (questioning authorities) gem, to create a local
|
|
2
|
+
# authority. It looks for the configuration file at this exact location.
|
|
3
|
+
#
|
|
4
|
+
# WARNING: Do not edit this data without changing existing metadata; additions are fine.
|
|
5
|
+
terms:
|
|
6
|
+
- Aerial photographs
|
|
7
|
+
- Aerial views
|
|
8
|
+
- Aeronautical charts
|
|
9
|
+
- Armillary spheres
|
|
10
|
+
- Astronautical charts
|
|
11
|
+
- Astronomical models
|
|
12
|
+
- Atlases
|
|
13
|
+
- Bathymetric maps
|
|
14
|
+
- Block diagrams
|
|
15
|
+
- Bottle-charts
|
|
16
|
+
- Cadastral maps
|
|
17
|
+
- Cartographic materials
|
|
18
|
+
- Cartographic materials for people with visual disabilities
|
|
19
|
+
- Celestial charts
|
|
20
|
+
- Celestial globes
|
|
21
|
+
- Census data
|
|
22
|
+
- Children's atlases
|
|
23
|
+
- Children's maps
|
|
24
|
+
- Comparative maps
|
|
25
|
+
- Composite atlases
|
|
26
|
+
- Digital elevation models
|
|
27
|
+
- Digital maps
|
|
28
|
+
- Early maps
|
|
29
|
+
- Ephemerides
|
|
30
|
+
- Ethnographic maps
|
|
31
|
+
- Fire insurance maps
|
|
32
|
+
- Flow maps
|
|
33
|
+
- Gazetteers
|
|
34
|
+
- Geological cross-sections
|
|
35
|
+
- Geological maps
|
|
36
|
+
- Globes
|
|
37
|
+
- Gores (Maps)
|
|
38
|
+
- Gravity anomaly maps
|
|
39
|
+
- Index maps
|
|
40
|
+
- LiDAR
|
|
41
|
+
- Line data
|
|
42
|
+
- Linguistic atlases
|
|
43
|
+
- Loran charts
|
|
44
|
+
- Manuscript maps
|
|
45
|
+
- Mappae mundi
|
|
46
|
+
- Mental maps
|
|
47
|
+
- Mesh data
|
|
48
|
+
- Meteorological charts
|
|
49
|
+
- Military maps
|
|
50
|
+
- Mine maps
|
|
51
|
+
- Miniature maps
|
|
52
|
+
- Multi-spectral data
|
|
53
|
+
- Nautical charts
|
|
54
|
+
- Outline maps
|
|
55
|
+
- Photogrammetric maps
|
|
56
|
+
- Photomaps
|
|
57
|
+
- Physical maps
|
|
58
|
+
- Pictorial maps
|
|
59
|
+
- Plotting charts
|
|
60
|
+
- Point cloud data
|
|
61
|
+
- Point data
|
|
62
|
+
- Polygon data
|
|
63
|
+
- Portolan charts
|
|
64
|
+
- Quadrangle maps
|
|
65
|
+
- Raster data
|
|
66
|
+
- Relief models
|
|
67
|
+
- Remote-sensing maps
|
|
68
|
+
- Road maps
|
|
69
|
+
- Satellite imagery
|
|
70
|
+
- Statistical maps
|
|
71
|
+
- Stick charts
|
|
72
|
+
- Strip maps
|
|
73
|
+
- Table data
|
|
74
|
+
- Thematic maps
|
|
75
|
+
- Topographic maps
|
|
76
|
+
- Tourist maps
|
|
77
|
+
- Upside-down maps
|
|
78
|
+
- Wall maps
|
|
79
|
+
- World atlases
|
|
80
|
+
- World maps
|
|
81
|
+
- Worm's-eye views
|
|
82
|
+
- Zoning maps
|
data/config/blazer.yml
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# see https://github.com/ankane/blazer for more info
|
|
2
|
+
|
|
3
|
+
data_sources:
|
|
4
|
+
main:
|
|
5
|
+
url: <%= ENV["BLAZER_DATABASE_URL"] %>
|
|
6
|
+
|
|
7
|
+
# statement timeout, in seconds
|
|
8
|
+
# none by default
|
|
9
|
+
# timeout: 15
|
|
10
|
+
|
|
11
|
+
# caching settings
|
|
12
|
+
# can greatly improve speed
|
|
13
|
+
# off by default
|
|
14
|
+
# cache:
|
|
15
|
+
# mode: slow # or all
|
|
16
|
+
# expires_in: 60 # min
|
|
17
|
+
# slow_threshold: 15 # sec, only used in slow mode
|
|
18
|
+
|
|
19
|
+
# wrap queries in a transaction for safety
|
|
20
|
+
# not necessary if you use a read-only user
|
|
21
|
+
# true by default
|
|
22
|
+
# use_transaction: false
|
|
23
|
+
|
|
24
|
+
smart_variables:
|
|
25
|
+
# zone_id: "SELECT id, name FROM zones ORDER BY name ASC"
|
|
26
|
+
# period: ["day", "week", "month"]
|
|
27
|
+
# status: {0: "Active", 1: "Archived"}
|
|
28
|
+
|
|
29
|
+
linked_columns:
|
|
30
|
+
# user_id: "/admin/users/{value}"
|
|
31
|
+
|
|
32
|
+
smart_columns:
|
|
33
|
+
# user_id: "SELECT id, name FROM users WHERE id IN {value}"
|
|
34
|
+
|
|
35
|
+
# create audits
|
|
36
|
+
audit: true
|
|
37
|
+
|
|
38
|
+
# change the time zone
|
|
39
|
+
# time_zone: "Pacific Time (US & Canada)"
|
|
40
|
+
|
|
41
|
+
# class name of the user model
|
|
42
|
+
# user_class: User
|
|
43
|
+
|
|
44
|
+
# method name for the current user
|
|
45
|
+
# user_method: current_user
|
|
46
|
+
|
|
47
|
+
# method name for the display name
|
|
48
|
+
# user_name: name
|
|
49
|
+
|
|
50
|
+
# custom before_action to use for auth
|
|
51
|
+
# before_action_method: require_admin
|
|
52
|
+
|
|
53
|
+
# email to send checks from
|
|
54
|
+
# from_email: blazer@example.org
|
|
55
|
+
|
|
56
|
+
# webhook for Slack
|
|
57
|
+
# slack_webhook_url: <%= ENV["BLAZER_SLACK_WEBHOOK_URL"] %>
|
|
58
|
+
|
|
59
|
+
check_schedules:
|
|
60
|
+
- "1 day"
|
|
61
|
+
- "1 hour"
|
|
62
|
+
- "5 minutes"
|
|
63
|
+
|
|
64
|
+
# enable anomaly detection
|
|
65
|
+
# note: with trend, time series are sent to https://trendapi.org
|
|
66
|
+
# anomaly_checks: prophet / trend / anomaly_detection
|
|
67
|
+
|
|
68
|
+
# enable forecasting
|
|
69
|
+
# note: with trend, time series are sent to https://trendapi.org
|
|
70
|
+
# forecasting: prophet / trend
|
|
71
|
+
|
|
72
|
+
# enable map
|
|
73
|
+
mapbox_access_token: <%= ENV["MAPBOX_ACCESS_TOKEN"] %>
|
|
74
|
+
|
|
75
|
+
# enable uploads
|
|
76
|
+
uploads:
|
|
77
|
+
url: <%= ENV["BLAZER_DATABASE_URL"] %>
|
|
78
|
+
schema: blazer_uploads
|
|
79
|
+
data_source: main
|