blacklight-spotlight 1.5.1 → 2.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (119) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -3
  3. data/app/assets/javascripts/spotlight/translation_progress.js +23 -0
  4. data/app/assets/stylesheets/spotlight/_spotlight.scss +2 -0
  5. data/app/assets/stylesheets/spotlight/_translations.scss +47 -0
  6. data/app/assets/stylesheets/spotlight/_utilities.scss +3 -0
  7. data/app/assets/stylesheets/spotlight/_variables.scss +5 -0
  8. data/app/controllers/concerns/spotlight/controller.rb +12 -1
  9. data/app/controllers/spotlight/about_pages_controller.rb +6 -0
  10. data/app/controllers/spotlight/browse_controller.rb +1 -1
  11. data/app/controllers/spotlight/catalog_controller.rb +6 -1
  12. data/app/controllers/spotlight/exhibits_controller.rb +10 -2
  13. data/app/controllers/spotlight/feature_pages_controller.rb +6 -0
  14. data/app/controllers/spotlight/filters_controller.rb +2 -2
  15. data/app/controllers/spotlight/home_pages_controller.rb +10 -0
  16. data/app/controllers/spotlight/languages_controller.rb +46 -0
  17. data/app/controllers/spotlight/pages_controller.rb +57 -3
  18. data/app/controllers/spotlight/solr_controller.rb +3 -3
  19. data/app/controllers/spotlight/translations_controller.rb +34 -0
  20. data/app/helpers/spotlight/application_helper.rb +1 -0
  21. data/app/helpers/spotlight/languages_helper.rb +33 -0
  22. data/app/helpers/spotlight/translations_helper.rb +13 -0
  23. data/app/models/concerns/spotlight/custom_translation_extension.rb +4 -0
  24. data/app/models/concerns/spotlight/translatables.rb +30 -0
  25. data/app/models/spotlight/ability.rb +5 -2
  26. data/app/models/spotlight/about_page.rb +1 -1
  27. data/app/models/spotlight/exhibit.rb +14 -6
  28. data/app/models/spotlight/feature_page.rb +1 -2
  29. data/app/models/spotlight/home_page.rb +1 -3
  30. data/app/models/spotlight/language.rb +24 -0
  31. data/app/models/spotlight/main_navigation.rb +12 -0
  32. data/app/models/spotlight/page.rb +53 -1
  33. data/app/models/spotlight/resources/upload.rb +6 -1
  34. data/app/models/spotlight/search.rb +4 -0
  35. data/app/services/spotlight/clone_translated_page_from_locale.rb +32 -0
  36. data/app/views/_user_util_links.html.erb +1 -0
  37. data/app/views/devise/mailer/invitation_instructions.html.erb +2 -2
  38. data/app/views/layouts/spotlight/spotlight.html.erb +2 -2
  39. data/app/views/shared/_curated_features_navbar.html.erb +2 -2
  40. data/app/views/spotlight/about_pages/_sidebar.html.erb +1 -1
  41. data/app/views/spotlight/admin_users/index.html.erb +1 -1
  42. data/app/views/spotlight/catalog/_edit_default.html.erb +1 -1
  43. data/app/views/spotlight/exhibits/_export.html.erb +1 -1
  44. data/app/views/spotlight/exhibits/_form.html.erb +1 -1
  45. data/app/views/spotlight/exhibits/_import.html.erb +2 -1
  46. data/app/views/spotlight/exhibits/_languages.html.erb +56 -0
  47. data/app/views/spotlight/exhibits/edit.html.erb +11 -5
  48. data/app/views/spotlight/feature_pages/_sidebar.html.erb +1 -1
  49. data/app/views/spotlight/filters/_form.html.erb +2 -1
  50. data/app/views/spotlight/resources/upload/_form.html.erb +1 -1
  51. data/app/views/spotlight/shared/_curation_sidebar.html.erb +5 -0
  52. data/app/views/spotlight/shared/_locale_picker.html.erb +14 -0
  53. data/app/views/spotlight/translations/_browse_categories.html.erb +67 -0
  54. data/app/views/spotlight/translations/_general.html.erb +176 -0
  55. data/app/views/spotlight/translations/_metadata.html.erb +67 -0
  56. data/app/views/spotlight/translations/_page.html.erb +45 -0
  57. data/app/views/spotlight/translations/_pages.html.erb +37 -0
  58. data/app/views/spotlight/translations/_pages_table.html.erb +15 -0
  59. data/app/views/spotlight/translations/_search_fields.html.erb +97 -0
  60. data/app/views/spotlight/translations/edit.html.erb +55 -0
  61. data/config/i18n-tasks.yml +81 -0
  62. data/config/locales/devise.en.yml +2 -1
  63. data/config/locales/spotlight.en.yml +657 -614
  64. data/config/routes.rb +19 -1
  65. data/db/migrate/20180308203409_create_spotlight_languages.rb +12 -0
  66. data/db/migrate/20180403130857_translation_uniqueness.rb +5 -0
  67. data/db/migrate/20180405044000_add_locale_to_pages.rb +6 -0
  68. data/db/migrate/20180406212516_add_default_locale_reference_to_spotlight_pages.rb +7 -0
  69. data/lib/generators/spotlight/templates/catalog_controller.rb +2 -2
  70. data/lib/generators/spotlight/templates/config/initializers/spotlight_initializer.rb +14 -4
  71. data/lib/generators/spotlight/templates/config/initializers/translation.rb +4 -2
  72. data/lib/migration/page_language.rb +27 -0
  73. data/lib/spotlight/engine.rb +32 -4
  74. data/lib/spotlight/upload_field_config.rb +27 -0
  75. data/lib/spotlight/version.rb +1 -1
  76. data/lib/tasks/spotlight_tasks.rake +6 -0
  77. data/spec/controllers/spotlight/about_pages_controller_spec.rb +67 -1
  78. data/spec/controllers/spotlight/feature_pages_controller_spec.rb +50 -0
  79. data/spec/controllers/spotlight/filters_controller_spec.rb +4 -4
  80. data/spec/controllers/spotlight/home_pages_controller_spec.rb +25 -0
  81. data/spec/controllers/spotlight/languages_controller_spec.rb +66 -0
  82. data/spec/controllers/spotlight/pages_controller_spec.rb +45 -0
  83. data/spec/controllers/spotlight/solr_controller_spec.rb +1 -1
  84. data/spec/controllers/spotlight/translations_controller_spec.rb +67 -0
  85. data/spec/examples.txt +1171 -1281
  86. data/spec/factories/exhibits.rb +1 -1
  87. data/spec/factories/language.rb +6 -0
  88. data/spec/factories/main_navigation.rb +7 -0
  89. data/spec/factories/searches.rb +1 -0
  90. data/spec/factories/tags.rb +1 -0
  91. data/spec/features/exhibits/language_create_edit_spec.rb +53 -0
  92. data/spec/features/exhibits/translation_editing_spec.rb +397 -0
  93. data/spec/features/javascript/locale_selector_spec.rb +61 -0
  94. data/spec/helpers/spotlight/languages_helper_spec.rb +73 -0
  95. data/spec/helpers/spotlight/translations_helper_spec.rb +16 -0
  96. data/spec/i18n_spec.rb +29 -0
  97. data/spec/lib/migration/page_language_spec.rb +21 -0
  98. data/spec/lib/spotlight/upload_field_config_spec.rb +24 -0
  99. data/spec/models/spotlight/ability_spec.rb +17 -4
  100. data/spec/models/spotlight/exhibit_spec.rb +49 -0
  101. data/spec/models/spotlight/language_spec.rb +41 -0
  102. data/spec/models/spotlight/page_spec.rb +109 -0
  103. data/spec/models/translation_spec.rb +11 -0
  104. data/spec/services/spotlight/clone_translated_page_from_locale_spec.rb +29 -0
  105. data/spec/spec_helper.rb +1 -13
  106. data/spec/support/disable_friendly_id_deprecation_warnings.rb +7 -6
  107. data/spec/test_app_templates/Gemfile.extra +3 -0
  108. data/spec/test_app_templates/catalog_controller.rb +31 -31
  109. data/spec/test_app_templates/lib/generators/test_app_generator.rb +9 -6
  110. data/spec/views/spotlight/contacts/edit.html.erb_spec.rb +13 -0
  111. data/spec/views/spotlight/exhibits/_form.html.erb_spec.rb +33 -0
  112. data/spec/views/spotlight/exhibits/edit.html.erb_spec.rb +4 -1
  113. data/spec/views/spotlight/resources/_external_resources_form.html.erb_spec.rb +13 -0
  114. data/spec/views/spotlight/resources/new.html.erb_spec.rb +10 -4
  115. data/spec/views/spotlight/translations/_page.html.erb_spec.rb +75 -0
  116. metadata +88 -28
  117. data/app/assets/javascripts/spotlight/sir-trevor.js +0 -0
  118. data/app/views/shared/_share_follow.html.erb +0 -5
  119. data/config/locales/social_share_button.en.yml +0 -18
