invenio-app-rdm 12.0.0.dev8__py2.py3-none-any.whl → 14.0.0b1.dev8__py2.py3-none-any.whl

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.
Files changed (479) hide show
  1. invenio_app_rdm/__init__.py +3 -2
  2. invenio_app_rdm/{stats/templates/events/record_view/v7 → administration}/__init__.py +1 -3
  3. invenio_app_rdm/{stats/templates/events/record_view → administration/audit_logs}/__init__.py +6 -4
  4. invenio_app_rdm/administration/audit_logs/audit_logs.py +81 -0
  5. invenio_app_rdm/administration/domains/__init__.py +22 -0
  6. invenio_app_rdm/administration/domains/domains.py +159 -0
  7. invenio_app_rdm/administration/moderation/__init__.py +11 -0
  8. invenio_app_rdm/administration/moderation/requests.py +175 -0
  9. invenio_app_rdm/administration/records/__init__.py +15 -0
  10. invenio_app_rdm/administration/records/records.py +163 -0
  11. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/audit_logs.html +14 -0
  12. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/domains_search.html +13 -0
  13. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/records/drafts.html +14 -0
  14. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/records/records.html +14 -0
  15. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/requests.html +14 -0
  16. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/requests_details.html +91 -0
  17. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/user_moderation.html +14 -0
  18. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/user_moderation_details.html +14 -0
  19. invenio_app_rdm/administration/templates/semantic-ui/invenio_app_rdm/administration/users_search.html +14 -0
  20. invenio_app_rdm/{stats/templates/aggregations/aggr_record_view/v7 → administration/user_moderation}/__init__.py +4 -3
  21. invenio_app_rdm/administration/user_moderation/user_moderation.py +175 -0
  22. invenio_app_rdm/administration/users/__init__.py +12 -0
  23. invenio_app_rdm/administration/users/users.py +130 -0
  24. invenio_app_rdm/{stats/templates/events/file_download/v7 → administration/views}/__init__.py +4 -3
  25. invenio_app_rdm/administration/views/ui.py +21 -0
  26. invenio_app_rdm/cli.py +37 -14
  27. invenio_app_rdm/communities_ui/searchapp.py +1 -0
  28. invenio_app_rdm/communities_ui/sitemap.py +63 -0
  29. invenio_app_rdm/communities_ui/templates/semantic-ui/invenio_communities/collections/collection.html +60 -0
  30. invenio_app_rdm/communities_ui/templates/semantic-ui/invenio_communities/collections/macros.html +43 -0
  31. invenio_app_rdm/communities_ui/templates/semantic-ui/invenio_communities/details/browse/index.html +59 -0
  32. invenio_app_rdm/communities_ui/templates/semantic-ui/invenio_communities/{details → records}/index.html +1 -1
  33. invenio_app_rdm/communities_ui/views/communities.py +183 -8
  34. invenio_app_rdm/communities_ui/views/ui.py +52 -42
  35. invenio_app_rdm/config.py +586 -90
  36. invenio_app_rdm/ext.py +157 -0
  37. invenio_app_rdm/fixtures/__init__.py +2 -2
  38. invenio_app_rdm/fixtures/pages.py +34 -12
  39. invenio_app_rdm/records_ui/searchapp.py +43 -0
  40. invenio_app_rdm/records_ui/sitemap.py +44 -0
  41. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/deposit.html +59 -16
  42. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/detail.html +236 -141
  43. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/access-form.html +64 -0
  44. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/citation.html +4 -3
  45. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/contact.html +2 -1
  46. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/creatibutors.html +22 -20
  47. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/description.html +7 -5
  48. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/details.html +290 -230
  49. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/doi.html +3 -24
  50. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/meta.html +36 -0
  51. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/citations.html +6 -0
  52. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/communities.html +30 -22
  53. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/details.html +20 -19
  54. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/export.html +19 -16
  55. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/external_resources.html +55 -0
  56. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/keywords_subjects.html +9 -5
  57. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/licenses.html +62 -49
  58. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/locations.html +23 -0
  59. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/manage_menu.html +24 -4
  60. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/metrics.html +2 -2
  61. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/technical_metadata.html +21 -0
  62. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/side_bar/versions.html +15 -5
  63. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/stats.html +93 -79
  64. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/subjects.html +1 -1
  65. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/draft_not_found.html +17 -0
  66. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/export.html +2 -1
  67. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/creatibutors.html +54 -39
  68. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/detail.html +182 -93
  69. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/doi.html +36 -0
  70. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/files.html +152 -79
  71. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/locations.html +62 -0
  72. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/macros/version.html +3 -2
  73. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/restricted_with_doi_tombstone.html +33 -0
  74. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/tombstone.html +55 -12
  75. invenio_app_rdm/records_ui/utils.py +126 -1
  76. invenio_app_rdm/records_ui/views/__init__.py +75 -17
  77. invenio_app_rdm/records_ui/views/decorators.py +309 -38
  78. invenio_app_rdm/records_ui/views/deposits.py +302 -51
  79. invenio_app_rdm/records_ui/views/filters.py +74 -7
  80. invenio_app_rdm/records_ui/views/records.py +256 -90
  81. invenio_app_rdm/redirector/resource.py +1 -0
  82. invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/community-submission/index.html +34 -8
  83. invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/file-modification/index.html +88 -0
  84. invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/guest-access-request/index.html +66 -0
  85. invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/macros/request_header.html +5 -3
  86. invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/record-deletion/index.html +95 -0
  87. invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/subcommunity/index.html +49 -0
  88. invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/subcommunity-invitation/index.html +49 -0
  89. invenio_app_rdm/requests_ui/templates/semantic-ui/invenio_requests/user-access-request/index.html +59 -0
  90. invenio_app_rdm/requests_ui/views/requests.py +221 -42
  91. invenio_app_rdm/requests_ui/views/ui.py +17 -4
  92. invenio_app_rdm/tasks.py +6 -2
  93. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/auditLogs/AuditLogActions.js +136 -0
  94. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/auditLogs/ViewJson.js +35 -0
  95. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/auditLogs/ViewRecentChanges.js +119 -0
  96. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/auditLogs/index.js +31 -0
  97. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/auditLogs/search/SearchResultItemLayout.js +87 -0
  98. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/auditLogs/search/index.js +9 -0
  99. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/components/CompareRevisionsDropdown.js +89 -0
  100. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/components/ImpersonateUser.js +92 -0
  101. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/components/ImpersonateUserForm.js +199 -0
  102. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/components/RevisionsDiffViewer.js +80 -0
  103. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/components/SetQuotaAction.js +109 -0
  104. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/components/SetQuotaForm.js +196 -0
  105. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/components/index.js +9 -0
  106. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/domains/index.js +27 -0
  107. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/domains/search/SearchResultItemLayout.js +185 -0
  108. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/domains/search/index.js +9 -0
  109. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/drafts/index.js +32 -0
  110. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/CompareRevisions.js +129 -0
  111. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/RecordActions.js +75 -0
  112. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/RecordResourceActions.js +185 -0
  113. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/RemovalReasonsSelect.js +85 -0
  114. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/RestoreConfirmation.js +108 -0
  115. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/TombstoneForm.js +212 -0
  116. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/api/api.js +38 -0
  117. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/api/index.js +9 -0
  118. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/api/routes.js +30 -0
  119. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/index.js +40 -0
  120. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/search/AdministrationSearchLayout.js +56 -0
  121. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/search/RecordSearchLayout.js +84 -0
  122. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/search/SearchResultItemLayout.js +171 -0
  123. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/search/filters/DeletionStatusFilter.js +121 -0
  124. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/search/filters/index.js +9 -0
  125. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/records/search/index.js +10 -0
  126. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/requests/RequestsSearchResultItem.js +81 -0
  127. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/requests/RequestsSearchbarLayout.js +48 -0
  128. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/requests/index.js +22 -0
  129. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/userModeration/ModerationActions.js +103 -0
  130. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/userModeration/index.js +29 -0
  131. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/userModeration/search/SearchResultItemLayout.js +151 -0
  132. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/userModeration/search/UserModerationSearchLayout.js +56 -0
  133. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/userModeration/search/index.js +10 -0
  134. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/UserActions.js +263 -0
  135. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/api/api.js +42 -0
  136. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/api/index.js +8 -0
  137. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/api/routes.js +38 -0
  138. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/index.js +30 -0
  139. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/search/SearchResultItemLayout.js +202 -0
  140. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/search/UserSearchLayout.js +81 -0
  141. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/search/filters/UserStatusFilterComponent.js +114 -0
  142. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/search/filters/index.js +1 -0
  143. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/administration/users/search/index.js +10 -0
  144. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/collectionRecordsSearch/index.js +61 -0
  145. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/communityRecordsSearch/CommunityRecordsSearchAppLayout.js +2 -2
  146. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/communityRecordsSearch/CommunityRecordsSearchBarElement.js +1 -1
  147. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/communityRecordsSearch/CommunityRecordsSingleSearchBarElement.js +1 -1
  148. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/communityRecordsSearch/index.js +8 -3
  149. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/CompactStats.js +51 -0
  150. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/CopyButton.js +38 -19
  151. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/DisplayPartOfCommunities.js +78 -0
  152. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/DisplayVerifiedCommunity.js +54 -0
  153. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/FileModificationUntil.js +45 -0
  154. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/RecordDeletion/DeletionModal.js +354 -0
  155. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/RecordDeletion/DeletionRadioGroup.js +44 -0
  156. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/RecordDeletion.js +81 -0
  157. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/RecordsResultsListItem.js +61 -31
  158. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/RDMDepositForm.js +680 -486
  159. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/ShareDraftButton.js +65 -0
  160. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/config.js +48 -0
  161. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/index.js +14 -2
  162. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/frontpage/RecordsList.js +61 -21
  163. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/AccessRequestForm.js +254 -0
  164. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/CommunitiesManagement.js +171 -0
  165. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/CommunitiesManagementDropdown.js +186 -0
  166. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/EditButton.js +10 -1
  167. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ExportDropdown.js +7 -2
  168. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ManageButton.js +140 -0
  169. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ManageDefaultBrandingAction/ManageDefaultBrandingAction.js +129 -0
  170. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/PendingCommunitiesModal/PendingCommunitiesModal.js +63 -0
  171. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/PendingCommunitiesModal/PendingCommunitiesSearch.js +89 -0
  172. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/PendingCommunitiesModal/PendingCommunityRequestItem.js +33 -0
  173. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordCitationField.js +55 -51
  174. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordCommunitiesList.js +87 -89
  175. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordCommunitiesListModal/RecordCommunitiesListModal.js +44 -30
  176. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordCommunitiesListModal/RecordCommunitiesSearch.js +39 -20
  177. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordCommunitiesListModal/RecordCommunitiesSearchItem.js +44 -17
  178. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordCommunitySubmission/RecordCommunitySubmissionModal.js +171 -0
  179. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordManagement.js +111 -62
  180. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordVersionsList.js +99 -61
  181. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RemoveFromCommunity/RemoveFromCommunityAction.js +188 -0
  182. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/AccessDropdown.js +93 -0
  183. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/CreateAccessLink.js +98 -0
  184. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksSearchItem.js +170 -0
  185. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksSearchResultContainer.js +216 -0
  186. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksTab.js +104 -0
  187. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessRequests/AccessRequestsTab.js +230 -0
  188. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessUsersGroups/AccessUsersGroups.js +178 -0
  189. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessUsersGroups/AddUserGroupAccessModal.js +172 -0
  190. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessUsersGroups/GroupsTab.js +88 -0
  191. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessUsersGroups/PeopleTab.js +88 -0
  192. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessUsersGroups/UserGroupAccessSearchResultItem.js +158 -0
  193. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/{ShareButton.js → ShareOptions/ShareButton.js} +13 -4
  194. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/ShareModal.js +238 -0
  195. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/api/api.js +39 -0
  196. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/access.js +24 -0
  197. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/index.js +72 -25
  198. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/theme.js +10 -6
  199. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/overridableRegistry/mapping.js +6 -1
  200. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/AccessRequestExpiration.js +56 -0
  201. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/index.js +1 -0
  202. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/timeline/AccessRequestTimelineEdit.js +177 -0
  203. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/timeline/AccessRequestTimelineRead.js +50 -0
  204. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/timeline/overrides/TimelineFeedHeader.js +34 -0
  205. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/search/components.js +15 -13
  206. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/search/index.js +1 -1
  207. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/subcommunity/browse.js +28 -0
  208. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/theme.js +77 -9
  209. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/base.js +122 -74
  210. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/communities.js +1 -11
  211. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/requests.js +27 -412
  212. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/uploads.js +15 -14
  213. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/uploads_items/ComputerTabletUploadsItem.js +47 -27
  214. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/uploads_items/MobileUploadsItem.js +43 -27
  215. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/utils.js +32 -7
  216. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/file_uploader/uppy.less +37 -0
  217. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/landing_page/creatibutors.less +15 -4
  218. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/landing_page/licenses.less +5 -3
  219. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/collections/form.overrides +15 -0
  220. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/collections/grid.overrides +24 -33
  221. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/collections/menu.overrides +18 -3
  222. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/collections/message.overrides +19 -3
  223. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/collections/message.variables +2 -0
  224. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/collections/table.overrides +78 -6
  225. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/button.overrides +21 -0
  226. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/container.overrides +30 -7
  227. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/header.overrides +17 -4
  228. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/icon.overrides +2 -0
  229. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/image.overrides +34 -4
  230. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/input.overrides +10 -0
  231. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/label.overrides +48 -4
  232. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/list.overrides +10 -0
  233. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/elements/segment.overrides +16 -13
  234. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/globals/site.overrides +156 -97
  235. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/globals/site.variables +7 -3
  236. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/modules/accordion.overrides +35 -9
  237. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/modules/dropdown.overrides +28 -6
  238. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/modules/dropdown.variables +1 -0
  239. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/modules/modal.overrides +40 -11
  240. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/modules/modal.variables +5 -0
  241. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/modules/search.overrides +7 -0
  242. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/modules/search.variables +0 -0
  243. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/modules/transition.overrides +8 -8
  244. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/theme.less +2 -5
  245. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/views/card.overrides +4 -2
  246. invenio_app_rdm/theme/assets/semantic-ui/less/invenio_app_rdm/theme/views/item.overrides +20 -33
  247. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/i18next.js +1 -1
  248. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/_generatedTranslations.js +66 -0
  249. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ar/messages.po +805 -138
  250. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ar/translations.json +306 -86
  251. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/bg/messages.po +690 -71
  252. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/bg/translations.json +282 -86
  253. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ca/messages.po +700 -81
  254. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ca/translations.json +282 -86
  255. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/cs/messages.po +822 -139
  256. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/cs/translations.json +294 -86
  257. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/da/messages.po +692 -67
  258. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/da/translations.json +282 -86
  259. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/de/messages.po +819 -139
  260. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/de/translations.json +282 -86
  261. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/el/messages.po +699 -79
  262. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/el/translations.json +282 -86
  263. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/en/messages.po +1000 -5
  264. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/en/translations.json +315 -2
  265. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/es/messages.po +811 -138
  266. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/es/translations.json +282 -86
  267. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/et/messages.po +747 -134
  268. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/et/translations.json +282 -86
  269. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/fa/messages.po +689 -70
  270. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/fa/translations.json +282 -86
  271. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/fr/messages.po +810 -127
  272. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/fr/translations.json +282 -86
  273. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/hr/messages.po +696 -71
  274. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/hr/translations.json +288 -86
  275. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/hu/messages.po +804 -137
  276. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/hu/translations.json +282 -86
  277. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/index.js +17 -66
  278. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/it/messages.po +715 -88
  279. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/it/translations.json +282 -86
  280. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ja/messages.po +684 -71
  281. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ja/translations.json +276 -86
  282. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ka/messages.po +690 -71
  283. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ka/translations.json +282 -86
  284. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ko/messages.po +889 -0
  285. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ko/translations.json +277 -0
  286. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/lt/messages.po +703 -72
  287. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/lt/translations.json +294 -86
  288. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/no/messages.po +690 -71
  289. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/no/translations.json +282 -86
  290. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/pl/messages.po +705 -71
  291. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/pl/translations.json +294 -86
  292. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/pt/messages.po +695 -70
  293. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/pt/translations.json +282 -86
  294. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ro/messages.po +718 -86
  295. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ro/translations.json +288 -86
  296. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ru/messages.po +807 -125
  297. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/ru/translations.json +294 -86
  298. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/sk/messages.po +714 -83
  299. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/sk/translations.json +294 -86
  300. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/sv/messages.po +809 -142
  301. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/sv/translations.json +282 -86
  302. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/tr/messages.po +800 -129
  303. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/tr/translations.json +282 -86
  304. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/uk/messages.po +717 -83
  305. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/uk/translations.json +294 -86
  306. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/zh_CN/messages.po +737 -124
  307. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/zh_CN/translations.json +276 -86
  308. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/zh_TW/messages.po +684 -71
  309. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/zh_TW/translations.json +276 -86
  310. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/package.json +5 -38
  311. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/translations.pot +863 -127
  312. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/administration_page.html +15 -0
  313. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/default_static_page.html +8 -8
  314. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/files_integrity_report/email/files_integrity_report.html +12 -12
  315. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/footer.html +33 -75
  316. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/header.html +42 -27
  317. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/header_frontpage.html +4 -2
  318. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/header_login.html +144 -113
  319. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/help/search.de.html +2 -2
  320. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/help/search.en.html +11 -6
  321. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/help/search.sv.html +254 -0
  322. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/help/statistics.sv.html +196 -0
  323. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/help/versioning.en.html +149 -0
  324. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/help/versioning.sv.html +143 -0
  325. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/intro_section.html +15 -16
  326. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/macros/records_list.html +33 -3
  327. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/page.html +36 -0
  328. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/page_cover.html +13 -0
  329. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/robots.txt +15 -0
  330. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/searchbar.html +43 -15
  331. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/settings/notifications.html +17 -0
  332. invenio_app_rdm/theme/templates/semantic-ui/invenio_app_rdm/site_footer.html +29 -0
  333. invenio_app_rdm/theme/templates/semantic-ui/invenio_communities/default_static_page.html +26 -0
  334. invenio_app_rdm/theme/templates/themes/default/invenio_app_rdm/header.html +147 -0
  335. invenio_app_rdm/theme/templates/themes/default/invenio_app_rdm/site_footer.html +42 -0
  336. invenio_app_rdm/theme/views.py +80 -28
  337. invenio_app_rdm/theme/webpack.py +38 -7
  338. invenio_app_rdm/translations/ar/LC_MESSAGES/messages.mo +0 -0
  339. invenio_app_rdm/translations/ar/LC_MESSAGES/messages.po +975 -378
  340. invenio_app_rdm/translations/bg/LC_MESSAGES/messages.mo +0 -0
  341. invenio_app_rdm/translations/bg/LC_MESSAGES/messages.po +908 -279
  342. invenio_app_rdm/translations/ca/LC_MESSAGES/messages.mo +0 -0
  343. invenio_app_rdm/translations/ca/LC_MESSAGES/messages.po +913 -284
  344. invenio_app_rdm/translations/cs/LC_MESSAGES/messages.mo +0 -0
  345. invenio_app_rdm/translations/cs/LC_MESSAGES/messages.po +1070 -406
  346. invenio_app_rdm/translations/da/LC_MESSAGES/messages.mo +0 -0
  347. invenio_app_rdm/translations/da/LC_MESSAGES/messages.po +909 -274
  348. invenio_app_rdm/translations/de/LC_MESSAGES/messages.mo +0 -0
  349. invenio_app_rdm/translations/de/LC_MESSAGES/messages.po +1018 -407
  350. invenio_app_rdm/translations/el/LC_MESSAGES/messages.mo +0 -0
  351. invenio_app_rdm/translations/el/LC_MESSAGES/messages.po +916 -287
  352. invenio_app_rdm/translations/es/LC_MESSAGES/messages.mo +0 -0
  353. invenio_app_rdm/translations/es/LC_MESSAGES/messages.po +964 -372
  354. invenio_app_rdm/translations/et/LC_MESSAGES/messages.mo +0 -0
  355. invenio_app_rdm/translations/et/LC_MESSAGES/messages.po +939 -363
  356. invenio_app_rdm/translations/fa/LC_MESSAGES/messages.mo +0 -0
  357. invenio_app_rdm/translations/fa/LC_MESSAGES/messages.po +907 -278
  358. invenio_app_rdm/translations/fr/LC_MESSAGES/messages.mo +0 -0
  359. invenio_app_rdm/translations/fr/LC_MESSAGES/messages.po +1033 -376
  360. invenio_app_rdm/translations/hr/LC_MESSAGES/messages.mo +0 -0
  361. invenio_app_rdm/translations/hr/LC_MESSAGES/messages.po +908 -279
  362. invenio_app_rdm/translations/hu/LC_MESSAGES/messages.mo +0 -0
  363. invenio_app_rdm/translations/hu/LC_MESSAGES/messages.po +989 -372
  364. invenio_app_rdm/translations/it/LC_MESSAGES/messages.mo +0 -0
  365. invenio_app_rdm/translations/it/LC_MESSAGES/messages.po +970 -337
  366. invenio_app_rdm/translations/ja/LC_MESSAGES/messages.mo +0 -0
  367. invenio_app_rdm/translations/ja/LC_MESSAGES/messages.po +908 -279
  368. invenio_app_rdm/translations/ka/LC_MESSAGES/messages.mo +0 -0
  369. invenio_app_rdm/translations/ka/LC_MESSAGES/messages.po +910 -281
  370. invenio_app_rdm/translations/ko/LC_MESSAGES/messages.mo +0 -0
  371. invenio_app_rdm/translations/ko/LC_MESSAGES/messages.po +1361 -0
  372. invenio_app_rdm/translations/lt/LC_MESSAGES/messages.mo +0 -0
  373. invenio_app_rdm/translations/lt/LC_MESSAGES/messages.po +911 -282
  374. invenio_app_rdm/translations/messages.pot +982 -289
  375. invenio_app_rdm/translations/no/LC_MESSAGES/messages.mo +0 -0
  376. invenio_app_rdm/translations/no/LC_MESSAGES/messages.po +908 -279
  377. invenio_app_rdm/translations/pl/LC_MESSAGES/messages.mo +0 -0
  378. invenio_app_rdm/translations/pl/LC_MESSAGES/messages.po +908 -279
  379. invenio_app_rdm/translations/pt/LC_MESSAGES/messages.mo +0 -0
  380. invenio_app_rdm/translations/pt/LC_MESSAGES/messages.po +907 -278
  381. invenio_app_rdm/translations/ro/LC_MESSAGES/messages.mo +0 -0
  382. invenio_app_rdm/translations/ro/LC_MESSAGES/messages.po +1041 -382
  383. invenio_app_rdm/translations/ru/LC_MESSAGES/messages.mo +0 -0
  384. invenio_app_rdm/translations/ru/LC_MESSAGES/messages.po +1023 -371
  385. invenio_app_rdm/translations/sk/LC_MESSAGES/messages.mo +0 -0
  386. invenio_app_rdm/translations/sk/LC_MESSAGES/messages.po +917 -288
  387. invenio_app_rdm/translations/sv/LC_MESSAGES/messages.mo +0 -0
  388. invenio_app_rdm/translations/sv/LC_MESSAGES/messages.po +1007 -398
  389. invenio_app_rdm/translations/tr/LC_MESSAGES/messages.mo +0 -0
  390. invenio_app_rdm/translations/tr/LC_MESSAGES/messages.po +993 -342
  391. invenio_app_rdm/translations/uk/LC_MESSAGES/messages.mo +0 -0
  392. invenio_app_rdm/translations/uk/LC_MESSAGES/messages.po +984 -353
  393. invenio_app_rdm/translations/zh_CN/LC_MESSAGES/messages.mo +0 -0
  394. invenio_app_rdm/translations/zh_CN/LC_MESSAGES/messages.po +940 -348
  395. invenio_app_rdm/translations/zh_TW/LC_MESSAGES/messages.mo +0 -0
  396. invenio_app_rdm/translations/zh_TW/LC_MESSAGES/messages.po +908 -279
  397. invenio_app_rdm/upgrade_scripts/fix_migrated_records_from_8_0_to_9_0.py +2 -2
  398. invenio_app_rdm/upgrade_scripts/migrate_10_0_to_11_0.py +1 -1
  399. invenio_app_rdm/upgrade_scripts/migrate_11_0_to_12_0.py +205 -0
  400. invenio_app_rdm/upgrade_scripts/migrate_12_0_to_13_0.py +235 -0
  401. invenio_app_rdm/upgrade_scripts/migrate_2_0_to_3_0.py +1 -1
  402. invenio_app_rdm/upgrade_scripts/migrate_4_0_to_6_0.py +2 -3
  403. invenio_app_rdm/upgrade_scripts/migrate_6_0_to_7_0.py +0 -2
  404. invenio_app_rdm/upgrade_scripts/migrate_8_0_to_9_0.py +2 -2
  405. invenio_app_rdm/upgrade_scripts/migrate_9_0_to_10_0.py +1 -1
  406. invenio_app_rdm/users/schemas.py +27 -0
  407. invenio_app_rdm/users_ui/searchapp.py +9 -1
  408. invenio_app_rdm/users_ui/templates/semantic-ui/invenio_app_rdm/users/communities.html +1 -0
  409. invenio_app_rdm/users_ui/templates/semantic-ui/invenio_app_rdm/users/header.html +23 -9
  410. invenio_app_rdm/users_ui/views/__init__.py +1 -1
  411. invenio_app_rdm/users_ui/views/dashboard.py +6 -1
  412. invenio_app_rdm/users_ui/views/ui.py +5 -28
  413. invenio_app_rdm/utils/files.py +1 -1
  414. invenio_app_rdm/views.py +21 -0
  415. invenio_app_rdm-14.0.0b1.dev8.dist-info/METADATA +552 -0
  416. invenio_app_rdm-14.0.0b1.dev8.dist-info/RECORD +505 -0
  417. {invenio_app_rdm-12.0.0.dev8.dist-info → invenio_app_rdm-14.0.0b1.dev8.dist-info}/WHEEL +1 -1
  418. invenio_app_rdm-14.0.0b1.dev8.dist-info/entry_points.txt +44 -0
  419. invenio_app_rdm/admin.py +0 -36
  420. invenio_app_rdm/stats/__init__.py +0 -24
  421. invenio_app_rdm/stats/event_builders.py +0 -112
  422. invenio_app_rdm/stats/permissions.py +0 -33
  423. invenio_app_rdm/stats/templates/aggregations/__init__.py +0 -10
  424. invenio_app_rdm/stats/templates/aggregations/aggr_file_download/__init__.py +0 -10
  425. invenio_app_rdm/stats/templates/aggregations/aggr_file_download/os-v1/__init__.py +0 -10
  426. invenio_app_rdm/stats/templates/aggregations/aggr_file_download/os-v1/aggr-file-download-v1.0.0.json +0 -69
  427. invenio_app_rdm/stats/templates/aggregations/aggr_file_download/os-v2/__init__.py +0 -10
  428. invenio_app_rdm/stats/templates/aggregations/aggr_file_download/os-v2/aggr-file-download-v1.0.0.json +0 -69
  429. invenio_app_rdm/stats/templates/aggregations/aggr_file_download/v7/__init__.py +0 -10
  430. invenio_app_rdm/stats/templates/aggregations/aggr_file_download/v7/aggr-file-download-v1.0.0.json +0 -69
  431. invenio_app_rdm/stats/templates/aggregations/aggr_record_view/__init__.py +0 -10
  432. invenio_app_rdm/stats/templates/aggregations/aggr_record_view/os-v1/__init__.py +0 -10
  433. invenio_app_rdm/stats/templates/aggregations/aggr_record_view/os-v1/aggr-record-view-v1.0.0.json +0 -46
  434. invenio_app_rdm/stats/templates/aggregations/aggr_record_view/os-v2/__init__.py +0 -10
  435. invenio_app_rdm/stats/templates/aggregations/aggr_record_view/os-v2/aggr-record-view-v1.0.0.json +0 -46
  436. invenio_app_rdm/stats/templates/aggregations/aggr_record_view/v7/aggr-record-view-v1.0.0.json +0 -46
  437. invenio_app_rdm/stats/templates/events/__init__.py +0 -10
  438. invenio_app_rdm/stats/templates/events/file_download/__init__.py +0 -10
  439. invenio_app_rdm/stats/templates/events/file_download/os-v1/__init__.py +0 -10
  440. invenio_app_rdm/stats/templates/events/file_download/os-v1/file-download-v1.0.0.json +0 -93
  441. invenio_app_rdm/stats/templates/events/file_download/os-v2/__init__.py +0 -10
  442. invenio_app_rdm/stats/templates/events/file_download/os-v2/file-download-v1.0.0.json +0 -93
  443. invenio_app_rdm/stats/templates/events/file_download/v7/file-download-v1.0.0.json +0 -93
  444. invenio_app_rdm/stats/templates/events/record_view/os-v1/__init__.py +0 -10
  445. invenio_app_rdm/stats/templates/events/record_view/os-v1/record-view-v1.0.0.json +0 -70
  446. invenio_app_rdm/stats/templates/events/record_view/os-v2/__init__.py +0 -10
  447. invenio_app_rdm/stats/templates/events/record_view/os-v2/record-view-v1.0.0.json +0 -70
  448. invenio_app_rdm/stats/templates/events/record_view/v7/record-view-v1.0.0.json +0 -70
  449. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareModal.js +0 -262
  450. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/requests_items/ComputerTabletRequestsItem.js +0 -74
  451. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/user_dashboard/requests_items/MobileRequestsItem.js +0 -70
  452. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/i18next-scanner.config.js +0 -64
  453. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/af/messages.po +0 -272
  454. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/af/translations.json +0 -87
  455. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/et_EE/messages.po +0 -272
  456. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/et_EE/translations.json +0 -87
  457. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/gl/messages.po +0 -272
  458. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/gl/translations.json +0 -87
  459. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/rw/messages.po +0 -272
  460. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/messages/rw/translations.json +0 -87
  461. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/package-lock.json +0 -1512
  462. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/scripts/compileCatalog.js +0 -40
  463. invenio_app_rdm/theme/assets/semantic-ui/translations/invenio_app_rdm/scripts/initCatalog.js +0 -20
  464. invenio_app_rdm/theme/static/robots.txt +0 -5
  465. invenio_app_rdm/translations/af/LC_MESSAGES/messages.mo +0 -0
  466. invenio_app_rdm/translations/af/LC_MESSAGES/messages.po +0 -728
  467. invenio_app_rdm/translations/et_EE/LC_MESSAGES/messages.mo +0 -0
  468. invenio_app_rdm/translations/et_EE/LC_MESSAGES/messages.po +0 -728
  469. invenio_app_rdm/translations/gl/LC_MESSAGES/messages.mo +0 -0
  470. invenio_app_rdm/translations/gl/LC_MESSAGES/messages.po +0 -728
  471. invenio_app_rdm/translations/rw/LC_MESSAGES/messages.mo +0 -0
  472. invenio_app_rdm/translations/rw/LC_MESSAGES/messages.po +0 -728
  473. invenio_app_rdm-12.0.0.dev8.dist-info/AUTHORS.rst +0 -11
  474. invenio_app_rdm-12.0.0.dev8.dist-info/METADATA +0 -103
  475. invenio_app_rdm-12.0.0.dev8.dist-info/RECORD +0 -402
  476. invenio_app_rdm-12.0.0.dev8.dist-info/entry_points.txt +0 -26
  477. /invenio_app_rdm/{translations/.gitkeep → theme/assets/semantic-ui/js/invenio_app_rdm/administration/userModeration/search/UserModerationBulkActions.js} +0 -0
  478. {invenio_app_rdm-12.0.0.dev8.dist-info → invenio_app_rdm-14.0.0b1.dev8.dist-info/licenses}/LICENSE +0 -0
  479. {invenio_app_rdm-12.0.0.dev8.dist-info → invenio_app_rdm-14.0.0b1.dev8.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,15 @@
1
+ {# -*- coding: utf-8 -*-
2
+
3
+ This file is part of Invenio.
4
+ Copyright (C) 2015-2025 CERN.
5
+
6
+ Invenio is free software; you can redistribute it and/or modify it
7
+ under the terms of the MIT License; see LICENSE file for more details.
8
+ #}
9
+
10
+ {%- extends "invenio_theme/page.html" -%}
11
+
12
+ {%- block css %}
13
+ {{ super()}}
14
+ <link rel="stylesheet" href="/static/css/json-diff-kit.css">
15
+ {%- endblock css %}
@@ -1,6 +1,7 @@
1
1
  {#
2
2
  # This file is part of Invenio.
3
- # Copyright (C) 2022 CERN.
3
+ # Copyright (C) 2022-2024 CERN.
4
+ # Copyright (C) 2024 KTH Royal Institute of Technology.
4
5
  #
5
6
  # Invenio is free software; you can redistribute it and/or
6
7
  # modify it under the terms of the GNU General Public License as
@@ -19,15 +20,14 @@
19
20
  {% extends config.PAGES_BASE_TEMPLATE %}
20
21
 
21
22
  {% set title = page.title %}
22
-
23
23
  {% block page_body %}
24
24
  <div class="ui container rel-mt-2">
25
- <div class="row">
26
- <div class="col-xs-12">
27
- <h1>{{ page.title|safe }}</h1>
28
- {% block content %}{{ page.content|safe }}{% endblock %}
29
- </div>
30
- </div>
25
+ <div class="row">
26
+ <div class="col-xs-12 rich-input-content">
27
+ <h1>{{ page.title|safe }}</h1>
28
+ {% block content %}{{ page.content|safe }}{% endblock %}
29
+ </div>
30
+ </div>
31
31
  </div>
32
32
  {% endblock %}
33
33
 
@@ -2,30 +2,30 @@
2
2
  # -*- coding: utf-8 -*-
3
3
  #
4
4
  # Copyright (C) 2022 CERN.
5
+ # Copyright (C) 2024 KTH Royal Institute of Technology.
6
+ # Copyright (C) 2025 Northwestern University.
5
7
  #
6
8
  # Invenio App RDM is free software; you can redistribute it and/or modify it
7
9
  # under the terms of the MIT License; see LICENSE file for more details.
8
10
  -#}
9
11
 
10
- {% set BASE_URL = config.SITE_UI_URL %}
11
-
12
- The following files were flagged as 'unhealthy'. This means that the checksum check failed or timed out. Please take any action if needed.
12
+ {{ _("The following files were flagged as 'unhealthy'. This means that the checksum check failed or timed out. Please take any action if needed.") }}
13
13
 
14
14
  {% for entry in entries -%}
15
- {{ "ID: %s" | format(entry.file.id) }}
16
- {{ "URI: %s" | format(entry.file.uri) }}
15
+ {{ _("ID: {}").format(entry.file.id) }}
16
+ {{ _("URI: {}").format(entry.file.uri) }}
17
17
  {%- if 'filename' in entry %}
18
- {{ "Name: %s" | format(entry.filename) }}
18
+ {{ _("Name: {}").format(entry.filename) }}
19
19
  {%- endif %}
20
- {{ "Created: %s" | format(entry.file.created) }}
21
- {{ "Checksum: %s" | format(entry.file.checksum) }}
22
- {{ "Last check date: %s" | format(entry.file.last_check_at) }}
23
- {{ "Last check FAILED with result: %s" | format(entry.file.last_check) }}
20
+ {{ _("Created: {}").format(entry.file.created) }}
21
+ {{ _("Checksum: {}").format(entry.file.checksum) }}
22
+ {{ _("Last check date: {}").format(entry.file.last_check_at) }}
23
+ {{ _("Last check FAILED with result: {}").format(entry.file.last_check) }}
24
24
  {%- if 'record' in entry %}
25
- {{ "Record: %s/records/%s" | format(BASE_URL, entry.record.id) }}
25
+ {{ _("Record: {}").format(invenio_url_for("invenio_app_rdm_records.record_detail", pid_value=entry.record.id)) }}
26
26
  {%- endif %}
27
27
  {%- if 'draft' in entry %}
28
- {{ "Draft: %s/uploads/%s" | format(BASE_URL, entry.draft.id) }}
28
+ {{ _("Draft: {}").format(invenio_url_for("invenio_app_rdm_records.deposit_edit", pid_value=entry.draft.id)) }}
29
29
  {%- endif %}
30
30
  {{ "-" * 80 }}
31
31
  {% endfor %}
@@ -2,87 +2,45 @@
2
2
 
3
3
  Copyright (C) 2019-2020 CERN.
4
4
  Copyright (C) 2019-2020 Northwestern University.
5
- Copyright (C) 2021 Graz University of Technology.
5
+ Copyright (C) 2021 Graz University of Technology.
6
+ Copyright (C) 2024 KTH Royal Institute of Technology.
6
7
 
7
8
  Invenio App RDM is free software; you can redistribute it and/or modify it
8
9
  under the terms of the MIT License; see LICENSE file for more details.
9
10
  #}
11
+ {%- block footer_top %}
10
12
 
11
- <footer id="rdm-footer-element">
12
- {%- block footer_top %}
13
- <div class="footer-top">
14
- <div class="ui container">
15
- {%- block footer_top_left %}
16
- <div class="ui grid">
17
- <div class="rdm-footer five wide tablet two wide computer column">
18
- <h2 class="ui small header">{{_("About InvenioRDM")}}</h2>
19
- {% trans invenio_rdm="http://inveniosoftware.org/products/rdm" %}
20
- <p><a href="{{invenio_rdm}}">Product page</a></p>
21
- {% endtrans %}
22
- {% trans invenio_rdm_features="https://inveniosoftware.org/products/rdm/#features" %}
23
- <p><a href="{{invenio_rdm_features}}">Features</a></p>
24
- {% endtrans %}
25
- {% trans invenio_rdm_roadmap="https://inveniosoftware.org/products/rdm/roadmap/" %}
26
- <p><a href="{{invenio_rdm_roadmap}}">Roadmap</a></p>
27
- {% endtrans %}
28
- {% trans invenio_rdm_demo_site="http://inveniordm.web.cern.ch" %}
29
- <p><a href="{{invenio_rdm_demo_site}}">Demo site</a></p>
30
- {% endtrans %}
31
- </div>
32
- <div class="rdm-footer five wide tablet two wide computer column">
33
- <h2 class="ui small header">{{_ ("Get involved")}}</h2>
34
- {% trans invenio_rdm_gh="https://github.com/inveniosoftware/invenio-app-rdm" %}
35
- <p><a href="{{invenio_rdm_gh}}">GitHub</a></p>
36
- {% endtrans %}
37
- {% trans invenio_rdm_milestones="https://github.com/inveniosoftware/product-rdm" %}
38
- <p><a href="{{invenio_rdm_milestones}}">Project Milestones</a></p>
39
- {% endtrans %}
40
- {% trans invenio_rdm_docs_site="http://inveniordm.docs.cern.ch" %}
41
- <p><a href="{{invenio_rdm_docs_site}}">Documentation</a></p>
42
- {% endtrans %}
43
- </div>
44
- <div class="rdm-footer five wide tablet two wide computer column">
45
- <h2 class="ui small header">{{_ ("Community")}}</h2>
46
- {% trans invenio_rdm_chatroom="https://discord.gg/8qatqBC" %}
47
- <p><a href="{{invenio_rdm_chatroom}}">Chatroom</a></p>
48
- {% endtrans %}
49
- {% trans invenio_rdm_talk="https://invenio-talk.web.cern.ch/c/projects/invenio-rdm" %}
50
- <p><a href="{{invenio_rdm_talk}}">Forum</a></p>
51
- {% endtrans %}
52
- {% trans invenio_events="https://inveniosoftware.org/events/" %}
53
- <p><a href="{{invenio_events}}">Events & training</a></p>
54
- {% endtrans %}
55
- </div>
56
-
57
- {%- endblock footer_top_left %}
58
- <div class="six wide column right aligned">
59
- {%- block footer_top_right %}
60
- {%- endblock footer_top_right %}
61
- </div>
13
+ <div class="footer-top">
14
+ <div class="ui container app-rdm-footer">
15
+ {%- block footer_top_left %}
16
+ <div class="ui grid app-rdm-footer">
17
+ <div class="rdm-footer five wide tablet two wide computer column">
18
+ <h2 class="ui small header">{{ _("About InvenioRDM") }}</h2>
19
+ <p><a href="http://inveniosoftware.org/products/rdm">{{ _("Product page") }}</a></p>
20
+ <p><a href="https://inveniosoftware.org/products/rdm/#features">{{ _("Features") }}</a></p>
21
+ <p><a href="https://inveniosoftware.org/products/rdm/roadmap/">{{ _("Roadmap") }}</a></p>
22
+ <p><a href="http://inveniordm.web.cern.ch">{{ _("Demo site") }}</a></p>
62
23
  </div>
63
- </div>
64
- </div>
65
- {%- endblock footer_top %}
66
- {%- block footer_bottom %}
67
- <div class="footer-bottom sub-footer">
68
- <div class="ui container">
69
- <div class="ui grid">
70
- <div class="eight wide column left middle aligned">
71
- {%- block footer_bottom_left %}
72
- {% trans invenio_rdm="http://inveniosoftware.org/products/rdm" %}Powered by <a
73
- href="{{invenio_rdm}}">InvenioRDM</a>{% endtrans %}
74
- {%- endblock footer_bottom_left %}
75
- </div>
76
- <div class="eight wide column right aligned">
77
- {%- block footer_bottom_right %}
78
- {%- if config.I18N_LANGUAGES %}
79
- {% from "invenio_i18n/macros/language_selector.html" import language_selector_dropdown %}
80
- {{ language_selector_dropdown() }}
81
- {%- endif %}
82
- {%- endblock footer_bottom_right %}
83
- </div>
24
+ <div class="rdm-footer five wide tablet two wide computer column">
25
+ <h2 class="ui small header">{{ _("Get involved") }}</h2>
26
+ <p><a href="https://github.com/inveniosoftware/invenio-app-rdm">{{ _("GitHub") }}</a></p>
27
+ <p><a href="https://github.com/inveniosoftware/product-rdm">{{ _("Project Milestones") }}</a></p>
28
+ <p><a href="http://inveniordm.docs.cern.ch">{{ _("Documentation") }}</a></p>
29
+ </div>
30
+ <div class="rdm-footer five wide tablet two wide computer column">
31
+ <h2 class="ui small header">{{ _("Community") }}</h2>
32
+ <p><a href="https://discord.gg/8qatqBC">{{ _("Chatroom") }}</a></p>
33
+ <p><a href="https://invenio-talk.web.cern.ch/c/projects/invenio-rdm">{{ _("Forum") }}</a></p>
34
+ <p><a href="https://inveniosoftware.org/events/">{{ _("Events & training") }}</a></p>
84
35
  </div>
36
+
37
+ {%- endblock footer_top_left %}
38
+ <div class="six wide column right aligned">
39
+ {%- block footer_top_right %}
40
+ {%- endblock footer_top_right %}
41
+ </div>
85
42
  </div>
86
43
  </div>
87
- {%- endblock footer_bottom %}
88
- </footer>
44
+
45
+ </div>
46
+ {%- endblock footer_top %}
@@ -1,8 +1,9 @@
1
1
  {#
2
2
  -*- coding: utf-8 -*-
3
- Copyright (C) 2019-2020 CERN.
3
+ Copyright (C) 2019-2025 CERN.
4
4
  Copyright (C) 2019-2020 Northwestern University.
5
5
  Copyright (C) 2021 New York University.
6
+ Copyright (C) 2024 KTH Royal Institute of Technology.
6
7
 
7
8
  Invenio App RDM is free software; you can redistribute it and/or modify it
8
9
  under the terms of the MIT License; see LICENSE file for more details.
@@ -10,16 +11,23 @@
10
11
 
11
12
  <div>
12
13
  <header class="theme header">
13
- {%- block site_banner %}
14
- {%- endblock site_banner %}
14
+ {%- block user_impersonation %}
15
+ {%- if '_impersonator_id' in session %}
16
+ <div class="ui negative flashed top attached manage m-0 big message">
17
+ <div class="ui container">
18
+ <div class="header">
19
+ <i class="ui spy big icon"></i><strong>{{ _('Impersonated session') }}</strong>
20
+ </div>
21
+ {{ _('You must logout after you finish with you inquiry!') }}
22
+ </div>
23
+ </div>
24
+ {%- endif %}
25
+ {%- endblock user_impersonation %}
26
+
15
27
  <div class="outer-navbar">
16
- {%- block banner %}
17
- {% from 'invenio_banners/banner.html' import banner %}
18
- {{ banner() }}
19
- {%- endblock banner %}
20
28
  {%- block navbar %}
21
29
  <div class="ui container invenio-header-container">
22
- <nav id="invenio-nav" class="ui inverted menu borderless stackable p-0">
30
+ <nav id="invenio-nav" class="ui inverted menu borderless p-0">
23
31
  <div class="item logo p-0">
24
32
  {%- block navbar_header %}
25
33
  {%- block brand %}
@@ -27,7 +35,7 @@
27
35
  <a class="logo-link" href="/">
28
36
  <img class="ui image rdm-logo"
29
37
  src="{{ url_for('static', filename=config.THEME_LOGO) }}"
30
- alt="{{ _(config.THEME_SITENAME) }}"/>
38
+ alt="{{ _(config.THEME_SITENAME) }} {{ _('home') }}"/>
31
39
  </a>
32
40
  {%- else %}
33
41
  <a class="logo" href="/">{{ _(config.THEME_SITENAME) }}</a>
@@ -45,12 +53,11 @@
45
53
  aria-expanded="false"
46
54
  aria-controls="invenio-menu"
47
55
  >
48
- <span class="navicon"></span>
56
+ <span class="navicon" aria-hidden="true"></span>
49
57
  </button>
50
58
  </div>
51
59
 
52
- <div
53
- role="menu"
60
+ <nav
54
61
  id="invenio-menu"
55
62
  aria-labelledby="rdm-burger-menu-icon"
56
63
  class="ui fluid menu borderless mobile-hidden"
@@ -60,7 +67,7 @@
60
67
  class="ui button transparent"
61
68
  aria-label="{{ _('Close menu') }}"
62
69
  >
63
- <span class="navicon"></span>
70
+ <span class="navicon" aria-hidden="true"></span>
64
71
  </button>
65
72
 
66
73
  {%- if config.THEME_SEARCHBAR %}
@@ -74,29 +81,31 @@
74
81
  {%- if item.children %}
75
82
  <div class="item">
76
83
  <div class="dropdown {{ ' active' if item.active else '' }}">
77
- <a role="menuitem"
78
- class="dropdown-toggle"
79
- data-toggle="dropdown"
80
- aria-haspopup="true"
81
- aria-expanded="false"
82
- href="{{ item.url }}"
84
+ <a role="button"
85
+ class="dropdown-toggle"
86
+ data-toggle="dropdown"
87
+ aria-haspopup="menu"
88
+ aria-expanded="false"
89
+ href="{{ item.url }}"
83
90
  >
84
91
  {{ item.text|safe }}
85
92
  <b class="caret"></b>
86
93
  </a>
87
- <ul class="dropdown-menu">{{ loop(item.children|sort(attribute='order')) }}</ul>
94
+ <ul role="menu" class="dropdown-menu">
95
+ {{ loop(item.children|sort(attribute='order')) }}
96
+ </ul>
88
97
  </div>
89
98
  </div>
90
99
  {%- else %}
91
- <div class="{{' item active' if item.active and loop.depth == 0 else ' item' }}">
92
- <a role="menuitem" href="{{ item.url }}">{{ item.text|safe }}</a>
100
+ <div class="{{ 'item active' if item.active else 'item' }}">
101
+ <a href="{{ item.url }}">{{ item.text|safe }}</a>
93
102
  </div>
94
103
  {%- endif %}
95
104
  {%- endfor %}
96
105
 
97
106
  {% for item in current_menu.submenu('actions').children|sort(attribute='order') if item.visible recursive %}
98
- <div class="item">
99
- <a role="menuitem" href="{{ item.url }}">{{ item.text|safe }}</a>
107
+ <div class="{{ 'item active' if item.active else 'item' }}">
108
+ <a href="{{ item.url }}">{{ item.text|safe }}</a>
100
109
  </div>
101
110
  {% endfor %}
102
111
  {%- endblock navbar_nav %}
@@ -105,8 +114,8 @@
105
114
  <div class="right menu item">
106
115
  {%- if config.ACCOUNTS and current_user.is_authenticated %}
107
116
  {% for item in current_menu.submenu('notifications').children|sort(attribute='order') if item.visible recursive %}
108
- <div class="item inbox">
109
- <a role="menuitem" href="{{ item.url }}" aria-label="{{ _("Requests") }}">
117
+ <div class="{{'item active' if item.active else 'item' }} inbox">
118
+ <a href="{{ item.url }}" aria-label="{{ _('Requests') }}">
110
119
  <i class="fitted inbox icon inverted"></i>
111
120
  <span class="mobile tablet only inline">{{ _("Inbox") }}</span>
112
121
  </a>
@@ -116,11 +125,17 @@
116
125
  {%- include config.THEME_HEADER_LOGIN_TEMPLATE %}
117
126
  </div>
118
127
  {%- endblock navbar_right %}
119
- </div>
128
+ </nav>
120
129
  </nav>
130
+ </div>
121
131
  {%- endblock navbar %}
122
132
  </div>
123
133
 
134
+ {%- block site_banner %}
135
+ {% from 'invenio_banners/banner.html' import banner %}
136
+ {{ banner() }}
137
+ {%- endblock site_banner %}
138
+
124
139
  {%- block flashmessages %}
125
140
  {%- from "invenio_theme/macros/messages.html" import flashed_messages with context -%}
126
141
  {{ flashed_messages() }}
@@ -33,8 +33,10 @@
33
33
  <div class="sixteen wide mobile eight wide computer column center aligned">
34
34
  <form action="{{ url_for('invenio_search_ui.search') }}" class="ui form" role="search">
35
35
  <div class="ui fluid big action input">
36
- <input type="text" name="q" class="form-control" placeholder="{{ _('Search') }}">
37
- <button type="submit" class="ui icon search button" aria-label="{{ _('Search') }}"><i class="search icon"></i></button>
36
+ <input type="text" name="q" class="form-control" aria-label="{{ _('Search') }}" placeholder="{{ _('Search') }}">
37
+ <button type="submit" class="ui icon search button" aria-label="{{ _('Search') }}">
38
+ <i class="search icon"></i>
39
+ </button>
38
40
  </div>
39
41
  </form>
40
42
  </div>
@@ -9,126 +9,157 @@
9
9
 
10
10
 
11
11
  {%- if config.ACCOUNTS %}
12
- {%- if not current_user.is_authenticated %}
13
- <form>
14
- <a href="{{ url_for_security('login', next=request.path) }}"
15
- class="ui button">
16
- <i class="sign-in icon"></i>
17
- {{ _('Log in') }}</a>
18
- {% if security.registerable %}
19
- <a href="{{ url_for_security('register') }}" class="ui button signup">
20
- <i class="edit outline icon"></i>
21
- {{ _('Sign up') }}
22
- </a>
23
- {% endif %}
24
- </form>
25
- {%- else %}
12
+ {%- if not current_user.is_authenticated %}
13
+ <form>
14
+ <a
15
+ href="{{ url_for_security('login', next=request.path) }}"
16
+ class="ui button auth-button" aria-busy="false" aria-live="polite" aria-label="{{ _('Log in') }}"
17
+ >
18
+ <i class="sign-in icon auth-icon" aria-hidden="true"></i>
19
+ {{ _('Log in') }}
20
+ </a>
21
+ {% if security.registerable %}
22
+ <a href="{{ url_for_security('register') }}" class="ui button signup">
23
+ <i class="edit outline icon"></i>
24
+ {{ _('Sign up') }}
25
+ </a>
26
+ {% endif %}
27
+ </form>
28
+ {%- else %}
29
+
30
+ {# Desktop Quick-create ("plus") menu #}
31
+ {%- set plus_menu_items = current_menu.submenu('plus').children %}
32
+ {%- if plus_menu_items %}
33
+ <div
34
+ id="quick-create-dropdown"
35
+ class="rdm-plus-menu rdm-plus-menu-responsive ui dropdown floating pr-15 computer only"
36
+ >
37
+ <a
38
+ id="quick-create-dropdown-btn"
39
+ role="button"
40
+ aria-controls="quick-create-menu"
41
+ aria-label="{{ _('Quick create') }}"
42
+ aria-expanded="false"
43
+ aria-haspopup="menu"
44
+ >
45
+ <i class="fitted plus icon inverted" aria-hidden="true"></i>
46
+ <i class="fitted dropdown icon inverted" aria-hidden="true"></i>
47
+ </a>
48
+
49
+ <div role="menu" aria-labelledby="quick-create-dropdown-btn" id="quick-create-menu" class="menu">
50
+ {%- for item in plus_menu_items if item.visible %}
51
+ <a role="menuitem" class="item" href="{{ item.url }}">{{ item.text|safe }}</a>
52
+ {%- endfor %}
53
+ </div>
54
+ </div>
55
+
56
+ {# Mobile/Tablet Quick create ("plus") menu #}
57
+ <div class="sub-menu mobile tablet only">
58
+ <h2 class="ui small header">{{ _("Actions") }}</h2>
59
+ <div role="menu">
60
+ {%- for item in plus_menu_items if item.visible %}
61
+ <a role="menuitem" class="item" href="{{ item.url }}">
62
+ <i class="plus icon"></i>
63
+ {{ item.text|safe }}
64
+ </a>
65
+ {%- endfor %}
66
+ </div>
67
+ </div>
68
+ {% endif %}
69
+
70
+ {# Desktop Account dropdown menu #}
71
+ {%- if config.USERPROFILES %}
72
+ <div id="user-profile-dropdown" class="ui floating dropdown computer only">
73
+ <button
74
+ id="user-profile-dropdown-btn"
75
+ class="ui right labeled right floated icon button text"
76
+ aria-controls="user-profile-menu"
77
+ aria-expanded="false"
78
+ aria-haspopup="menu"
79
+ aria-label="{{ _('My account') }}"
80
+ >
81
+ <span>
82
+ <i class="user icon" aria-hidden="true"></i>
83
+ {{ current_user.email|truncate(31,true) }}
84
+ </span>
85
+ <i class="dropdown icon" aria-hidden="true"></i>
86
+ </button>
87
+
88
+ <div
89
+ id="user-profile-menu"
90
+ class="ui menu"
91
+ role="menu"
92
+ aria-labelledby="user-profile-dropdown-btn"
93
+ >
94
+ {%- for item in current_menu.submenu('settings').children if item.visible %}
95
+ <a role="menuitem" class="item" href="{{ item.url }}" tabindex="-1">
96
+ {{ item.text|safe }}
97
+ </a>
98
+ {%- endfor %}
26
99
 
27
- {# Quick-create ("plus") menu #}
28
- {%- set plus_menu_items = current_menu.submenu('plus').children %}
29
- {%- if plus_menu_items %}
30
- <div role="menuitem" class="rdm-plus-menu rdm-plus-menu-responsive ui dropdown floating pr-15 computer only" aria-label="{{ _("Quick create") }}">
31
- <i class="fitted plus icon inverted"></i>
32
- <i class="fitted dropdown icon inverted"></i>
33
- <div class="menu">
34
- {%- for item in plus_menu_items if item.visible %}
35
- <a class="item" href="{{ item.url }}">{{ item.text|safe }} </a>
36
- {%- endfor %}
37
- </div>
38
- </div>
39
-
40
- <div class="sub-menu mobile tablet only">
41
- <h2 class="ui small header">{{ _("Actions") }}</h2>
42
-
43
- {%- for item in plus_menu_items if item.visible %}
44
- <a role="menuitem" class="item" href="{{ item.url }}">
45
- <i class="plus icon"></i>
46
- {{ item.text|safe }}
47
- </a>
48
- {%- endfor %}
49
- </div>
50
- {% endif %}
51
-
52
- {%- if config.USERPROFILES %}
53
- <div role="menuitem" id="user-profile-dropdown" class="ui floating dropdown computer only">
54
- <button id="user-profile-dropdown-btn"
55
- class="ui right labeled right floated icon button text"
56
- aria-controls="user-profile-menu"
57
- aria-expanded="false"
58
- aria-haspopup="menu"
59
- aria-label="{{ _('My account') }}"
60
- >
61
- <span>
62
- <i class="user icon"></i>
63
- {{ current_user.email|truncate(31,true) }}
64
- </span>
65
- <i class="dropdown icon"></i>
66
- </button>
67
-
68
- <div id="user-profile-menu"
69
- class="ui menu"
70
- role="menu"
71
- aria-labelledby="user-profile-dropdown-btn"
72
- >
73
- {%- for item in current_menu.submenu('settings').children if item.visible %}
74
- <a role="menuitem" class="item" href="{{ item.url }}" tabindex="-1">
75
- {{ item.text|safe }}
76
- </a>
77
- {%- endfor %}
78
-
79
- <div class="ui divider"></div>
80
-
81
- {% set ns = namespace(admin_menu=False) %}
82
- {%- for item in current_menu.submenu('profile-admin').children if item.visible %}
83
- {% set ns.admin_menu = True %}
84
- <a role="menuitem" class="item" href="{{ item.url }}" tabindex="-1">
85
- {{ item.text|safe }}
86
- </a>
87
- {%- endfor %}
88
- {% if ns.admin_menu %}
89
- <div class="ui divider"></div>
90
- {% endif %}
91
-
92
- <a role="menuitem" class="item" href="{{ url_for_security('logout') }}" tabindex="-1">
93
- <i class="sign-out icon"></i>
94
- {{ _('Log out') }}
95
- </a>
96
- </div>
97
- </div>
98
-
99
- <div class="sub-menu mobile tablet only">
100
- <h2 class="ui small header">{{ _("My account") }}</h2>
101
-
102
- {%- for item in current_menu.submenu('settings').children if item.visible %}
103
- <a role="menuitem" class="item" href="{{ item.url }}">
104
- {{ item.text|safe }}
105
- </a>
106
- {%- endfor %}
100
+ <div class="ui divider"></div>
107
101
 
102
+ {% set ns = namespace(admin_menu=False) %}
103
+ {%- for item in current_menu.submenu('profile-admin').children if item.visible %}
104
+ {% set ns.admin_menu = True %}
105
+ <a role="menuitem" class="item" href="{{ item.url }}" tabindex="-1">
106
+ {{ item.text|safe }}
107
+ </a>
108
+ {%- endfor %}
109
+ {% if ns.admin_menu %}
108
110
  <div class="ui divider"></div>
111
+ {% endif %}
112
+
113
+ <a role="menuitem" href="{{ url_for_security('logout') }}" tabindex="-1"
114
+ class="item auth-button" aria-busy="false" aria-live="polite" aria-label="{{ _('Log out') }}"
115
+ >
116
+ <i class="sign-out icon auth-icon" aria-hidden="true"></i>
117
+ {{ _('Log out') }}
118
+ </a>
119
+ </div>
120
+ </div>
121
+
122
+ {# Mobile/Tablet Account menu #}
123
+ <div class="sub-menu mobile tablet only">
124
+ <h2 class="ui small header">{{ _("My account") }}</h2>
109
125
 
110
- {% set ns = namespace(admin_menu=False) %}
111
- {%- for item in current_menu.submenu('profile-admin').children if item.visible %}
112
- {% set ns.admin_menu = True %}
113
- <a role="menuitem" class="item" href="{{ item.url }}">
114
- {{ item.text|safe }}
115
- </a>
116
- {%- endfor %}
117
- {% if ns.admin_menu %}
118
- <div class="ui divider"></div>
119
- {% endif %}
120
-
121
- <a role="menuitem" class="item" href="{{ url_for_security('logout') }}">
122
- <i class="sign-out icon"></i>
123
- {{ _('Log out') }}
126
+ <div role="menu">
127
+ {%- for item in current_menu.submenu('settings').children if item.visible %}
128
+ <a role="menuitem" class="item" href="{{ item.url }}">
129
+ {{ item.text|safe }}
124
130
  </a>
125
- </div>
131
+ {%- endfor %}
126
132
 
127
- {%- else %}
128
- <a role="button" href="{{ url_for_security('logout') }}" class="ui button">
129
- <i class="sign-out icon"></i>
133
+ <div class="ui divider"></div>
134
+
135
+ {% set ns = namespace(admin_menu=False) %}
136
+ {%- for item in current_menu.submenu('profile-admin').children if item.visible %}
137
+ {% set ns.admin_menu = True %}
138
+ <a role="menuitem" class="item" href="{{ item.url }}">
139
+ {{ item.text|safe }}
140
+ </a>
141
+ {%- endfor %}
142
+
143
+ {% if ns.admin_menu %}
144
+ <div class="ui divider"></div>
145
+ {% endif %}
146
+
147
+ <a role="menuitem" href="{{ url_for_security('logout') }}"
148
+ class="item auth-button" aria-busy="false" aria-live="polite" aria-label="{{ _('Log out') }}"
149
+ >
150
+ <i class="sign-out icon auth-icon" aria-hidden="true"></i>
130
151
  {{ _('Log out') }}
131
152
  </a>
132
- {%- endif %}
153
+ </div>
154
+ </div>
155
+
156
+ {%- else %}
157
+ <a role="button" href="{{ url_for_security('logout') }}"
158
+ class="ui button auth-button" aria-busy="false" aria-live="polite" aria-label="{{ _('Log out') }}"
159
+ >
160
+ <i class="sign-out icon auth-icon" aria-hidden="true"></i>
161
+ {{ _('Log out') }}
162
+ </a>
133
163
  {%- endif %}
164
+ {%- endif %}
134
165
  {%- endif %}