@@ -0,0 +1,67 @@
1
+ <div role="tabpanel" class="tab-pane <%= 'active' if @tab == 'metadata' %>" id="metadata">
2
+ <%= bootstrap_form_for current_exhibit, url: spotlight.exhibit_translations_path(current_exhibit), layout: :horizontal do |f| %>
3
+ <% # Add a hidden field for the language so the redirect knows how to come back here %>
4
+ <%= hidden_field_tag :language, @language %>
5
+ <%= hidden_field_tag :tab, 'metadata' %>
6
+
7
+ <% non_custom_metadata_fields.each do |key, field_config| %>
8
+ <% translation = Translation.find_or_initialize_by(exhibit: current_exhibit, key: "blacklight.search.fields.#{key}", locale: @language) %>
9
+ <%= f.fields_for :translations, translation do |translation_fields| %>
10
+ <%= translation_fields.hidden_field :key %>
11
+ <%= translation_fields.hidden_field :locale %>
12
+
13
+ <div data-translation-progress-item='true' class='form-group translation-form'>
14
+ <%= translation_fields.label :value, t("spotlight.search.fields.#{key}", default: field_config.label, locale: I18n.default_locale), class: 'control-label col-xs-12 col-sm-2' %>
15
+ <div class='col-xs-11 col-sm-9 panel panel-body panel-translation'>
16
+ <%= translation_fields.text_field_without_bootstrap :value, class: 'form-control' %>
17
+ <p class="help-block">
18
+ <%= field_config.label %>
19
+ </p>
20
+ </div>
21
+ <div class='col-xs-1'>
22
+ <% if translation.value.present? %>
23
+ <span data-translation-present="true" class='glyphicon glyphicon-ok'></span>
24
+ <% end %>
25
+ </div>
26
+ </div>
27
+ <% end %>
28
+ <% end %>
29
+
30
+ <% if current_exhibit.custom_fields.any? %>
31
+ <div class='translation-exhibit-specific-fields'>
32
+ <h2 class='translation-subheading'>
33
+ <%= t('spotlight.exhibits.translations.metadata.exhibit_specific_fields.label') %>
34
+ </h2>
35
+
36
+ <% current_exhibit.custom_fields.each do |custom_field| %>
37
+ <% translation = Translation.find_or_initialize_by(exhibit: current_exhibit, key: "blacklight.search.fields.#{custom_field.field}", locale: @language) %>
38
+ <%= f.fields_for :translations, translation do |translation_fields| %>
39
+ <%= translation_fields.hidden_field :key %>
40
+ <%= translation_fields.hidden_field :locale %>
41
+
42
+ <div data-translation-progress-item='true' class='form-group translation-form'>
43
+ <%= translation_fields.label :value, t("spotlight.search.fields.#{custom_field.field}", default: custom_field.configuration['label'], locale: I18n.default_locale), class: 'control-label col-xs-12 col-sm-2' %>
44
+ <div class='col-xs-11 col-sm-9 panel panel-body panel-translation'>
45
+ <%= translation_fields.text_field_without_bootstrap :value, class: 'form-control' %>
46
+ <p class="help-block">
47
+ <%= custom_field.configuration['label'] %>
48
+ </p>
49
+ </div>
50
+ <div class='col-xs-1'>
51
+ <% if translation.value.present? %>
52
+ <span data-translation-present="true" class='glyphicon glyphicon-ok'></span>
53
+ <% end %>
54
+ </div>
55
+ </div>
56
+ <% end %>
57
+ <% end %>
58
+ </div>
59
+ <% end %>
60
+
61
+ <div class="form-actions">
62
+ <div class="primary-actions">
63
+ <%= f.submit nil, class: 'btn btn-primary' %>
64
+ </div>
65
+ </div>
66
+ <% end %>
67
+ </div>
@@ -0,0 +1,45 @@
1
+ <% translated_page = page.translated_page_for(@language.downcase) %>
2
+ <tr data-translation-progress-item="true">
3
+ <td>
4
+ <%= link_to page.title, polymorphic_path([spotlight, current_exhibit, page]) %>
5
+ <p class="<%= 'default-page-outdated' if page.updated_after? translated_page %>">
6
+ <%= l(page.updated_at, format: :long) %>
7
+ </p>
8
+ </td>
9
+ <td class="text-center">
10
+ <% if page.published? %>
11
+ <span class="glyphicon glyphicon-ok"></span>
12
+ <% end %>
13
+ </td>
14
+ <td>
15
+ <% if translated_page %>
16
+ <%= link_to(translated_page.title, polymorphic_path([spotlight, current_exhibit, translated_page], locale: @language), data: { 'translation-present': 'true'}) %>
17
+ <p>
18
+ <%= l(translated_page.updated_at, format: :long) %>
19
+ <% if page.updated_after? translated_page %>
20
+ <span class="glyphicon glyphicon-alert"></span>
21
+ <% end %>
22
+ </p>
23
+ <% else %>
24
+ <%= t('spotlight.exhibits.translations.pages.no_translated_page') %>
25
+ <%= link_to(t('spotlight.exhibits.translations.pages.new'), polymorphic_path([:clone, current_exhibit, page], language: @language)) %>
26
+ <% end %>
27
+ </td>
28
+ <td class="text-center">
29
+ <%= f.fields_for :pages, translated_page do |p| %>
30
+ <%= p.hidden_field :id %>
31
+ <%= p.label :published, class: 'sr-only' %>
32
+ <%= p.check_box_without_bootstrap :published, disabled: p.object.home_page? %>
33
+ <% end if translated_page %>
34
+ </td>
35
+ <td class="text-center">
36
+ <% if translated_page %>
37
+ <%= link_to(t('spotlight.exhibits.translations.pages.edit'), polymorphic_path([:edit, current_exhibit, translated_page], locale: @language)) %> &middot;
38
+ <%= link_to(t('spotlight.exhibits.translations.pages.recreate'), polymorphic_path([:clone, current_exhibit, page], language: @language), data: { confirm: t('spotlight.exhibits.translations.pages.recreate_are_you_sure') }) %>
39
+ <% if page.feature_page? || page.about_page? %>
40
+ &middot;
41
+ <%= link_to(t('spotlight.exhibits.translations.pages.destroy'), polymorphic_path([current_exhibit, translated_page], locale: @language), method: :delete, data: { confirm: t('spotlight.exhibits.translations.pages.destroy_are_you_sure') }) %>
42
+ <% end %>
43
+ <% end %>
44
+ </td>
45
+ </tr>
@@ -0,0 +1,37 @@
1
+ <div role="tabpanel" class="tab-pane <%= 'active' if @tab == 'pages' %>" id="pages">
2
+ <p class="help-block"><%= t('spotlight.exhibits.translations.pages.help_html') %></p>
3
+
4
+ <%= bootstrap_form_for @exhibit, url: polymorphic_path([:update_all, @exhibit, :pages]), layout: :horizontal, control_col: 'col-sm-10', html: {:'data-form-observer' => true} do |f| %>
5
+ <div class="translation-home-page-settings">
6
+ <h2 class="translation-subheading">
7
+ <%= t('spotlight.exhibits.translations.pages.home_page.label') %>
8
+ </h2>
9
+ <%= render 'pages_table', pages: [current_exhibit.home_page], f: f %>
10
+ </div>
11
+
12
+ <% if current_exhibit.feature_pages.any? %>
13
+ <div class="translation-feature-page-settings">
14
+ <h2 class="translation-subheading">
15
+ <%= t('spotlight.exhibits.translations.pages.feature_pages.label') %>
16
+ </h2>
17
+
18
+ <%= render 'pages_table', pages: current_exhibit.feature_pages.for_default_locale, f: f %>
19
+ </div>
20
+ <% end %>
21
+
22
+ <% if current_exhibit.about_pages.any? %>
23
+ <div class="translation-about-page-settings">
24
+ <h2 class="translation-subheading">
25
+ <%= t('spotlight.exhibits.translations.pages.about_pages.label') %>
26
+ </h2>
27
+
28
+ <%= render 'pages_table', pages: current_exhibit.about_pages.for_default_locale, f: f %>
29
+ </div>
30
+ <% end %>
31
+ <div class="form-actions">
32
+ <div class="primary-actions">
33
+ <%= f.submit nil, class: 'btn btn-primary' %>
34
+ </div>
35
+ </div>
36
+ <% end %>
37
+ </div>
@@ -0,0 +1,15 @@
1
+ <table class="table table-striped">
2
+ <thead>
3
+ <tr>
4
+ <th><%= t('spotlight.exhibits.translations.pages.table_header.last_updated', language: t(:"locales.#{I18n.default_locale.downcase}")) %></th>
5
+ <th class="text-center"><%= t('spotlight.exhibits.translations.pages.table_header.default_published') %></th>
6
+ <th><%= t('spotlight.exhibits.translations.pages.table_header.last_updated', language: t(:"locales.#{@language.downcase}")) %></th>
7
+ <th class='text-center'><%= t('spotlight.exhibits.translations.pages.table_header.language_published') %></th>
8
+ <th class='text-center'><%= t('spotlight.exhibits.translations.pages.table_header.actions') %></th>
9
+ </tr>
10
+ </thead>
11
+
12
+ <tbody>
13
+ <%= render partial: 'page', collection: pages, locals: { f: f } %>
14
+ </tbody>
15
+ </table>
@@ -0,0 +1,97 @@
1
+ <div role="tabpanel" class="tab-pane <%= 'active' if @tab == 'search_fields' %>" id="search_fields">
2
+ <%= bootstrap_form_for current_exhibit, url: spotlight.exhibit_translations_path(current_exhibit), layout: :horizontal do |f| %>
3
+ <% # Add hidden fields for the language and tab so the redirect knows how to come back here %>
4
+ <%= hidden_field_tag :language, @language %>
5
+ <%= hidden_field_tag :tab, 'search_fields' %>
6
+
7
+ <div class='translation-field-based-search-fields'>
8
+ <h2 class='translation-subheading'>
9
+ <%= t('spotlight.exhibits.translations.search_fields.field_based_search_fields.label') %>
10
+ </h2>
11
+
12
+ <% current_exhibit.blacklight_config.search_fields.select { |_, config| config.if }.each do |key, search_config| %>
13
+ <% translation = Translation.find_or_initialize_by(exhibit: current_exhibit, key: "blacklight.search.fields.search.#{key}", locale: @language) %>
14
+ <%= f.fields_for :translations, translation do |translation_fields| %>
15
+ <%= translation_fields.hidden_field :key %>
16
+ <%= translation_fields.hidden_field :locale %>
17
+ <div data-translation-progress-item='true' class='form-group translation-form'>
18
+ <%= translation_fields.label :value, t("spotlight.search.fields.search.#{key}", locale: I18n.default_locale), class: 'control-label col-xs-12 col-sm-2' %>
19
+ <div class='col-xs-11 col-sm-9 panel panel-body panel-translation'>
20
+ <%= translation_fields.text_field_without_bootstrap :value, class: 'form-control' %>
21
+ <p class="help-block">
22
+ <%= search_config.label %>
23
+ </p>
24
+ </div>
25
+ <div class='col-xs-1'>
26
+ <% if translation.value.present? %>
27
+ <span data-translation-present="true" class='glyphicon glyphicon-ok'></span>
28
+ <% end %>
29
+ </div>
30
+ </div>
31
+ <% end %>
32
+ <% end %>
33
+ </div>
34
+
35
+ <div class='translation-facet-fields'>
36
+ <h2 class='translation-subheading'>
37
+ <%= t('spotlight.exhibits.translations.search_fields.facet_fields.label') %>
38
+ </h2>
39
+
40
+ <% current_exhibit.blacklight_config.facet_fields.each do |key, facet_config| %>
41
+ <% translation = Translation.find_or_initialize_by(exhibit: current_exhibit, key: "blacklight.search.fields.facet.#{key}", locale: @language) %>
42
+ <%= f.fields_for :translations, translation do |translation_fields| %>
43
+ <%= translation_fields.hidden_field :key %>
44
+ <%= translation_fields.hidden_field :locale %>
45
+ <div data-translation-progress-item='true' class='form-group translation-form'>
46
+ <%= translation_fields.label :value, t("spotlight.search.fields.facet.#{key}", locale: I18n.default_locale), class: 'control-label col-xs-12 col-sm-2' %>
47
+ <div class='col-xs-11 col-sm-9 panel panel-body panel-translation'>
48
+ <%= translation_fields.text_field_without_bootstrap :value, class: 'form-control' %>
49
+ <p class="help-block">
50
+ <%= facet_config.label %>
51
+ </p>
52
+ </div>
53
+ <div class='col-xs-1'>
54
+ <% if translation.value.present? %>
55
+ <span data-translation-present="true" class='glyphicon glyphicon-ok'></span>
56
+ <% end %>
57
+ </div>
58
+ </div>
59
+ <% end %>
60
+ <% end %>
61
+ </div>
62
+
63
+ <div class='translation-sort-fields'>
64
+ <h2 class='translation-subheading'>
65
+ <%= t('spotlight.exhibits.translations.search_fields.sort_fields.label') %>
66
+ </h2>
67
+
68
+ <% current_exhibit.blacklight_config.sort_fields.each do |key, sort_config| %>
69
+ <% translation = Translation.find_or_initialize_by(exhibit: current_exhibit, key: "blacklight.search.fields.sort.#{key}", locale: @language) %>
70
+ <%= f.fields_for :translations, translation do |translation_fields| %>
71
+ <%= translation_fields.hidden_field :key %>
72
+ <%= translation_fields.hidden_field :locale %>
73
+ <div data-translation-progress-item='true' class='form-group translation-form'>
74
+ <%= translation_fields.label :value, t("spotlight.search.fields.sort.#{key}", locale: I18n.default_locale), class: 'control-label col-xs-12 col-sm-2' %>
75
+ <div class='col-xs-11 col-sm-9 panel panel-body panel-translation'>
76
+ <%= translation_fields.text_field_without_bootstrap :value, class: 'form-control' %>
77
+ <p class="help-block">
78
+ <%= sort_config.label %>
79
+ </p>
80
+ </div>
81
+ <div class='col-xs-1'>
82
+ <% if translation.value.present? %>
83
+ <span data-translation-present="true" class='glyphicon glyphicon-ok'></span>
84
+ <% end %>
85
+ </div>
86
+ </div>
87
+ <% end %>
88
+ <% end %>
89
+ </div>
90
+
91
+ <div class="form-actions">
92
+ <div class="primary-actions">
93
+ <%= f.submit nil, class: 'btn btn-primary' %>
94
+ </div>
95
+ </div>
96
+ <% end %>
97
+ </div>
@@ -0,0 +1,55 @@
1
+ <%= render 'spotlight/shared/exhibit_sidebar' %>
2
+
3
+ <div class='col-md-9 translation-edit-form'>
4
+ <%= curation_page_title t('spotlight.exhibits.translations.title') %>
5
+
6
+ <div class='text-center'>
7
+ <ul class='nav nav-pills inline-block'>
8
+ <% current_exhibit.available_locales.each do |language| %>
9
+ <li role="presentation" class="<%= 'active' if @language == language %>">
10
+ <%= link_to spotlight.edit_exhibit_translations_path(current_exhibit, language: language) do %>
11
+ <%= t("locales.#{language.downcase}") %>
12
+ <% end %>
13
+ </li>
14
+ <% end %>
15
+ </ul>
16
+ </div>
17
+
18
+ <div role="tabpanel">
19
+ <ul class='nav nav-tabs' role="tablist">
20
+ <li role="presentation" class="<%= 'active' if @tab.blank? %>">
21
+ <a href='#general' aria-controls="general" role="tab" data-toggle="tab" data-behavior="translation-progress">
22
+ <%= t('spotlight.exhibits.translations.general.label') %> <span class="badge"></span>
23
+ </a>
24
+ </li>
25
+ <li class="<%= 'active' if @tab == 'metadata' %>">
26
+ <a href="#metadata" aria-controls="metadata" role="tab" data-toggle="tab" data-behavior="translation-progress">
27
+ <%= t('spotlight.exhibits.translations.metadata.label') %> <span class="badge"></span>
28
+ </a>
29
+ </li>
30
+ <li class="<%= 'active' if @tab == 'search_fields' %>">
31
+ <a href="#search_fields" aria-controls="search_fields" role="tab" data-toggle="tab" data-behavior="translation-progress">
32
+ <%= t('spotlight.exhibits.translations.search_fields.label') %> <span class="badge"></span>
33
+ </a>
34
+ </li>
35
+ <li class="<%= 'active' if @tab == 'browse' %>">
36
+ <a href="#browse" aria-controls="browse" role="tab" data-toggle="tab" data-behavior="translation-progress">
37
+ <%= t('spotlight.exhibits.translations.browse_categories.label') %> <span class="badge"></span>
38
+ </a>
39
+ </li>
40
+ <li class="<%= 'active' if @tab == 'pages' %>">
41
+ <a href="#pages" aria-controls="pages" role="tab" data-toggle="tab" data-behavior="translation-progress">
42
+ <%= t('spotlight.exhibits.translations.pages.label') %> <span class="badge"></span>
43
+ </a>
44
+ </li>
45
+ </ul>
46
+
47
+ <div class="tab-content">
48
+ <%= render 'general' %>
49
+ <%= render 'metadata' %>
50
+ <%= render 'search_fields' %>
51
+ <%= render 'browse_categories' %>
52
+ <%= render 'pages' %>
53
+ </div>
54
+ </div>
55
+ </div>
@@ -0,0 +1,81 @@
1
+ # i18n-tasks finds and manages missing and unused translations: https://github.com/glebm/i18n-tasks
2
+
3
+ base_locale: en
4
+ data:
5
+ read:
6
+ - config/locales/%{locale}.yml
7
+ - config/locales/**/*.%{locale}.yml
8
+ write:
9
+ external:
10
+ ## An example of looking at our dependencies
11
+ - "<%= %x[bundle show blacklight-gallery].chomp %>/config/locales/*.%{locale}.yml"
12
+ yaml:
13
+ write:
14
+ line_width: -1
15
+ search:
16
+ strict: false
17
+ paths:
18
+ - app/
19
+ relative_roots:
20
+ - app/controllers
21
+ - app/helpers
22
+ - app/mailers
23
+ - app/presenters
24
+ - app/views
25
+ exclude:
26
+ - app/assets/images
27
+ - app/assets/fonts
28
+ - app/assets/videos
29
+
30
+ # When adding an unused here, make sure to document where it is used.
31
+ ignore_unused:
32
+ - spotlight.resources.external_resources_form.title # app/views/spotlight/resources/new.html.erb
33
+ - spotlight.resources.{upload,csv_upload,json_upload,iiif}.form.title # app/views/spotlight/resources/new.html.erb
34
+ - activerecord.attributes.spotlight/page.{display_sidebar\?,display_title} # app/views/spotlight/home_pages/_page_options.html.erb
35
+ - activerecord.attributes.spotlight/language.locale # app/views/spotlight/exhibits/_languages.html.erb
36
+ - activerecord.attributes.spotlight/contact.avatar # app/views/spotlight/contacts/_form.html.erb
37
+ - activerecord.attributes.spotlight/exhibit.published # app/views/spotlight/sites/_exhibit.html.erb
38
+ - activerecord.attributes.spotlight/masthead.display # app/views/spotlight/appearances/edit.html.erb
39
+ - helpers.label.spotlight/filter.{field,value} # app/views/spotlight/filters/_form.html.erb
40
+ - spotlight.catalog.admin.{title,header} # app/helpers/spotlight/title_helper.rb
41
+ - spotlight.{contacts,pages,searches}.edit.{title,header} # app/helpers/spotlight/title_helper.rb
42
+ - spotlight.{resources,contacts,pages}.new.{title,header} # app/helpers/spotlight/title_helper.rb
43
+ - spotlight.{searches,roles}.index.{title,header} # app/helpers/spotlight/title_helper.rb
44
+ - spotlight.{appearances,search_configurations}.edit.header # app/helpers/spotlight.title_helper.rb
45
+ - spotlight.metadata_configurations.edit.{select_all,deselect_all} # app/helpers/spotlight/application_helper.rb
46
+ - spotlight.featured_images.upload_form.{non_iiif_alert_html,source.exhibit.help,source.exhibit.label} # app/views/spotlight/featured_images/_form.html.erb
47
+ - spotlight.feature_pages.page_options.published # app/views/spotlight/feature_pages/_page_options.html.erb
48
+ - spotlight.{exhibits,custom_fields}.{new,edit}.header # configuration_page_title
49
+ - helpers.submit.custom_field.{batch_error,batch_updated,create,submit,update} # Generic repeated template
50
+ - helpers.submit.exhibit.{batch_error,batch_updated,create,submit,update} # Generic repeated template
51
+ - helpers.submit.search.{create,submit,update} # Generic repeated template
52
+ - helpers.submit.site.{batch_error,batch_updated,create,created,destroyed,submit,update} # Generic repeated template
53
+ - helpers.submit.filter.{batch_error,batch_updated,create,created,destroyed,submit,update} # Generic repeated template
54
+ - helpers.action.destroy_are_you_sure # app/helpers/spotlight/crud_link_helpers.rb
55
+ - helpers.action.spotlight/role.{create,destroy} # app/views/spotlight/roles/index.html.erb
56
+ - helpers.action.{edit,edit_long,new,view} # app/helpers/spotlight/crud_link_helpers.rb
57
+ - helpers.action.spotlight/search.edit_long # app/views/spotlight/searches/_search.html.erb
58
+ - spotlight.about_pages.page_options.published # app/views/spotlight/about_pages/_page_options.html.erb
59
+ - helpers.submit.contact_form.create # app/views/spotlight/shared/_report_a_problem.html.erb
60
+ - activerecord.help.spotlight/exhibit.tag_list # app/views/spotlight/exhibits/_form.html.erb
61
+ - helpers.label.solr_document.exhibit_tag_list # app/views/spotlight/catalog/_edit_default.html.erb
62
+ - helpers.submit.language.create # app/views/spotlight/exhibits/_languages.html.erb
63
+ - helpers.submit.{submit,update} # Generically used set defaults
64
+ - helpers.submit.contact.create # app/views/spotlight/contacts/_form.html.erb
65
+ - helpers.action.exhibit.contact.submit # helpers.action.exhibit.contact.submit
66
+
67
+ # TODO Look into these as its unclear
68
+ - activerecord.models.spotlight.page
69
+ #- # perhaps removed here? https://github.com/projectblacklight/spotlight/commit/d4fdf04565ab3d648f0cb2a1238d84f262509fcd
70
+ - devise.mailer.invitation_instructions.subject # Does this even work? https://github.com/projectblacklight/spotlight/blob/master/app/mailers/spotlight/invitation_mailer.rb#L16
71
+ - helpers.submit.solr_document.{batch_error,batch_updated,create,created,destroyed,submit,update,updated} # Do we need this?
72
+ - helpers.submit.user.{batch_error,batch_updated,create,created,destroyed,submit,update,updated} # Do we need this?
73
+ - helpers.action.destroy # no idea here
74
+ - helpers.action.spotlight/search.destroy # I think it might be used by #action_default_value
75
+ - helpers.submit.contact_form.create # /shrug
76
+
77
+ <% I18n::Tasks.add_scanner 'I18n::Tasks::Scanners::PatternMapper',
78
+ patterns: [
79
+ # See app/controllers/spotlight/versions_controller.rb
80
+ ['view_context.t\(%{key}\)', '%{key}']
81
+ ] %>
@@ -1,5 +1,6 @@
1
+ ---
1
2
  en:
2
3
  devise:
3
4
  mailer:
4
5
  invitation_instructions:
5
- subject: 'Exhibit invitation instructions'
6
+ subject: Exhibit invitation instructions
@@ -1,734 +1,777 @@
1
+ ---
1
2
  en:
2
- cancel: "Cancel"
3
- drag: "Drag"
4
- toggle_nav: "Toggle navigation"
3
+ activerecord:
4
+ attributes:
5
+ spotlight/contact:
6
+ avatar: Photo
7
+ spotlight/exhibit:
8
+ published: Published?
9
+ spotlight/language:
10
+ locale: Language
11
+ spotlight/masthead:
12
+ display: Show background image in masthead
13
+ spotlight/page:
14
+ display_sidebar?: Show sidebar
15
+ display_title: Show title
16
+ help:
17
+ spotlight/exhibit:
18
+ tag_list: Enter tags separated by commas.
19
+ models:
20
+ spotlight:
21
+ page: Page
22
+ cancel: Cancel
23
+ drag: Drag
5
24
  helpers:
6
25
  action:
7
- new: Add a new %{model}
8
- view: View
9
- edit: Edit
10
- edit_long: "Edit this %{model}"
11
- destroy: Delete
12
26
  cancel: Cancel
13
- destroy_are_you_sure: "Are you sure you want to delete this %{model}?"
14
- update_all: "Save changes"
15
- spotlight/search:
16
- destroy: "Delete"
17
- edit_long: "Edit this saved search"
18
- acts_as_taggable_on/tag:
19
- destroy: "Delete tag"
20
- spotlight/role:
21
- create: "Add a new user"
22
- destroy: "Remove from site"
23
- spotlight/custom_field:
24
- create: "Add new field"
27
+ destroy: Delete
28
+ destroy_are_you_sure: Are you sure you want to delete this %{model}?
29
+ edit: Edit
30
+ edit_long: Edit this %{model}
31
+ exhibit:
32
+ contact:
33
+ submit: Save changes
34
+ new: Add a new %{model}
25
35
  spotlight/contact:
26
- create: "Add contact"
27
- spotlight/exhibit:
28
- create: "Create Exhibit"
29
- destroy: "Delete this exhibit"
36
+ create: Add contact
37
+ spotlight/custom_field:
38
+ create: Add new field
39
+ spotlight/role:
40
+ create: Add a new user
41
+ destroy: Remove from site
42
+ spotlight/search:
43
+ destroy: Delete
44
+ edit_long: Edit this saved search
45
+ update_all: Save changes
46
+ view: View
47
+ label:
48
+ solr_document:
49
+ exhibit_tag_list: Tags
50
+ spotlight/filter:
51
+ field: Field
52
+ value: Value
30
53
  submit:
31
- spotlight_default: &spotlight_default
32
- create: "Save"
33
- submit: "Save changes"
34
- update: "Save changes"
35
- created: "The %{model} was created."
36
- updated: "The %{model} was successfully updated."
37
- batch_updated: "%{model} were successfully updated."
38
- batch_error: "There was an error updating the requested %{model}."
39
- destroyed: "The %{model} was deleted."
54
+ blacklight_configuration:
55
+ updated: The exhibit was successfully updated.
40
56
  contact:
41
- create: "Save"
42
- created: "The %{model} was created."
43
- destroyed: "The %{model} was destroyed."
44
- update: "Save"
45
- updated: "The %{model} was successfully updated."
46
- batch_updated: "Contacts were successfully updated."
47
- page: &spotlight_page
48
- create: "Add new page"
49
- submit: "Save changes"
50
- update: "Save changes"
51
- created: "The %{model} was created."
52
- updated: "The %{model} was successfully updated."
53
- batch_updated: "%{model} were successfully updated."
54
- batch_error: "There was an error updating the requested pages."
55
- destroyed: "The %{model} was deleted."
56
- exhibit: *spotlight_default
57
- filter: *spotlight_default
58
- search: *spotlight_default
59
- site: *spotlight_default
57
+ batch_updated: Contacts were successfully updated.
58
+ create: Save
59
+ created: The %{model} was created.
60
+ destroyed: The %{model} was destroyed.
61
+ updated: The %{model} was successfully updated.
60
62
  contact_form:
61
- create: "Send"
62
- created: "Thanks. Your feedback has been sent."
63
- feature_page: *spotlight_page
64
- about_page: *spotlight_page
65
- home_page: *spotlight_page
66
- blacklight_configuration:
67
- create: "Save"
68
- submit: "Save changes"
69
- update: "Save changes"
70
- updated: "The exhibit was successfully updated."
71
- solr_document: *spotlight_default
72
- users: *spotlight_default
73
- custom_field: *spotlight_default
63
+ create: Send
64
+ created: Thanks. Your feedback has been sent.
65
+ custom_field:
66
+ batch_error: There was an error updating the requested %{model}.
67
+ batch_updated: "%{model} were successfully updated."
68
+ create: Save
69
+ created: The %{model} was created.
70
+ destroyed: The %{model} was deleted.
71
+ updated: The %{model} was successfully updated.
72
+ exhibit:
73
+ batch_error: There was an error updating the requested %{model}.
74
+ batch_updated: "%{model} were successfully updated."
75
+ create: Save
76
+ created: The %{model} was created.
77
+ destroyed: The %{model} was deleted.
78
+ updated: The %{model} was successfully updated.
79
+ filter:
80
+ batch_error: There was an error updating the requested %{model}.
81
+ batch_updated: "%{model} were successfully updated."
82
+ create: Save
83
+ created: The %{model} was created.
84
+ destroyed: The %{model} was deleted.
85
+ updated: The %{model} was successfully updated.
86
+ language:
87
+ create: Add language
88
+ created: The %{model} was created.
89
+ destroyed: The %{model} was deleted.
90
+ page:
91
+ batch_error: There was an error updating the requested pages.
92
+ batch_updated: "%{model} were successfully updated."
93
+ create: Add new page
94
+ created: The %{model} was created.
95
+ destroyed: The %{model} was deleted.
96
+ updated: The %{model} was successfully updated.
74
97
  role:
75
- updated: "User has been updated."
76
- destroyed: "User has been removed."
77
98
  batch_error:
78
- one: "There was a problem saving the user."
79
- other: "There was a problem saving the users."
80
- invite:
81
- invited: 'User has been invited.'
82
- label:
99
+ one: There was a problem saving the user.
100
+ other: There was a problem saving the users.
101
+ destroyed: User has been removed.
102
+ updated: User has been updated.
103
+ search:
104
+ batch_error: There was an error updating the requested %{model}.
105
+ batch_updated: "%{model} were successfully updated."
106
+ create: Save
107
+ created: The %{model} was created.
108
+ destroyed: The %{model} was deleted.
109
+ updated: The %{model} was successfully updated.
110
+ site:
111
+ batch_error: There was an error updating the requested %{model}.
112
+ batch_updated: "%{model} were successfully updated."
113
+ create: Save
114
+ created: The %{model} was created.
115
+ destroyed: The %{model} was deleted.
116
+ updated: The %{model} was successfully updated.
83
117
  solr_document:
84
- exhibit_tag_list: "Tags"
85
- spotlight/exhibit:
86
- tag_list: 'Tags'
87
- spotlight/filter:
88
- field: 'Field'
89
- value: 'Value'
90
- activerecord:
91
- models:
92
- spotlight:
93
- page: Page
94
- attributes:
95
- "spotlight/contact":
96
- avatar: "Photo"
97
- "spotlight/exhibit":
98
- published: "Published?"
99
- "spotlight/page":
100
- display_sidebar?: "Show sidebar"
101
- display_title: "Show title"
102
- "spotlight/masthead":
103
- display: "Show background image in masthead"
104
- help:
105
- spotlight/exhibit:
106
- tag_list: "Enter tags separated by commas."
107
- blacklight:
108
- search:
109
- fields:
110
- facet:
111
- exhibit_tag: Exhibit Tags
118
+ batch_error: There was an error updating the requested %{model}.
119
+ batch_updated: "%{model} were successfully updated."
120
+ create: Save
121
+ created: The %{model} was created.
122
+ destroyed: The %{model} was deleted.
123
+ updated: The %{model} was successfully updated.
124
+ spotlight_default:
125
+ updated: The %{model} was successfully updated.
126
+ submit: Save changes
127
+ update: Save changes
128
+ locales:
129
+ de: German
130
+ en: English
131
+ es: Spanish
132
+ fr: French
133
+ hu: Hungarian
134
+ it: Italian
135
+ nl: Dutch
136
+ pt-br: Portugese - Brazil
137
+ sq: Albanian
138
+ zh: Chinese
139
+ reindexing_log:
140
+ status:
141
+ failed: Failed
142
+ in_progress: In Progress
143
+ succeeded: Successful
144
+ unstarted: Not Yet Started
145
+ shared:
146
+ site_sidebar:
147
+ documentation: Curator documentation
148
+ header: Actions
112
149
  spotlight:
113
- application_name: "%{exhibit} - %{application_name}"
114
- html_title: "%{title} | %{application_name}"
115
- html_admin_title: "%{section} - %{title}"
116
- configuration:
117
- sidebar:
118
- header: Configuration
119
- settings: General
120
- appearance: Appearance
121
- users: Users
122
- metadata: Metadata
123
- search_configuration: Search
124
- header: "Configuration"
125
- page_title: "Page title"
126
- settings:
127
- header: "Settings"
150
+ about_pages:
151
+ contacts:
152
+ header: Contacts
153
+ contacts_form:
154
+ header: Contacts
155
+ instructions: Enter details for each librarian, curator or other contact person for this exhibit. Select the contacts you want to be show in the sidebar of the About Pages. Drag and drop contacts to specify the order in which they are shown in the sidebar.
156
+ page_options:
157
+ published: Publish
128
158
  admin_users:
129
159
  create:
130
- success: Added user as an exhibits adminstrator
131
160
  error: There was a problem adding the user as an exhibits adminstrator
161
+ success: Added user as an exhibits adminstrator
132
162
  destroy:
133
- success: User removed from site adminstrator role
134
163
  error: There was a problem removing the user from the site adminstrator role
164
+ success: User removed from site adminstrator role
135
165
  index:
136
- section: Manage exhibits
137
- page_title: Manage administrators
138
- instructions: Existing exhibits administrators
166
+ add: Add new administrator
139
167
  all_users: Administrators and curators of all exhibits
140
168
  copy: Copy
141
- add: Add new administrator
142
169
  destroy: Remove from role
143
- save: Add role
170
+ instructions: Existing exhibits administrators
171
+ page_title: Manage administrators
144
172
  pending: pending
173
+ save: Add role
174
+ section: Manage exhibits
145
175
  appearances:
146
176
  edit:
147
177
  header: Appearance
148
- exhibit_style:
149
- heading: "Exhibit style"
150
178
  main_navigation:
179
+ help: Select the menu items you want to be displayed in the main navigation menu (menu items are only displayed when published pages exist for that item). Click a menu item to change its display label. Drag and drop a menu item to change their order in the menu.
151
180
  menu: Main menu
152
- help: >
153
- Select the menu items you want to be displayed in the main navigation menu
154
- (menu items are only displayed when published pages exist for that item).
155
- Click a menu item to change its display label. Drag and drop a menu item
156
- to change their order in the menu.
157
- restore_default: "Restore default"
181
+ restore_default: Restore default
182
+ site_masthead:
183
+ heading: Exhibit masthead
184
+ help: You can select and crop an image to use as a background in your exhibit site's masthead. To use an image as a masthead background, you should use an image that is at least 120 pixels tall and 1200 pixels wide. For best results use an image at least 1800 pixels wide. You can crop larger images using the cropping tool below.
158
185
  site_theme:
159
186
  heading: Visual theme
160
- help: ""
187
+ help: ''
161
188
  label: Exhibit theme
162
- site_masthead:
163
- heading: Exhibit masthead
164
- help: >
165
- You can select and crop an image to use as a background in your exhibit site's
166
- masthead. To use an image as a masthead background, you should use an image that
167
- is at least 120 pixels tall and 1200 pixels wide. For best results use an image at
168
- least 1800 pixels wide. You can crop larger images using the cropping tool below.
169
189
  site_thumbnail:
170
190
  heading: Exhibit thumbnail
171
- help: "You can select and crop an image to visually represent this exhibit."
172
- thumbnail:
173
- small: Small
174
- medium: Medium
175
- large: Large
176
- curation:
177
- sidebar:
178
- header: Curation
179
- dashboard: Dashboard
180
- analytics: Analytics
181
- items: Items
182
- tags: Tags
183
- browse: Browse
184
- feature_pages: Feature pages
185
- about_pages: About pages
186
- nav:
187
- home: "Home"
188
- header: "Curation"
189
- search_configurations:
190
- document_index_view_types:
191
- label: Result page types
192
- default_per_page:
193
- label: Default per page
194
- edit:
195
- header: "Search"
196
- tab:
197
- options: "Options"
198
- facets: "Facets"
199
- results: "Results"
200
- search_fields:
201
- header: "Field-based search"
202
- help: >
203
- If the search box is displayed, you can also enable field-based search.
204
- Field-based search adds a dropdown menu to your exhibit site's search box that
205
- provides the user with an option to restrict a search query to a single metadata field.
206
- instructions: >
207
- If enabled, you can select below the metadata fields that are available for searching. Click
208
- a field name to edit its display label. Drag and drop fields to specify the order they
209
- are displayed in the search box dropdown menu.
210
- enable_feature: Display search box
211
- facets:
212
- help: >
213
- If the sidebar is visible, users can use
214
- the facets shown in the sidebar to limit a search. You can select the facets
215
- that are available for searching below. Click a facet field name to edit its display label.
216
- Drag and drop facets to specify the order they are displayed in the sidebar.
217
- sort_by:
218
- label: "Sort by:"
219
- count: Frequency
220
- index: Value
221
- facet_metadata:
222
- document_count:
191
+ help: You can select and crop an image to visually represent this exhibit.
192
+ application_name: "%{exhibit} - %{application_name}"
193
+ browse:
194
+ index:
195
+ header: Browse Exhibit
196
+ search:
197
+ item_count:
223
198
  one: "%{count} item"
224
- other: "%{count} items"
225
- too_many_values_count: "%{count}+ unique values"
226
- value_count:
227
- one: "%{count} unique value"
228
- other: "%{count} unique values"
229
- sort:
230
- header: "Sort fields"
231
- help: >
232
- Select the fields you want to be available to users for sorting results.
233
- Click a field title to change its display label. Drag and drop fields to
234
- change their order in the sort dropdown menu. The field listed first is
235
- the default sort field.
236
- keys:
237
- asc: ascending
238
- desc: descending
239
- score: relevancy score
240
- sort_date_dtsi: date
241
- sort_title_ssi: title
242
- sort_type_ssi: type
243
- sort_source_ssi: source
244
- id: id
245
- metadata_configurations:
246
- edit:
247
- field:
248
- label: "Field name"
249
- deselect_all: "Deselect all"
250
- select_all: "Select all"
251
- header: "Metadata"
252
- order_header: "Display and Order Metadata Fields"
253
- exhibit_specific:
254
- header: "Exhibit-Specific Fields"
255
- instructions:
256
- "You can add metadata fields to supplement the metadata fields that are part of the repository item record."
257
- view:
258
- show: "Item Details"
259
- instructions: >
260
- Select metadata fields to display on each type of page. Click a field name
261
- to edit its display label. Drag and drop fields to specify the order in which they
262
- are displayed.
199
+ other: "%{count} items"
200
+ search_box:
201
+ label: Search within this browse category
202
+ placeholder: Search…
203
+ reset: Clear search box
204
+ submit: Search within browse category
205
+ success:
206
+ expand_html: You can also <a href="%{expand_search_url}">search all exhibit items for "%{browse_query}"</a>.
207
+ result_number_html: Your search matched <strong> %{search_size} of %{parent_search_count} items</strong> in this browse category.
208
+ zero_results:
209
+ expand_html: You can <a href="%{clear_search_url}"> clear this search</a> or try <a href="%{expand_search_url}">searching all exhibit items for "%{browse_query}"</a>.
210
+ result_number: Your search did not match any items in this browse category.
263
211
  catalog:
212
+ admin:
213
+ header: Items
214
+ title: Curation - Items
215
+ admin_header:
216
+ new_resource: Add items
217
+ reindex: Reindex items
264
218
  breadcrumb:
265
- index: 'Search Results'
219
+ index: Search Results
220
+ document_visibility_control:
221
+ inprogress:
222
+ label: ''
223
+ make_private:
224
+ button: Make Private
225
+ label: ''
226
+ make_public:
227
+ button: Make Public
228
+ label: ''
266
229
  edit_default:
267
- blank_field_warning_html: >
268
- This field is currently hidden on all pages. You can make it visible on the Curation &gt; %{link} page.
269
- full_title_tesim: "Title"
230
+ blank_field_warning_html: This field is currently hidden on all pages. You can make it visible on the Curation &gt; %{link} page.
270
231
  url-field:
271
- help: "Valid file types: %{extensions}"
232
+ help: 'Valid file types: %{extensions}'
272
233
  facets:
273
234
  exhibit_visibility:
274
- label: "Item Visibility"
275
- private: "Private"
235
+ label: Item Visibility
236
+ private: Private
276
237
  fields:
277
- title: "Title"
278
- date_added: "Date Added"
238
+ date_added: Date Added
239
+ title: Title
279
240
  visibility: Public
280
- document_visibility_control:
281
- make_public:
282
- label: ""
283
- button: Make Public
284
- make_private:
285
- label: ""
286
- button: Make Private
287
- inprogress:
288
- label: ""
289
- private: "Private"
290
- admin:
291
- title: Curation - Items
292
- header: Items
293
- admin_header:
294
- reindex: "Reindex items"
295
- new_resource: "Add items"
296
- new:
297
- header: Import items
298
241
  reindex_progress_panel:
242
+ begin_html: Began reindexing a total of <span data-behavior='total'></span> items.
243
+ completed_html: Reindexed <span data-behavior='completed'></span> of <span data-behavior='total'></span> items.
244
+ error: An error occured while reindexing. Contact your exhibits administrator for more information.
299
245
  heading: Reindexing status
300
- begin_html: "Began reindexing a total of <span data-behavior='total'></span> items."
301
- completed_html: "Reindexed <span data-behavior='completed'></span> of <span data-behavior='total'></span> items."
302
- error: 'An error occured while reindexing. Contact your exhibits administrator for more information.'
303
- invitation_mailer:
304
- invitation_instructions:
305
- subject: 'Invitation to manage \"%{exhibit_name}\"'
306
- hello: "Hello!"
307
- someone_invited_you: "The Exhibits Administrator has invited you to help work on the \"%{exhibit_name}\" exhibit."
308
- accept_invitation: "You can accept this invitation by clicking the link below."
309
- accept_link: "Accept invitation"
310
- ignore: "If you don't want to accept the invitation, please ignore this email. Your account won't be created until you access the link above."
311
- visit: 'Visit exhibit'
312
- exhibits_admin_invitation_mailer:
313
- invitation_instructions:
314
- subject: 'Invitation to manage \"%{exhibit_name}\"'
315
- hello: "Hello!"
316
- someone_invited_you: "The Exhibits Administrator has invited you to help manage exhibits."
317
- accept_invitation: " You can accept this invitation by clicking the link below."
318
- accept: "Accept invitation"
319
- ignore: "If you don't want to accept the invitation, please ignore this email. Your exhibits administrator account won't be created until you access the link above."
246
+ configuration:
247
+ header: Configuration
248
+ sidebar:
249
+ appearance: Appearance
250
+ header: Configuration
251
+ metadata: Metadata
252
+ search_configuration: Search
253
+ settings: General
254
+ users: Users
320
255
  confirmation_mailer:
321
256
  confirmation_instructions:
322
- welcome: "Welcome %{email}!"
323
- instructions: "You can confirm your account email through the link below:"
324
257
  confirm: Confirm my account
325
- contact_form:
258
+ instructions: 'You can confirm your account email through the link below:'
259
+ welcome: Welcome %{email}!
260
+ contacts:
261
+ edit:
262
+ header: Edit Contact
263
+ form:
264
+ avatar:
265
+ header: Avatar
266
+ email:
267
+ placeholder: Valid email address
268
+ location:
269
+ placeholder: Name of library or other physical location
270
+ name:
271
+ placeholder: First and last name
272
+ source:
273
+ remote:
274
+ label: Upload an image
275
+ telephone:
276
+ placeholder: Telephone number (optional)
277
+ title:
278
+ placeholder: Job title most relevant to this exhibit
326
279
  new:
327
- header: "Feedback"
280
+ header: Add Exhibit Contact
281
+ curation:
282
+ header: Curation
283
+ nav:
284
+ home: Home
285
+ sidebar:
286
+ about_pages: About pages
287
+ analytics: Analytics
288
+ browse: Browse
289
+ dashboard: Dashboard
290
+ feature_pages: Feature pages
291
+ header: Curation
292
+ items: Items
293
+ tags: Tags
294
+ translations: Translations
328
295
  custom_fields:
329
296
  edit:
330
297
  header: Edit Exhibit-Specific Field
331
- new:
332
- header: Add Exhibit-Specific Field
333
298
  form:
334
299
  field_type:
335
- label: "Type"
336
- vocab: "Controlled vocabulary"
337
- text: "Free text"
300
+ label: Type
301
+ text: Free text
302
+ vocab: Controlled vocabulary
303
+ new:
304
+ header: Add Exhibit-Specific Field
338
305
  dashboards:
339
- show:
340
- header: Dashboard
306
+ analytics:
307
+ header: Analytics
308
+ monthly_header: User Activity Over the Past Month
309
+ pages:
310
+ header: Most popular pages
311
+ pagetitle: page title
312
+ pageviews: page views
313
+ sessions: visitors
314
+ users: unique visits
315
+ page_activity:
316
+ field:
317
+ last_edited_by: User
318
+ title: Title
319
+ updated_at: Last Edited
320
+ header: Recent Site Building Activity
341
321
  reindexing_activity:
342
- no_reindexing_activity: There has been no reindexing activity
343
- header: Recent Item Indexing Activity
344
322
  field:
345
323
  date: Date
346
- items_reindexed_count: Items Indexed
347
324
  duration: Elapsed Time
325
+ items_reindexed_count: Items Indexed
348
326
  job_status: Status
349
327
  user: Requested By
350
- page_activity:
351
- header: Recent Site Building Activity
352
- new_feature_page: "Add new Feature page"
353
- new_about_page: "Add new About page"
354
- field:
355
- title: Title
356
- last_edited_by: User
357
- updated_at: Last Edited
328
+ header: Recent Item Indexing Activity
329
+ no_reindexing_activity: There has been no reindexing activity
330
+ show:
331
+ header: Dashboard
358
332
  solr_document_activity:
359
333
  header: Recently Updated Items
360
334
  no_documents: There are no documents in this exhibit
361
- analytics:
362
- header: "Analytics"
363
- monthly_header: "User Activity Over the Past Month"
364
- pageviews: "page views"
365
- users: "unique visits"
366
- sessions: "visitors"
367
- pagetitle: "page title"
368
- pages:
369
- header: "Most popular pages"
370
335
  exhibits:
371
336
  breadcrumb: Home
372
- index:
373
- published: Published exhibits
374
- user: Your exhibits
375
- unpublished: Unpublished exhibits
337
+ confirmation_status:
338
+ confirmation_sent: Confirmation sent.
339
+ confirmed: Confirmed.
340
+ not_validated: Not validated.
341
+ resend: Resend confirmation?
342
+ contact:
343
+ email_delete_button: Delete contact
344
+ email_delete_confirmation: Delete contact email address?
345
+ email_delete_error: 'Problem deleting contact email:'
376
346
  delete:
377
347
  heading: Delete exhibit
378
- warning_html: >
379
- This action is irreversible. Be sure to back up the exhibit settings and content using
380
- the %{export_link} feature before proceeding.
348
+ warning_html: This action is irreversible. Be sure to back up the exhibit settings and content using the %{export_link} feature before proceeding.
381
349
  edit:
382
- header: General
383
350
  basic_settings:
384
351
  heading: Basic settings
385
- contact:
386
- email_delete_confirmation: Delete contact email address?
387
- email_delete_error: 'Problem deleting contact email:'
388
- email_delete_button: Delete contact
352
+ header: General
353
+ exhibit_card_back:
354
+ visit_exhibit: Visit exhibit
355
+ exhibit_card_front:
356
+ unpublished: Unpublished
357
+ export:
358
+ download: Export data
359
+ heading: Export data
360
+ instructions: You can create a backup of this exhibit by exporting the data that defines it to a JSON file. You can then import that JSON file into new exhibit to restore the exhibit data or to use as a starting point for a new exhibit.
361
+ filter:
362
+ heading: Filter items
363
+ instructions: You can limit the items included in this exhibit by applying a filter to your Solr index. When you apply a filter, only items with values that match the filter will be included in your exhibit. To apply a filter, enter both a field and a value that match the names used in your Solr index.
389
364
  form:
390
365
  add_contact_email_button: Add new contact
391
366
  fields:
392
367
  contact_emails:
393
368
  help_block: Each contact email will receive feedback submissions
394
369
  published:
395
- label: "Published"
396
- help_block: ""
370
+ help_block: ''
371
+ uneditable_non_default_language: This field is not editable in the current language. Switch to the default language to edit it.
372
+ import:
373
+ button: Import data
374
+ heading: Import data
375
+ instructions: You can import an exhibit JSON file exported from this application to use that data file to define this exhibit.
376
+ index:
377
+ published: Published exhibits
378
+ unpublished: Unpublished exhibits
379
+ user: Your exhibits
380
+ languages:
381
+ current_header: Current Languages
382
+ current_instructions: Each language listed below is available for translations on the Curation > Translations page. To enable exhibit visitors to change the language of the exhibit, enable the Public checkbox. To hide translations from an available language from the exhibit, disable the Public checkbox.
383
+ heading: Languages
384
+ modal:
385
+ confirm: If you remove this language all existing translations for this language will also be removed.
386
+ no_languages_help_text: No languages have been added for translation. To add a language, make a selection above.
387
+ remove: Remove
388
+ selection_instructions: You can make the content and user interface of this exhibit available to exhibit visitors in multiple languages. Use the select box below to add a new language to the exhibit and then use the Curation > Translations page to provide translations for exhibit labels, browse categories, and curated page content.
389
+ selection_prompt: Select language...
390
+ table_heading:
391
+ action: Action
392
+ language: Language
393
+ public: Public
394
+ new:
395
+ header: Create a new exhibit
397
396
  new_exhibit_form:
398
397
  fields:
399
- title:
400
- label: Title
401
- help_block: This can be changed later.
402
398
  slug:
403
- label: URL slug
404
399
  help_block: A hyphenated name to be displayed in the URL for the exhibit (e.g., "maps-of-africa").
405
- exhibit_card_front:
406
- unpublished: Unpublished
407
- exhibit_card_back:
408
- visit_exhibit: "Visit exhibit"
409
- new:
410
- header: Create a new exhibit
411
- filter:
412
- heading: Filter items
413
- instructions: >
414
- You can limit the items included in this exhibit by applying a filter to your Solr index. When you apply a filter, only items with values that match the filter will be included in your exhibit.
415
- To apply a filter, enter both a field and a value that match the names used in your Solr index.
416
- import:
417
- heading: Import data
418
- instructions: You can import an exhibit JSON file exported from this application to use that data file to define this exhibit.
419
- button: Import data
420
- export:
421
- heading: Export data
422
- instructions: >
423
- You can create a backup of this exhibit by exporting the data that defines it to a JSON file.
424
- You can then import that JSON file into new exhibit to restore the exhibit data or to use as a starting point for a new exhibit.
425
- download: Export data
426
- confirmation_status:
427
- confirmed: Confirmed.
428
- confirmation_sent: Confirmation sent.
429
- not_validated: Not validated.
430
- resend: Resend confirmation?
400
+ label: URL slug
401
+ title:
402
+ help_block: This can be changed later.
403
+ label: Title
431
404
  tags:
432
405
  all: All
406
+ translations:
407
+ browse_categories:
408
+ default_language_column_label: English language title
409
+ description_label: Description
410
+ label: Browse categories
411
+ translation_column_label: "%{language} translation"
412
+ general:
413
+ basic_settings:
414
+ description: Description
415
+ label: Basic Settings
416
+ subtitle: Subtitle
417
+ title: Title
418
+ label: General
419
+ main_menu:
420
+ about: About
421
+ browse: Browse
422
+ curated_features: Curated Features
423
+ home: Home
424
+ label: Main Menu
425
+ metadata:
426
+ exhibit_specific_fields:
427
+ label: Exhibit-Specific Fields
428
+ label: Metadata field labels
429
+ pages:
430
+ about_pages:
431
+ label: About Pages
432
+ destroy: Delete
433
+ destroy_are_you_sure: Are you sure you want to delete this page? If you delete this page all content, including any existing translations you have made in it, will be lost.
434
+ edit: Edit
435
+ feature_pages:
436
+ label: Feature Pages
437
+ help_html: Before exhibit visitors can view translated pages you must create, edit, and publish each page translation. When you create a translated page, a copy of the default language version of the page is made to serve as the initial translated page. You can then edit that translated page to replace the page title and any text fields with translated text. A translated page will not be visible to exhibit visitors until you publish it. To replace a translated page with a current copy of the default language version of the page, use the <i>Recreate</i> action.
438
+ home_page:
439
+ label: Home Page
440
+ label: Pages
441
+ new: Create one now.
442
+ no_translated_page: No translated page.
443
+ recreate: Recreate
444
+ recreate_are_you_sure: Are you sure you want to recreate this page? If you recreate this page all content, including any existing translations you have made, will be replaced with the content of the English version of the page.
445
+ table_header:
446
+ actions: Actions
447
+ default_published: Published
448
+ language_published: Published
449
+ last_updated: "%{language} title / Last update"
450
+ search_fields:
451
+ facet_fields:
452
+ label: Facet Fields
453
+ field_based_search_fields:
454
+ label: Field-Based Search Fields
455
+ label: Search field labels
456
+ sort_fields:
457
+ label: Sort Fields
458
+ title: Translations
459
+ exhibits_admin_invitation_mailer:
460
+ invitation_instructions:
461
+ accept: Accept invitation
462
+ accept_invitation: " You can accept this invitation by clicking the link below."
463
+ hello: Hello!
464
+ ignore: If you don't want to accept the invitation, please ignore this email. Your exhibits administrator account won't be created until you access the link above.
465
+ someone_invited_you: The Exhibits Administrator has invited you to help manage exhibits.
466
+ subject: Invitation to manage \"%{exhibit_name}\"
467
+ feature_pages:
468
+ page_options:
469
+ published: Publish
470
+ featured_images:
471
+ form:
472
+ crop_area:
473
+ help: Adjust the image so that the rectangle contains the area you want to use as the %{thing}. Click "Save changes" to save the cropped area.
474
+ non_iiif_alert_html: The image source must be a IIIF image. Contact your exhibits adminstrator or see the <a href="http://iiif.io">IIIF website</a> for more information about IIIF.
475
+ source:
476
+ exhibit:
477
+ help: To find an image, start typing the title of an exhibit item.
478
+ label: From this exhibit
479
+ header: Image source
480
+ remote:
481
+ header: Cropped image
482
+ label: Upload an image
483
+ upload_form:
484
+ crop_area:
485
+ help: Adjust the image so that the rectangle contains the area you want to use as the %{thing}. Click "Save changes" to save the cropped area.
486
+ non_iiif_alert_html: The image source must be a IIIF image. Contact your exhibits adminstrator or see the <a href="http://iiif.io">IIIF website</a> for more information about IIIF.
487
+ source:
488
+ exhibit:
489
+ help: To find an image, start typing the title of an exhibit item.
490
+ label: From this exhibit
491
+ header: Image source
492
+ remote:
493
+ header: Cropped image
494
+ label: Upload an image
495
+ header_links:
496
+ contact: Feedback
497
+ create_exhibit: Create new exhibit
498
+ dashboard: Exhibit dashboard
499
+ edit_site: Site administration
500
+ login: Sign in
501
+ logout: Sign out
502
+ html_admin_title: "%{section} - %{title}"
503
+ html_title: "%{title} | %{application_name}"
504
+ indexing_complete_mailer:
505
+ documents_indexed:
506
+ body:
507
+ one: "%{count} document has been indexed from the CSV file and added to the exhibit %{title}."
508
+ other: "%{count} documents have been indexed from the CSV file and added to the exhibit %{title}."
509
+ title: Your CSV file has just finished being processed.
510
+ invitation_mailer:
511
+ invitation_instructions:
512
+ accept_invitation: You can accept this invitation by clicking the link below.
513
+ hello: Hello!
514
+ ignore: If you don't want to accept the invitation, please ignore this email. Your account won't be created until you access the link above.
515
+ someone_invited_you: The Exhibits Administrator has invited you to help work on the "%{exhibit_name}" exhibit.
516
+ subject: Invitation to manage \"%{exhibit_name}\"
517
+ visit: Visit exhibit
433
518
  main_navigation:
434
- about: "About"
435
- browse: "Browse"
436
- curated_features: "Curated Features"
519
+ about: About
520
+ browse: Browse
521
+ curated_features: Curated Features
522
+ metadata_configurations:
523
+ edit:
524
+ deselect_all: Deselect all
525
+ exhibit_specific:
526
+ header: Exhibit-Specific Fields
527
+ instructions: You can add metadata fields to supplement the metadata fields that are part of the repository item record.
528
+ field:
529
+ label: Field name
530
+ header: Metadata
531
+ instructions: Select metadata fields to display on each type of page. Click a field name to edit its display label. Drag and drop fields to specify the order in which they are displayed.
532
+ order_header: Display and Order Metadata Fields
533
+ select_all: Select all
534
+ view:
535
+ show: Item Details
437
536
  pages:
438
- order_pages:
439
- pages_header: Custom Pages
440
- instructions: Add new pages below. Drag and drop pages to change the order in which they are displayed in the sidebar.
441
- new_page: "Add new page"
442
- save: "Save"
443
- cancel: "Cancel"
537
+ edit:
538
+ header: Edit page
539
+ locked: This page is currently being edited by %{user} (%{created_at})
540
+ form:
541
+ page_content: Content
542
+ page_options: Options
543
+ page_thumbnail: Thumbnail
544
+ thumbnail:
545
+ help: You can select and crop an image to visually represent this page. It will be used as the thumbnail image if you include this page using the 'Highlight Featured Pages' widget.
546
+ title_placeholder: Title
444
547
  index:
445
- home_pages:
446
- title: Exhibit Home
447
- header: Exhibit Home
548
+ about_pages:
549
+ header: About Pages
448
550
  feature_pages:
449
- title: Feature Pages
450
551
  header: Feature Pages
451
552
  home_pages_header: Homepage
452
- about_pages:
453
- title: About Pages
454
- header: About Pages
553
+ home_pages:
554
+ header: Exhibit Home
555
+ title: Exhibit Home
455
556
  new:
456
557
  header: New page
457
- edit:
458
- header: Edit page
459
- locked: "This page is currently being edited by %{user} (%{created_at})"
460
- form:
461
- title_placeholder: "Title"
462
- page_content: "Content"
463
- page_options: "Options"
464
- page_thumbnail: "Thumbnail"
465
- thumbnail:
466
- help: >
467
- You can select and crop an image to visually represent this page. It will be
468
- used as the thumbnail image if you include this page using the 'Highlight Featured Pages' widget.
469
- sir_trevor:
470
- blocks:
471
- browse_block:
472
- items:
473
- one: "%{count} item"
474
- other: "%{count} items"
475
- link_to_search_block:
476
- items:
477
- one: "%{count} item"
478
- other: "%{count} items"
479
- contacts:
480
- edit:
481
- header: "Edit Contact"
482
- new:
483
- header: "Add Exhibit Contact"
484
- form:
485
- name:
486
- placeholder: First and last name
487
- email:
488
- placeholder: Valid email address
489
- title:
490
- placeholder: Job title most relevant to this exhibit
491
- location:
492
- placeholder: Name of library or other physical location
493
- telephone:
494
- placeholder: Telephone number (optional)
495
- source:
496
- remote:
497
- label: "Upload an image"
498
- avatar:
499
- header: Avatar
500
- about_pages:
501
- contacts_form:
502
- header: Contacts
503
- contact:
504
- legend: Contact Details
505
- instructions: >
506
- Enter details for each librarian, curator or other contact person for this exhibit.
507
- Select the contacts you want to be show in the sidebar of the About Pages. Drag and
508
- drop contacts to specify the order in which they are shown in the sidebar.
509
- nav_link: About
510
- page_options:
511
- published: "Publish" # Possibly no longer used
512
- sidebar:
513
- nav_link: About
514
- contacts:
515
- header: "Contacts"
516
- feature_pages:
517
- nav_link: Curated Features
518
- page_options:
519
- published: "Publish"
520
- featured_images:
521
- form: &featured_images_form
522
- crop_area:
523
- help: >
524
- Adjust the image so that the rectangle contains the area you want to use as the %{thing}.
525
- Click "Save changes" to save the cropped area.
526
- non_iiif_alert_html: >
527
- The image source must be a IIIF image.
528
- Contact your exhibits adminstrator or see the
529
- <a href="http://iiif.io">IIIF website</a> for more information about IIIF.
530
- source:
531
- header: "Image source"
532
- exhibit:
533
- label: "From this exhibit"
534
- help: "To find an image, start typing the title of an exhibit item."
535
- remote:
536
- label: "Upload an image"
537
- header: "Cropped image"
538
- upload_form: *featured_images_form
539
-
558
+ order_pages:
559
+ cancel: Cancel
560
+ instructions: Add new pages below. Drag and drop pages to change the order in which they are displayed in the sidebar.
561
+ new_page: Add new page
562
+ pages_header: Custom Pages
563
+ save: Save
540
564
  resources:
541
- new:
542
- header: "Add items"
543
- form:
544
- needs_provider: "Could not find an appropriate importer"
545
- has_provider: "Ready to import"
546
- add_item: "Add item"
547
- upload:
548
- csv:
549
- success: "'%{file_name}' has been uploaded. An email will be sent to you once indexing is complete."
550
- anonymous_file: '(blank)'
551
- new:
552
- single_item_form: "Single item"
553
- multi_item_form: "Multiple items using CSV file"
554
- error: "There was a problem uploading your object."
555
- success: "Object uploaded successfully."
556
- form:
557
- title: "Upload item"
558
- add_item: "Add item"
559
- add_item_and_continue: "Add item and continue adding"
560
- full_title_tesim: "Title"
561
- url-field:
562
- help: "Valid file types: %{extensions}"
563
565
  csv_upload:
564
566
  form:
565
- title: "Upload multiple items"
566
- add_item: "Add item"
567
+ add_item: Add item
568
+ file_label: CSV File
567
569
  help_html: "%{link}"
568
- template: "Download template"
569
- file_label: "CSV File"
570
+ template: Download template
571
+ title: Upload multiple items
572
+ external_resources_form:
573
+ title: From external resource
574
+ form:
575
+ add_item: Add item
576
+ iiif:
577
+ form:
578
+ add_item: Add IIIF items
579
+ manifest: URL
580
+ title: IIIF URL
581
+ url-field:
582
+ help: Add the URL of a IIIF manifest or collection.
570
583
  json_upload:
571
584
  form:
572
- title: "Upload raw documents"
573
- add_item: "Add item"
574
- file_label: "JSON File"
575
- iiif:
585
+ add_item: Add item
586
+ file_label: JSON File
587
+ title: Upload raw documents
588
+ new:
589
+ header: Add items
590
+ reindexing_in_progress: Reindexing all resources
591
+ upload:
592
+ csv:
593
+ anonymous_file: "(blank)"
594
+ success: "'%{file_name}' has been uploaded. An email will be sent to you once indexing is complete."
595
+ error: There was a problem uploading your object.
576
596
  form:
577
- title: 'IIIF URL'
578
- manifest: "URL"
579
- add_item: "Add IIIF items"
597
+ add_item: Add item
598
+ add_item_and_continue: Add item and continue adding
599
+ title: Upload item
580
600
  url-field:
581
- help: "Add the URL of a IIIF manifest or collection."
582
- bookmarklet:
583
- instructions: "Drag this button to the bookmarks toolbar in your web browser"
584
- bookmarklet: "%{application_name} widget"
585
- reindexing_in_progress: "Reindexing all resources"
586
- external_resources_form:
587
- title: "From external resource"
601
+ help: 'Valid file types: %{extensions}'
602
+ success: Object uploaded successfully.
603
+ role:
604
+ admin: Admin
605
+ curator: Curator
588
606
  roles:
589
607
  edit_fields:
590
- invite_html: "This user does not yet exist. Would you like to send them an %{link}?"
591
- invite_link: invite
592
608
  help: Enter a valid email address
593
609
  index:
594
- title: Site Configuration - Users
595
- invite_pending: pending
610
+ actions: Actions
611
+ email: Email Address
596
612
  header: Users
597
- name: Username
598
- email: "Email Address"
599
- role: "Role"
600
- actions: "Actions"
601
- sites:
602
- new:
603
- section: Manage exhibits
604
- page_title: Create a new exhibit
605
- edit:
606
- section: Manage exhibits
607
- page_title: Customize appearance
608
- basic_settings:
609
- heading: Title
610
- site_masthead:
611
- heading: Site masthead
612
- help: >
613
- You can select and crop an image to use as a background for your home page masthead.
614
-
615
- To use an image as a masthead background, you should use an image that is at least
616
- 120 pixels tall and 1200 pixels wide. For best results use an image at least 1800 pixels wide.
617
- You can crop larger images using the cropping tool below.
618
- edit_exhibits:
619
- section: Manage exhibits
620
- page_title: Order exhibits
621
- instructions: Drag and drop the exhibits below to specify the order in which they are displayed on the exhibits homepage.
622
- searches: &search
623
- nav_link: "Browse"
624
- index:
625
- header: "Browse"
626
- title: "Curation - Browse"
627
- categories_header: "Browse Categories"
628
- instructions: >
629
- Use the Save search button on a search results page to create a new browse category.
630
- Select the categories you want to be displayed on the browse landing page. Drag and
631
- drop categories to change the order in which they appear on that page."
632
- no_saved_searches: >
633
- You can save search results while in curation mode to create browse categories,
634
- which will be displayed here.
635
- not_searchable_html: >
636
- This exhibit is not currently searchable. To perform searches that can be saved as
637
- additional browse categories, temporarily turn on the Display search box
638
- option in the Options section of the Configuration > %{href} page.
613
+ invite_pending: pending
614
+ role: Role
615
+ title: Site Configuration - Users
616
+ saved_search:
617
+ id: Select a title to update a previously saved search
618
+ label: Save this search
619
+ title: Enter a title to create a new saved search
620
+ search:
621
+ fields:
622
+ abstract_tesim: Abstract
623
+ corporate_name_ssm: Corporate Names
624
+ facet:
625
+ corporate_name_ssm: Corporate Names
626
+ exhibit_tags: Exhibit Tags
627
+ genre_ssim: Genre
628
+ language_ssim: Language
629
+ personal_name_ssm: Personal Names
630
+ subject_geographic_ssim: Geographic
631
+ subject_temporal_ssim: Era
632
+ full_title_tesim: Title
633
+ language_ssm: Language
634
+ note_desc_note_tesim: Note
635
+ note_mapuse_tesim: Type
636
+ note_page_num_tesim: Page Number
637
+ note_phys_desc_tesim: Note
638
+ note_provenance_tesim: Provenance
639
+ note_references_tesim: References
640
+ note_source_tesim: Source
641
+ personal_name_ssm: Personal Names
642
+ search:
643
+ all_fields: Everything
644
+ author: Author
645
+ title: Title
646
+ sort:
647
+ date: Date (new to old)
648
+ identifier: Identifier
649
+ relevance: Relevance
650
+ source: Source
651
+ title: Title
652
+ type: Type
653
+ spotlight_upload_attribution_tesim: Attribution
654
+ spotlight_upload_date_tesim: Date
655
+ spotlight_upload_description_tesim: Description
656
+ subject_geographic_tesim: Geographic Subject
657
+ subject_temporal_tesim: Temporal Subject
658
+ search_configurations:
659
+ default_per_page:
660
+ label: Default per page
661
+ document_index_view_types:
662
+ label: Result page types
639
663
  edit:
640
- header: "Edit Browse Category"
641
- title: "Curation - Browse"
642
- query_params: "Active search constraints"
643
- search:
644
- item_count:
664
+ header: Search
665
+ tab:
666
+ facets: Facets
667
+ options: Options
668
+ results: Results
669
+ facet_metadata:
670
+ document_count:
645
671
  one: "%{count} item"
646
672
  other: "%{count} items"
647
- missing_description_html: "%{link} to add a description."
673
+ too_many_values_count: "%{count}+ unique values"
674
+ value_count:
675
+ one: "%{count} unique value"
676
+ other: "%{count} unique values"
677
+ facets:
678
+ help: If the sidebar is visible, users can use the facets shown in the sidebar to limit a search. You can select the facets that are available for searching below. Click a facet field name to edit its display label. Drag and drop facets to specify the order they are displayed in the sidebar.
679
+ sort_by:
680
+ count: Frequency
681
+ index: Value
682
+ label: 'Sort by:'
683
+ search_fields:
684
+ enable_feature: Display search box
685
+ header: Field-based search
686
+ help: If the search box is displayed, you can also enable field-based search. Field-based search adds a dropdown menu to your exhibit site's search box that provides the user with an option to restrict a search query to a single metadata field.
687
+ instructions: If enabled, you can select below the metadata fields that are available for searching. Click a field name to edit its display label. Drag and drop fields to specify the order they are displayed in the search box dropdown menu.
688
+ sort:
689
+ header: Sort fields
690
+ help: Select the fields you want to be available to users for sorting results. Click a field title to change its display label. Drag and drop fields to change their order in the sort dropdown menu. The field listed first is the default sort field.
691
+ keys:
692
+ asc: ascending
693
+ desc: descending
694
+ id: id
695
+ score: relevancy score
696
+ sort_date_dtsi: date
697
+ sort_source_ssi: source
698
+ sort_title_ssi: title
699
+ sort_type_ssi: type
700
+ searches:
701
+ edit:
702
+ header: Edit Browse Category
703
+ title: Curation - Browse
648
704
  form:
649
- search_box:
650
- label: Display search box
651
- help_block: Displays a search box that enables users to search within the browse category results
652
- search_description: "Description"
653
- search_masthead: "Masthead"
654
- search_thumbnail: "Thumbnail"
655
705
  default_index_view_type: Default view
656
706
  masthead:
657
- help: >
658
- You can select and crop an image to use as a browse category-specific masthead, instead
659
- of the default site masthead, for this browse category's detail page.
660
- help_secondary: >
661
- To create a browse category-specific masthead, you should use an image that is at least
662
- 120 pixels tall and 1200 pixels wide. For best results use an image at least 1800 pixels wide.
663
- You can crop larger images using the cropping tool below.
707
+ help: You can select and crop an image to use as a browse category-specific masthead, instead of the default site masthead, for this browse category's detail page.
708
+ help_secondary: To create a browse category-specific masthead, you should use an image that is at least 120 pixels tall and 1200 pixels wide. For best results use an image at least 1800 pixels wide. You can crop larger images using the cropping tool below.
709
+ query_params: Search parameters
710
+ search_box:
711
+ help_block: Displays a search box that enables users to search within the browse category results
712
+ label: Display search box
713
+ search_description: Description
714
+ search_masthead: Masthead
715
+ search_thumbnail: Thumbnail
664
716
  thumbnail:
665
- help: "You can select and crop an image to visually represent this search."
666
- browse:
667
- nav_link: "Browse"
717
+ help: You can select and crop an image to visually represent this search.
668
718
  index:
669
- header: "Browse Exhibit"
719
+ categories_header: Browse Categories
720
+ header: Browse
721
+ instructions: Use the Save search button on a search results page to create a new browse category. Select the categories you want to be displayed on the browse landing page. Drag and drop categories to change the order in which they appear on that page."
722
+ no_saved_searches: You can save search results while in curation mode to create browse categories, which will be displayed here.
723
+ not_searchable_html: This exhibit is not currently searchable. To perform searches that can be saved as additional browse categories, temporarily turn on the Display search box option in the Options section of the Configuration > %{href} page.
724
+ title: Curation - Browse
670
725
  search:
671
726
  item_count:
672
727
  one: "%{count} item"
673
728
  other: "%{count} items"
674
- search_box:
675
- placeholder: Search…
676
- label: Search within this browse category
677
- submit: Search within browse category
678
- reset: Clear search box
679
- success:
680
- result_number_html: Your search matched <strong> %{search_size} of %{parent_search_count} items</strong> in this browse category.
681
- expand_html: You can also <a href="%{expand_search_url}">search all exhibit items for "%{browse_query}"</a>.
682
- zero_results:
683
- result_number: Your search did not match any items in this browse category.
684
- expand_html: You can <a href="%{clear_search_url}"> clear this search</a> or try <a href="%{expand_search_url}">searching all exhibit items for "%{browse_query}"</a>.
685
- tags:
686
- index:
687
- title: "Curation - Tags"
688
- header: "Tags"
689
- name: "Tag name"
690
- taggings:
691
- count: "Items tagged"
692
- actions: "Actions"
693
- no_tags: "No items in this exhibit have been tagged. You can add tags to an item on the Item Details page while in curation mode."
694
- role:
695
- admin: "Admin"
696
- curator: "Curator"
697
- header_links:
698
- login: "Sign in"
699
- logout: "Sign out"
700
- edit_site: "Site administration"
701
- create_exhibit: "Create new exhibit"
702
- dashboard: "Exhibit dashboard"
703
- contact: "Feedback"
704
- saved_search:
705
- label: "Save this search"
706
- title: "Enter a title to create a new saved search"
707
- id: "Select a title to update a previously saved search"
729
+ missing_description_html: "%{link} to add a description."
708
730
  shared:
709
731
  report_a_problem:
732
+ honeypot_field_explanation: Ignore this text box. It is used to detect spammers. If you enter anything into this text box, your message will not be sent.
710
733
  title: Contact Us
711
- honeypot_field_explanation: 'Ignore this text box. It is used to detect spammers. If you enter anything into this text box, your message will not be sent.'
712
- indexing_complete_mailer:
713
- documents_indexed:
714
- title: "Your CSV file has just finished being processed."
715
- body:
716
- one: "%{count} document has been indexed from the CSV file and added to the exhibit %{title}."
717
- other: "%{count} documents have been indexed from the CSV file and added to the exhibit %{title}."
734
+ sir_trevor:
735
+ blocks:
736
+ browse_block:
737
+ items:
738
+ one: "%{count} item"
739
+ other: "%{count} items"
740
+ link_to_search_block:
741
+ items:
742
+ one: "%{count} item"
743
+ other: "%{count} items"
744
+ sites:
745
+ edit:
746
+ basic_settings:
747
+ heading: Title
748
+ page_title: Customize appearance
749
+ section: Manage exhibits
750
+ site_masthead:
751
+ heading: Site masthead
752
+ help: |
753
+ You can select and crop an image to use as a background for your home page masthead.
754
+ To use an image as a masthead background, you should use an image that is at least 120 pixels tall and 1200 pixels wide. For best results use an image at least 1800 pixels wide. You can crop larger images using the cropping tool below.
755
+ edit_exhibits:
756
+ instructions: Drag and drop the exhibits below to specify the order in which they are displayed on the exhibits homepage.
757
+ page_title: Order exhibits
758
+ section: Manage exhibits
759
+ exhibit:
760
+ published: Published
761
+ unpublished: Unpublished
762
+ new:
763
+ page_title: Create a new exhibit
764
+ section: Manage exhibits
765
+ tags:
766
+ index:
767
+ actions: Actions
768
+ header: Tags
769
+ name: Tag name
770
+ no_tags: No items in this exhibit have been tagged. You can add tags to an item on the Item Details page while in curation mode.
771
+ taggings:
772
+ count: Items tagged
718
773
  versions:
719
- undo: Undo changes
720
774
  redo: Redo changes
775
+ undo: Undo changes
721
776
  undo_error: Unable to undo changes
722
- shared:
723
- share_follow:
724
- share_follow: "Share & Follow"
725
- site_sidebar:
726
- header: Actions
727
- create_exhibit: 'Create a new exhibit'
728
- documentation: 'Curator documentation'
729
- reindexing_log:
730
- status:
731
- unstarted: Not Yet Started
732
- in_progress: In Progress
733
- succeeded: Successful
734
- failed: Failed
777
+ toggle_nav: Toggle navigation