Compare commits

..

116 Commits

Author SHA1 Message Date
Christoph Ladurner
8866b87459 release v4.13.0 2025-01-24 14:44:20 +01:00
Christoph Ladurner
3a91743f9b setup: necessary because devs not released 2025-01-24 14:43:45 +01:00
Christoph Ladurner
fa705221dd view: add route for rdm-search
* it is necessary to add it here because the old approach with adding to
  the invenio-search-ui blueprint is not possible anymore since it has
  been changed to a function.
2025-01-24 14:43:45 +01:00
Christoph Ladurner
aa21adb1cf setup: relax upper pins
* the idea is to break early.
2025-01-24 14:43:45 +01:00
Martin Obersteiner
5865f0df54 add default-page for unhandled errors 2024-09-19 10:21:41 +02:00
Martin Obersteiner
4b8d5bee9f guard views/dashboard by tugraz_authenticated 2024-07-08 10:16:38 +02:00
Martin Obersteiner
923d4e8120 fix deprecated before_app_first_request 2024-06-11 13:27:04 +02:00
Christoph Ladurner
049063fd7d release v4.12.9 2024-05-07 10:53:37 +02:00
Christoph Ladurner
4a13f22de4 overview: view publications only if permission 2024-05-07 10:53:01 +02:00
Christoph Ladurner
dac35b2e0e release v4.12.8 2024-03-11 20:20:52 +01:00
Christoph Ladurner
cf5ecfd2f6 ui: add banner to header 2024-03-11 20:20:16 +01:00
Christoph Ladurner
0919760cfd release v4.12.7 2024-02-12 13:34:50 +01:00
Christoph Ladurner
40be6ff4b4 translation: fix typo 2024-02-12 13:34:18 +01:00
Christoph Ladurner
602c4b6523 release v4.12.6 2024-02-02 12:43:31 +01:00
Christoph Ladurner
4a581d6703 fix: error_handler gets 1 parameter 2024-02-02 12:43:11 +01:00
Christoph Ladurner
b426e0cc39 release v4.12.5 2024-02-02 11:21:42 +01:00
Christoph Ladurner
b975800532 release v4.12.4 2024-02-02 10:39:20 +01:00
Christoph Ladurner
19143a7860 ui: add 423 error page 2024-02-02 10:38:57 +01:00
Christoph Ladurner
2d47e30416 fix: types could be empty list
* it is true that types will always exists, but it could be an empty
2024-02-02 09:51:18 +01:00
Christoph Ladurner
87bead9b7e setup: sort tests imports
* remove unnecessary special opensearch2. moved to tests.
2024-01-31 10:33:13 +01:00
Christoph Ladurner
11bce0a1ce workflows: change to reusable workflows 2024-01-31 10:33:13 +01:00
Christoph Ladurner
ebcd040be0 wording: update one string frontpage 2024-01-31 10:12:09 +01:00
Christoph Ladurner
515a02aed5 wording: update frontpage 2024-01-31 10:12:09 +01:00
Christoph Ladurner
7314baccc9 release v4.12.3 2024-01-28 21:19:08 +01:00
Christoph Ladurner
66a694a321 wording: update text in benefits 2024-01-28 21:18:21 +01:00
Christoph Ladurner
529b22ad20 translation: fix research result typo 2024-01-28 21:18:21 +01:00
Christoph Ladurner
a5d23135eb ui: remove commented code
* the overriding is solved by overriding the translation strings
2024-01-28 21:18:21 +01:00
Christoph Ladurner
4c3ebcee23 ui: remove comingsoon rule
* there is a more general solution used now.
2024-01-28 21:18:21 +01:00
Christoph Ladurner
2dcb7c1fab release v4.12.2 2024-01-07 16:50:06 +01:00
Christoph Ladurner
fd41e0c073 ui: use only first type
* multiple types may be more precise but sometimes also to much
  information on the starting page
2024-01-07 16:49:28 +01:00
Christoph Ladurner
264c915e89 ui: change overview logos 2024-01-07 16:49:28 +01:00
Christoph Ladurner
0f0bb85deb wording: improve 2024-01-07 16:49:28 +01:00
Christoph Ladurner
35e5ea38e0 wording: improve wording
* external input
2024-01-07 16:49:28 +01:00
Christoph Ladurner
7da3f16b00 fix: multiple subjects not displayed in one row 2024-01-07 16:49:28 +01:00
Christoph Ladurner
3e10059a6f release v4.12.1 2023-11-23 10:54:24 +01:00
Christoph Ladurner
4a0b65300d translation: change text on frontpage overview 2023-11-23 10:53:57 +01:00
Christoph Ladurner
4ad491dd7d ui: comment browse functionality
* there has to be first created a concept around the browse feature,
  which is to much work for the next release.
2023-11-23 10:53:57 +01:00
Christoph Ladurner
ed0fae0af0 ui: remove scss, not used 2023-11-23 10:53:57 +01:00
Christoph Ladurner
8cd1ba5d99 release v4.12.0 2023-11-10 09:19:26 +01:00
Christoph Ladurner
3f13368aa1 setup: move python supported window 2023-11-10 09:19:01 +01:00
Christoph Ladurner
e3e07541fe overview: rephrase text 2023-11-10 09:19:01 +01:00
Christoph Ladurner
39d87339c2 menu: temporarily remove overwrite 2023-11-10 09:19:01 +01:00
Christoph Ladurner
cf7ecf1f81 ui: change paths to data-models 2023-11-10 09:19:01 +01:00
Christoph Ladurner
4c5e888f18 global: change to invenio-records-global-search
* package name change
2023-11-10 09:19:01 +01:00
Christoph Ladurner
9187ffd661 refactor: apply semantic-ui, indentation, copyright 2023-11-10 09:19:01 +01:00
Christoph Ladurner
fffd744731 layout: improve
* add frontpage overview

* change recent uploads to global search

* add overview to dashboard

* change default link of the dashboard menu entry from uploads to
  overview

* change text of 'my uploads' buggy
2023-11-10 09:19:01 +01:00
Christoph Ladurner
105db720ea theme: add separate search entry for rdm 2023-11-10 09:19:01 +01:00
Christoph Ladurner
0cee624dbb global: make it compatible with v12 2023-11-10 09:19:01 +01:00
Christoph Ladurner
c8035571be release v4.11.3 2023-06-07 23:36:30 +02:00
Christoph Ladurner
6aba6bcaa0 fix: frontpage upload buttons small monitor 2023-06-07 23:36:08 +02:00
Christoph Ladurner
1022fa45f4 release v4.11.2 2023-06-01 12:45:40 +02:00
Christoph Ladurner
eb95994afa frontpage: layout changes 2023-06-01 12:00:30 +02:00
Christoph Ladurner
bcacce0644 translation: add oer frontpage translation 2023-06-01 12:00:30 +02:00
Christoph Ladurner
c2494401e9 WIP: oer upload button on frontpage 2023-06-01 12:00:30 +02:00
Christoph Ladurner
3afaca51c6 release v4.11.1 2023-04-20 23:28:57 +02:00
Christoph Ladurner
3a9fe9f385 fix: increase invenio-config-tugraz
* to solve the v11 compatibility problem. in particular the
  invenio-rdm-records to low dependency
2023-04-20 23:28:36 +02:00
Christoph Ladurner
02e9b3f90c release v4.11.0 2023-04-20 22:09:40 +02:00
Christoph Ladurner
9320fe3d5d global: make dependencies compatible with v11 2023-04-20 22:08:14 +02:00
Christoph Ladurner
d38e50a489 release v4.10.1 2022-11-10 09:21:59 +01:00
Mojib Wali
f1fc4d8b9e dep: bump in invenio-assets 2022-10-13 11:57:18 +02:00
Mojib Wali
b286b9adaa release: v4.10.0 2022-10-13 11:38:53 +02:00
Mojib Wali
19fada5940 global: migrate to v10 2022-10-13 11:32:22 +02:00
Christoph Ladurner
7cb3b5a83b release v4.0.2 2022-09-09 10:37:05 +02:00
David
936c085f05 css: adapt skip-to-main button (#280) 2022-08-18 18:32:09 +02:00
Christoph Ladurner
d43cf0e4b5 release v4.0.1 2022-08-05 10:28:27 +02:00
Christoph Ladurner
73a344eb52 update translation 2022-08-05 10:28:05 +02:00
Christoph Ladurner
aa37718a2c improve wording on search options 2022-08-05 10:28:05 +02:00
Christoph Ladurner
3a500543c6 release v4.0.0 2022-07-29 13:27:53 +02:00
Christoph Ladurner
e310a4ca38 remove unnecessary html code for header-search-bar
unnecessary because the react component which is handling this id is generating
the html code.
2022-07-29 13:22:52 +02:00
Christoph Ladurner
c3f55030dc fix warning from semantic-ui-react Search component 2022-07-29 13:22:52 +02:00
Christoph Ladurner
95d27fdd8c add marc21 and lom to the searchbar
copy pasted code from invenio_app_rdm/searchbar. it was necessary to
do that to configure the shown list.
2022-07-29 13:22:52 +02:00
Christoph Ladurner
28b956cfaa change searchbar layout and use invenio-app-rdm searchbar
the searchbar is now on the top of the header, left of the language switch. the
new searchbar introduced a new feature, it could handle different indices like
all repository or communities. But the problem is where to place the new search
bar. for the moment the compromise is to put it on the top right.

this position may not be compatible with tugraz layout.
2022-07-29 13:22:52 +02:00
Christoph Ladurner
5ac2a68848 remove grey color of community block and reduce size 2022-07-29 13:22:52 +02:00
Christoph Ladurner
0399814fe0 migrate js to use prettier 2022-07-29 13:22:52 +02:00
Christoph Ladurner
f11facc9d6 release v3.9.3 2022-07-17 20:55:54 +02:00
Christoph Ladurner
c9bc56e168 fix broken search page
the invenioRDM version v9.1 introduced a new search feature. the implementation
assumes that the id header-search-bar exists on the page. if that is not the
case the page will not be rendered.

this fix adds a hidden search element as invenioRDM v9.1 introduced. the page is
not using this at the moment because it would need some further layout
adjustments.

further moves this fix the local search element to the header to be existent on
the index and search page. for the future this should be undone and the new
invenioRDM search should be used.
2022-07-17 20:55:12 +02:00
Mojib Wali
cb9b80668c release: v3.9.2 2022-06-28 15:48:50 +02:00
David
5bf5ce4268 fix: adopt renaming of serialize function (#269) 2022-06-28 15:39:44 +02:00
Mojib Wali
79a9014878 release v3.9.1 2022-06-02 10:38:05 +02:00
David
708d10ae1a fix: restrict babel version (#266) 2022-05-30 15:39:15 +02:00
David
0dc9240e73 dep: adapt to v9 (#263) 2022-05-30 13:58:46 +02:00
David
7f1286bd6b fix: add trigger to accordion (#265) 2022-05-30 13:58:20 +02:00
Christoph Ladurner
f883dc7760 release v3.9.0 2022-05-27 15:32:50 +02:00
Christoph Ladurner
7c250a41fe refactor 2022-05-25 12:47:09 +02:00
Christoph Ladurner
c9ff126c28 align with invenio-app-rdm community changes 2022-05-25 12:47:09 +02:00
Christoph Ladurner
597b8b0905 add .git-blame-ignore-revs 2022-05-12 09:06:52 +02:00
Christoph Ladurner
903498185f migrate to use black as opinionated auto formater 2022-05-12 09:06:52 +02:00
Christoph Ladurner
4fd0501c58 global: migrate setup.py to setup.cfg 2022-05-12 09:06:52 +02:00
mb-wali
d8c91df396 v3.8.0 2022-03-03 11:01:12 +01:00
Mojib Wali
0da96559ec global: migrate to v8 2022-03-03 10:53:03 +01:00
mb-wali
e73fc3633d v3.7.0 2021-12-07 10:01:49 +01:00
David
aa2c3112df dep: bump config module (#252) 2021-12-06 14:51:33 +01:00
David
62d23f104c docs: adjust sphinx to flask2 (#251) 2021-12-06 14:47:55 +01:00
David
07d7e6fa0e update register and login view (#247)
fix: remove redundant closing div tag for register

ui: update register and login template with accordion

styling: modify accordion css

translation: add german translation
2021-11-08 10:33:11 +01:00
Mojib Wali
27f1501b31 v3.6.1 2021-09-01 12:02:36 +02:00
David Eckhard
6299da5ca2 fix: css for ui divider 2021-08-10 11:52:50 +02:00
David Eckhard
9ec241684d fix: add font locally and remove google dependency 2021-08-10 10:29:32 +02:00
Mojib Wali
c73571c2b7 v3.6.0 2021-08-05 10:05:49 +02:00
mb-wali
db52ca8aad config: removes i18n config
This closes #236
2021-08-05 10:05:03 +02:00
mb-wali
21b67cb3e0 revert: removes override for
* records landingpage (details)
* deposit page (deposit create and depsosit edit)
2021-08-05 09:54:12 +02:00
mb-wali
f22e62dfb0 style: changes deposit form segment color
css: refactor variables
2021-07-08 15:31:16 +02:00
mb-wali
8eb5152963 refactor: views & deposit override
separates the views from override deposit
2021-07-08 15:31:07 +02:00
mb-wali
a8a4aab191 i18n: update translations 2021-06-24 13:38:37 +02:00
mb-wali
2815c35590 styling: adds tug logo 2021-06-24 13:38:37 +02:00
mb-wali
fc13dc8228 login_user: extended user login template
adds support for oauth and new configs
2021-06-24 13:38:37 +02:00
Mojib Wali
2290dbe3cb v3.4.1 2021-06-04 12:02:12 +02:00
mb-wali
15f4d5fce3 dep: bump in config module 2021-06-04 11:55:41 +02:00
mb-wali
b76f27c037 global: route blueprint migrated to config-tugraz
This is required to make sure config module is independent
2021-06-04 11:55:41 +02:00
Mojib Wali
4aa72c003b v3.4.0 2021-06-01 12:37:16 +02:00
mb-wali
fb906bda72 global: refactor upon release changes
resource_type: change in index and values of resource type.

func: that will serialize list of records.
2021-06-01 12:32:03 +02:00
mb-wali
808aca3f60 details: modified resource_type 2021-06-01 12:32:03 +02:00
mb-wali
5f49389fb1 global: migrate v4 2021-06-01 12:32:03 +02:00
mb-wali
4930e78c3a documents: adds reference guide version 2 2021-05-27 12:53:59 +02:00
David Eckhard
1ad73cc001 ui: change title to data-tooltip 2021-05-27 12:24:45 +02:00
Mojib Wali
7623af2fb1 v3.0.3 2021-05-17 15:01:47 +02:00
mb-wali
b05d9cbf97 bugfix: removes overrides item 2021-05-17 15:01:26 +02:00
86 changed files with 2790 additions and 2717 deletions

View File

@@ -15,15 +15,6 @@ insert_final_newline = true
trim_trailing_whitespace = true trim_trailing_whitespace = true
charset = utf-8 charset = utf-8
# Python files
[*.py]
indent_size = 4
# isort plugin configuration
known_first_party = invenio_theme_tugraz
multi_line_output = 2
default_section = THIRDPARTY
skip = .eggs
# RST files (used by sphinx) # RST files (used by sphinx)
[*.rst] [*.rst]
indent_size = 4 indent_size = 4

1
.git-blame-ignore-revs Normal file
View File

@@ -0,0 +1 @@
cd71ecd24b8fc2253a58c60082c80a87c8085601

View File

@@ -5,22 +5,5 @@ on:
jobs: jobs:
build-n-publish: build-n-publish:
runs-on: ubuntu-latest uses: tu-graz-library/.github/.github/workflows/pypi-publish.yml@main
steps: secrets: inherit
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install setuptools wheel
- name: Build package
run: |
python setup.py compile_catalog sdist bdist_wheel
- name: pypi-publish
uses: pypa/gh-action-pypi-publish@v1.3.1
with:
user: __token__
password: ${{ secrets.pypi_password }}

View File

@@ -1,3 +1,11 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020-2024 Graz University of Technology.
#
# invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more
# details.
name: CI name: CI
on: on:
@@ -16,72 +24,5 @@ on:
default: 'Manual trigger' default: 'Manual trigger'
jobs: jobs:
Tests: tests:
runs-on: ubuntu-20.04 uses: tu-graz-library/.github/.github/workflows/tests.yml@main
strategy:
matrix:
python-version: [3.6, 3.7, 3.8, 3.9]
requirements-level: [min, pypi]
db-service: [postgresql12]
search-service: [elasticsearch7]
exclude:
- python-version: 3.6
requirements-level: pypi
- python-version: 3.7
requirements-level: min
- python-version: 3.8
requirements-level: min
- python-version: 3.9
requirements-level: min
- db-service: postgresql12
requirements-level: min
- search-service: elasticsearch7
requirements-level: min
include:
- db-service: postgresql12
DB_EXTRAS: "postgresql"
- search-service: elasticsearch7
SEARCH_EXTRAS: "elasticsearch7"
env:
DB: ${{ matrix.db-service }}
SEARCH: ${{ matrix.search-service }}
EXTRAS: all,${{ matrix.DB_EXTRAS }},${{ matrix.SEARCH_EXTRAS }}
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Generate dependencies
run: |
python -m pip install --upgrade pip setuptools py wheel requirements-builder
requirements-builder -e "$EXTRAS" --level=${{ matrix.requirements-level }} setup.py > .${{ matrix.requirements-level }}-${{ matrix.python-version }}-requirements.txt
- name: Cache pip
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('.${{ matrix.requirements-level }}-${{ matrix.python-version }}-requirements.txt') }}
- name: Install dependencies
run: |
pip install -r .${{ matrix.requirements-level }}-${{ matrix.python-version }}-requirements.txt
pip install ".[$EXTRAS]"
pip freeze
docker --version
docker-compose --version
- name: Run tests
run: |
./run-tests.sh

View File

@@ -5,6 +5,11 @@
# invenio-theme-tugraz is free software; you can redistribute it and/or # invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more # modify it under the terms of the MIT License; see LICENSE file for more
# details. # details.
#
# 1) Create message catalog:
# $ python setup.py extract_messages
# $ python setup.py update_catalog -l de
# $ python setup.py compile_catalog
[main] [main]
host = https://www.transifex.com host = https://www.transifex.com

View File

@@ -8,6 +8,230 @@
Changes Changes
======= =======
Version v4.13.0 (release 2025-01-24)
- setup: necessary because devs not released
- view: add route for rdm-search
- setup: relax upper pins
- add default-page for unhandled errors
- guard views/dashboard by `tugraz_authenticated`
- fix deprecated `before_app_first_request`
Version v4.12.9 (release 2024-05-07)
- overview: view publications only if permission
Version v4.12.8 (release 2024-03-11)
- ui: add banner to header
Version v4.12.7 (release 2024-02-12)
- translation: fix typo
Version v4.12.6 (release 2024-02-02)
- fix: error_handler gets 1 parameter
Version v4.12.5 (release 2024-02-02)
Version v4.12.4 (release 2024-02-02)
- ui: add 423 error page
- fix: types could be empty list
- setup: sort tests imports
- workflows: change to reusable workflows
- wording: update one string frontpage
- wording: update frontpage
Version v4.12.3 (release 2024-01-28)
- wording: update text in benefits
- translation: fix research result typo
- ui: remove commented code
- ui: remove comingsoon rule
Version v4.12.2 (release 2024-01-07)
- ui: use only first type
- ui: change overview logos
- wording: improve
- wording: improve wording
- fix: multiple subjects not displayed in one row
Version v4.12.1 (release 2023-11-23)
- translation: change text on frontpage overview
- ui: comment browse functionality
- ui: remove scss, not used
Version v4.12.0 (release 2023-11-10)
- setup: move python supported window
- overview: rephrase text
- menu: temporarily remove overwrite
- ui: change paths to data-models
- global: change to invenio-records-global-search
- refactor: apply semantic-ui, indentation, copyright
- layout: improve
- theme: add separate search entry for rdm
- global: make it compatible with v12
Version v4.11.3 (release 2023-06-07)
- fix: frontpage upload buttons small monitor
Version v4.11.2 (release 2023-06-01)
- frontpage: layout changes
- translation: add oer frontpage translation
- WIP: oer upload button on frontpage
Version v4.11.1 (release 2023-04-20)
- fix: increase invenio-config-tugraz
Version v4.11.0 (release 2023-04-20)
- global: make dependencies compatible with v11
Version v4.10.1 (release 2022-11-10)
- dep: bump in invenio-assets
Version v4.10.0 (release 2022-10-13)
- global: migrate to v10 (#282)
Version v4.0.2 (release 2022-09-09)
- release v4.0.1
- update translation
- improve wording on search options
Version v4.0.1 (release 2022-08-05)
- update translation
- improve wording on search options
Version v4.0.0 (release 2022-07-29)
- remove unnecessary html code for header-search-bar
- fix warning from semantic-ui-react Search component
- add marc21 and lom to the searchbar
- change searchbar layout and use invenio-app-rdm searchbar
- remove grey color of community block and reduce size
- migrate js to use prettier
Version 3.9.2 (released 2022-06-28)
- fix: adopt renaming of serialize function (#269)
Version 3.9.1 (released 2022-06-02)
- fix: add trigger to accordion (#265)
- dep: adapt to v9 of invenioRDM(#263)
Version 3.9.0 (released 2022-05-27)
- global: migrate setup.py to setup.cfg #260
Version 3.8.0 (released 2022-03-03)
- global: migrate to v8 of invenioRDM #257
Version 3.7.0 (released 2021-12-07)
- dep: bump config module #252
- docs: adjust sphinx to flask2 #251
- update register and login view #247
Version 3.6.1 (released 2021-09-01)
- fix: add font locally and remove google dependency #242
- fix: css for ui divider #243
Version 3.6.0 (released 2021-05-08)
- config: removes i18n config #239
- revert: removes override for details,deposit page #238
- styling: changes deposit form segment color #234
- refactor: views & deposit override #235
- login_user: extended user login template #230
Version 3.4.1 (released 2021-06-04)
- global: route blueprint migrated to config-tugraz #228
Version 3.4.0 (released 2021-06-01)
- documents: adds reference guide version 2 #225
- ui: change title to data-tooltip #224
- global: migrate inveniordm v4 #226
Version 3.0.3 (released 2021-06-01)
- bugfix: removes overrides item #222
Version 3.0.2 (released 2021-05-17)
- feature: adds credits to footer #217
- ui: adapt color badges #220
- badges(ui): adds tug theme badge colors #221
Version 3.0.1 (released 2021-05-07)
- override depsit & edit #210
- ui: display access badge #212
- documents: adds missing documents #216
Version 3.0.0 (released 2021-04-30)
- Migrated to invenioRDM v3 #209
Version 2.0.9 (released 2021-04-15)
- bugfix: created field using old metadata #196
- fix: blur link on click, clickable login with TUG button #194
Version 2.0.6 (released 2021-04-8)
- bugfixes: modified config vars #191
Version 1.9.0 (released 2021-03-11)
- DOI minting #161
- Zammad contact Form #156
Version 1.0.3 (released 2020-07-10)
- firefox compatibility: centering the menu underline #40
- adds font-family #50
Version 1.0.1 (released 2020-07-08)
- Login page modified #48
Version 0.1.0 (released TBD) Version 0.1.0 (released TBD)
- Initial public release. - Initial public release.

View File

@@ -34,7 +34,11 @@ recursive-include invenio_theme_tugraz *.svg
recursive-include invenio_theme_tugraz *.less recursive-include invenio_theme_tugraz *.less
recursive-include invenio_theme_tugraz *.ico recursive-include invenio_theme_tugraz *.ico
recursive-include invenio_theme_tugraz *.pdf recursive-include invenio_theme_tugraz *.pdf
recursive-include invenio_theme_tugraz *.ttf
recursive-include invenio_theme_tugraz *.txt
recursive-include tests *.py recursive-include tests *.py
recursive-include invenio_theme_tugraz *.jpg recursive-include invenio_theme_tugraz *.jpg
recursive-include invenio_theme_tugraz *.gitkeep recursive-include invenio_theme_tugraz *.gitkeep
recursive-include .github/workflows *.yml recursive-include .github/workflows *.yml
include .git-blame-ignore-revs

View File

@@ -15,7 +15,6 @@ encoding = utf-8
[jinja2: **/templates/**.html] [jinja2: **/templates/**.html]
encoding = utf-8 encoding = utf-8
extensions = jinja2.ext.autoescape, jinja2.ext.with_
# Extraction from JavaScript files # Extraction from JavaScript files

View File

@@ -8,7 +8,7 @@
"""Sphinx configuration.""" """Sphinx configuration."""
import os from invenio_theme_tugraz import __version__
# -- General configuration ------------------------------------------------ # -- General configuration ------------------------------------------------
@@ -44,9 +44,9 @@ source_suffix = ".rst"
master_doc = "index" master_doc = "index"
# General information about the project. # General information about the project.
project = u"invenio-theme-tugraz" project = "invenio-theme-tugraz"
copyright = u"2020, Graz University of Technology" copyright = "2020, Graz University of Technology"
author = u"Graz University of Technology" author = "Graz University of Technology"
# The version info for the project you're documenting, acts as replacement for # The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the # |version| and |release|, also used in various other places throughout the
@@ -54,24 +54,15 @@ author = u"Graz University of Technology"
# #
# The short X.Y version. # The short X.Y version.
# Get the version string. Cannot be done with import!
g = {}
with open(
os.path.join(os.path.dirname(__file__), "..", "invenio_theme_tugraz", "version.py"),
"rt",
) as fp:
exec(fp.read(), g)
version = g["__version__"]
# The full version, including alpha/beta/rc tags. # The full version, including alpha/beta/rc tags.
release = version release = __version__
# The language for content autogenerated by Sphinx. Refer to documentation # The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages. # for a list of supported languages.
# #
# This is also used if you do content translation via gettext catalogs. # This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases. # Usually you set "language" from the command line for these cases.
language = None language = "en"
# There are two options for replacing |today|: either, you set today to some # There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used: # non-false value, then it is used:
@@ -250,8 +241,8 @@ latex_documents = [
( (
master_doc, master_doc,
"invenio-theme-tugraz.tex", "invenio-theme-tugraz.tex",
u"invenio-theme-tugraz Documentation", "invenio-theme-tugraz Documentation",
u"Graz University of Technology", "Graz University of Technology",
"manual", "manual",
), ),
] ]
@@ -285,7 +276,7 @@ man_pages = [
( (
master_doc, master_doc,
"invenio-theme-tugraz", "invenio-theme-tugraz",
u"invenio-theme-tugraz Documentation", "invenio-theme-tugraz Documentation",
[author], [author],
1, 1,
) )
@@ -304,7 +295,7 @@ texinfo_documents = [
( (
master_doc, master_doc,
"invenio-theme-tugraz", "invenio-theme-tugraz",
u"invenio-theme-tugraz Documentation", "invenio-theme-tugraz Documentation",
author, author,
"invenio-theme-tugraz", "invenio-theme-tugraz",
"invenio module for TUGRAZ theme.", "invenio module for TUGRAZ theme.",
@@ -328,6 +319,8 @@ texinfo_documents = [
# Example configuration for intersphinx: refer to the Python standard library. # Example configuration for intersphinx: refer to the Python standard library.
intersphinx_mapping = { intersphinx_mapping = {
"python": ("https://docs.python.org/", None), "python": ("https://docs.python.org/", None),
"flask": ("https://flask.palletsprojects.com/", None),
"werkzeug": ("https://werkzeug.palletsprojects.com/", None),
# TODO: Configure external documentation references, eg: # TODO: Configure external documentation references, eg:
# 'Flask-Admin': ('https://flask-admin.readthedocs.io/en/latest/', None), # 'Flask-Admin': ('https://flask-admin.readthedocs.io/en/latest/', None),
} }

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright (C) 2020-2021 Graz University of Technology. # Copyright (C) 2020-2022 Graz University of Technology.
# #
# invenio-theme-tugraz is free software; you can redistribute it and/or # invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more # modify it under the terms of the MIT License; see LICENSE file for more
@@ -9,6 +9,7 @@
"""invenio module for TUGRAZ theme.""" """invenio module for TUGRAZ theme."""
from .ext import InvenioThemeTugraz from .ext import InvenioThemeTugraz
from .version import __version__
__version__ = "4.13.0"
__all__ = ("__version__", "InvenioThemeTugraz") __all__ = ("__version__", "InvenioThemeTugraz")

View File

@@ -1,28 +0,0 @@
/*
* Copyright (C) 2020-2021 Graz University of Technology.
*
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details.
*/
#footer {
color: #fff;
&.footer-bottom {
background-color: #E4154B;
padding-top: 15px;
padding-bottom: 15px;
font-weight: 300;
font-size: 14px;
a {
text-decoration: none;
color: #ffffffd6;
font-weight: 600;
&:hover, &:focus {
color: #ffffff;
}
}
}
}

View File

@@ -1,181 +0,0 @@
/*
* Copyright (C) 2020-2021 Graz University of Technology.
*
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details.
*/
#int-menu-q-home-icon {
width: 18px;
height: 18px;
vertical-align: top;
fill: red;
}
/*****logo section******/
.affiliation-spacer {
display: table-cell;
vertical-align: middle;
width: 100%;
}
.affiliation-logo {
display: table-cell;
padding: 0 50px 0 0;
vertical-align: middle;
white-space: nowrap;
}
.affiliation {
background-color: white;
display: table;
margin: 0 auto 80px;
max-width: 1060px;
width: 100%;
text-decoration: none;
}
.affiliation-text {
display: table-cell;
font-size: 17px;
padding: 0 0 0 50px;
vertical-align: middle;
white-space: nowrap;
}
.affiliation-logo-claim {
display: inline-block;
font-size: 12px;
letter-spacing: 2px;
line-height: 17px;
padding: 0 17px 0 0;
text-align: right;
vertical-align: top;
}
a {
color: inherit;
text-decoration: none;
transition: background-color 0.15s ease 0s, color 0.15s ease 0s;
}
/*****END logo section******/
.short-menu {
display: table;
height: 49px;
width: 100%;
}
.short-menu-left {
border-right: 1px solid black;
display: table-cell;
text-align: right;
width: 50%;
}
.short-menu-right {
display: table-cell;
vertical-align: top;
width: 50%;
color: #000000;
}
.short-menu-left-search {
display: inline-block;
margin: 12px 9px 6px 0;
color: #000000;
}
.short-menu-right-h {
cursor: pointer;
display: inline-block;
margin: 12px 0 6px 9px;
padding: 5px;
}
.short-menu-right-main-menu {
display: inline-block;
margin-right: 3px;
vertical-align: top;
width: 21px;
}
svg:not(:root) {
overflow: hidden;
}
/***********MAIN menu*************/
.affiliation-text a:hover {
background-color: #000000;
color: #ffffff;
text-decoration: none;
}
.affiliation-logo :hover {
text-decoration: none;
}
.short-menu-right :hover {
background-color: #000000;
color: #ffffff;
}
.main-menu {
border-bottom: 1px solid #000;
box-sizing: border-box;
height: 39px;
margin-top: -1px;
overflow: hidden;
transition: height 0.3s linear 0s;
}
@media (max-width: 767.9px) {
.main-menu {
height: auto;
}
}
@media screen and (max-width: 767.9px) {
#int-header-logo-img {
width: 200px;
height: 75px;
}
}
@media screen and (max-width: 767.9px) {
#int-header-logo {
padding: 50px 0;
text-align: center;
}
}
@media screen and (max-width: 767.9px) {
.affiliation {
margin: 0;
text-align: center;
}
.affiliation-text {
display: none;
}
.affiliation-logo-claim {
display: none;
}
.affiliation-spacer {
display: none;
}
}
.int-menu-q-open-icon {
width: 14px;
vertical-align: middle;
margin-left: 5px;
}
/*********************Custom overrides**********************/
/** Login with SAML**/
.col a {
cursor: pointer;
}
/**** hyperlink hover color ****/
a:focus,
a:hover {
color: #e4154b;
text-decoration: underline;
}

View File

@@ -1,48 +0,0 @@
/*
* Copyright (C) 2020-2021 Graz University of Technology.
*
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details.
*/
/* On hover color changed
* from #0377cd
* to #E4154B
*/
/*
* Logos background frontpage.
* from rgba(173, 206, 224, 0.52)
* to #ffffff
*/
.section-content-light-bg {
background-color: #ffffff;
}
/*
* section title.
* from #0377cd
* to #000000
*/
.section-title {
color: #000000;
}
/***
login background color
from : rgba(13,95,137,.8)
To #ffffff
*/
.cover-page {
//text-align: center;
background-color: #ffffff;
}
/***
login & sigup page title
from : #0377cd
To #000000
*/
.panel-free-title {
color: #000000;
}

View File

@@ -1,29 +0,0 @@
/*
* Copyright (C) 2020-2021 Graz University of Technology.
*
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details.
*/
#footer {
color: #fff;
&.footer-bottom {
background-color: #E4154B;
padding-top: 15px;
padding-bottom: 15px;
font-weight: 300;
font-size: 14px;
a {
text-decoration: none;
color: #ffffffd6;
font-weight: 600;
&:hover, &:focus {
color: #ffffff;
}
}
}
}

View File

@@ -1,12 +0,0 @@
/*
* Copyright (C) 2020-2021 Graz University of Technology.
*
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details.
*/
/*
* Override the background color and image.
*/
$navbar_background_image: unset;
$navbar_background_color: #ffffff;

View File

@@ -1,12 +0,0 @@
/*
* Copyright (C) 2020-2021 Graz University of Technology.
*
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details.
*/
@import "variables";
@import "../invenio_app_rdm/theme";
@import "header";
@import "footer";
@import "overrides";

View File

@@ -1,9 +0,0 @@
/*
* Copyright (C) 2020-2021 Graz University of Technology.
*
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details.
*/
$navbar_background_image: unset;
$navbar_background_color: #ffffff;

View File

@@ -1,528 +0,0 @@
// This file is part of InvenioRDM
// Copyright (C) 2020 CERN.
// Copyright (C) 2020 Northwestern University.
// Copyright (C) 2021 Graz University of Technology.
//
// Invenio App RDM is free software; you can redistribute it and/or modify it
// under the terms of the MIT License; see LICENSE file for more details.
import _get from "lodash/get";
import React, { Component, createRef, Fragment } from "react";
import {
AccessRightField,
CreatibutorsField,
DatesField,
DeleteButton,
DepositFormApp,
DepositFormTitle,
DescriptionsField,
FileUploader,
FormFeedback,
IdentifiersField,
LanguagesField,
LicenseField,
PIDField,
PreviewButton,
PublicationDateField,
PublishButton,
PublisherField,
RelatedWorksField,
ResourceTypeField,
SaveButton,
TitlesField,
VersionField,
} from "react-invenio-deposit";
import { AccordionField } from "react-invenio-forms";
import { Card, Container, Divider, Grid, Ref, Sticky } from "semantic-ui-react";
export class RDMDepositForm extends Component {
constructor(props) {
super(props);
this.config = props.config || {};
// TODO: retrieve from backend
this.config["canHaveMetadataOnlyRecords"] = true;
// TODO: Make ALL vocabulary be generated by backend.
// Currently, some vocabulary is generated by backend and some is
// generated by frontend here. Iteration is faster and abstractions can be
// discovered by generating vocabulary here. Once happy with vocabularies,
// then we can generate it in the backend.
this.vocabularies = {
metadata: {
...this.config.vocabularies,
titles: {
...this.config.vocabularies.titles,
},
descriptions: {
type: [
{ text: "Abstract", value: "abstract" },
{ text: "Methods", value: "methods" },
{ text: "Series Information", value: "seriesinformation" },
{ text: "Table of Contents", value: "tableofcontents" },
{ text: "Technical Info", value: "technicalinfo" },
{ text: "Other", value: "other" },
],
},
creators: {
type: [
{ text: "Person", value: "personal" },
{ text: "Organization", value: "organizational" },
],
role: [
{ text: "Editor", value: "editor" },
{ text: "Data Curator", value: "datacurator" },
{ text: "Data Manager", value: "datamanager" },
{ text: "Project Manager", value: "projectmanager" },
],
},
contributors: {
type: [
{ text: "Person", value: "personal" },
{ text: "Organization", value: "organizational" },
],
role: [
{ text: "Editor", value: "editor" },
{ text: "Data Curator", value: "datacurator" },
{ text: "Data Manager", value: "datamanager" },
{ text: "Project Manager", value: "projectmanager" },
],
},
dates: {
type: [
{ text: "Accepted", value: "accepted" },
{ text: "Available", value: "available" },
{ text: "Copyrighted", value: "copyrighted" },
{ text: "Collected", value: "collected" },
{ text: "Created", value: "created" },
{ text: "Issued", value: "issued" },
{ text: "Submitted", value: "submitted" },
{ text: "Updated", value: "updated" },
{ text: "Valid", value: "valid" },
{ text: "Withdrawn", value: "withdrawn" },
{ text: "Other", value: "other" },
],
},
// TODO: Replace with an API backend
funding: {
funder: [
{
name: "National Institutes of Health (US)",
identifier: "funder1",
scheme: "funderScheme1",
},
{
name: "European Commission (EU)",
identifier: "funder2",
scheme: "funderScheme2",
},
],
award: [
{
title: "CANCER &AIDS DRUGS--PRECLIN PHARMACOL/TOXICOLOGY",
number: "N01CM037835-016",
identifier: "awardA",
scheme: "awardSchemeA",
parentScheme: "funderScheme1",
parentIdentifier: "funder1",
},
{
title:
"Beyond the Standard Model at the LHC and with Atom Interferometers.",
number: "228169",
identifier: "awardB1",
scheme: "awardSchemeB",
parentScheme: "funderScheme2",
parentIdentifier: "funder2",
},
{
title: "ENvironmental COnditions in GLAucoma Patients",
number: "747441",
identifier: "awardB2",
scheme: "awardSchemeB",
parentScheme: "funderScheme2",
parentIdentifier: "funder2",
},
],
},
identifiers: {
resource_type: this.config.vocabularies.resource_type,
scheme: [
{ text: "ARK", value: "ark" },
{ text: "ARXIV", value: "arxiv" },
{ text: "BIBCODE", value: "bibcode" },
{ text: "DOI", value: "doi" },
{ text: "EAN13", value: "ean13" },
{ text: "EISSN", value: "eissn" },
{ text: "HANDLE", value: "handle" },
{ text: "IGSN", value: "igsn" },
{ text: "ISBN", value: "isbn" },
{ text: "ISSN", value: "issn" },
{ text: "ISTC", value: "istc" },
{ text: "LISSN", value: "lissn" },
{ text: "LSID", value: "lsid" },
{ text: "PMID", value: "pmid" },
{ text: "PURL", value: "purl" },
{ text: "UPC", value: "upc" },
{ text: "URL", value: "url" },
{ text: "URN", value: "urn" },
{ text: "W3ID", value: "w3id" },
],
relations: [
{ text: "Is cited by", value: "iscitedby" },
{ text: "Cites", value: "cites" },
{ text: "Is supplement to", value: "issupplementto" },
{ text: "Is supplemented by", value: "issupplementedby" },
{ text: "Is continued by", value: "iscontinuedby" },
{ text: "Continues", value: "continues" },
{ text: "Is described by", value: "isdescribedby" },
{ text: "Describes", value: "describes" },
{ text: "Has metadata", value: "hasmetadata" },
{ text: "Is metadata for", value: "ismetadatafor" },
{ text: "Has version", value: "hasversion" },
{ text: "Is version of", value: "isversionof" },
{ text: "Is new version of", value: "isnewversionof" },
{ text: "Is previous version of", value: "ispreviousversionof" },
{ text: "Is part of", value: "ispartof" },
{ text: "Has part", value: "haspart" },
{ text: "Is referenced by", value: "isreferencedby" },
{ text: "References", value: "references" },
{ text: "Is documented by", value: "isdocumentedby" },
{ text: "Documents", value: "documents" },
{ text: "Is compiled by", value: "iscompiledby" },
{ text: "Compiles", value: "compiles" },
{ text: "Is variant form of", value: "isvariantformof" },
{ text: "Is original form of", value: "isoriginalformof" },
{ text: "Is identical to", value: "isidenticalto" },
{ text: "Is reviewed by", value: "isreviewedby" },
{ text: "Reviews", value: "reviews" },
{ text: "Is derived from", value: "isderivedfrom" },
{ text: "Is source of", value: "issourceof" },
{ text: "Is required by", value: "isrequiredby" },
{ text: "Requires", value: "requires" },
{ text: "Is obsoleted by", value: "isobsoletedby" },
{ text: "Obsoletes", value: "obsoletes" },
],
},
subjects: {
options: [
{
text: "Deep Learning",
value: {
subject: "Deep Learning",
scheme: "user",
identifier: "U1",
},
},
{
text: "MeSH: Cognitive Neuroscience",
value: {
subject: "Cognitive Neuroscience",
scheme: "mesh",
identifier: "D000066494",
},
},
{
text: "FAST: Glucagonoma",
value: {
subject: "Glucagonoma",
scheme: "fast",
identifier: "943672",
},
},
],
limitToOptions: [
{ text: "All", value: "all" },
{ text: "MeSH", value: "mesh" },
{ text: "FAST", value: "fast" },
],
},
},
};
// check if files are present
this.noFiles = false;
if (
!Array.isArray(this.props.files.entries) ||
(!this.props.files.entries.length && this.props.record.is_published)
) {
this.noFiles = true;
}
}
formFeedbackRef = createRef();
sidebarRef = createRef();
accordionStyle = {
header: { className: "inverted brand", style: { cursor: "pointer" } },
};
render() {
return (
<DepositFormApp
config={this.config}
record={this.props.record}
files={this.props.files}
permissions={this.props.permissions}
>
<FormFeedback fieldPath="message" />
<Container style={{ marginTop: "10px" }}>
<DepositFormTitle />
<Grid>
<Grid.Row>
<Grid.Column width={11}>
<AccordionField
fieldPath=""
active={true}
label={"Files"}
ui={this.accordionStyle}
>
{this.noFiles && this.props.record.is_published && (
<p
style={{
textAlign: "center",
opacity: "0.5",
cursor: "default !important",
}}
>
<em>The record has no files.</em>
</p>
)}
<FileUploader
isDraftRecord={!this.props.record.is_published}
quota={{
maxFiles: 100,
maxStorage: 10 ** 10,
}}
/>
</AccordionField>
<AccordionField
fieldPath=""
active={true}
label={"Basic information"}
ui={this.accordionStyle}
>
{this.config.pids.map((pid) => (
<Fragment key={pid.scheme}>
<PIDField
btnLabelGetPID={pid.btn_label_get_pid}
canBeManaged={pid.can_be_managed}
canBeUnmanaged={pid.can_be_unmanaged}
fieldPath={`pids.${pid.scheme}`}
isEditingPublishedRecord={
this.props.record.is_published === true // is_published is `null` at first upload
}
managedHelpText={pid.managed_help_text}
pidLabel={pid.pid_label}
pidPlaceholder={pid.pid_placeholder}
pidType={pid.scheme}
unmanagedHelpText={pid.unmanaged_help_text}
/>
<Divider />
</Fragment>
))}
<ResourceTypeField
options={this.vocabularies.metadata.resource_type}
required
/>
<TitlesField
options={this.vocabularies.metadata.titles}
required
/>
<PublicationDateField required />
<CreatibutorsField
label={"Creators"}
labelIcon={"user"}
fieldPath={"metadata.creators"}
roleOptions={this.vocabularies.metadata.creators.role}
schema="creators"
required
/>
<DescriptionsField
options={this.vocabularies.metadata.descriptions}
editorConfig={{
removePlugins: [
"Image",
"ImageCaption",
"ImageStyle",
"ImageToolbar",
"ImageUpload",
"MediaEmbed",
"Table",
"TableToolbar",
"TableProperties",
"TableCellProperties",
],
}}
/>
<LicenseField
fieldPath="metadata.rights"
searchConfig={{
searchApi: {
axios: {
headers: {
Accept: "application/vnd.inveniordm.v1+json",
},
url: "/api/vocabularies/licenses",
withCredentials: false,
},
},
initialQueryState: {
filters: [["tags", "recommended"]],
},
}}
serializeLicenses={(result) => ({
title: result.title_l10n,
description: result.description_l10n,
id: result.id,
link: result.props.url,
})}
/>
<br />
</AccordionField>
<AccordionField
fieldPath=""
active={true}
label={"Recommended information"}
ui={this.accordionStyle}
>
<CreatibutorsField
addButtonLabel={"Add contributor"}
label={"Contributors"}
labelIcon={"user plus"}
fieldPath={"metadata.contributors"}
roleOptions={this.vocabularies.metadata.contributors.role}
schema="contributors"
modal={{
addLabel: "Add contributor",
editLabel: "Edit contributor",
}}
/>
{/**TODO: uncomment to use Subjects*/}
{/* <SubjectsField
initialOptions={_get(
this.props.record,
"metadata.subjects",
null
)}
limitToOptions={
this.vocabularies.metadata.subjects.limitToOptions
}
/>
<ComingSoonField
fieldPath="metadata.subjects"
label="Subjects"
labelIcon="tag"
/> */}
<LanguagesField
initialOptions={_get(
this.props.record,
"ui.languages",
[]
).filter((lang) => lang !== null)} // needed because dumped empty record from backend gives [null]
serializeSuggestions={(suggestions) =>
suggestions.map((item) => ({
text: item.title_l10n,
value: item.id,
key: item.id,
}))
}
/>
<DatesField options={this.vocabularies.metadata.dates} />
<VersionField />
<PublisherField />
<br />
</AccordionField>
{/**TODO: uncomment to use FundingField*/}
{/* <AccordionField
fieldPath=""
active={true}
label={"Funding"}
ui={this.accordionStyle}
>
<FundingField options={this.vocabularies.metadata.funding} />
<ComingSoonField
fieldPath="metadata.funding"
label="Awards"
labelIcon="money bill alternate outline"
/>
<br />
</AccordionField> */}
<AccordionField
fieldPath=""
active={true}
label={"Alternate identifiers"}
ui={this.accordionStyle}
>
<IdentifiersField
fieldPath="metadata.identifiers"
label="Alternate identifier(s)"
labelIcon="barcode"
schemeOptions={
this.vocabularies.metadata.identifiers.scheme
}
/>
</AccordionField>
<AccordionField
fieldPath=""
active={true}
label={"Related works"}
ui={this.accordionStyle}
>
<RelatedWorksField
options={this.vocabularies.metadata.identifiers}
/>
<br />
</AccordionField>
</Grid.Column>
<Ref innerRef={this.sidebarRef}>
<Grid.Column width={5} className="deposit-sidebar">
<Sticky context={this.sidebarRef} offset={20}>
<Card className="actions">
<Card.Content>
<div className="sidebar-buttons">
<SaveButton fluid className="save-button" />
<PreviewButton fluid className="preview-button" />
</div>
<PublishButton fluid />
</Card.Content>
</Card>
<Card className="actions">
<Card.Content>
<DeleteButton
fluid
// TODO: make is_published part of the API response
// so we don't have to do this
isPublished={this.props.record.is_published}
/>
</Card.Content>
</Card>
<AccessRightField
label={"Visibility"}
labelIcon={"shield"}
/>
</Sticky>
</Grid.Column>
</Ref>
</Grid.Row>
</Grid>
</Container>
</DepositFormApp>
);
}
}

View File

@@ -1,23 +0,0 @@
// This file is part of InvenioRDM
// Copyright (C) 2020 CERN.
// Copyright (C) 2020 Northwestern University.
//
// Invenio App RDM is free software; you can redistribute it and/or modify it
// under the terms of the MIT License; see LICENSE file for more details.
import React from "react";
import ReactDOM from "react-dom";
import "semantic-ui-css/semantic.min.css";
import { getInputFromDOM } from "react-invenio-deposit";
import { RDMDepositForm } from "./RDMDepositForm";
ReactDOM.render(
<RDMDepositForm
record={getInputFromDOM("deposits-record")}
files={getInputFromDOM("deposits-record-files")}
config={getInputFromDOM("deposits-config")}
permissions={getInputFromDOM("deposits-record-permissions")}
/>,
document.getElementById("deposit-form")
);

View File

@@ -1,8 +1,12 @@
import $ from 'jquery'; import $ from "jquery";
import 'semantic-ui-css'; import "semantic-ui-css";
import { MultipleOptionsSearchBar } from "@js/invenio_search_ui/components";
import { i18next } from "@translations/invenio_app_rdm/i18next";
import ReactDOM from "react-dom";
import React from "react";
// called on document ready // called on document ready
$(function() { $(function () {
importZammadScript(); importZammadScript();
}); });
@@ -11,31 +15,40 @@ function importZammadScript() {
scriptNode.id = "zammad_form_script"; scriptNode.id = "zammad_form_script";
scriptNode.src = "https://ub-support.tugraz.at/assets/form/form.js"; scriptNode.src = "https://ub-support.tugraz.at/assets/form/form.js";
document.head.appendChild(scriptNode); document.head.appendChild(scriptNode);
$.getScript("https://ub-support.tugraz.at/assets/form/form.js", () => { $.getScript("https://ub-support.tugraz.at/assets/form/form.js", () => {
$('#feedback-form').ZammadForm({ $("#feedback-form").ZammadForm({
messageTitle: 'Contact us', messageTitle: "Contact us",
showTitle: true, showTitle: true,
messageSubmit: 'Submit', messageSubmit: "Submit",
messageThankYou: 'Thank you for your message, (#%s). We will get back to you as quickly as possible!', messageThankYou:
modal: true "Thank you for your message, (#%s). We will get back to you as quickly as possible!",
modal: true,
}); });
}); });
} }
// used for sticky test instance notification // used for sticky test instance notification
$('.ui.sticky.test-instance') $(".ui.sticky.test-instance").sticky({
.sticky({ context: "body",
context: 'body' });
})
;
export function toggleVisibility(id) { export function toggleVisibility(id) {
var element = document.getElementById(id); var element = document.getElementById(id);
var isHided = element.style.display === "none"; var isHided = element.style.display === "none";
element.style.display = isHided ? "block" : "none"; element.style.display = isHided ? "block" : "none";
} }
window.toggleVisibility = toggleVisibility; window.toggleVisibility = toggleVisibility;
const headerSearchbar = document.getElementById("header-search-bar");
const searchBarOptions = JSON.parse(headerSearchbar.dataset.options);
ReactDOM.render(
<MultipleOptionsSearchBar
options={searchBarOptions}
placeholder={i18next.t("Search records...")}
/>,
headerSearchbar
);

View File

@@ -0,0 +1,42 @@
// Copyright (C) 2024 Graz University of Technology.
//
// invenio-theme-tugraz is free software; you can redistribute it and/or modify it
// under the terms of the MIT License; see LICENSE file for more details.
import $ from "jquery";
async function generateForm() {
// get email from `/api/me`
let email = "???";
const response = await fetch("/api/me");
if (response.ok) {
const json = await response.json();
email = json?.email || "???";
}
// show form
$.getScript("https://ub-support.tugraz.at/assets/form/form.js", () => {
$("#anchor-unlock-form").ZammadForm({
attributes: [
{},
{ defaultValue: email },
{
defaultValue: `Could you unlock my account (${email}) for research-uploads?`,
// TODO: add to defaultValue once policy on how to get accepted is decided...
},
],
modal: false,
});
// focus first entry of now-shown form
document.getElementById("zammad-form-name-inline").focus();
});
}
$(function () {
// called when DOM is ready
const generateFormElement = document.getElementById("generate-unlock-form");
if (generateFormElement) {
generateFormElement.onclick = generateForm;
}
});

View File

@@ -1,11 +1,14 @@
/* /*
* Copyright (C) 2020-2021 Graz University of Technology. * Copyright (C) 2022 Graz University of Technology.
* *
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it * invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details. * under the terms of the MIT License; see LICENSE file for more details.
*/ */
.ui.container.page-subheader-outer {
background-color: unset;
}
@import "variables"; .ui.fluid.container {
@import "../../invenio_app_rdm/search/theme"; width: fit-content;
@import "footer" }

View File

@@ -0,0 +1,15 @@
/*
* Copyright (C) 2021 Graz University of Technology.
*
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details.
*/
// deposit form segment styling
.ui.inverted.brand.segment {
background-color: @greyLight !important;
color: @tugrazBlack !important;
label {
color: @tugrazBlack;
}
}

View File

@@ -0,0 +1,93 @@
Copyright 2010, 2012, 2014 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name Source.
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2020-2021 Graz University of Technology. * Copyright (C) 2020-2023 Graz University of Technology.
* *
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it * invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details. * under the terms of the MIT License; see LICENSE file for more details.
@@ -7,18 +7,8 @@
#footer { #footer {
color: @footerGrey; color: @footerGrey;
/*background-image: url("/static/images/footer.jpg");*/
-webkit-background-size: 100% 100%;
-moz-background-size: 100% 100%;
-o-background-size: 100% 100%;
background-size: 100% 100%;
min-height: 100%; min-height: 100%;
/* the following 2 lines are a hack for IE6 */
height: auto !important;
height: 100%;
width: 100%; width: 100%;
background-attachment: fixed;
&.footer-bottom { &.footer-bottom {
background-color: @footerBottomBackground; background-color: @footerBottomBackground;
@@ -39,7 +29,7 @@
color: @tugrazRed; color: @tugrazRed;
} }
} }
// remove blue focus outline if clicked with mouse // remove blue focus outline if clicked with mouse
&:focus:not(:focus-visible) { &:focus:not(:focus-visible) {
outline-style: none; outline-style: none;

View File

@@ -187,6 +187,7 @@ svg:not(:root) {
.main-menu-underline-line { .main-menu-underline-line {
border: 2px solid @greyLight !important; border: 2px solid @greyLight !important;
border-radius: 0; border-radius: 0;
background-color: @greyLight;
} }
#margin-divider{ #margin-divider{
@@ -254,3 +255,10 @@ span.home-inline{
border: solid @notificationBorder 1px; border: solid @notificationBorder 1px;
z-index: 100000; z-index: 100000;
} }
#skip-to-main {
background-color: @primaryButton;
&:focus {
background-color: @primaryButtonInverted;
}
}

View File

@@ -77,12 +77,25 @@ pre {
background-color: @tugrazRed; background-color: @tugrazRed;
} }
.ui.button:hover, /***
.ui.search.button:hover { * accordion title
background-color: @primaryButtonHoverBackground; ***/
.ui.accordion.styled {
.title,
.title.active {
background-color: @greyLight;
color: rgba(0, 0, 0, 0.6);
}
} }
.ui.button:hover { /***
* buttons hover and accordion hover
***/
.ui.button:hover,
.ui.search.button:hover,
.ui.accordion.styled .title:hover,
.ui.accordion.styled .accordion .title:hover {
background-color: @primaryButtonHoverBackground;
color: @primaryButton; color: @primaryButton;
} }
@@ -97,6 +110,7 @@ pre {
.ui.input > input, /* it seams redundant but it is not */ .ui.input > input, /* it seams redundant but it is not */
.ui.segment, .ui.segment,
.ui.selection.dropdown, .ui.selection.dropdown,
.ui.accordion.styled,
.ui.card, .ui.card,
.ui.cards > .card, .ui.cards > .card,
.ui.basic.button, .ui.basic.buttons .button, .ui.basic.button, .ui.basic.buttons .button,
@@ -136,5 +150,34 @@ pre {
&.metadata-only { &.metadata-only {
background-color: @accessRightMetadata; background-color: @accessRightMetadata;
} }
}
@font-face {
font-family: "Source Sans Pro";
src: url('./fonts/SourceSansPro/SourceSansPro-Regular.ttf') format('truetype');
font-weight: 400;
font-style: normal;
}
@font-face {
font-family: "Source Sans Pro";
src: url('./fonts/SourceSansPro/SourceSansPro-Italic.ttf') format('truetype');
font-weight: 400;
font-style: italic;
}
/**
* mainly for the overview. maybe this should be written more specific to apply
* only for the overview use case.
*/
.ui.segment:first-child {
margin-top: 1em;
}
.ui.equal.height .ui.segment {
height: 100%;
}
.ui.flashed.message.manage {
text-align: center;
} }

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2020 Graz University of Technology * Copyright (C) 2020-2023 Graz University of Technology
* *
* invenio-theme-tugraz is free software; you can redistribute it and/or modify * invenio-theme-tugraz is free software; you can redistribute it and/or modify
* it under the terms of the MIT License; see LICENSE file for more details. * it under the terms of the MIT License; see LICENSE file for more details.
@@ -26,14 +26,3 @@
.identifiers { .identifiers {
display: inline; display: inline;
} }
// align badges to the right
.ui.items > .item .extra.labels-actions {
float: right;
width: auto;
// remove action buttons from search results
.ui.small.compact.right.floated.button {
display: none;
}
}

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2020-2021 Graz University of Technology. * Copyright (C) 2020-2022 Graz University of Technology.
* *
* invenio-theme-tugraz is free software; you can redistribute it and/or modify it * invenio-theme-tugraz is free software; you can redistribute it and/or modify it
* under the terms of the MIT License; see LICENSE file for more details. * under the terms of the MIT License; see LICENSE file for more details.
@@ -14,8 +14,8 @@
@import "search"; @import "search";
@import "macros"; @import "macros";
@import "login"; @import "login";
@import (css) @import "deposit";
url("https://fonts.googleapis.com/css?family=Source+Sans+Pro&display=swap"); @import "communities";
/*** /***
**TODO: **TODO:
@@ -33,3 +33,18 @@
transition: background-color 0.15s ease 0s, color 0.15s ease 0s; transition: background-color 0.15s ease 0s, color 0.15s ease 0s;
outline: none; outline: none;
} }
.nowrap-link {
white-space: nowrap;
}
.ui.label.schema {
border: 1px solid #bfb5b5;
}
.random-records-frontpage {}
.random-records-frontpage .grid .column {
width: 380px !important;
padding: 14px !important;
}

View File

@@ -17,16 +17,22 @@
// badge colors, accessibility // badge colors, accessibility
@accessRight : #e9711c; @accessRight : #e9711c;
@accessRightOpen : #e9711c; @accessRightOpen : @accessRight;
@accessRightRestricted: #fbbd08; @accessRightRestricted: #fbbd08;
@accessRightEmbargoed : #db2828; @accessRightEmbargoed : #db2828;
@accessRightClosed : #db2828; @accessRightClosed : @accessRightEmbargoed;
@accessRightMetadata : #2185D0; @accessRightMetadata : #2185D0;
@schema: #17b3f3;
// primary colors TU Graz // primary colors TU Graz
@tugrazBlack: #231f20; @tugrazBlack: #231f20;
@tugrazRed : #e4154b; @tugrazRed : #e4154b;
// general
@primaryBackground: #fff;
@primaryText : #000;
// accent colors // accent colors
@greyDark : #777; @greyDark : #777;
@@ -36,24 +42,19 @@
// link and button colors // link and button colors
@primaryLinkInverted : #000; @primaryLinkInverted : @primaryText;
@primaryLinkBackgroundInverted: #fff; @primaryLinkBackgroundInverted: @primaryBackground;
@primaryLink : #fff; @primaryLink : @primaryBackground;
@primaryLinkHoverBackground : #000; @primaryLinkHoverBackground : @primaryText;
@primaryButton : #fff; @primaryButton : @primaryBackground;
@primaryButtonHoverBackground : #000; @primaryButtonHoverBackground : @primaryText;
@primaryButtonInverted : #000f; @primaryButtonInverted : @primaryText;
// general
@primaryBackground: #fff;
@primaryText : #000;
// account (signin, signup) specific // account (signin, signup) specific
@primaryFormAccounts : #fff; @primaryFormAccounts : @primaryBackground;
@formAccountsInputPlaceholder : silver; @formAccountsInputPlaceholder : silver;
@fieldInputSelectionBackground: #50a2ce; @fieldInputSelectionBackground: #50a2ce;
@signInBackground : #245b78; @signInBackground : #245b78;

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright (C) 2020-2021 Graz University of Technology. # Copyright (C) 2020-2023 Graz University of Technology.
# #
# invenio-theme-tugraz is free software; you can redistribute it and/or # invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more # modify it under the terms of the MIT License; see LICENSE file for more
@@ -8,8 +8,7 @@
"""invenio module for TUGRAZ theme.""" """invenio module for TUGRAZ theme."""
from flask_babelex import gettext as _ from invenio_i18n import gettext as _
from invenio_app_rdm.config import RECORDS_UI_ENDPOINTS
INVENIO_THEME_TUGRAZ_DEFAULT_VALUE = _("TU Graz Repository") INVENIO_THEME_TUGRAZ_DEFAULT_VALUE = _("TU Graz Repository")
"""Default value for the application.""" """Default value for the application."""
@@ -17,9 +16,7 @@ INVENIO_THEME_TUGRAZ_DEFAULT_VALUE = _("TU Graz Repository")
INVENIO_THEME_TUGRAZ_BASE_TEMPLATE = "invenio_theme_tugraz/base.html" INVENIO_THEME_TUGRAZ_BASE_TEMPLATE = "invenio_theme_tugraz/base.html"
"""TU Graz Default base template""" """TU Graz Default base template"""
INVENIO_THEME_TUGRAZ_ACCOUNT_BASE = ( INVENIO_THEME_TUGRAZ_ACCOUNT_BASE = "invenio_theme_tugraz/accounts/accounts_base.html"
"invenio_theme_tugraz/accounts/accounts_base.html"
)
"""TU Graz Default account base template""" """TU Graz Default account base template"""
INVENIO_THEME_TUGRAZ_ICON = "images/icon_use.png" INVENIO_THEME_TUGRAZ_ICON = "images/icon_use.png"
@@ -38,10 +35,16 @@ THEME_TUGRAZ_PRODUCTION = False
has to be 'INVENIO_THEME_TUGRAZ_PRODUCTION'. has to be 'INVENIO_THEME_TUGRAZ_PRODUCTION'.
""" """
THEME_TUGRAZ_SUPPORT_EMAIL = ""
"""Shown as contact-info on default error-page."""
# Invenio-theme # Invenio-theme
# ============ # ============
# See https://invenio-theme.readthedocs.io/en/latest/configuration.html # See https://invenio-theme.readthedocs.io/en/latest/configuration.html
# #
THEME_500_TEMPLATE = "invenio_theme_tugraz/default_error.html"
"""Used for any internal server errors and uncaught exceptions."""
THEME_LOGO = "images/tug_logo.png" THEME_LOGO = "images/tug_logo.png"
"""TU Graz logo""" """TU Graz logo"""
@@ -76,20 +79,9 @@ THEME_SITENAME = _("Repository")
SECURITY_LOGIN_USER_TEMPLATE = "invenio_theme_tugraz/accounts/login_user.html" SECURITY_LOGIN_USER_TEMPLATE = "invenio_theme_tugraz/accounts/login_user.html"
"""Login template""" """Login template"""
SECURITY_REGISTER_USER_TEMPLATE = ( SECURITY_REGISTER_USER_TEMPLATE = "invenio_theme_tugraz/accounts/register_user.html"
"invenio_theme_tugraz/accounts/register_user.html"
)
"""Sigup template""" """Sigup template"""
# Invenio-I18N
# ============
# See https://invenio-i18n.readthedocs.io/en/latest/configuration.html
BABEL_DEFAULT_LOCALE = "en"
# Default time zone
BABEL_DEFAULT_TIMEZONE = "Europe/Vienna"
# Other supported languages (do not include BABEL_DEFAULT_LOCALE in list).
I18N_LANGUAGES = [("de", _("German"))]
# Invenio-app-rdm # Invenio-app-rdm
# ============= # =============
# See https://invenio-app-rdm.readthedocs.io/en/latest/configuration.html # See https://invenio-app-rdm.readthedocs.io/en/latest/configuration.html
@@ -119,7 +111,4 @@ DEPOSITS_HEADER_TEMPLATE = "invenio_theme_tugraz/header.html"
TUG_ROUTES = { TUG_ROUTES = {
"index": "/", "index": "/",
"comingsoon": "/comingsoon", "comingsoon": "/comingsoon",
"guide": "/guide",
"terms": "/terms",
"gdpr": "/gdpr",
} }

View File

@@ -1,55 +0,0 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2019-2021 CERN.
# Copyright (C) 2019-2021 Northwestern University.
# Copyright (C) 2021 TU Wien.
# Copyright (C) 2021 Graz University of Technology.
#
# Invenio_theme_tugraz is free software; you can redistribute it and/or modify it
# under the terms of the MIT License; see LICENSE file for more details.
# https://github.com/inveniosoftware/invenio-app-rdm/blob/master/invenio_app_rdm/records_ui/views/deposits.py
"""Routes for record-related pages provided by Invenio-App-RDM."""
from flask import render_template
from flask_login import login_required
from invenio_app_rdm.records_ui.utils import set_default_value
from invenio_app_rdm.records_ui.views.decorators import pass_draft, pass_draft_files
from invenio_app_rdm.records_ui.views.deposits import (
get_form_config,
get_search_url,
new_record,
)
from invenio_rdm_records.resources.serializers import UIJSONSerializer
@login_required
def deposit_create():
"""Create a new deposit."""
return render_template(
"invenio_theme_tugraz/deposit/deposit.html",
forms_config=get_form_config(createUrl=("/api/records")),
searchbar_config=dict(searchUrl=get_search_url()),
record=new_record(),
files=dict(
default_preview=None, entries=[], links={}
),
)
@login_required
@pass_draft
@pass_draft_files
def deposit_edit(draft=None, draft_files=None, pid_value=None):
"""Edit an existing deposit."""
serializer = UIJSONSerializer()
record = serializer.serialize_object_to_dict(draft.to_dict())
return render_template(
"invenio_theme_tugraz/deposit/deposit.html",
forms_config=get_form_config(apiUrl=f"/api/records/{pid_value}/draft"),
record=record,
files=draft_files.to_dict(),
searchbar_config=dict(searchUrl=get_search_url()),
permissions=draft.has_permissions_to(['new_version'])
)

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright (C) 2020-2021 Graz University of Technology. # Copyright (C) 2020-2024 Graz University of Technology.
# #
# invenio-theme-tugraz is free software; you can redistribute it and/or # invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more # modify it under the terms of the MIT License; see LICENSE file for more
@@ -8,9 +8,12 @@
"""invenio module for TUGRAZ theme.""" """invenio module for TUGRAZ theme."""
from flask_login import login_required
from invenio_i18n import lazy_gettext as _
from invenio_records_marc21.ui.theme import current_identity_can_view
from . import config from . import config
from .deposits import deposit_create, deposit_edit from .views import index, locked, require_tugraz_authenticated
from .views import index, record_detail
class InvenioThemeTugraz(object): class InvenioThemeTugraz(object):
@@ -26,10 +29,14 @@ class InvenioThemeTugraz(object):
# add index route rule # add index route rule
# https://flask.palletsprojects.com/en/1.1.x/api/#flask.Flask.add_url_rule # https://flask.palletsprojects.com/en/1.1.x/api/#flask.Flask.add_url_rule
app.add_url_rule("/", "index", index) app.add_url_rule("/", "index", index)
app.add_url_rule("/records/<pid_value>", "record_detail", record_detail)
app.add_url_rule("/uploads/new", "deposit_create", deposit_create)
app.add_url_rule("/uploads/<pid_value>", "deposit_edit", deposit_edit)
self.init_config(app) self.init_config(app)
app.register_error_handler(423, locked)
@app.context_processor
def inject_visibility():
return {"can_view_marc21": current_identity_can_view()}
app.extensions["invenio-theme-tugraz"] = self app.extensions["invenio-theme-tugraz"] = self
def init_config(self, app): def init_config(self, app):
@@ -37,3 +44,53 @@ class InvenioThemeTugraz(object):
for k in dir(config): for k in dir(config):
if k.startswith("INVENIO_THEME_TUGRAZ_") or k.startswith("THEME_TUGRAZ_"): if k.startswith("INVENIO_THEME_TUGRAZ_") or k.startswith("THEME_TUGRAZ_"):
app.config.setdefault(k, getattr(config, k)) app.config.setdefault(k, getattr(config, k))
def finalize_app(app):
"""Finalize app."""
modify_user_dashboard(app)
guard_view_functions(app)
def modify_user_dashboard(app):
"""Modify user dashboard."""
root_menu = app.extensions["menu"].root_node
user_dashboard_menu = root_menu.submenu("dashboard")
user_dashboard_menu.submenu("overview").register(
"invenio_theme_tugraz.overview",
text=_("Overview"),
order=0,
)
root_menu.submenu("actions.deposit").register(
"invenio_theme_tugraz.overview",
_("My dashboard"),
order=1,
)
def guard_view_functions(app):
"""Guard view-functions against unauthenticated access."""
endpoints_to_guard = [
"invenio_app_rdm_users.communities",
"invenio_app_rdm_users.requests",
"invenio_app_rdm_users.uploads",
]
for endpoint in endpoints_to_guard:
view_func = app.view_functions.get(endpoint)
if not view_func:
continue
# decorate view-func
# same as if view-func were defined with:
# @login_required
# @require_tugraz_authenticated_user
view_func = login_required(
require_tugraz_authenticated(
view_func,
),
)
app.view_functions[endpoint] = view_func

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright (C) 2020-2021 Graz University of Technology. # Copyright (C) 2020-2023 Graz University of Technology.
# #
# invenio-theme-tugraz is free software; you can redistribute it and/or # invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more # modify it under the terms of the MIT License; see LICENSE file for more
@@ -8,9 +8,6 @@
"""Frontpage records.""" """Frontpage records."""
from __future__ import absolute_import, print_function
from elasticsearch_dsl.query import Q
from invenio_search.api import RecordsSearch from invenio_search.api import RecordsSearch
@@ -20,7 +17,4 @@ class FrontpageRecordsSearch(RecordsSearch):
class Meta: class Meta:
"""Default index and filter for frontpage search.""" """Default index and filter for frontpage search."""
index = "rdmrecords-records" index = "global-search"
default_filter = Q(
"query_string", query=(
"access.record:public " "AND versions.is_latest:true"))

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg enable-background="new 0 0 64 64" height="64" viewBox="0 0 64 64" width="64" xmlns="http://www.w3.org/2000/svg"><path d="m47.562 6.75c-.38-.474-.955-.75-1.562-.75h-28c-.607 0-1.182.276-1.562.75l-16 20c-.637.796-.573 1.943.147 2.664l30 30c.391.391.903.586 1.415.586s1.024-.195 1.414-.586l30-30c.721-.721.784-1.868.147-2.664zm10.276 19.25h-10.35l-4.8-16h2.351zm-41.054 4 10.722 20.677-20.677-20.677zm4.506 0h8.71v16.798zm12.71 0h8.71l-8.71 16.798zm13.216 0h9.956l-20.678 20.677zm-8.704-20 4.8 16h-9.312v-16zm-8.512 16h-9.312l4.8-16h4.512zm-11.039-16h2.351l-4.8 16h-10.35z"/></svg>

After

Width:  |  Height:  |  Size: 583 B

View File

@@ -0,0 +1 @@
<svg fill="none" height="48" viewBox="0 0 48 48" width="48" xmlns="http://www.w3.org/2000/svg"><g clip-rule="evenodd" fill="#333" fill-rule="evenodd"><path d="m11.0392 17.2183c-.4756.2768-.8742.5498-1.18834.7845-.34219.2557-.85823.0372-.84079-.3896.01851-.4528.06658-1.0087.17644-1.5915.17477-.9271.50589-1.9223 1.12309-2.6789-.4552-.8767-.70618-1.8366-.70618-2.8428 0-4.14214 4.25328-7.5 9.49998-7.5s9.5 3.35786 9.5 7.5c0 4.1421-4.2533 7.5-9.5 7.5-2.304 0-4.4165-.6475-6.0613-1.7247-.7675.2816-1.4393.615-2.0029.943zm1.4999-3.9218c.0919.1771.0698.3919-.0563.5465l-.6017.7375c.1536-.0626.3111-.1237.4722-.1828l.7077-.2596c.1484-.0545.3139-.0355.4461.0511l.6307.413c1.3021.8527 3.0299 1.3978 4.9656 1.3978 4.6086 0 7.5-2.8772 7.5-5.5 0-2.62276-2.8914-5.5-7.5-5.5s-7.5 2.87724-7.5 5.5c0 .6661.1647 1.3116.4812 1.9212z"/><path d="m32.1035 10c-1.1521 0-2.1445.2398-2.9566.6265-.7113.3304-1.3112.7766-1.7493 1.3019.1348-.4596.2059-.9377.2059-1.4284 0-.4134-.0505-.81784-.147-1.20984 1.2777-.8079 2.8919-1.29016 4.647-1.29016 4.1421 0 7.5 2.6863 7.5 6 0 .8463-.2191 1.6517-.6143 2.3819-.0881.1629-.0893.3595-.0084.5261.0953.1962.1748.401.241.6083.1805.5653.2624 1.1496.2971 1.6307.0308.4261-.4853.6495-.8354.4048-.3202-.2239-.7262-.4769-1.2086-.7166-.0941-.0467-.1911-.0929-.2909-.1384-.1536-.0698-.3314-.0505-.4745.0388-1.2712.7924-2.8697 1.2644-4.606 1.2644-3.5699 0-6.5573-1.9954-7.3146-4.668.7532-.5186 1.3846-1.1387 1.8571-1.8321-.0281.1638-.0425.3307-.0425.5001 0 1.4176 1.014 2.663 2.5433 3.3735.8121.3867 1.8046.6265 2.9567.6265 3.0275 0 5.4837-1.779 5.4999-3.9781 0-.0073.0001-.0146.0001-.0219 0-.0029 0-.0057 0-.0086-.0041-1.414-1.0171-2.6558-2.5432-3.3648-.8121-.3868-1.8047-.6266-2.9568-.6266z"/><path d="m13 31c1.6579 0 3-1.3421 3-3s-1.3421-3-3-3-3 1.3421-3 3 1.3421 3 3 3zm0 2c2.7625 0 5-2.2375 5-5s-2.2375-5-5-5-5 2.2375-5 5 2.2375 5 5 5z"/><path d="m5.62151 38.7886c-.48599.4893-.62151.8839-.62151 1.2114v1h18v-1c0-.3275-.1355-.7221-.6215-1.2114-.5043-.5077-1.2895-1.0094-2.3027-1.4522-2.0371-.8903-4.5143-1.3364-6.0758-1.3364s-4.03865.4461-6.07582 1.3364c-1.01321.4428-1.79842.9445-2.30267 1.4522zm8.37849-4.7886c-3.6712 0-11 2.01-11 6v3h22v-3c0-3.99-7.3287-6-11-6z"/><path d="m35 31c1.6579 0 3-1.3421 3-3s-1.3421-3-3-3-3 1.3421-3 3 1.3421 3 3 3zm0 2c2.7625 0 5-2.2375 5-5s-2.2375-5-5-5-5 2.2375-5 5 2.2375 5 5 5z"/><path d="m24 29c1.1054 0 2-.8946 2-2s-.8946-2-2-2-2 .8946-2 2 .8946 2 2 2zm0 2c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4z"/><path d="m25.6215 38.7886c-.486.4893-.6215.8839-.6215 1.2114v1h18v-1c0-.3275-.1355-.7221-.6215-1.2114-.5043-.5077-1.2895-1.0094-2.3027-1.4522-2.0371-.8903-4.5143-1.3364-6.0758-1.3364s-4.0387.4461-6.0758 1.3364c-1.0132.4428-1.7984.9445-2.3027 1.4522zm8.3785-4.7886c-3.6712 0-11 2.01-11 6v3h22v-3c0-3.99-7.3287-6-11-6z"/><path d="m24 34c-3.3093 0-5.6283 1.5425-6.2929 2.2071l-1.4143-1.4142c1.0021-1.002 3.8164-2.7929 7.7072-2.7929 3.8907 0 6.705 1.7909 7.7071 2.7929l-1.4143 1.4142c-.6646-.6646-2.9836-2.2071-6.2928-2.2071z"/></g></svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
viewBox="0 0 512.427 512.427" xml:space="preserve">
<g transform="translate(1 1)">
<g>
<g>
<path d="M502.893,396.948h-54.941l19.102-5.12c1.707-0.853,4.267-1.707,5.12-4.267s1.707-4.267,0.853-6.827l-12.67-47.026
c0.07-0.83,0.031-1.664-0.13-2.467l-8.533-33.28c-0.405-0.81-1.006-1.81-1.704-2.731l-42.692-158.453
c0.228-1.166,0.251-2.368,0.023-3.51l-8.533-33.28c-0.526-1.052-1.377-2.426-2.352-3.527L384.28,51.348
c-0.853-4.267-5.973-6.827-10.24-5.973l-82.773,22.187c-4.267,0.853-6.827,5.973-5.973,10.24l18.404,68.485
c-6.845-3.409-14.542-5.339-22.671-5.339H33.56c-3.413,0-5.973,1.707-7.68,5.12c-1.707,2.56-1.707,5.973,0,8.533l10.24,16.213
c7.68,13.653,7.68,29.867,0,43.52l-7.545,11.947H7.96c-3.413,0-5.973,1.707-7.68,5.12c-1.707,2.56-1.707,5.973,0,8.533
l10.24,16.213c7.68,13.653,7.68,29.867,0,43.52L0.28,315.882c-1.707,2.56-1.707,5.973,0,8.533s4.267,4.267,7.68,4.267h20.076
l8.084,12.8c7.68,13.653,7.68,29.867,0,43.52l-7.545,11.947H7.96c-5.12,0-8.533,3.413-8.533,8.533v51.2
c0,5.12,3.413,8.533,8.533,8.533h494.933c5.12,0,8.533-3.413,8.533-8.533v-51.2C511.427,400.362,508.013,396.948,502.893,396.948
z M292.303,312.89c8.853-9.215,14.323-21.7,14.323-35.409s-5.47-26.194-14.323-35.409c12.984-2.949,24.135-10.859,31.324-21.623
l29.419,109.472l7.34,28.627c0.198,0.395,0.42,0.778,0.661,1.147l10.011,37.253h-51.961c8.15-9.076,13.129-21.05,13.129-34.133
C332.227,338.528,315.083,318.064,292.303,312.89z M387.693,129.855l-65.707,17.92l-4.267-16.213l65.707-17.92L387.693,129.855z
M392.263,146.011l39.228,148.419l-65.994,17.689l-33.635-125.96c-0.582-4.934-1.863-9.661-3.758-14.072l-2.089-7.824
L392.263,146.011z M370.627,328.682l65.426-16.994l4.285,16.212l-65.444,17.849L370.627,328.682z M387.693,395.242l-8.951-33.52
l65.868-17.655l8.79,33.255L387.693,395.242z M370.627,64.148l8.501,32.163l-66.498,17.824l-8.563-32.067L370.627,64.148z
M50.627,161.428l-1.707-3.413h232.107c14.067,0,26.217,8.625,31.425,20.847l2.436,9.064c0.173,1.385,0.272,2.792,0.272,4.222
c0,18.773-15.36,34.133-34.133,34.133h-25.6H48.92l1.707-3.413C61.72,204.095,61.72,180.202,50.627,161.428z M25.027,246.762
l-1.707-3.413h10.24h221.867c18.773,0,34.133,15.36,34.133,34.133c0,18.773-15.36,34.133-34.133,34.133H33.56H23.32l1.707-3.413
C36.12,289.428,36.12,265.535,25.027,246.762z M50.627,332.095l-1.707-3.413h206.507h25.6c18.773,0,34.133,15.36,34.133,34.133
c0,18.773-15.36,34.133-34.133,34.133H48.92l1.707-3.413C61.72,374.762,61.72,350.868,50.627,332.095z M494.36,448.148H16.493
v-34.133H33.56h247.467h101.547h1.707h110.08V448.148z"/>
<path d="M93.293,371.348h187.733c5.12,0,8.533-3.413,8.533-8.533s-3.413-8.533-8.533-8.533H93.293
c-5.12,0-8.533,3.413-8.533,8.533S88.173,371.348,93.293,371.348z"/>
<path d="M67.693,286.015h187.733c5.12,0,8.533-3.413,8.533-8.533c0-5.12-3.413-8.533-8.533-8.533H67.693
c-5.12,0-8.533,3.413-8.533,8.533C59.16,282.602,62.573,286.015,67.693,286.015z"/>
<path d="M93.293,200.682h187.733c5.12,0,8.533-3.413,8.533-8.533s-3.413-8.533-8.533-8.533H93.293
c-5.12,0-8.533,3.413-8.533,8.533S88.173,200.682,93.293,200.682z"/>
<path d="M357.827,182.762l26.453,98.987c1.707,3.413,5.12,5.973,8.533,5.973c0,0,0.853,0,1.707-0.853
c4.267-0.853,6.827-5.973,5.973-10.24l-26.453-98.133c-0.853-4.267-5.973-6.827-10.24-5.973S356.973,178.495,357.827,182.762z"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.8" data-attribution="cc0-icons" viewBox="0 0 24 24">
<path d="m4.5 2 15 10-15 10V2Z"/>
</svg>

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg enable-background="new 0 0 64 64" height="64" viewBox="0 0 64 64" width="64" xmlns="http://www.w3.org/2000/svg"><path d="m32 0c-27.377 0-31.93 25.415-31.973 25.671-.097.58.066 1.173.447 1.622.38.448.938.707 1.526.707h28v30c0 3.309 2.691 6 6 6s6-2.691 6-6c0-1.104-.896-2-2-2s-2 .896-2 2c0 1.103-.897 2-2 2s-2-.897-2-2v-30h28c.007-.001.013 0 .02 0 1.104 0 2-.896 2-2 0-.234-.041-.459-.115-.669-.645-3.04-6.265-25.331-31.905-25.331zm-27.455 24c1.712-5.749 7.927-20 27.455-20s25.743 14.251 27.455 20z"/></svg>

After

Width:  |  Height:  |  Size: 510 B

View File

@@ -0,0 +1,14 @@
{#
Copyright (C) 2024 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more
details.
#}
{% extends config.THEME_ERROR_TEMPLATE %}
{% block message %}
<h1><i class="bolt icon"></i> {{_("Locked")}}</h1>
<p>{{_("The resource that is being accessed is locked.")}}</p>
{% endblock message %}

View File

@@ -10,13 +10,14 @@
{% from "invenio_accounts/_macros.html" import render_field, form_errors %} {% from "invenio_accounts/_macros.html" import render_field, form_errors %}
{%- from "invenio_oauthclient/_macros.html" import oauth_button %}
{% block page_body %} {% block page_body %}
<div class="spacer-long"></div> <div class="spacer-long"></div>
<div class="spacer-long"></div> <div class="spacer-long"></div>
<div class="ui container"> <div class="ui container">
<div class="ui centered grid padded"> <div class="ui centered grid padded">
<div class="ui padded segments huge form"> <div class="ui padded segments large form">
<div class="ui login segment padded"> <div class="ui login segment padded">
<div class="divider hidden"></div> <div class="divider hidden"></div>
{%- block form_header %} {%- block form_header %}
@@ -24,32 +25,54 @@
{%- endblock form_header %} {%- endblock form_header %}
<div class="ui divider"></div> <div class="ui divider"></div>
<!--Log in with SSO--> <!--Log in with SSO-->
{%- if config.INVENIO_CONFIG_TUGRAZ_SHIBBOLETH %} {% if config.OAUTHCLIENT_REMOTE_APPS or config.SSO_SAML_IDPS %}
<a href="{{ url_for('sso_saml.sso', idp='idp') }}" class="login-page-button ui fluid large button"> <div class="ui form">
{% trans type='TUGRAZ' %} Log in with {{ type }}{% endtrans %} {% for name in config.OAUTHCLIENT_REMOTE_APPS.keys() %}
<img src="{{ url_for('static', filename=config.INVENIO_THEME_TUGRAZ_ICON)}}" height="20px" /> {{ oauth_button(name, next=request.args.get('next')) }}
</a> {% endfor %}
<div class="spacer-long"></div> </div>
<div class="ui inverted horizontal divider"><span class="text-color">{{_ ("Or")}}</span></div> {% for name in config.SSO_SAML_IDPS.keys() %}
<div class="field">
<a class="login-page-button ui fluid large button" href="{{ url_for('sso_saml.sso', idp=name) }}">
{{
_('Log in with %(title)s', title=config.SSO_SAML_IDPS[name]['title']|default("SAML", true))
}}
<img src="{{ url_for('static', filename=config.INVENIO_THEME_TUGRAZ_ICON)}}" height="20px" />
</a>
</div>
{% endfor %}
{%- if config.ACCOUNTS_LOCAL_LOGIN_ENABLED %}
<div class="ui horizontal divider">
{{ _("Or") }}
</div>
{%- endif %} {%- endif %}
{% endif %}
{%- block form_outer %} {%- block form_outer %}
{%- if config.ACCOUNTS_LOCAL_LOGIN_ENABLED %}
{%- with form = login_user_form %} {%- with form = login_user_form %}
<div style="padding-bottom: 20px;padding-top: 6px;"> {%- set accordion_active = "active" if form.errors else "" %}
<form action="{{ url_for_security('login') }}" method="POST" name="login_user_form" class="ui big form"> <div class="ui styled accordion">
{{ form.hidden_tag() }} <div class="title trigger {{ accordion_active }}">
{{ form_errors(form) }} {{ _('Log in with repository credentials') }}
{{ render_field(form.email, icon="user icon", autofocus=True, errormsg=False) }} <i class="user icon button"></i>
{{ render_field(form.password, icon="lock icon", errormsg=False) }} </div>
<button type="submit" class="ui fluid large submit button"> <div class="content {{ accordion_active }}">
<i class="ui sign-in icon"></i>{{ _('Log In') }} <form action="{{ url_for_security('login') }}" method="POST" name="login_user_form" class="ui large form">
</button> {{ form.hidden_tag() }}
</form> {{ form_errors(form) }}
</div> {{ render_field(form.email, icon="user icon", autofocus=True, errormsg=False) }}
{{ render_field(form.password, icon="lock icon", errormsg=False) }}
<button type="submit" class="ui fluid large submit button">
<i class="ui sign-in icon"></i>{{ _('Log In') }}
</button>
</form>
</div>
</div>
{%- endwith %} {%- endwith %}
{%- endif %}
{%- endblock form_outer %} {%- endblock form_outer %}
<div class="divider hidden"></div> <div class="divider hidden"></div>
</div> </div>
{%- block registerable %} {%- block registerable %}

View File

@@ -17,73 +17,78 @@
<div class="ui stackable two column grid"> <div class="ui stackable two column grid">
<div class="centered row"> <div class="centered row">
<h1 class="ui header">{{ _('Create an Account') }}</h1> <h1 class="ui header">{{ _("Create an Account") }}</h1>
</div> </div>
<div class="column" id="switch_left"> <div class="column" id="switch_left">
<div class="ui basic segment"> <div class="ui basic segment">
<h4 class="ui header">{{ _('Citeable. Discoverable.') }}</h4> <h4 class="ui header">{{ _("Citeable. Discoverable.") }}</h4>
<p class="bodytext"> <p class="bodytext">
{{ _('Uploads get a Digital Object Identifier (DOI) to make them easily and uniquely citeable.')}}</h5> {{ _("Uploads get a Digital Object Identifier (DOI) to make them easily and uniquely citeable.")}}</h5>
<h4 class="ui header">{{ _('Communities.') }}</h4> <h4 class="ui header">{{ _("Communities.") }}</h4>
<p class="bodytext"> <p class="bodytext">
{{ _('Accept or reject uploads to your own community (e.g workshops, EU projects, institutions or entire disciplines).') }} {{ _("Accept or reject uploads to your own community (e.g workshops, EU projects, institutions or entire disciplines).") }}
</h5> </h5>
<h4 class="ui header">{{ _('Trusted Research Data Management') }}</h4> <h4 class="ui header">{{ _("Trusted Research Data Management") }}</h4>
<p class="bodytext"> <p class="bodytext">
{{ _('Built on top of TU Graz expertise in managing of the research data from the Graz University of Technology.') }} {{ _("Built on top of TU Graz expertise in managing of the research data from the Graz University of Technology.") }}
</h5> </h5>
</div> </div>
</div> </div>
<div class="column" id="switch_right"> <div class="column" id="switch_right">
{# Sigup with SSO #}
{%- if config.INVENIO_CONFIG_TUGRAZ_SHIBBOLETH %}
<!--Sigup with SSO--> <div class="ui divider"></div>
{%- if config.INVENIO_CONFIG_TUGRAZ_SHIBBOLETH %} <a href="{{ url_for("sso_saml.sso", idp="idp") }}" class="login-page-button ui fluid large button">
<div class="ui divider"></div> <span style="font-size: 18px;">{{ _("Sign up with TUGRAZ") }}</span>
<a href="{{ url_for('sso_saml.sso', idp='idp') }}" class="login-page-button ui fluid large button"> <img src="{{ url_for("static", filename=config.INVENIO_THEME_TUGRAZ_ICON) }}" height="20px" />
<span style="font-size: 18px;">{{ _('Sign up with TUGRAZ ') }}</span>
<img src="{{ url_for('static', filename=config.INVENIO_THEME_TUGRAZ_ICON)}}" height="20px" />
</a> </a>
</div> <div class="ui inverted horizontal divider"><span class="text-color">{{_ ("Or") }}</span></div>
<div class="ui inverted horizontal divider"><span class="text-color">{{_ ("Or")}}</span></div> {%- endif %}
{%- endif %}
{%- block form_header %} {%- block form_header %}
<!-- can add a header img--> {# can add a header img #}
{%- block form_outer %} {%- block form_outer %}
{%- endblock form_outer %} {%- endblock form_outer %}
{%- endblock form_header %} {%- endblock form_header %}
{%- with form = register_user_form %}
<form class="ui big form" action="{{ url_for_security('register') }}" method="POST" name="register_user_form">
{{ form_errors(form) }}
{{ form.hidden_tag() }}
{%- block registration_form_fields scoped %}
{{ render_field(form.email, icon="user icon", autofocus=True, errormsg=False) }}
{{ render_field(form.password, icon="lock icon", errormsg=False) }}
{%- if form.password_confirm %}
{{ render_field(form.password_confirm, icon="lock icon", errormsg=False) }}
{%- endif %}
{%- endblock registration_form_fields %}
{%- if form.recaptcha %} {%- with form = register_user_form %}
<div class="grouped fields">{{ form.recaptcha() }}</div> {%- set accordion_active = "active" if form.errors else "" %}
{%- endif %} <div class="ui padded centered large form">
<div class="ui styled accordion">
<div class="title trigger {{ accordion_active }}">
{{ _("Sign up with repository credentials") }}
<i class="user icon button"></i>
</div>
<div class="content {{ accordion_active }}">
<form class="ui large form" action="{{ url_for_security("register") }}" method="POST" name="register_user_form">
{{ form_errors(form) }}
{{ form.hidden_tag() }}
{%- block registration_form_fields scoped %}
{{ render_field(form.email, icon="user icon", autofocus=True, errormsg=False) }}
{{ render_field(form.password, icon="lock icon", errormsg=False) }}
{%- if form.password_confirm %}
{{ render_field(form.password_confirm, icon="lock icon", errormsg=False) }}
{%- endif %}
{%- endblock registration_form_fields %}
<div class="centered row"> {%- if form.recaptcha %}
<button type="submit" class="ui fluid large submit button"> <div class="grouped fields">{{ form.recaptcha() }}</div>
<i class="ui edit outline icon"></i>{{ _('Sign up') }} {%- endif %}
</button>
<div class="centered row">
<button type="submit" class="ui fluid large submit button">
<i class="ui edit outline icon"></i>{{ _("Sign up") }}
</button>
</div>
</form>
</div>
</div> </div>
</form> </div>
{%- endwith %} {%- endwith %}
<div class="ui divider"></div> <div class="ui divider"></div>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -1,5 +1,5 @@
{# {#
Copyright (C) 2020-2021 Graz University of Technology. Copyright (C) 2020-2023 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more modify it under the terms of the MIT License; see LICENSE file for more
@@ -7,79 +7,88 @@
#} #}
<!DOCTYPE html> <!DOCTYPE html>
<html{% if html_css_classes %} class="{{ html_css_classes|join(' ') }}"{% endif %} lang="{{ current_i18n.locale.language|safe }}" dir="{{ current_i18n.locale.text_direction }}"> <html lang="{{ current_i18n.locale.language|safe }}" dir="{{ current_i18n.locale.text_direction }}">
<head> <head>
{%- block head %} {%- block head %}
{%- block head_meta %} {%- block head_meta %}
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
{%- if description %}<meta name="description" content="{{ description }}" />{% endif %}
{%- if keywords %}<meta name="keywords" content="{{ keywords }}" />{% endif %} {%- if description %}
{%- if config.get('THEME_GOOGLE_SITE_VERIFICATION', None) %} <meta name="description" content="{{ description }}" />
{%- for google_id in config.THEME_GOOGLE_SITE_VERIFICATION %} {% endif %}
<meta name="google-site-verification" content="{{google_id}}"/>
{%- endfor %} {%- if keywords %}
{%- endif %} <meta name="keywords" content="{{ keywords }}" />
{%- endblock head_meta %} {% endif %}
{%- block head_title %}
{%- set title = title or _(config.THEME_SITENAME) or _('Invenio') %} {%- if config.get("THEME_GOOGLE_SITE_VERIFICATION", None) %}
<title>{{title}}</title> {%- for google_id in config.THEME_GOOGLE_SITE_VERIFICATION %}
{%- endblock head_title %} <meta name="google-site-verification" content="{{google_id}}"/>
{%- block head_links %} {%- endfor %}
<link rel="shortcut icon" href="{{ url_for('static', filename='favicon.ico') }}"/> {%- endif %}
{%- if keywords %}<link rel="canonical" href="{{ canonical_url }}"/>{% endif %} {%- endblock head_meta %}
{%- block head_links_langs %}
{%- if alternate_urls %} {%- block head_title %}
{%- for alt_ln, alternate_url in alternate_urls.items() %} {%- set title = title or _(config.THEME_SITENAME) or _("Invenio") %}
<link rel="alternate" hreflang="{{ alt_ln }}" href="{{ alternate_url }}"/> <title>{{title}}</title>
{%- endfor %} {%- endblock head_title %}
{%- endif %}
{%- endblock %} {%- block head_links %}
{%- block head_apple_icons %} <link rel="shortcut icon" href="{{ url_for("static", filename="favicon.ico") }}"/>
{%- for size in [144, 114, 72, 57] %}
{%- set icon_name = 'apple-touch-icon-%d-precomposed.png' | format(size) %} {%- if keywords %}
<link rel="apple-touch-icon-precomposed" sizes="{{ size }}x{{ size }}" href="{{ url_for('static', filename=icon_name) }}"/> <link rel="canonical" href="{{ canonical_url }}"/>
{%- endfor %} {% endif %}
{%- endblock head_apple_icons %}
{%- endblock head_links %} {%- block head_links_langs %}
{%- block header %}{% endblock header %} {%- if alternate_urls %}
{%- block css %} {%- for alt_ln, alternate_url in alternate_urls.items() %}
{{ webpack['theme.css'] }} <link rel="alternate" hreflang="{{ alt_ln }}" href="{{ alternate_url }}"/>
{{ webpack['invenio-theme-tugraz-theme.css'] }} {%- endfor %}
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> {%- endif %}
<!--[if lt IE 9]> {%- endblock %}
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> {%- endblock head_links %}
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]--> {%- block header %}{% endblock header %}
{%- endblock css %}
{%- block css %}
{{ webpack["theme.css"] }}
{{ webpack["invenio-theme-tugraz-theme.css"] }}
{%- endblock css %}
{%- endblock head %} {%- endblock head %}
</head> </head>
<body ng-csp {% if body_css_classes %} class="{{ body_css_classes|join(' ') }}"{% endif %}{% if g.ln %} lang="{{ g.ln.split('_', 1)[0]|safe }}"{% if rtl_direction %} {{ rtl_direction|safe }}{% endif %}{% endif %} itemscope itemtype="http://schema.org/WebPage" data-spy="scroll" data-target=".scrollspy-target">
{%- block body %}
{%- block browserupgrade %}
<!--[if lt IE 8]>
<p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
<![endif]-->
{%- endblock browserupgrade %}
{%- block body_inner %}
{%- block page_header %}
{% include config.THEME_HEADER_TEMPLATE %}
{%- endblock page_header %}
{%- block page_body %}
{% include "invenio_theme/body.html" %}
{%- endblock page_body %}
{%- block page_footer %} <body itemscope itemtype="http://schema.org/WebPage" data-spy="scroll" data-target=".scrollspy-target">
{% include config.THEME_FOOTER_TEMPLATE %} {%- block body %}
{%- endblock page_footer %} {%- block browserupgrade %}
<!--[if lt IE 10]>
{%- endblock body_inner %} <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
{%- block javascript %} <![endif]-->
{% include config.THEME_JAVASCRIPT_TEMPLATE %} {%- endblock browserupgrade %}
{%- endblock javascript %}
{%- block trackingcode %}{% include config.THEME_TRACKINGCODE_TEMPLATE %} {%- block body_inner %}
{%- endblock %} {%- block page_header %}
{% include config.THEME_HEADER_TEMPLATE %}
{%- endblock page_header %}
{%- block page_body %}
{% include "invenio_theme/body.html" %}
{%- endblock page_body %}
{%- block page_footer %}
{% include config.THEME_FOOTER_TEMPLATE %}
{%- endblock page_footer %}
{%- endblock body_inner %}
{%- block javascript %}
{% include config.THEME_JAVASCRIPT_TEMPLATE %}
{%- endblock javascript %}
{%- block trackingcode %}
{% include config.THEME_TRACKINGCODE_TEMPLATE %}
{%- endblock %}
{%- endblock body %} {%- endblock body %}
</body> </body>
</html> </html>

View File

@@ -1,10 +1,21 @@
{#
Copyright (C) 2020-2024 Graz University of Technology.
<ul> invenio-theme-tugraz is free software; you can redistribute it and/or
<li><strong>{{_('Safe')}}</strong> &mdash; {{_('your research is stored safely for the future in TU Graz library for as long as TU Graz library exists.')}}</li> modify it under the terms of the MIT License; see LICENSE file for more
<li><strong>{{_('Trusted')}}</strong> &mdash; {{_('built and operated by CERN and OpenAIRE to ensure that everyone can join in Open Science.')}}</li> details.
<li><strong>{{_('Citeable')}}</strong> &mdash; {{_('every upload is assigned a Digital Object Identifier (DOI), to make them citable and trackable.')}}</li> #}
<li><strong>{{_('No waiting time')}}</strong> &mdash; {{_('Uploads are made available online as soon as you hit publish, and your DOI is registered within seconds.')}}</li>
<li><strong>{{_('Open or closed')}}</strong> &mdash; {{_('Share e.g. anonymized clinical trial data with only medical professionals via our restricted access mode.')}}</li> <div class="ui segment" style="padding-bottom: 10px;">
<li><strong>{{_('Versioning')}}</strong> &mdash; {{_("Easily update your dataset with our versioning feature.")}}</li> <h4>{{ _("Good reasons to use the Repository of the TU Graz") }}</h4>
<li><strong>{{_('Usage statisics')}}</strong> &mdash; {{_("All uploads display standards compliant usage statistics")}}</li>
</ul> <ul>
<li><strong>{{_("Safe") }}</strong> &mdash; {{_("Your research results are permanently available.") }}</li>
<li><strong>{{_("Trusted") }}</strong> &mdash; {{_("A service from TU Graz, developed in cooperation with CERN.") }}</li>
<li><strong>{{_("Citeable") }}</strong> &mdash; {{_("Every upload is assigned a Digital Object Identifier (DOI).") }}</li>
<li><strong>{{_("No waiting time") }}</strong> &mdash; {{_("Uploads are made available online as soon as you hit publish. Your DOI is registered within seconds.") }}</li>
<li><strong>{{_("Open or closed") }}</strong> &mdash; {{_("You determine the visibility of your uploads. A restricted access mode is possible.") }}</li>
<li><strong>{{_("Versioning") }}</strong> &mdash; {{_("Easily update your dataset with the versioning feature.") }}</li>
<li><strong>{{_("Usage statistics") }}</strong> &mdash; {{ _("All uploads display standards compliant usage statistics. ") }} <a href="help/statistics">({{ _("More") }})</a></li>
</ul>
</div>

View File

@@ -1,7 +0,0 @@
{%- extends config.INVENIO_THEME_TUGRAZ_BASE_TEMPLATE %}
{%- block page_body %}
<div class="ui container">
<h1 style="text-align: center;">comingsoon</h1>
</div>
{%- endblock %}

View File

@@ -0,0 +1,29 @@
{#
Copyright (C) 2020-2024 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more
details.
#}
<div class="ui segment">
<h4>{{ _("Need help?") }}</h4>
{%- if config.THEME_TUGRAZ_CONTACT_FORM %}
<div style="padding-bottom: 10px;">
<a id="feedback-form" class="fluid ui button">
{{ _("Contact us") }}
</a>
</div>
{%- endif %}
<p>
{{ _("We can help with:") }}
</p>
<ul>
<li>{{ _("Upload your research results, software, preprints, etc.") }}</li>
<li>{{ _("Increase upload limit beyond our default policy of 10GB.") }}</li>
<li>{{ _("Establish contact with data stewards.") }}</li>
<li>{{ _("Find individual solutions.") }}</li>
</ul>
</div>

View File

@@ -0,0 +1,21 @@
{#
Copyright (C) 2024 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more
details.
#}
{% extends config.THEME_ERROR_TEMPLATE %}
{% block message %}
<h1> {{ _('Internal server error') }} </h1>
<p>
{{ _(
'Please contact <a href="mailto:{support_email}">our support</a>
to let us know about this error.'
).format(support_email=config.THEME_TUGRAZ_SUPPORT_EMAIL)
}}
</p>
{# TODO: provide g.sentry_event_id here once sentry is configured, cf. invenio_theme/500.html #}
{% endblock message %}

View File

@@ -1,37 +0,0 @@
{#
Copyright (C) 2020 CERN.
Copyright (C) 2020 Northwestern University.
Copyright (C) 2021 Graz University of Technology.
Invenio App RDM is free software; you can redistribute it and/or modify it
under the terms of the MIT License; see LICENSE file for more details.
#}
{%- if not record.is_published and record.versions.index and record.versions.index > 1%}
{%- set title = _("New version") %}
{%- elif not record.is_published %}
{%- set title = _("New upload") %}
{% else %}
{%- set title = _("Edit upload") %}
{%- endif %}
{%- extends config.BASE_TEMPLATE %}
{%- block page_body %}
{%- if record %}
<input id="deposits-record" type="hidden" name="deposits-record" value='{{record | tojson }}'></input>
{%- endif %}
{%- if files %}
<input id="deposits-record-files" type="hidden" name="deposits-record-files" value='{{files | tojson }}'></input>
{%- endif %}
{%- if forms_config %}
<input type="hidden" name="deposits-config" value='{{forms_config | tojson }}'></input>
{%- endif %}
{%- if permissions %}
<input id="deposits-record-permissions" type="hidden" name="deposits-record-permissions" value='{{permissions | tojson }}'></input>
{%- endif %}
<div id="deposit-form"></div>
{%- endblock page_body %}
{%- block javascript %}
{{ super() }}
{{ webpack['invenio-theme-tugraz-rdm-deposit.js'] }}
{%- endblock %}

View File

@@ -1,168 +1,169 @@
{# {#
Copyright (C) 2020-2021 Graz University of Technology. Copyright (C) 2020-2023 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more modify it under the terms of the MIT License; see LICENSE file for more
details. details.
#} #}
{%- block css %} {%- block css %}
{{ webpack['invenio-theme-tugraz-theme.css'] }}
{{ webpack['invenio-theme-tugraz-theme.css'] }}
{%- endblock %} {%- endblock %}
{%- block javascript %} {%- block javascript %}
{{ webpack['invenio-theme-tugraz-js.js'] }} {{ webpack['invenio-theme-tugraz-js.js'] }}
{%- endblock javascript %} {%- endblock javascript %}
<div class="spacer"></div> <div class="spacer"></div>
<footer id="footer" class="footer-bottom"> <footer id="footer" class="footer-bottom">
<div class="ui container"> <div class="ui container">
<div class="ui grid"> <div class="ui grid">
<div class="doubling four column row"> <div class="doubling four column row">
<div class="column"> <div class="column">
<h2>{{ _("Repository") }}</h2>
<div class="ui list">
<div class="item">
<a href="https://tu-graz-library.github.io/docs-repository" title="Repository documentation"
target="_blank">
{{ _("Documentation") }} <i class="external alternate icon"></i>
</a>
</div>
<h2>{{_ ("Repository")}}</h2> <div class="item">
<p class="bodytext"> <a href="{{ url_for('invenio_config_tugraz.guide') }}"
<a href="https://tu-graz-library.github.io/docs-repository" title="Repository documentation" title="Quick guide" target="_blank">
target="_blank"> {{ _("Reference Guide") }} <i class="download icon"></i>
{{_ ("Documentation")}} <i class="external alternate icon"></i> </a>
</a> </div>
<br>
<a href="{{ url_for('invenio_theme_tugraz.guide') }}"
title="Quick guide" target="_blank">
{{_ ("Reference Guide")}} <i class="download icon"></i>
</a>
<br>
<a href="{{ url_for('invenio_app_rdm.help_search') }}"
title="Search guide">
{{_ ("Search Guide")}}<i class="angle right icon"></i>
</a>
<br>
<a href="{{ url_for('invenio_theme_tugraz.gdpr') }}"
title="General Data Protection Rights" target="_blank">
{{_ ("Data Protection")}} <i class="download icon"></i>
</a>
<br>
<a href="{{ url_for('invenio_theme_tugraz.terms') }}"
title="Terms and Conditions" target="_blank">
{{_ ("Terms and Conditions")}} <i class="download icon"></i>
</a>
<br>
<!-- <a href="{{ url_for('invenio_theme_tugraz.comingsoon') }}">
{{_ ("Impressum")}}<i class="angle right icon"></i>
</a>
<br>
<a href="{{ url_for('invenio_theme_tugraz.comingsoon') }}">
{{_ ("Feedback")}}<i class="angle right icon"></i>
</a> -->
</p>
<div class="item">
<a href="{{ url_for('invenio_app_rdm.help_search') }}"
title="Search guide">
{{ _("Search Guide") }}<i class="angle right icon"></i>
</a>
</div>
<div class="item">
<a href="{{ url_for('invenio_config_tugraz.gdpr') }}"
title="General Data Protection Rights" target="_blank">
{{ _("Data Protection") }} <i class="download icon"></i>
</a>
</div>
<div class="item">
<a href="{{ url_for('invenio_config_tugraz.terms') }}"
title="Terms and Conditions" target="_blank">
{{ _("Terms and Conditions") }} <i class="download icon"></i>
</a>
</div>
</div>
</div> </div>
<div class="column"> <div class="column">
<h2>{{ _("Features") }}</h2>
<h2>{{_ ("Features")}}</h2> <div class="ui list">
<div class="item">{{ _("Scalability") }}</div>
<h4>{{_ ("Scalability")}}</h4> <div class="item">{{ _("Institutional integration") }}</div>
<div class="item">{{ _("Next Generation Repository") }}</div>
<h4>{{_ ("Institutional integration")}}</h4> <div class="item">{{ _("Repository Profiles") }}</div>
<div class="item">{{ _("Resilient") }}</div>
<h4>{{_ ("Next Generation Repository")}} </div>
</h4>
<h4>{{_ ("Repository Profiles")}}</h4>
<h4>{{_ ("Resilient")}}</h4>
</div> </div>
<div class="column"> <div class="column">
<h2>{{ _("Connected Services") }}</h2>
<div class="ui list">
<div class="item">
<a href="https://pure.tugraz.at" title="PURE" target="_blank">
{{ _("PURE") }} <i class="external alternate icon"></i>
</a>
</div>
<h2>{{_ ("Connected Services")}}</h2> <div class="item">
<p class="bodytext"> <a href="http://campusonline.tugraz.at" title="CAMPUS online" target="_blank">
{{ _("CampusOnline") }} <i class="external alternate icon"></i>
<a href="https://pure.tugraz.at" title="PURE" target="_blank"> </a>
{{_ ("PURE")}} <i class="external alternate icon"></i></a><br> </div>
<a href="http://campusonline.tugraz.at" title="CAMPUS online" target="_blank">
{{_ ("CampusOnline")}} <i class="external alternate icon"></i></a><br>
<a href="https://rdm.tugraz.at" title="Research Data Management" target="_blank">
{{_ ("Research Data Management")}} <i class="external alternate icon"></i></a><br>
</p>
<div class="item">
<a href="https://rdm.tugraz.at" title="Research Data Management" target="_blank">
{{ _("Research Data Management") }} <i class="external alternate icon"></i>
</a>
</div>
</div>
</div> </div>
<div class="column"> <div class="column">
<h2>{{_ ("Accessibility")}}</h2> <h2>{{ _("Accessibility") }}</h2>
<p class="bodytext">{{_ ("Tipp:")}}<br> {{_ ("Use Ctrl + and Crtl -")}}<br> {{_ ("to change the font size.")}} <div class="ui list">
</p> <div class="item">
{{ _("Tipp:") }}
</div>
<div class="item">
{{ _("Use Ctrl + and Crtl -") }}
</div>
<div class="item">
{{ _("to change the font size.") }}
</div>
</div>
</div> </div>
</div> </div>
<div class="ui divider"></div> <div class="ui divider"></div>
<div class="doubling four column row"> <div class="doubling four column row">
<div class="column"> <div class="column">
<div class="logos"> <div class="logos">
{% trans invenio_rdm="http://inveniosoftware.org/products/rdm" %}<strong>Powered by</strong> <strong>Powered by</strong>
<a href="{{invenio_rdm}}" target="_blank" title="invenioRDM">{% endtrans %} <a href="http://inveniosoftware.org/products/rdm" target="_blank" title="invenioRDM">
<br> <img src="{{ url_for("static", filename="images/inveniordm-tail.svg")}}"
<img src="{{ url_for('static', filename='images/inveniordm-tail.svg')}}" alt="invenioRDM" height="90px"> alt="InvenioRDM logo"
</a> style="display: block; height: 90px; margin-top: 8px;">
</div> </a>
</div>
</div> </div>
<div class="column"> <div class="column">
<div class="logos"> <div class="logos">
{% trans fair_data="https://forschungsdaten.at/en/fair-data-austria/" %}<strong>Enabled by</strong> <strong>Enabled by</strong>
<a href="{{fair_data}}" target="_blank" title="Fair Data Austria">{% endtrans %} <a href="https://forschungsdaten.at/en/fair-data-austria/" target="_blank" title="Fair Data Austria">
<br> <img src="{{ url_for("static", filename="images/Fair_Data_Austria_orangerot.png")}}"
<img src="{{ url_for('static', filename='images/Fair_Data_Austria_orangerot.png')}}" alt="Fair Data Austria" alt="Fair Data Austria"
style=" style="display: block; height: auto; margin-top: 15px; width: 230px;">
width: 230px;
margin-top: 15px;
height: auto;">
</a> </a>
</div> </div>
</div> </div>
<div class="column"> <div class="column">
<div class="logos"> <div class="logos">
{% trans oea="https://www.openeducation.at" %} <strong>Supported by</strong>
<a href="{{oea}}" target="_blank" title="Open Education Austria">{% endtrans %} <a href="https://www.openeducation.at" target="_blank" title="Open Education Austria">
<br> <img src="{{ url_for("static", filename="images/oea.svg")}}"
<img src="{{ url_for('static', filename='images/oea.svg')}}" alt="Open Education Austria" alt="Open Education Austria"
style=" style="display: block; height: auto; margin-top: 15px; width: 200px;">
margin-top: -5px;
margin-left: 10px;
width: 200px;
height: auto;">
</a> </a>
</div> </div>
</div> </div>
</div> </div>
<div class="ui divider"></div> <div class="ui divider"></div>
<div class="sixteen wide column">
<div class="logos"> <div class="doubling four column row">
{% trans re3data="https://www.re3data.org/repository/r3d100013565" %} <div class="column">
<a href="{{re3data}}" target="_blank" title="Registry of Research Data Repositories">{% endtrans %} <div class="logos">
<img src="{{ url_for('static', filename='images/re3data.svg')}}" alt="Registry of Research Data Repositories" <strong>Listed on</strong>
style=" <a href="https://www.re3data.org/repository/r3d100013565" target="_blank" title="Registry of Research Data Repositories">
width: 300px; <img src="{{ url_for("static", filename="images/re3data.svg")}}"
height: auto;"> alt="Registry of Research Data Repositories"
</a> style="display: block; height: auto; width: 300px;">
</a>
</div>
</div>
</div>
</div> </div>
</div> </div>
</div>
</div>
</footer> </footer>

View File

@@ -0,0 +1,78 @@
{#
Copyright (C) 2020-2023 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more
details.
#}
<div class="sixteen wide column random-records-frontpage">
<div class="center aligned ui equal height grid">
<div class="left aligned column">
<div class="ui segment image">
<h2>{{ _("Research Results") }}</h2>
<div>
{{ _("Frontpage: Description for research results") }}
</div>
<ul>
{#
<li>
<a href="research-results/browse">{{ _("Browse") }}</a>
</li>
#}
<li>
<a href="records/search">{{ _("Search for research results") }}</a>
</li>
<li>
<a href="me/uploads">{{ _("Upload research results") }}</a>
</li>
</ul>
</div>
</div>
<div class="left aligned column">
<div class="ui segment image">
<h2>{{ _("Publications") }}</h2>
<div>
{{ _("Frontpage: Description for publications") }}
</div>
<ul>
{#
<li>
<a href="publications/browse">Browse</a>
</li>
#}
<li>
<a href="publications/search">{{ _("Search for publications") }}</a>
</li>
</ul>
</div>
</div>
<div class="left aligned column">
<div class="ui segment image">
<h2>{{ _("Educational Resources") }}</h2>
<div>
{{ _("Frontpage: Description for open educational resources") }}
</div>
<ul>
{#
<li>
<a href="oer/browse">{{ _("Browse") }}</a>
</li>
#}
<li>
<a href="oer/search">{{ _("Search for educational resourses") }}</a>
</li>
<li>
<a href="oer/uploads">{{ _("Upload educational resources") }}</a>
</li>
</ul>
</div>
</div>
</div>
</div>

View File

@@ -1,5 +1,5 @@
{# {#
Copyright (C) 2020-2021 Graz University of Technology. Copyright (C) 2020-2023 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more modify it under the terms of the MIT License; see LICENSE file for more
@@ -7,64 +7,68 @@
#} #}
{% if not config.THEME_TUGRAZ_PRODUCTION %} {% if not config.THEME_TUGRAZ_PRODUCTION %}
<div class="ui sticky test-instance"> <div class="ui sticky test-instance">
<h4>{{_ ("Test Instance") }}</h4> <h4>{{ _("Test Instance") }}</h4>
<p>{{_ ("This is the test instance of the TU Graz Repository.") }}</p> <p>{{ _("This is the test instance of the TU Graz Repository.") }}</p>
</div> </div>
{% endif %} {% endif %}
<header> <div>
{%- block navbar %} <header>
<nav> {%- block site_banner %}
{%- block navbar_header %} {% from 'invenio_banners/banner.html' import banner %}
{%- include "invenio_theme_tugraz/navbar.html" %} {{ banner() }}
{%- endblock navbar_header %} {%- endblock site_banner %}
<div class="ui container"> {%- block navbar %}
<div class="ui grid stackable container"> <nav>
<div class="three column row centered" style="padding-bottom: 0;"> {%- block navbar_header %}
<div class="two wide column main-menu-entry"> {%- include "invenio_theme_tugraz/navbar.html" %}
<a href="{{url_for('invenio_theme_tugraz.index')}}" title="Home" class="no-decoration"> {%- endblock navbar_header %}
<span class="home-inline">
<svg shape-rendering="geometricPrecision" id="int-menu-q-home-icon" <div class="ui container">
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" <div class="ui grid stackable container">
version="1.1" xml:space="preserve" height="36.997" width="35.969" <div class="three column row centered" style="padding-bottom: 0;">
enable-background="new 0 0 595.28 841.89" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" <div class="two wide column main-menu-entry">
xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 35.969 36.997451"> <a href="{{url_for('invenio_theme_tugraz.index')}}" title="Home" class="no-decoration">
<polyline style="stroke:#E4154B;stroke-linecap:square;stroke-width:4;fill:none" <span class="home-inline">
points="282.72 437.28 282.72 414.77 297.71 406.69 312.69 414.77 312.69 437.28" <svg shape-rendering="geometricPrecision" id="int-menu-q-home-icon"
transform="translate(-279.72 -403.28)"> xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg"
</polyline> version="1.1" xml:space="preserve" height="36.997" width="35.969"
</svg> enable-background="new 0 0 595.28 841.89" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#"
{{_ ("Home")}} xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 35.969 36.997451">
</span> <polyline style="stroke:#E4154B;stroke-linecap:square;stroke-width:4;fill:none"
</a> points="282.72 437.28 282.72 414.77 297.71 406.69 312.69 414.77 312.69 437.28"
transform="translate(-279.72 -403.28)">
</polyline>
</svg>
{{ _("Home") }}
</span>
</a>
</div>
<div class="two wide column main-menu-entry">
<a role="menuitem" href="/communities" class="no-decoration">{{ _("Communities") }}</a>
</div>
<div class="two wide column main-menu-entry">
<a role="menuitem" href="/me/overview" class="no-decoration">{{ _("Dashboard") }}</a>
</div>
</div> </div>
{%- for item in current_menu.submenu('main').children|sort(attribute='order') if item.visible recursive %}
<div class="two wide column main-menu-entry"> <div id="margin-divider" class="ui divider main-menu-underline-line">
<a href="{{ item.url }}" class="no-decoration">{{ item.text|safe }}</a>
</div> </div>
{%- endfor %}
</div>
<div id="margin-divider" class="ui divider main-menu-underline-line">
</div> </div>
<div class="spacer"></div>
</div> </div>
<div class="spacer"></div> </nav>
</div> {%- endblock navbar %}
</nav> {%- block flashmessages %}
{%- endblock navbar %} {%- from "invenio_theme/macros/messages.html" import flashed_messages with context -%}
{{ flashed_messages() }}
{%- block flashmessages %} {%- endblock %}
{%- from "invenio_theme/macros/messages.html" import flashed_messages with context -%} </header>
{{ flashed_messages() }} </div>
{%- endblock %}
{#
{%- block breadcrumbs %}
{%- include "invenio_theme/breadcrumbs.html" %}
{%- endblock breadcrumbs %}
#}
</header>

View File

@@ -1,5 +1,5 @@
{# {#
Copyright (C) 2020-2021 Graz University of Technology. Copyright (C) 2020-2023 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more modify it under the terms of the MIT License; see LICENSE file for more
@@ -12,161 +12,21 @@
{{ webpack['invenio-theme-tugraz-js.js'] }} {{ webpack['invenio-theme-tugraz-js.js'] }}
{%- endblock javascript %} {%- endblock javascript %}
{%- from "invenio_theme_tugraz/macros/authors.html" import creators -%}
{%- block page_body %} {%- block page_body %}
<div class="ui container"> <div class="ui container">
{%- block frontpage_search %}
{%- block frontpage_form %}
<div class="ui center aligned grid">
<div class="sixteen wide column">
<form action="{{config.THEME_SEARCH_ENDPOINT}}" class="ui form" role="search">
<div class="ui fluid big action icon input">
<input type="text" name="q" autofocus="autofocus" placeholder="{{ _("Type and press enter to search") }}">
<button type="submit" class="ui icon search button">
<i class="icon search"></i>
</button>
</div>
</form>
</div>
</div>
<div class="ui divider hidden"></div> <div class="ui divider hidden"></div>
{%- endblock frontpage_form %}
{%- endblock frontpage_search %}
<div class="ui stackable grid"> <div class="ui stackable grid">
<!---Recent uploads--> {% include "invenio_theme_tugraz/frontpage_overview.html" %}
<div class="ten wide column random-records-frontpage">
<h2>{{_('Recent uploads')}}</h2>
{% if not records %}
<div class="ui centered grid">
<p style="font-size: medium;">{{_('There are no public records to show.')}}</p>
</div>
{% endif %}
{%- for r in records %}
{%- set creation_date = r.created|from_isodatetime -%}
{%- set record_url = url_for('invenio_app_rdm_records.record_detail', pid_value=r.id) %}
<article>
<!--TODO:
something with doi
-->
<div class="badges">
<!--Publication date/Version badge-->
<span class="ui label blue" title="{{_('Publication date')}}">
{{ r.metadata.publication_date }} {{ '(' ~ r.metadata.version ~ ')' if r.metadata.version }}
</span>
<!--Resource type badge-->
<span class="ui label grey" title="{{_('Resource type')}}">
{{r.metadata.resource_type | cast_to_dict | vocabulary_title('resource_type') }}
</span>
<span class="ui label access-status {{ r.ui.access_status.id }}" data-tooltip="{{ r.ui.access_status.description_l10n }}" data-inverted="">
{% if r.ui.access_status.icon %}<i class="icon {{ r.ui.access_status.icon }}"></i>{% endif %}
{{ r.ui.access_status.title_l10n }}
</span>
<span class="label record-version">
<!--TODO: add subtype--->
</span>
</div>
<h4>
<a href="{{ record_url }}" class="no-decoration">
{{r.metadata.title}}
</a>
</h4>
<p>
{{ creators(r.metadata.creators) }}
</p>
<p class="hidden-xs">
<a href="{{record_url}}" class="no-decoration">
{{ r.metadata.description | striptags | truncate(300) }}
</a>
</p>
<div class="ui grid">
<div class="two column row">
<div class="left floated column">
{%- for s in r.metadata.subjects %}
<div class="ui tiny label">{{s.subject}}</div>
{%- endfor %}
<div>
<small>
{% trans user=userprofile, date=creation_date | dateformat('long')%}
Uploaded on {{date}}
{% endtrans %}
</small>
</div>
</div>
<!--Disabled on feb-relase - enable when stable-->
<!-- <div class="right floated column">
<span class="access-right">
<i class="icon lock open"></i>
{{ r.access.access_right | make_dict_like('access_right') | vocabulary_title('access_right') }}
{%- for right in r.metadata.rights %}
<a target="_blank" href="{{right.url}}">{{ '(' ~ right.identifier ~ ')' }}</a>
{%- endfor %}
</span>
</div> -->
</div>
</div>
</article>
<!----TODO: more versions
-->
{%- endfor %}
{% if records %}
<div class="ui centered grid">
<a class="ui button more" href="{{url_for('invenio_search_ui.search')}}">{{_('More')}}</a>
</div>
{%- endif %}
</div>
{% include "invenio_theme_tugraz/recent_uploads.html" %}
<!---segments--> <!---segments-->
<div class="six wide column"> <div class="six wide column">
<!--contact us--> {% include "invenio_theme_tugraz/contact_us.html" %}
<div class="ui segment" style="padding-bottom: 10px;"> {% include "invenio_theme_tugraz/benefits.html" %}
<h4>{{_ ("Need help?")}}</h4>
{%- if config.THEME_TUGRAZ_CONTACT_FORM %}
<div style="padding-bottom: 10px;">
<a id="feedback-form" class="fluid ui button">
{{_ ("Contact us")}}
</a>
</div>
{%- endif %}
<p>
{{config.THEME_SITENAME}} {{_ ("prioritizes all Recent uploads.")}}
</p>
<p>
{{_ ("We can help with:")}}
</p>
<ul>
<li>{{_ ("Uploading your research data, software, preprints, etc.")}}</li>
<li>{{_ ("One-on-one with")}} {{config.THEME_SITENAME}} {{_ ("supporters.")}}</li>
<li>{{_ ("Quota increases beyond our default policy.")}}</li>
<li>{{_ ("Scripts for automated uploading of larger datasets.")}}</li>
</ul>
</div>
<div class="ui segment" style="padding-bottom: 10px;">
<h4>{{_ ("Why use")}} {{config.THEME_SITENAME}}?</h4>
{% include "invenio_theme_tugraz/benefits.html" %}
</div>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -1,205 +0,0 @@
{#
Copyright (C) 2020-2021 CERN.
Copyright (C) 2020-2021 Northwestern University.
Copyright (C) 2021 TU Wien.
Copyright (C) 2021 Graz University of Technology.
Invenio RDM Records is free software; you can redistribute it and/or modify
it under the terms of the MIT License; see LICENSE file for more details.
#}
{%- extends config.BASE_TEMPLATE %}
{%- from "invenio_app_rdm/records/macros/files.html" import file_list_box, preview_file_box %}
{%- from "invenio_app_rdm/records/macros/detail.html" import show_detail %}
{%- set title = record.metadata.title -%}
{%- set metadata = record.metadata %}
{%- block page_body %}
<div class="banners">
{% if is_preview %}
<div class="ui info flashed top-attached manage message">
<div class="ui container">
<div class="ui relaxed grid">
<div class="column">
<div class="row">
<div class="header">
<i class="eye icon"></i> Preview
</div>
<p>
{% if record.is_published %}
You are previewing changes that have not yet been published.
{% endif %}
{% if not record.is_published and record.versions.index == 1 %}
You are previewing a new record that has not yet been published.
{% endif %}
{% if not record.is_published and record.versions.index > 1 %}
You are previewing a new record version that has not yet been published.
{% endif %}
</p>
</div>
</div>
</div>
</div>
</div>
{% endif %}
{% if permissions is defined and permissions.can_edit and not is_preview %}
<div class="ui warning flashed top-attached manage message">
<div class="ui container">
<div id="recordManagement" data-record='{{ record | tojson }}' data-permissions='{{ permissions | tojson }}'></div>
</div>
</div>
{% endif %}
{% if (not record.versions.is_latest and not is_preview) or (is_preview and not record.versions.is_latest_draft) %}
<div class="ui warning flashed top-attached manage message">
<div class="ui container">
<div class="ui relaxed grid">
<div class="column">
<div class="row">
<p>
{% trans link_start=('<a href="' + record.links.latest_html + '"><b>')|safe, link_end='</b></a>'|safe %}
There is a {{ link_start }}newer version{{ link_end }} of the record available.
{% endtrans %}
</p>
</div>
</div>
</div>
</div>
</div>
{% endif %}
</div>
<div class="ui container">
<div class="ui relaxed grid">
<div class="two column row top-padded">
<div class="eleven wide column">
{% if record.access.record == 'restricted' %}
<div class="ui {{ record.ui.access_status.message_class }} message">
<strong><i class="{{ record.ui.access_status.icon }} icon"></i>{{ record.ui.access_status.title_l10n }}</strong> {{ record.ui.access_status.description_l10n }}
{% if record.access.embargo.reason %}
<p>Reason: {{ record.access.embargo.reason }}</p>
{% endif %}
</div>
{% endif %}
{%- block record_body -%}
{%- block record_header -%}
<div class="ui grid middle aligned">
<div class="two column row">
<div class="left floated left aligned column">
<span class="ui" title="Publication date">{{ record.ui.publication_date_l10n_long }}</span>
<span class="label text-muted"> | Version {{ record.ui.version }}</span>
</div>
<div class="right floated right aligned column">
<span class="ui label small grey">{{ record.ui.resource_type }}</span>
<span class="ui label small access-status {{ record.ui.access_status.id }}" data-tooltip="{{ record.ui.access_status.description_l10n }}" data-inverted="">
{% if record.ui.access_status.icon %}<i class="icon {{ record.ui.access_status.icon }}"></i>{% endif %}
{{ record.ui.access_status.title_l10n }}
</span>
</div>
</div>
</div>
{%- endblock record_header -%}
{%- block record_title -%}
<h1>{{ metadata.title }}</h1>
<p>{%- include "invenio_app_rdm/records/details/creators.html" %}</p>
{%- endblock record_title -%}
{%- block record_content -%}
<p>{%- include "invenio_app_rdm/records/details/contributors.html" %}</p>
<p>{%- include "invenio_app_rdm/records/details/doi.html" %}</p>
{%- include "invenio_app_rdm/records/details/subjects.html" %}
<div class="top-padded">
{%- include "invenio_app_rdm/records/details/description.html" %}
</div>
<div class="top-padded">
{%- include "invenio_app_rdm/records/details/licenses.html" %}
</div>
{%- endblock record_content -%}
{# files #}
{%- block record_files -%}
{%- if record.files.enabled -%}
{%- if permissions.can_read_files -%}
{# record has files AND user can see files #}
{%- set files = files|order_entries %}
{%- if files|has_previewable_files -%}
{%-set preview_file = files|select_preview_file(default_preview=record.files.default_preview) %}
{{ preview_file_box(preview_file, pid, is_preview, record) }}
{%- endif -%}
{{ file_list_box(files, pid, is_preview, record) }}
{% else %}
{# record has files BUT user cannot see files #}
<div class="panel-spacing">
<div class="ui accordion panel {{ record.ui.access_status.id }}" id="preview" href="#collapsablePreview">
<div class="active title panel-heading {{ record.ui.access_status.id }}">
{{ _("Files") }}
<i class="angle down icon"></i>
</div>
<div id="collapsablePreview" class="active content">
<div class="ui {{ record.ui.access_status.message_class }} message file-box-message">
<i class="ui {{ record.ui.access_status.icon }} icon"></i><b>{{ record.ui.access_status.title_l10n }}</b>
<p>{{ record.ui.access_status.description_l10n }}</p>
{% if record.access.embargo.reason %}
<p>{{_("Reason")}}: {{record.access.embargo.reason}}</p>
{% endif%}
</div>
</div>
</div>
</div>
{%- endif %}
{%- endif %}
{%- endblock record_files -%}
{%- block record_details -%}
{# More details #}
<div class="top-padded">
{%- include "invenio_app_rdm/records/details/details.html" %}
</div>
{%- endblock record_details -%}
{%- block record_footer -%}
<div class="ui grid">
<div class="two column row top-bottom-padded font-small">
<div class="four wide column">
<p><b>Upload information</b></p>
</div>
<div class="twelve wide column">
<span class="label text-muted">
<b>Created:</b> {{ record.ui.created_date_l10n_long }} | <b>Modified:</b> {{ record.ui.updated_date_l10n_long }}
</span>
</div>
</div>
</div>
{%- endblock record_footer -%}
{%- block jump -%}
<div class="ui grid">
<div class="centered row" id="jump-btn">
<a style="cursor: pointer;">
<span class="ui button">
<i class="arrow alternate circle up outline icon"></i>Jump up</span>
</a>
</div>
</div>
{%- endblock jump -%}
{%- endblock record_body %}
</div>
<div class="five wide column">
{% block record_sidebar %}
{%- include "invenio_app_rdm/records/details/side_bar.html" %}
{% endblock record_sidebar %}
</div>
</div>
</div>
</div>
{%- endblock page_body %}
{%- block javascript %}
{{ super() }}
{{ webpack['invenio-app-rdm-landing-page.js'] }}
{# Communities management -- TODO include again when communities are ready #}
{# {{ webpack['invenio-communities-records.js'] }} #}
{{ webpack['previewer_theme.js'] }}
{%- endblock javascript %}

View File

@@ -15,7 +15,7 @@
<a href="{{creators.identifiers.orcid|pid_url('orcid')}}" target="_blank" ><img class="inline-orcid" src="{{ url_for('static', filename='extra/orcid.png')}}" /></a> <a href="{{creators.identifiers.orcid|pid_url('orcid')}}" target="_blank" ><img class="inline-orcid" src="{{ url_for('static', filename='extra/orcid.png')}}" /></a>
{%- endif %} {%- endif %}
<span class="text-muted" {% if creators.affiliations %} {% for affiliation in creators.affiliations %} data-toggle="tooltip" title="{{affiliation.name}}" {%- endfor %} {% endif %}>{{creators.person_or_org.name}}</span> <span class="text-muted" {% if creators.affiliations %} {% for affiliation in creators.affiliations %} data-tooltip="{{affiliation.name}}" data-inverted="" {%- endfor %} {% endif %}>{{creators.person_or_org.name}}</span>
{% if not loop.last %}; {% endif %} {% if not loop.last %}; {% endif %}
{%- endfor %} {%- endfor %}

View File

@@ -1,116 +1,99 @@
{# {#
Copyright (C) 2020-2021 Graz University of Technology. Copyright (C) 2020-2023 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more modify it under the terms of the MIT License; see LICENSE file for more
details. details.
#} #}
{% set options = [
{
"key": "records",
"text": _("All"),
"value": url_for("invenio_search_ui.search"),
"title": "repo",
},{
"key": "rdm",
"text": _("Research Results"),
"value": "/records/search",
"title": "Research Data",
},{
"key": "marc21",
"text": _("Publications"),
"value": url_for("invenio_records_marc21.search"),
"title": "publication",
},{
"key": "lom",
"text": _("Educational Resources"),
"value": url_for("invenio_records_lom.search"),
"title": "oer",
}
]
%}
<div class="ui container"> <div class="ui container">
<div class="short-menu" id="all-menu-top-table"> <div class="short-menu" id="all-menu-top-table">
<div class="short-menu-left"> <div class="short-menu-left">
<div id="all-menu-top-left-item"> <div id="all-menu-top-left-item">
<div class="short-menu-left-search"> <div class="short-menu-left-search">
{%- if config.I18N_LANGUAGES %} <div style="display: inline-block;">
<div class="short-menu-left-lang" style="margin-right:10px; font-size:18px;"> <div class="item p-0 search-bar rel-mr-1">
{%- for l in current_i18n.get_locales() %} <div id="header-search-bar" data-options='{{ options | tojson }}'></div>
{%- if current_i18n.language != l.language %} </div>
<a
href="{{ url_for('invenio_i18n.set_lang', lang_code=l.language) }}" class="no-decoration">{{ l.get_display_name().upper() [0:2]}}</a>
{%- endif %}
{%- endfor %}
</div> </div>
{%- endif %}
<div class="search-icon-header"> <div class="short-menu-left-lang">
<a href="{{url_for('invenio_search_ui.search')}}" class="no-decoration"> {%- for l in current_i18n.get_locales() %}
<svg class="short-menu-icon" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" {%- if current_i18n.language != l.language %}
xmlns="http://www.w3.org/2000/svg" height="26.015" width="26.015" version="1.1" <a href="{{ url_for("invenio_i18n.set_lang", lang_code=l.language) }}"
xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" class="no-decoration">
viewBox="0 0 26.01515 26.01515"> {{ l.get_display_name().upper()[0:2] }}
<g stroke-miterlimit="10" transform="translate(1,1)"> </a>
<circle cy="8.5" cx="8.5" r="8" style="stroke-miterlimit:10;stroke-width:2"></circle> {%- endif %}
<path style="stroke-width:2;stroke-miterlimit:10;stroke-linecap:round" d="m14.156 14.156 9.344 9.344"> {%- endfor %}
</path>
</g>
</svg>
</a>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="short-menu-right"> <div class="short-menu-right">
{%- block navbar_right %} {%- block navbar_right %}
{%- include config.THEME_HEADER_LOGIN_TEMPLATE %} {%- include config.THEME_HEADER_LOGIN_TEMPLATE %}
{%- endblock navbar_right %} {%- endblock navbar_right %}
</div> </div>
</div> </div>
<!----END MENU-------------------------------------------------------------> <!----END MENU------------------------------------------------------------->
<div class="ui grid" id="main-logo"> <div class="ui grid" id="main-logo">
<!--Left--> <!-- Left -->
<div class="left floated left aligned six wide column" id="repo-logo"> <div class="left floated left aligned six wide column" id="repo-logo">
<div class="inline-elements"> <div class="inline-elements">
<div class="repo-img"> <div class="repo-img">
<img height="51.862" src="{{ url_for('static', filename='images/library_logo.png')}}"> <img height="51.862" src="{{ url_for("static", filename="images/library_logo.png")}}">
</div> </div>
<div class="affiliation-text"> <div class="affiliation-text">
<a title="Home" href="{{url_for('invenio_theme_tugraz.index')}}" class="no-decoration"> <a title="Home" href="{{url_for("invenio_theme_tugraz.index")}}" class="no-decoration">
TU GRAZ {{ _("TU GRAZ") }}
<br> <br>
{{_ ("REPOSITORY")}} {{ _("REPOSITORY") }}
<br> <br>
{{_ ("LIBRARY & ARCHIVES")}} {{ _("LIBRARY & ARCHIVES") }}
</a> </a>
</div> </div>
</div> </div>
</div> </div>
<!--Right--> <!-- Right -->
<div class="right floated right aligned six wide column"> <div class="right floated right aligned six wide column">
<div class="affiliation-logo" id="int-header-logo"> <div class="affiliation-logo" id="int-header-logo">
<a href="https://www.tugraz.at" title="TU Graz Home" target="_blank" class="no-decoration"> <a href="https://www.tugraz.at" title="TU Graz Home" target="_blank" class="no-decoration">
<div class="affiliation-logo-claim"> <div class="affiliation-logo-claim">
<div class="affiliation-logo-claim-single">{{_ ("SCIENCE")}}</div> <div class="affiliation-logo-claim-single">{{ _("SCIENCE") }}</div>
<div class="affiliation-logo-claim-single">{{_ ("PASSION")}}</div> <div class="affiliation-logo-claim-single">{{ _("PASSION") }}</div>
<div class="affiliation-logo-claim-single">{{_ ("TECHNOLOGY")}}</div> <div class="affiliation-logo-claim-single">{{ _("TECHNOLOGY") }}</div>
</div> </div>
<svg id="int-header-logo-img" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" {%- include "invenio_theme_tugraz/tu_graz_logo.svg" %}
xmlns="http://www.w3.org/2000/svg" xml:space="preserve" height="51.862" width="141.1" version="1.1"
xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"
viewBox="0 0 141.10001 51.862499">
<g transform="matrix(1.25 0 0 -1.25 0 51.862)">
<g transform="scale(.1)">
<path d="m0 103.73h207.45v207.46l-207.45 0.01v-207.47z"></path>
<path d="m228.19 103.73h207.46v207.46h-207.46v-207.46z"></path>
<path d="m456.41 103.73h207.44v207.46h-207.44v-207.46z"></path>
<path d="m103.72 0h207.47v207.46h-207.47v-207.46z"></path>
<path d="m352.68 207.46h207.44v207.46h-207.44v-207.46z"></path>
<path style="fill:#231f20"
d="m751.04 277.91h-66.426v33.195h171.19v-33.195h-66.407v-173.73h-38.359v173.73"></path>
<path style="fill:#231f20"
d="m1048.3 180.22c0-12.461-2.25-23.711-6.72-33.75-4.5-10.039-10.61-18.555-18.36-25.567-7.76-7.031-16.9-12.421-27.503-16.21-10.605-3.809-22.109-5.7036-34.551-5.7036-12.422 0-23.945 1.8946-34.551 5.7036-10.605 3.789-19.824 9.179-27.656 16.21-7.851 7.012-13.984 15.528-18.34 25.567-4.394 10.039-6.582 21.289-6.582 33.75v130.89h38.379v-129.59c0-5.039 0.801-10.351 2.442-15.898 1.64-5.547 4.336-10.664 8.125-15.332s8.789-8.516 15.039-11.523c6.211-3.008 13.926-4.512 23.144-4.512 9.199 0 16.914 1.504 23.145 4.512 6.23 3.007 11.25 6.855 15.039 11.523 3.77 4.668 6.48 9.785 8.12 15.332 1.63 5.547 2.45 10.859 2.45 15.898v129.59h38.38v-130.89">
</path>
<path style="fill:#231f20"
d="m832.56 75.664c-7.597 3.2812-17.46 4.8632-25.332 4.8632-22.929 0-35.605-14.434-35.605-33.184 0-18.613 12.383-32.637 33.34-32.637 5.351 0 9.59 0.5274 12.969 1.3086v23.867h-20.84v14.414h39.687v-49.297c-10.41-2.6172-21.25-4.707-31.816-4.707-31.797 0-53.906 14.805-53.906 45.742 0 31.348 20.566 48.906 53.906 48.906 11.406 0 20.41-1.4453 28.867-3.8086l-1.27-15.469">
</path>
<path style="fill:#231f20"
d="m856.2 69.375h16.758v-15.332h0.293c0.84 6.289 8.574 16.914 19.824 16.914 1.836 0 3.828 0 5.782-0.5273v-17.715c-1.68 0.918-5.059 1.4454-8.457 1.4454-15.333 0-15.333-17.832-15.333-27.52v-24.785h-18.867v67.52">
</path>
<path style="fill:#231f20"
d="m913.75 65.84c7.324 3.1446 17.187 5.1172 25.215 5.1172 22.09 0 31.23-8.5351 31.23-28.457v-8.6523c0-6.8165 0.156-11.934 0.293-16.914 0.137-5.1172 0.41-9.8242 0.84-15.078h-16.602c-0.703 3.5352-0.703 8.0078-0.839 10.098h-0.293c-4.36-7.4618-13.81-11.661-22.38-11.661-12.793 0-25.332 7.207-25.332 20.059 0 10.078 5.195 15.976 12.383 19.258 7.187 3.2812 16.464 3.9453 24.355 3.9453h10.41c0 10.879-5.195 14.551-16.328 14.551-8.008 0-16.035-2.8907-22.363-7.3438l-0.586 15.078zm22.11-52.715c5.782 0 10.274 2.3633 13.223 6.0352 3.105 3.8086 3.945 8.6523 3.945 13.906h-8.164c-8.437 0-20.957-1.3086-20.957-11.68 0-5.7617 5.195-8.2617 11.953-8.2617">
</path>
<path style="fill:#231f20"
d="m985.69 69.375h57.422v-14.414l-36.04-39.473h37.31v-13.633h-60.235v14.297l36.715 39.59h-35.172v13.633">
</path>
<path d="m1059.6 0h69.102v69.121h-69.102v-69.121z"></path>
</g>
</g>
</svg>
</a> </a>
</div> </div>
</div> </div>

View File

@@ -0,0 +1,130 @@
{#
Copyright (C) 2020-2023 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more
details.
#}
{%- extends config.INVENIO_THEME_TUGRAZ_BASE_TEMPLATE %}
{%- set active_dashboard_menu_item = "overview" %}
{%- set title = _("Overview") %}
{% block javascript %}
{{ super() }}
{{ webpack['invenio-theme-tugraz-unlock.js'] }}
{% endblock javascript %}
{%- block page_body %}
{%- block user_dashboard_header %}
{% include "invenio_app_rdm/users/header.html" %}
{%- endblock user_dashboard_header %}
<div class="ui container rel-mt-2">
<h2>Overview</h2>
<div class="ui five column stackable grid overview">
{% if is_tugraz_authenticated %}
{# 3 columns: Research-Uploads, Communities, and Requests #}
<div class="column">
<div class="ui segment" style="height: 480px">
<h2>{{ _("Research Results") }}</h2>
<a class="ui left floated image" href="/me/uploads">
<img width="400px" alt="Research Results" src="{{ url_for("static", filename="images/diamond.svg") }}">
</a>
<div class="ui right floated text">
{{ _("Overview: Description for research results") }}
</div>
</div>
</div>
<div class="column">
<div class="ui segment" style="height: 480px">
<h2>{{ _("Communities") }}</h2>
<a class="ui left floated image" href="/me/communities">
<img width="400px" alt="Communities" src="{{ url_for("static", filename="images/group-discussion.svg") }}">
</a>
<div>
{{ _("Overview: Description of Communities") }}
</div>
</div>
</div>
<div class="column">
<div class="ui segment" style="height: 480px">
<h2>{{ _("Requests") }}</h2>
<a class="ui left floated image" href="/me/requests">
<img width="400px" alt="Requests" src="{{ url_for("static", filename="images/umbrella.svg") }}">
</a>
<div>
{{ _("Overview: Description of Requests") }}
</div>
</div>
</div>
{% else %} {# not is_tugraz_authenticated #}
{# 1 column: greyed out Research-Uploads #}
<div class="column">
{# a modal's HTML can be placed anywhere, so I placed it here, right before it's used #}
<div class="ui small modal" id="tugraz-unlock-modal">
<div class="header">{{ _("On unlocking research uploads") }}</div>
<div class="content">
<p>
{{ _('To ensure a well-curated repository, new users need to get unlocked
before being allowed to upload. Once unlocked, you can upload your research,
request its inclusion in a community, generate a DOI for it, and publish it.') }}
{# TODO: extra lines on policy about who gets accepted how for Research-Uploads #}
</p>
<div id="anchor-unlock-form"> {# will be replaced with ZammadForm when generating it #}
<button class="ui fluid button" onclick="
$('#tugraz-unlock-modal')
.modal('hide')"
>Got it!</button>
<button id="generate-unlock-form" class="ui fluid button">
{{ _("Request unlocking") }}
</button>
</div>
</div>
</div>
{# actual column contents start here #}
<div class="ui disabled segment" style="height: 480px">
<h2>{{ _("Research Results") }}</h2>
<div class="ui left floated image" style="cursor: pointer" onclick="
$('#tugraz-unlock-modal')
.modal('show')"
>
<img width="400px" alt="Research Results" src="{{ url_for("static", filename="images/diamond.svg") }}">
</div>
<div class="ui right floated text">
{{ _("Overview: Description for research results") }}
</div>
</div>
</div>
{% endif %}
{% if can_view_marc21 %}
<div class="column">
<div class="ui segment" style="height: 480px">
<h2>{{ _("Publications") }}</h2>
<a class="ui left floated image" href="/publications/uploads">
<img width="400px" alt="Publications" src="{{ url_for("static", filename="images/library-book-svgrepo-com.svg") }}">
</a>
<div>
{{ _("Overview: Description for publications") }}
</div>
</div>
</div>
{% endif %}
<div class="column">
<div class="ui segment" style="height: 480px">
<h2>{{ _("Educational Resources") }}</h2>
<a class="ui left floated image" href="/oer/uploads">
<img width="400px" alt="Open Educational Resources" src="{{ url_for("static", filename="images/play.svg") }}">
</a>
<div>
{{ _("Overview: Description for open educational resources") }}
</div>
</div>
</div>
</div>
</div>
{%- endblock %}

View File

@@ -0,0 +1,91 @@
{#
Copyright (C) 2020-2023 Graz University of Technology.
invenio-theme-tugraz is free software; you can redistribute it and/or
modify it under the terms of the MIT License; see LICENSE file for more
details.
#}
<!---Recent uploads-->
<div class="ten wide column random-records-frontpage">
<h2>{{ _("Recent uploads") }}</h2>
{% if not records %}
<div class="ui centered grid">
<p style="font-size: medium;">
{{ _("There are no public records to show.") }}
</p>
</div>
{% endif %}
{%- for r in records %}
{%- set creation_date = r.created | from_isodatetime -%}
{%- set record_url = r.original.view %}
<article>
<div class="badges">
{# Publication date/Version badge #}
<span class="ui label blue" data-tooltip="{{ _("Publication date") }}" data-inverted="">
{{ r.created_date_l10n_long }}
</span>
{# Resource type badge #}
{% if r.metadata.types | length > 0%}
<span class="ui label grey" data-tooltip="{{ _("Resource type") }}" data-inverted="">
{{ r.metadata.types[0] }}
</span>
{% endif %}
<span class="ui label access-status {{ r.access_status.id }}"
data-tooltip="{{ r.access_status.description_l10n }}"
data-inverted="">
<i class="icon {{ r.access_status.icon }}"></i>
{{ r.access_status.title_l10n }}
</span>
<span class="ui label schema" data-tooltip="Schema Type" data-inverted="">
{{ r.original.schema_l10n }}
</span>
</div>
<h4>
<a href="{{ record_url }}" class="no-decoration">
{{ r.metadata.titles[0] }}
</a>
</h4>
<p>
{%- for creator in r.metadata.creators %}
<span>{{ creator }}</span>
{%- endfor %}
</p>
<p class="hidden-xs">
<a href="{{record_url}}" class="no-decoration">
{{ r.metadata.descriptions | join(" ") | striptags | truncate(300) }}
</a>
</p>
<div class="ui">
{%- for subject in r.metadata.subjects %}
<span class="ui tiny label">{{ subject }}</span>
{%- endfor %}
<div>
<small>
{#
{% trans user=userprofile, date=creation_date | dateformat("long")%}
Uploaded on {{date}}
{% endtrans %}
#}
</small>
</div>
</div>
</article>
{%- endfor %}
{% if records %}
<div class="ui centered grid">
<a class="ui button more" href="{{ url_for("invenio_search_ui.search") }}">{{ _("More") }}</a>
</div>
{%- endif %}
</div>

View File

@@ -0,0 +1,32 @@
<svg id="int-header-logo-img" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://www.w3.org/2000/svg" xml:space="preserve" height="51.862" width="141.1" version="1.1"
xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"
viewBox="0 0 141.10001 51.862499">
<g transform="matrix(1.25 0 0 -1.25 0 51.862)">
<g transform="scale(.1)">
<path d="m0 103.73h207.45v207.46l-207.45 0.01v-207.47z"></path>
<path d="m228.19 103.73h207.46v207.46h-207.46v-207.46z"></path>
<path d="m456.41 103.73h207.44v207.46h-207.44v-207.46z"></path>
<path d="m103.72 0h207.47v207.46h-207.47v-207.46z"></path>
<path d="m352.68 207.46h207.44v207.46h-207.44v-207.46z"></path>
<path style="fill:#231f20"
d="m751.04 277.91h-66.426v33.195h171.19v-33.195h-66.407v-173.73h-38.359v173.73"></path>
<path style="fill:#231f20"
d="m1048.3 180.22c0-12.461-2.25-23.711-6.72-33.75-4.5-10.039-10.61-18.555-18.36-25.567-7.76-7.031-16.9-12.421-27.503-16.21-10.605-3.809-22.109-5.7036-34.551-5.7036-12.422 0-23.945 1.8946-34.551 5.7036-10.605 3.789-19.824 9.179-27.656 16.21-7.851 7.012-13.984 15.528-18.34 25.567-4.394 10.039-6.582 21.289-6.582 33.75v130.89h38.379v-129.59c0-5.039 0.801-10.351 2.442-15.898 1.64-5.547 4.336-10.664 8.125-15.332s8.789-8.516 15.039-11.523c6.211-3.008 13.926-4.512 23.144-4.512 9.199 0 16.914 1.504 23.145 4.512 6.23 3.007 11.25 6.855 15.039 11.523 3.77 4.668 6.48 9.785 8.12 15.332 1.63 5.547 2.45 10.859 2.45 15.898v129.59h38.38v-130.89">
</path>
<path style="fill:#231f20"
d="m832.56 75.664c-7.597 3.2812-17.46 4.8632-25.332 4.8632-22.929 0-35.605-14.434-35.605-33.184 0-18.613 12.383-32.637 33.34-32.637 5.351 0 9.59 0.5274 12.969 1.3086v23.867h-20.84v14.414h39.687v-49.297c-10.41-2.6172-21.25-4.707-31.816-4.707-31.797 0-53.906 14.805-53.906 45.742 0 31.348 20.566 48.906 53.906 48.906 11.406 0 20.41-1.4453 28.867-3.8086l-1.27-15.469">
</path>
<path style="fill:#231f20"
d="m856.2 69.375h16.758v-15.332h0.293c0.84 6.289 8.574 16.914 19.824 16.914 1.836 0 3.828 0 5.782-0.5273v-17.715c-1.68 0.918-5.059 1.4454-8.457 1.4454-15.333 0-15.333-17.832-15.333-27.52v-24.785h-18.867v67.52">
</path>
<path style="fill:#231f20"
d="m913.75 65.84c7.324 3.1446 17.187 5.1172 25.215 5.1172 22.09 0 31.23-8.5351 31.23-28.457v-8.6523c0-6.8165 0.156-11.934 0.293-16.914 0.137-5.1172 0.41-9.8242 0.84-15.078h-16.602c-0.703 3.5352-0.703 8.0078-0.839 10.098h-0.293c-4.36-7.4618-13.81-11.661-22.38-11.661-12.793 0-25.332 7.207-25.332 20.059 0 10.078 5.195 15.976 12.383 19.258 7.187 3.2812 16.464 3.9453 24.355 3.9453h10.41c0 10.879-5.195 14.551-16.328 14.551-8.008 0-16.035-2.8907-22.363-7.3438l-0.586 15.078zm22.11-52.715c5.782 0 10.274 2.3633 13.223 6.0352 3.105 3.8086 3.945 8.6523 3.945 13.906h-8.164c-8.437 0-20.957-1.3086-20.957-11.68 0-5.7617 5.195-8.2617 11.953-8.2617">
</path>
<path style="fill:#231f20"
d="m985.69 69.375h57.422v-14.414l-36.04-39.473h37.31v-13.633h-60.235v14.297l36.715 39.59h-35.172v13.633">
</path>
<path d="m1059.6 0h69.102v69.121h-69.102v-69.121z"></path>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -8,212 +8,304 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: invenio-theme-tugraz 1.0.4\n" "Project-Id-Version: invenio-theme-tugraz 1.0.4\n"
"Report-Msgid-Bugs-To: mojib.wali@tugraz.at\n" "Report-Msgid-Bugs-To: mojib.wali@tugraz.at\n"
"POT-Creation-Date: 2021-05-10 10:36+0200\n" "POT-Creation-Date: 2024-02-02 10:08+0100\n"
"PO-Revision-Date: 2020-10-06 10:27+0200\n" "PO-Revision-Date: 2024-02-09 22:25+0100\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: \n"
"Language: de\n"
"Language-Team: de <LL@li.org>\n" "Language-Team: de <LL@li.org>\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Language: de\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n" "Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Generated-By: Babel 2.9.1\n" "Generated-By: Babel 2.9.1\n"
"X-Generator: Poedit 2.3.1\n"
#: invenio_theme_tugraz/config.py:14 invenio_theme_tugraz/config.py:63 #: invenio_theme_tugraz/config.py:13 invenio_theme_tugraz/config.py:60
msgid "TU Graz Repository" msgid "TU Graz Repository"
msgstr "TU Graz Repository" msgstr "TU Graz Repository"
#: invenio_theme_tugraz/config.py:66 #: invenio_theme_tugraz/config.py:63
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:30 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:24
msgid "Repository" msgid "Repository"
msgstr "Repository" msgstr "Repository"
#: invenio_theme_tugraz/config.py:91 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:12
msgid "German" #: invenio_theme_tugraz/views.py:70
msgstr "Deutsche" msgid "Overview"
msgstr "Übersicht"
#: invenio_theme_tugraz/views.py:76
msgid "My dashboard"
msgstr "Meine Übersicht"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/423.html:12
msgid "Locked"
msgstr "Locked"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/423.html:13
msgid "The resource that is being accessed is locked."
msgstr "Die angeforderte Ressource ist zurzeit gesperrt."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:26 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:26
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:26 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:34
msgid "Invenio" msgid "Invenio"
msgstr "Invenio" msgstr "Invenio"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:3 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:10
msgid "Good reasons to use the Repository of the TU Graz"
msgstr "Gute Gründe, das Repository der TU Graz zu nutzen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:13
msgid "Safe" msgid "Safe"
msgstr "Sicher" msgstr "Sicher"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:3 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:13
msgid "" msgid "Your research results are permanently available."
"your research is stored safely for the future in TU Graz library for as " msgstr "Ihre Forschungsergebnisse sind dauerhaft verfügbar."
"long as TU Graz library exists."
msgstr ""
"Ihre Forschung ist in der Bibliothek der TU Graz für die Zukunft "
"gespeichert,solange die Bibliothek der TU Graz existiert."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:4 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:14
msgid "Trusted" msgid "Trusted"
msgstr "Vertrauenswürdig" msgstr "Vertrauenswürdig"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:4 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:14
msgid "" msgid "A service from TU Graz, developed in cooperation with CERN."
"built and operated by CERN and OpenAIRE to ensure that everyone can join " msgstr "Ein Service der TU Graz, entwickelt in Kooperation mit CERN."
"in Open Science."
msgstr ""
"Aufgebaut und betrieben von CERN und OpenAIRE, um sicherzustellen, dass "
"jeder an Open Science teilnehmen kann."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:5 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:15
msgid "Citeable" msgid "Citeable"
msgstr "Zitierfähig " msgstr "Zitierfähig"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:5 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:15
msgid "" msgid "Every upload is assigned a Digital Object Identifier (DOI)."
"every upload is assigned a Digital Object Identifier (DOI), to make them " msgstr "Jedem Upload wird ein Digital Object Identifier (DOI) zugewiesen."
"citable and trackable."
msgstr ""
"Jeder Upload wird mit einem Digital Object Identifier (DOI) versehen,um "
"ihn zitierfähig und nachverfolgbar zu"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:6 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:16
msgid "No waiting time" msgid "No waiting time"
msgstr "Keine Wartezeit" msgstr "Keine Wartezeit"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:6 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:16
msgid "" msgid ""
"Uploads are made available online as soon as you hit publish, and your " "Uploads are made available online as soon as you hit publish. Your DOI is "
"DOI is registered within seconds." "registered within seconds."
msgstr "" msgstr ""
"Uploads stehen sofort nach drücken auf Veröffentlichen” zur Verfügung. " "Uploads sind online verfügbar, sobald Sie auf \"Veröffentlichen\" klicken. "
"Ihre DOI wird innerhalb von Sekunden registriert." "Ihre DOI wird innerhalb von Sekunden registriert."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:7 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:17
msgid "Open or closed" msgid "Open or closed"
msgstr "Offen oder geschlossen" msgstr "Offen oder geschlossen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:7 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:17
msgid "" msgid ""
"Share e.g. anonymized clinical trial data with only medical professionals" "You determine the visibility of your uploads. A restricted access mode is "
" via our restricted access mode." "possible."
msgstr "" msgstr ""
"Teilen Sie z.B. anonymisierte klinische Studiendaten nur mit " "Sie bestimmen die Sichtbarkeit Ihrer Uploads. Ein eingeschränkter "
"medizinischem Fachpersonal über unseren eingeschränkten Zugriffsmodus." "Zugriffsmodus ist möglich."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:8 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:18
msgid "Versioning" msgid "Versioning"
msgstr "Versionierung" msgstr "Versionierung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:8 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:18
msgid "Easily update your dataset with our versioning feature." msgid "Easily update your dataset with the versioning feature."
msgstr "Einfaches Updaten ihrer Datensätze mit unserer Versionierung." msgstr ""
"Aktualisieren Sie Ihren Datensatz ganz einfach mit der "
"Versionierungsfunktion."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:9 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
msgid "Usage statisics" #, fuzzy
#| msgid "Usage statisics"
msgid "Usage statistics"
msgstr "Nutzungsstatistiken" msgstr "Nutzungsstatistiken"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:9 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
msgid "All uploads display standards compliant usage statistics" #, fuzzy
msgstr "Alle Uploads entsprechen den Standards der Nutzungsstatistiken." #| msgid "All uploads display standards compliant usage statistics."
msgid "All uploads display standards compliant usage statistics. "
msgstr "Alle Uploads zeigen standardkonforme Nutzungsstatistiken an."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:34 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:88
msgid "More"
msgstr "Mehr"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:10
msgid "Need help?"
msgstr "Brauchen Sie Hilfe?"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:15
msgid "Contact us"
msgstr "Kontaktieren Sie uns"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:20
msgid "We can help with:"
msgstr "Dabei können wir helfen:"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:24
msgid "Upload your research results, software, preprints, etc."
msgstr "Hochladen Ihrer Forschungsergebnisse, Software, Preprints usw."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:25
msgid "Increase upload limit beyond our default policy of 10GB."
msgstr "Upload-Limit Erhöhung über unsere Standardrichtlinie von 10 GB hinaus."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:26
#, fuzzy
#| msgid "Create contact with data stewards."
msgid "Establish contact with data stewards."
msgstr "Kontakt mit den Data Stewards herstellen."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:27
msgid "Find individual solutions."
msgstr "Individuelle Lösungen finden."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:29
msgid "Documentation" msgid "Documentation"
msgstr "Dokumentation" msgstr "Dokumentation"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:39 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:36
msgid "Reference Guide" msgid "Reference Guide"
msgstr "Handbuch" msgstr "Handbuch"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:44 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:43
msgid "Search Guide" msgid "Search Guide"
msgstr "Suchanleitung" msgstr "Suchanleitung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:49 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:50
msgid "Data Protection" msgid "Data Protection"
msgstr "Datenschutzerklärung" msgstr "Datenschutzerklärung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:54 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:57
msgid "Terms and Conditions" msgid "Terms and Conditions"
msgstr "Nutzungsbedingungen" msgstr "Nutzungsbedingungen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:58 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:65
msgid "Impressum"
msgstr "Imprint"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:62
msgid "Feedback"
msgstr "Feedback"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:71
msgid "Features" msgid "Features"
msgstr "Features" msgstr "Features"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:73 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:68
msgid "Scalability" msgid "Scalability"
msgstr "Skalierbarkeit" msgstr "Skalierbarkeit"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:75 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:69
msgid "Institutional integration" msgid "Institutional integration"
msgstr "Institutionelle Einbindung" msgstr "Institutionelle Einbindung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:77 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:70
msgid "Next Generation Repository" msgid "Next Generation Repository"
msgstr "Repositorium der nächsten Generation" msgstr "Repositorium der nächsten Generation"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:80 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:71
msgid "Repository Profiles" msgid "Repository Profiles"
msgstr "Repositorienprofile" msgstr "Repositorienprofile"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:82 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:72
msgid "Resilient" msgid "Resilient"
msgstr "Resilient, widerstandsfähig" msgstr "Resilient, widerstandsfähig"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:89 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:78
msgid "Connected Services" msgid "Connected Services"
msgstr "Verbundene Services " msgstr "Verbundene Services"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:93 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:82
msgid "PURE" msgid "PURE"
msgstr "PURE" msgstr "PURE"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:96 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:88
msgid "CampusOnline" msgid "CampusOnline"
msgstr "CampusOnline" msgstr "CampusOnline"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:99 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:94
msgid "Research Data Management" msgid "Research Data Management"
msgstr "Forschungsdatenmanagement" msgstr "Forschungsdatenmanagement"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:106 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:101
msgid "Accessibility" msgid "Accessibility"
msgstr "Barrierefreiheit" msgstr "Barrierefreiheit"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:107 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:104
msgid "Tipp:" msgid "Tipp:"
msgstr "Tipp" msgstr "Tipp:"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:107 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:107
msgid "Use Ctrl + and Crtl -" msgid "Use Ctrl + and Crtl -"
msgstr "Verwenden Sie Strg+ und Strg-" msgstr "Verwenden Sie Strg+ und Strg-"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:107 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:110
msgid "to change the font size." msgid "to change the font size."
msgstr "Um die Schriftgröße zu ändern." msgstr "Um die Schriftgröße zu ändern."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:117 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:13
#, python-format #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:17
msgid "" #: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:26
"<strong>Powered by</strong>\n" msgid "Research Results"
" <a href=\"%(invenio_rdm)s\" target=\"_blank\">" msgstr "Forschungsergebnisse"
msgstr ""
"<strong>Powered by</strong> <a href=\"%(invenio_rdm)s\" "
"target=\"_blank\">"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:127 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:16
#, python-format #, fuzzy
msgid "" #| msgid "Frontpage: Description for research result"
"<strong>Enabled by</strong>\n" msgid "Frontpage: Description for research results"
" <a href=\"%(fair_data)s\" target=\"_blank\">"
msgstr "" msgstr ""
"<strong>Enabled by</strong> <a href=\"%(fair_data)s\" " "Forschungsergebnisse ist der Sammelbegriff für alle Ergebnisse eines "
"target=\"_blank\">" "Forschungsprojekts. Sie beschreiben die Daten, den Quellcode und alle "
"digitalen Objekte, auf denen die Publikationsergebnisse beruhen. Dazu "
"gehören auch die Werkzeuge, die zur Erhebung und Verarbeitung der "
"Forschungsdaten verwendet wurden. Die folgenden Links bieten die "
"Möglichkeit, Forschungsergebnisse zum Repository hinzuzufügen, aber auch "
"nach den Ergebnissen anderer Personen zu suchen."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:26
msgid "Search for research results"
msgstr "Suchen Sie nach Forschungsergebnissen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:29
msgid "Upload research results"
msgstr "Erstellen Sie Forschungsergebnisse"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:36
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:22
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:59
msgid "Publications"
msgstr "Publikationen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:39
msgid "Frontpage: Description for publications"
msgstr ""
"Der Bereich Publikationen umfasst Zitate aus verschiedenen Bereichen. Open-"
"Access-Publikationen werden von Pure importiert. Veröffentlichungen von Open-"
"Access-Verlagen werden freigegeben. Digitale Kopien werden angeboten. Die "
"Veröffentlichungen der Universität werden einem breiten Publikum zugänglich "
"gemacht. Der folgende Link bietet die Möglichkeit, unter den Publikationen "
"zu suchen."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:49
msgid "Search for publications"
msgstr "Suchen Sie nach Publikationen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:56
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:27
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:70
msgid "Educational Resources"
msgstr "Bildungsinhalte"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:59
msgid "Frontpage: Description for open educational resources"
msgstr ""
"In diesem Bereich können Sie Ihre offen lizenzierten Bildungsinhalte (OER, "
"Open Educational Resources) hochladen und nach Bildungsressourcen suchen, "
"die von anderen hochgeladen wurden. Ihre hochgeladenen Inhalte werden "
"automatisch auf den <a href=\"https://oerhub.at\" target=\"_blank\">OERhub."
"at</a> übertragen. Um etwas in diesem Bereich hochzuladen, ist ein OER-"
"Zertifikat und die Aktivierung Ihres Accounts erforderlich."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:69
msgid "Search for educational resourses"
msgstr "Suchen Sie nach Bildungsinhalten"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:72
msgid "Upload educational resources"
msgstr "Erstellen Sie neue Bildungsinhalte"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:61 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:61
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:11 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:11
@@ -225,108 +317,103 @@ msgstr "Testumgebung"
msgid "This is the test instance of the TU Graz Repository." msgid "This is the test instance of the TU Graz Repository."
msgstr "Dies ist die Testumgebung des TU Graz Repositorys." msgstr "Dies ist die Testumgebung des TU Graz Repositorys."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:39 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:40
msgid "Home" msgid "Home"
msgstr "Startseite" msgstr "Startseite"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:27 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:46
msgid "Type and press enter to search" #: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:37
msgstr "Suchbegriff eingeben und “Enter” drücken (?)" msgid "Communities"
msgstr "Communities"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:43 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:49
msgid "Recent uploads" msgid "Dashboard"
msgstr "Kürzlich hochgeladene Dateien" msgstr "Übersicht"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:47 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:12
msgid "There are no public records to show." msgid "All"
msgstr "Es sind keine öffentlich zugänglichen Datensätze vorhanden." msgstr "Alle"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:61 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:78
msgid "Publication date" msgid "TU GRAZ"
msgstr "Datum der Veröffentlichung" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:66 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:80
msgid "Resource type"
msgstr "Art der Veröffentlichung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:104
#, python-format
msgid ""
"\n"
" Uploaded on %(date)s\n"
" "
msgstr "Hochgeladen am %(date)s\n"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:131
msgid "More"
msgstr "Mehr"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:141
msgid "Need help?"
msgstr "Brauchen Sie Hilfe?"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:145
msgid "Contact us"
msgstr "Kontaktiere uns"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:150
msgid "prioritizes all Recent uploads."
msgstr "reiht die neuesten Uploads vor."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:153
msgid "We can help with:"
msgstr "Dabei können wir helfen:"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:158
msgid "Uploading your research data, software, preprints, etc."
msgstr "Hochladen Ihrer Forschungsdaten, Software, Preprints usw."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:159
msgid "One-on-one with"
msgstr "One-on-one mit"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:159
msgid "supporters."
msgstr "Unterstützern"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:160
msgid "Quota increases beyond our default policy."
msgstr "Quota Erhöhungen über unsere Standard Policy hinaus."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:161
msgid "Scripts for automated uploading of larger datasets."
msgstr "Skripte zum automatisierten Hochladen größerer Datensätze."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:166
msgid "Why use"
msgstr "Warum"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:66
#, fuzzy
msgid "REPOSITORY" msgid "REPOSITORY"
msgstr "Repository" msgstr "Repository"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:68 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:82
msgid "LIBRARY & ARCHIVES" msgid "LIBRARY & ARCHIVES"
msgstr "Bibliothek und Archiv" msgstr "Bibliothek und Archiv"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:78 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:92
msgid "SCIENCE" msgid "SCIENCE"
msgstr "WISSEN" msgstr "WISSEN"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:79 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:93
msgid "PASSION" msgid "PASSION"
msgstr "TECHNIK" msgstr "TECHNIK"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:80 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:94
msgid "TECHNOLOGY" msgid "TECHNOLOGY"
msgstr "LEIDENSCHAFT" msgstr "LEIDENSCHAFT"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:31
#, fuzzy
#| msgid "Overview: Description for research result"
msgid "Overview: Description for research results"
msgstr "Die Forschungsergebnisse bilden die Grundlage für Veröffentlichungen."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:42
msgid "Overview: Description of Communities"
msgstr ""
"Bauen Sie eine Gemeinschaft von Einzelpersonen auf, um die Plattform "
"weiterzuführen und so Datensätze für Ihre Institution, Ihr Projekt, Ihr "
"Thema oder Ihre Veranstaltung zu organisieren, zu kuratieren und gemeinsam "
"zu bearbeiten."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:48
msgid "Requests"
msgstr "Anfragen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:53
msgid "Overview: Description of Requests"
msgstr ""
"Prüfen Sie auf eingehende Benachrichtigungen und Gemeinschaftsaufgaben oder -"
"anfragen."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:64
msgid "Overview: Description for publications"
msgstr ""
"Die Veröffentlichungen sind das zusammengefasste Ergebnis der Forschung."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:75
msgid "Overview: Description for open educational resources"
msgstr ""
"Veröffentlichen Sie hier Ihre offen lizenzierten Bildungsmaterialien (OER), "
"damit andere sie finden und weiternutzen können."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:11
msgid "Recent uploads"
msgstr "Kürzlich hochgeladene Dateien"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:16
msgid "There are no public records to show."
msgstr "Es sind keine öffentlich zugänglichen Datensätze vorhanden."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:28
msgid "Publication date"
msgstr "Datum der Veröffentlichung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:34
msgid "Resource type"
msgstr "Art der Veröffentlichung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:8 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:8
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:59 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:82
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:78 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:82
msgid "Sign up" msgid "Sign up"
msgstr "Registrierung" msgstr "Registrieren"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:15 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:15
msgid "Log in" msgid "Log in"
@@ -336,32 +423,36 @@ msgstr "Einloggen"
msgid "Sign out" msgid "Sign out"
msgstr "Ausloggen" msgstr "Ausloggen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:23 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:24
msgid "Log in to Repository" msgid "Log in to Repository"
msgstr "Anmelden" msgstr "Anmelden"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:29 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:38
#, python-format #, python-format
msgid " Log in with %(type)s" msgid "Log in with %(title)s"
msgstr "Einloggen mit" msgstr "Einloggen mit %(title)s"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:33 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:46
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:52 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:47
msgid "Or" msgid "Or"
msgstr "Oder" msgstr "Oder"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:45 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:57
msgid "Log in with repository credentials"
msgstr "Loggen Sie sich mit Ihrem Repository-Account ein"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:67
msgid "Log In" msgid "Log In"
msgstr "Einloggen" msgstr "Einloggen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:58 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:81
#, python-format #, python-format
msgid "New to %(sitename)s?" msgid "New to %(sitename)s?"
msgstr "Neu im %(sitename)s?" msgstr "Neu im %(sitename)s?"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:68 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:91
msgid "Forgot password?" msgid "Forgot password?"
msgstr "Passwort vergessen" msgstr "Passwort vergessen?"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:20 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:20
msgid "Create an Account" msgid "Create an Account"
@@ -376,17 +467,16 @@ msgid ""
"Uploads get a Digital Object Identifier (DOI) to make them easily and " "Uploads get a Digital Object Identifier (DOI) to make them easily and "
"uniquely citeable." "uniquely citeable."
msgstr "" msgstr ""
"Uploads erhalten eine DOI und werden damit leichtauffindbar und " "Uploads erhalten eine DOI und werden damit leichtauffindbar und zitierfähig."
"zitierfähig."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:28 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:28
msgid "Communities." msgid "Communities."
msgstr "Communities" msgstr "Communities."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:30 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:30
msgid "" msgid ""
"Accept or reject uploads to your own community (e.g workshops, EU " "Accept or reject uploads to your own community (e.g workshops, EU projects, "
"projects, institutions or entire disciplines)." "institutions or entire disciplines)."
msgstr "" msgstr ""
"Annehmen oder Ablehnen von Uploads in Ihrer eigenen Community (z.B. " "Annehmen oder Ablehnen von Uploads in Ihrer eigenen Community (z.B. "
"workshop, EU-Projekt, Forschungseinrichtung, Disziplin)" "workshop, EU-Projekt, Forschungseinrichtung, Disziplin)"
@@ -397,48 +487,120 @@ msgstr "Vertrauenswürdiges Forschungsdatenmanagement"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:34 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:34
msgid "" msgid ""
"Built on top of TU Graz expertise in managing of the research data from " "Built on top of TU Graz expertise in managing of the research data from the "
"the Graz University of Technology." "Graz University of Technology."
msgstr "Gebaut basierend auf Expertise derTU Graz im Bereich Data Management" msgstr "Gebaut basierend auf Expertise der TU Graz im Bereich Data Management."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:48 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:44
msgid "Sign up with TUGRAZ " msgid "Sign up with TUGRAZ"
msgstr "Mit Ihrem TUGonline-Account einloggen" msgstr "Mit Ihrem TUGonline-Account registrieren"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/deposit/deposit.html:10 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:61
msgid "New version" msgid "Sign up with repository credentials"
msgstr "neue Version" msgstr "Mit Ihren Repository Daten registrieren"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/deposit/deposit.html:12 #~ msgid "Why use"
msgid "New upload" #~ msgstr "Warum"
msgstr "Neuer upload"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/deposit/deposit.html:14 #~ msgid "Your research is stored safely for the future in TU Graz library."
msgid "Edit upload" #~ msgstr ""
msgstr "Upload bearbeiten" #~ "Ihre Forschung ist in der Bibliothek der TU Graz für die Zukunft "
#~ "gespeichert."
#~ msgid "Built by CERN and TU Graz. Operated by TU Graz."
#~ msgstr "Gebaut von CERN und TU Graz. Betrieben von der TU Graz."
#~ msgid "Share private or anonymized data via the restricted access mode."
#~ msgstr ""
#~ "Teilen Sie private oder anonymisierte Daten über den eingeschränkten "
#~ "Zugriffsmodus."
#~ msgid "prioritizes all Recent uploads."
#~ msgstr "reiht die neuesten Uploads vor."
#~ msgid "One-on-one with"
#~ msgstr "One-on-one mit"
#~ msgid "supporters."
#~ msgstr "UnterstützerInnen."
#~ msgid "Scripts for automated uploading of larger datasets."
#~ msgstr "Skripte zum automatisierten Hochladen größerer Datensätze."
#~ msgid ""
#~ "built and operated by CERN and OpenAIRE to ensure that everyone can join "
#~ "in Open Science."
#~ msgstr ""
#~ "Aufgebaut und betrieben von CERN und OpenAIRE, um sicherzustellen, dass "
#~ "jeder an Open Science teilnehmen kann."
#~ msgid "Research Result"
#~ msgstr "Forschungsergebnisse"
#~ msgid "Open Educational Resources"
#~ msgstr "Open Educational Resources"
#~ msgid "OER"
#~ msgstr "OER"
#~ msgid "Search"
#~ msgstr "Suche"
#, fuzzy
#~| msgid "Upload OER"
#~ msgid "Upload"
#~ msgstr "Upload OER"
#~ msgid "Impressum"
#~ msgstr "Imprint"
#~ msgid "Feedback"
#~ msgstr "Feedback"
#, fuzzy, python-format
#~ msgid ""
#~ "<strong>Powered by</strong>\n"
#~ " <a href=\"%(invenio_rdm)s\" target=\"_blank\" "
#~ "title=\"invenioRDM\">"
#~ msgstr ""
#~ "<strong>Powered by</strong> <a href=\"%(invenio_rdm)s\" target=\"_blank\">"
#, fuzzy, python-format
#~ msgid ""
#~ "<strong>Enabled by</strong>\n"
#~ " <a href=\"%(fair_data)s\" target=\"_blank\" title=\"Fair Data "
#~ "Austria\">"
#~ msgstr ""
#~ "<strong>Enabled by</strong> <a href=\"%(fair_data)s\" target=\"_blank\">"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:63
#, python-format #, python-format
msgid "" #~ msgid ""
"\n" #~ "\n"
" There is a %(link_start)snewer version%(link_end)s of the " #~ " Uploaded on %(date)s\n"
"record available.\n" #~ " "
" " #~ msgstr ""
msgstr "" #~ "\n"
"Es ist eine %(link_start)sneuere Version%(link_end)s des Eintrags " #~ "\t\tHochgeladen am %(date)s"
"verfügbar."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:138 #~ msgid "You can upload different types of records:"
msgid "Files" #~ msgstr "Upload verschiedener Arten von Datensätzen:"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:146 #~ msgid ""
msgid "Reason" #~ "Visibility of uploaded content is maximized through synchronization with "
msgstr "Grund" #~ "data hubs (DataCite)."
#~ msgstr ""
#~ "Steigerung der Sichtbarkeit der Datensätze durch Synchronisation mit "
#~ "Harvestern (DataCite)."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:52 #~ msgid ""
msgid "Uploads" #~ "Open Educational Resources (OER) will be visible on various discovery "
msgstr "Hochladen" #~ "tools like the OERhub."
#~ msgstr ""
#~ "Open Educational Resources (OER) werden auf Suchmaschinen wie OERhub "
#~ "sichtbar sein."
#~ msgid "Type and press enter to search"
#~ msgstr "Suchbegriff eingeben und “Enter” drücken (?)"
#~ msgid "Version" #~ msgid "Version"
#~ msgstr "Version" #~ msgstr "Version"
@@ -452,21 +614,35 @@ msgstr "Hochladen"
#~ msgid "Handbook" #~ msgid "Handbook"
#~ msgstr "Handbuch" #~ msgstr "Handbuch"
#~ msgid "RDM DOI Badge" #~ msgid "RDM DOI Badge"
#~ msgstr "RDM DOI Abzeichen" #~ msgstr "RDM DOI Abzeichen"
#~ msgid "DOI" #~ msgid "DOI"
#~ msgstr "DOI" #~ msgstr "DOI"
#~ msgid "Open Access" #~ msgid "German"
#~ msgstr "" #~ msgstr "Deutsche"
#~ msgid "No minted DOI" #~ msgid "New version"
#~ msgstr "" #~ msgstr "neue Version"
#~ msgid "New upload"
#~ msgstr "Neuer upload"
#~ msgid "Edit upload"
#~ msgstr "Upload bearbeiten"
#~ msgid "" #~ msgid ""
#~ "Enabled by\n" #~ "\n"
#~ " <a href=\"%(fair_data)s\" target=\"_blank\">" #~ " There is a %(link_start)snewer version%(link_end)s of the "
#~ "record available.\n"
#~ " "
#~ msgstr "" #~ msgstr ""
#~ "Es ist eine %(link_start)sneuere Version%(link_end)s des Eintrags "
#~ "verfügbar."
#~ msgid "Files"
#~ msgstr "Dateien"
#~ msgid "Reason"
#~ msgstr "Grund"

View File

@@ -0,0 +1,480 @@
# English translations for invenio-theme-tugraz.
# Copyright (C) 2023 Graz University of Technology
# This file is distributed under the same license as the
# invenio-theme-tugraz project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: invenio-theme-tugraz 4.12.0\n"
"Report-Msgid-Bugs-To: mojib.wali@tugraz.at\n"
"POT-Creation-Date: 2024-02-02 10:08+0100\n"
"PO-Revision-Date: 2024-02-02 10:09+0100\n"
"Last-Translator: \n"
"Language-Team: en <LL@li.org>\n"
"Language: en\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Generated-By: Babel 2.13.1\n"
"X-Generator: Poedit 2.3.1\n"
#: invenio_theme_tugraz/config.py:13 invenio_theme_tugraz/config.py:60
msgid "TU Graz Repository"
msgstr ""
#: invenio_theme_tugraz/config.py:63
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:24
msgid "Repository"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:12
#: invenio_theme_tugraz/views.py:70
msgid "Overview"
msgstr ""
#: invenio_theme_tugraz/views.py:76
msgid "My dashboard"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/423.html:12
msgid "Locked"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/423.html:13
msgid "The resource that is being accessed is locked."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:26
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:34
msgid "Invenio"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:10
msgid "Good reasons to use the Repository of the TU Graz"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:13
msgid "Safe"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:13
msgid "Your research results are permanently available."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:14
msgid "Trusted"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:14
msgid "A service from TU Graz, developed in cooperation with CERN."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:15
msgid "Citeable"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:15
msgid "Every upload is assigned a Digital Object Identifier (DOI)."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:16
msgid "No waiting time"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:16
msgid ""
"Uploads are made available online as soon as you hit publish. Your DOI is "
"registered within seconds."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:17
msgid "Open or closed"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:17
msgid ""
"You determine the visibility of your uploads. A restricted access mode is "
"possible."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:18
msgid "Versioning"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:18
msgid "Easily update your dataset with the versioning feature."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
msgid "Usage statistics"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
msgid "All uploads display standards compliant usage statistics. "
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:88
msgid "More"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:10
msgid "Need help?"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:15
msgid "Contact us"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:20
msgid "We can help with:"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:24
msgid "Upload your research results, software, preprints, etc."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:25
msgid "Increase upload limit beyond our default policy of 10GB."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:26
msgid "Establish contact with data stewards."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:27
msgid "Find individual solutions."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:29
msgid "Documentation"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:36
msgid "Reference Guide"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:43
msgid "Search Guide"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:50
msgid "Data Protection"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:57
msgid "Terms and Conditions"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:65
msgid "Features"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:68
msgid "Scalability"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:69
msgid "Institutional integration"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:70
msgid "Next Generation Repository"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:71
msgid "Repository Profiles"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:72
msgid "Resilient"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:78
msgid "Connected Services"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:82
msgid "PURE"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:88
msgid "CampusOnline"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:94
msgid "Research Data Management"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:101
msgid "Accessibility"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:104
msgid "Tipp:"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:107
msgid "Use Ctrl + and Crtl -"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:110
msgid "to change the font size."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:13
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:17
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:26
msgid "Research Results"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:16
#, fuzzy
#| msgid "Frontpage: Description for research result"
msgid "Frontpage: Description for research results"
msgstr ""
"Research results is the collective term for all the results of a research "
"project. They describe the data, source code and all digital objects on "
"which publication results are based. These include the tools used to collect "
"and process the research data. The following links offer the possibility to "
"add research results to the repository, but also to search for the results "
"of other people."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:26
msgid "Search for research results"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:29
msgid "Upload research results"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:36
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:22
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:59
msgid "Publications"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:39
msgid "Frontpage: Description for publications"
msgstr ""
"The section of publications covers citations from several areas. Open Access "
"papers are imported from Pure. Publications from Open Access publishers are "
"shared. Digital copies are offered. University publications are made "
"available to a wide range of people. The following link offers the "
"possibility to search among publications."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:49
msgid "Search for publications"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:56
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:27
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:70
msgid "Educational Resources"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:59
msgid "Frontpage: Description for open educational resources"
msgstr ""
"In this area, you can upload your openly licensed educational content (OER, "
"Open Educational Resources) and search for educational resources uploaded by "
"others. Your uploaded content will be automatically transferred to the <a "
"href=\"https://oerhub.at/en\" target=\"_blank\">OERhub.at</a>. To upload "
"something in this area, an OER certificate and activation of your account is "
"required."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:69
msgid "Search for educational resourses"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:72
msgid "Upload educational resources"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:61
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:11
msgid "Test Instance"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:62
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:12
msgid "This is the test instance of the TU Graz Repository."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:40
msgid "Home"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:46
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:37
msgid "Communities"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:49
msgid "Dashboard"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:12
msgid "All"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:78
msgid "TU GRAZ"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:80
msgid "REPOSITORY"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:82
msgid "LIBRARY & ARCHIVES"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:92
msgid "SCIENCE"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:93
msgid "PASSION"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:94
msgid "TECHNOLOGY"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:31
#, fuzzy
#| msgid "Overview: Description for research result"
msgid "Overview: Description for research results"
msgstr "Research results gives the base on which publications are built."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:42
msgid "Overview: Description of Communities"
msgstr ""
"Grow a community of individuals to sustain the platform going forward and "
"thereby organize, curate and collaborate on records for your institution, "
"project, topic or event."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:48
msgid "Requests"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:53
msgid "Overview: Description of Requests"
msgstr ""
"Check for incoming notifications and community assignments or inquiries."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:64
msgid "Overview: Description for publications"
msgstr "Publications are the synthesized result of research."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:75
msgid "Overview: Description for open educational resources"
msgstr ""
"Educational resources: Publish your openly licensed educational material "
"(OER) here, so that others can find and resue it."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:11
msgid "Recent uploads"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:16
msgid "There are no public records to show."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:28
msgid "Publication date"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:34
msgid "Resource type"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:8
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:82
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:82
msgid "Sign up"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:15
msgid "Log in"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:30
msgid "Sign out"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:24
msgid "Log in to Repository"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:38
#, python-format
msgid "Log in with %(title)s"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:46
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:47
msgid "Or"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:57
msgid "Log in with repository credentials"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:67
msgid "Log In"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:81
#, python-format
msgid "New to %(sitename)s?"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:91
msgid "Forgot password?"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:20
msgid "Create an Account"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:25
msgid "Citeable. Discoverable."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:27
msgid ""
"Uploads get a Digital Object Identifier (DOI) to make them easily and "
"uniquely citeable."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:28
msgid "Communities."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:30
msgid ""
"Accept or reject uploads to your own community (e.g workshops, EU projects, "
"institutions or entire disciplines)."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:32
msgid "Trusted Research Data Management"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:34
msgid ""
"Built on top of TU Graz expertise in managing of the research data from the "
"Graz University of Technology."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:44
msgid "Sign up with TUGRAZ"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:61
msgid "Sign up with repository credentials"
msgstr ""

View File

@@ -1,180 +1,216 @@
# Translations template for invenio-theme-tugraz. # Translations template for invenio-theme-tugraz.
# Copyright (C) 2021 Graz University of Technology # Copyright (C) 2024 Graz University of Technology
# This file is distributed under the same license as the # This file is distributed under the same license as the
# invenio-theme-tugraz project. # invenio-theme-tugraz project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021. # FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
# #
#, fuzzy #, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: invenio-theme-tugraz 3.0.1\n" "Project-Id-Version: invenio-theme-tugraz 4.12.3\n"
"Report-Msgid-Bugs-To: mojib.wali@tugraz.at\n" "Report-Msgid-Bugs-To: mojib.wali@tugraz.at\n"
"POT-Creation-Date: 2021-05-10 10:36+0200\n" "POT-Creation-Date: 2024-02-02 10:08+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n" "Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.1\n" "Generated-By: Babel 2.13.1\n"
#: invenio_theme_tugraz/config.py:14 invenio_theme_tugraz/config.py:63 #: invenio_theme_tugraz/config.py:13 invenio_theme_tugraz/config.py:60
msgid "TU Graz Repository" msgid "TU Graz Repository"
msgstr "" msgstr ""
#: invenio_theme_tugraz/config.py:66 #: invenio_theme_tugraz/config.py:63
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:30 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:24
msgid "Repository" msgid "Repository"
msgstr "" msgstr ""
#: invenio_theme_tugraz/config.py:91 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:12
msgid "German" #: invenio_theme_tugraz/views.py:70
msgid "Overview"
msgstr ""
#: invenio_theme_tugraz/views.py:76
msgid "My dashboard"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/423.html:12
msgid "Locked"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/423.html:13
msgid "The resource that is being accessed is locked."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:26 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:26
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:26 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:34
msgid "Invenio" msgid "Invenio"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:3 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:10
msgid "Good reasons to use the Repository of the TU Graz"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:13
msgid "Safe" msgid "Safe"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:3 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:13
msgid "" msgid "Your research results are permanently available."
"your research is stored safely for the future in TU Graz library for as "
"long as TU Graz library exists."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:4 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:14
msgid "Trusted" msgid "Trusted"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:4 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:14
msgid "" msgid "A service from TU Graz, developed in cooperation with CERN."
"built and operated by CERN and OpenAIRE to ensure that everyone can join "
"in Open Science."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:5 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:15
msgid "Citeable" msgid "Citeable"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:5 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:15
msgid "" msgid "Every upload is assigned a Digital Object Identifier (DOI)."
"every upload is assigned a Digital Object Identifier (DOI), to make them "
"citable and trackable."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:6 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:16
msgid "No waiting time" msgid "No waiting time"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:6 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:16
msgid "" msgid ""
"Uploads are made available online as soon as you hit publish, and your " "Uploads are made available online as soon as you hit publish. Your DOI is"
"DOI is registered within seconds." " registered within seconds."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:7 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:17
msgid "Open or closed" msgid "Open or closed"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:7 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:17
msgid "" msgid ""
"Share e.g. anonymized clinical trial data with only medical professionals" "You determine the visibility of your uploads. A restricted access mode is"
" via our restricted access mode." " possible."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:8 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:18
msgid "Versioning" msgid "Versioning"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:8 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:18
msgid "Easily update your dataset with our versioning feature." msgid "Easily update your dataset with the versioning feature."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:9 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
msgid "Usage statisics" msgid "Usage statistics"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:9 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
msgid "All uploads display standards compliant usage statistics" msgid "All uploads display standards compliant usage statistics. "
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:34 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:19
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:88
msgid "More"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:10
msgid "Need help?"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:15
msgid "Contact us"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:20
msgid "We can help with:"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:24
msgid "Upload your research results, software, preprints, etc."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:25
msgid "Increase upload limit beyond our default policy of 10GB."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:26
msgid "Establish contact with data stewards."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/contact_us.html:27
msgid "Find individual solutions."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:29
msgid "Documentation" msgid "Documentation"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:39 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:36
msgid "Reference Guide" msgid "Reference Guide"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:44 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:43
msgid "Search Guide" msgid "Search Guide"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:49 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:50
msgid "Data Protection" msgid "Data Protection"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:54 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:57
msgid "Terms and Conditions" msgid "Terms and Conditions"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:58 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:65
msgid "Impressum"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:62
msgid "Feedback"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:71
msgid "Features" msgid "Features"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:73 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:68
msgid "Scalability" msgid "Scalability"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:75 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:69
msgid "Institutional integration" msgid "Institutional integration"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:77 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:70
msgid "Next Generation Repository" msgid "Next Generation Repository"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:80 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:71
msgid "Repository Profiles" msgid "Repository Profiles"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:82 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:72
msgid "Resilient" msgid "Resilient"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:89 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:78
msgid "Connected Services" msgid "Connected Services"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:93 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:82
msgid "PURE" msgid "PURE"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:96 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:88
msgid "CampusOnline" msgid "CampusOnline"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:99 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:94
msgid "Research Data Management" msgid "Research Data Management"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:106 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:101
msgid "Accessibility" msgid "Accessibility"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:107 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:104
msgid "Tipp:" msgid "Tipp:"
msgstr "" msgstr ""
@@ -182,22 +218,58 @@ msgstr ""
msgid "Use Ctrl + and Crtl -" msgid "Use Ctrl + and Crtl -"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:107 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:110
msgid "to change the font size." msgid "to change the font size."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:117 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:13
#, python-format #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:17
msgid "" #: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:26
"<strong>Powered by</strong>\n" msgid "Research Results"
" <a href=\"%(invenio_rdm)s\" target=\"_blank\">"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:127 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:16
#, python-format msgid "Frontpage: Description for research results"
msgid "" msgstr ""
"<strong>Enabled by</strong>\n"
" <a href=\"%(fair_data)s\" target=\"_blank\">" #: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:26
msgid "Search for research results"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:29
msgid "Upload research results"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:36
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:22
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:59
msgid "Publications"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:39
msgid "Frontpage: Description for publications"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:49
msgid "Search for publications"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:56
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:27
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:70
msgid "Educational Resources"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:59
msgid "Frontpage: Description for open educational resources"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:69
msgid "Search for educational resourses"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/frontpage_overview.html:72
msgid "Upload educational resources"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:61 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:61
@@ -210,105 +282,90 @@ msgstr ""
msgid "This is the test instance of the TU Graz Repository." msgid "This is the test instance of the TU Graz Repository."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:39 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:40
msgid "Home" msgid "Home"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:27 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:46
msgid "Type and press enter to search" #: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:37
msgid "Communities"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:43 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:49
msgid "Recent uploads" msgid "Dashboard"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:47 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:12
msgid "There are no public records to show." msgid "All"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:61
msgid "Publication date"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:66
msgid "Resource type"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:104
#, python-format
msgid ""
"\n"
" Uploaded on %(date)s\n"
" "
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:131
msgid "More"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:141
msgid "Need help?"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:145
msgid "Contact us"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:150
msgid "prioritizes all Recent uploads."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:153
msgid "We can help with:"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:158
msgid "Uploading your research data, software, preprints, etc."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:159
msgid "One-on-one with"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:159
msgid "supporters."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:160
msgid "Quota increases beyond our default policy."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:161
msgid "Scripts for automated uploading of larger datasets."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:166
msgid "Why use"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:66
msgid "REPOSITORY"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:68
msgid "LIBRARY & ARCHIVES"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:78 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:78
msgid "SCIENCE" msgid "TU GRAZ"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:79
msgid "PASSION"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:80 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:80
msgid "REPOSITORY"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:82
msgid "LIBRARY & ARCHIVES"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:92
msgid "SCIENCE"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:93
msgid "PASSION"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:94
msgid "TECHNOLOGY" msgid "TECHNOLOGY"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:31
msgid "Overview: Description for research results"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:42
msgid "Overview: Description of Communities"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:48
msgid "Requests"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:53
msgid "Overview: Description of Requests"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:64
msgid "Overview: Description for publications"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/overview.html:75
msgid "Overview: Description for open educational resources"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:11
msgid "Recent uploads"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:16
msgid "There are no public records to show."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:28
msgid "Publication date"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/recent_uploads.html:34
msgid "Resource type"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:8 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:8
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:59 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:82
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:78 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:82
msgid "Sign up" msgid "Sign up"
msgstr "" msgstr ""
@@ -320,30 +377,34 @@ msgstr ""
msgid "Sign out" msgid "Sign out"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:23 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:24
msgid "Log in to Repository" msgid "Log in to Repository"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:29 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:38
#, python-format #, python-format
msgid " Log in with %(type)s" msgid "Log in with %(title)s"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:33 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:46
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:52 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:47
msgid "Or" msgid "Or"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:45 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:57
msgid "Log in with repository credentials"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:67
msgid "Log In" msgid "Log In"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:58 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:81
#, python-format #, python-format
msgid "New to %(sitename)s?" msgid "New to %(sitename)s?"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:68 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:91
msgid "Forgot password?" msgid "Forgot password?"
msgstr "" msgstr ""
@@ -381,39 +442,11 @@ msgid ""
"the Graz University of Technology." "the Graz University of Technology."
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:48 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:44
msgid "Sign up with TUGRAZ " msgid "Sign up with TUGRAZ"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/deposit/deposit.html:10 #: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:61
msgid "New version" msgid "Sign up with repository credentials"
msgstr "" msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/deposit/deposit.html:12
msgid "New upload"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/deposit/deposit.html:14
msgid "Edit upload"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:63
#, python-format
msgid ""
"\n"
" There is a %(link_start)snewer version%(link_end)s of the "
"record available.\n"
" "
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:138
msgid "Files"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:146
msgid "Reason"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:52
msgid "Uploads"
msgstr ""

View File

@@ -1,15 +0,0 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020-2021 Graz University of Technology.
#
# invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more
# details.
"""Version information for invenio-theme-tugraz.
This file is imported by ``invenio_theme_tugraz.__init__``,
and parsed by ``setup.py``.
"""
__version__ = "3.0.2"

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright (C) 2020-2021 Graz University of Technology. # Copyright (C) 2020-2025 Graz University of Technology.
# #
# invenio-theme-tugraz is free software; you can redistribute it and/or # invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more # modify it under the terms of the MIT License; see LICENSE file for more
@@ -8,113 +8,137 @@
"""invenio module for TUGRAZ theme.""" """invenio module for TUGRAZ theme."""
import binascii from functools import wraps
from os import environ
from typing import Dict from typing import Dict
import requests from flask import Blueprint, current_app, g, redirect, render_template, url_for
from elasticsearch_dsl.utils import AttrDict from flask_login import current_user, login_required
from flask import Blueprint, current_app, g, redirect, render_template, request, url_for from invenio_rdm_records.proxies import current_rdm_records
from flask_babelex import get_locale from invenio_records_global_search.resources.serializers import (
from flask_login import login_required GlobalSearchJSONSerializer,
from flask_menu import current_menu
from invenio_app_rdm.records_ui.views.decorators import (
pass_is_preview,
pass_record_files,
pass_record_or_draft,
) )
from invenio_rdm_records.resources.serializers import UIJSONSerializer from invenio_users_resources.proxies import current_user_resources
from opensearch_dsl.utils import AttrDict
from .search import FrontpageRecordsSearch from .search import FrontpageRecordsSearch
blueprint = Blueprint(
"invenio_theme_tugraz",
__name__,
template_folder="templates",
static_folder="static",
)
@blueprint.route("/records/search")
def records_search():
"""Search page ui.
With this route it is possible to override the default route
"/search" to get to the rdm-records search. The default route will
be overriden by the global search with changing the
SEARCH_UI_SEARCH_TEMPLATE variable to the value
"invenio_records_global_search/search/search.html" in the
invenio.cfg file.
"""
return render_template("invenio_app_rdm/records/search.html")
def current_identity_is_tugraz_authenticated() -> bool:
"""Checks whether current identity has tugraz-authentication.
NOTE: Default permission-policy has no field for `tugraz_authenticated`.
Should the field not exist, the service checks against admin-permissions instead.
You probably meant to configure a custom permission-policy.
"""
rdm_service = current_rdm_records.records_service
return rdm_service.check_permission(g.identity, "tugraz_authenticated")
def require_tugraz_authenticated(view_func):
"""Decorator for guarding view-functions against unauthenticated users.
Redirects un-authenticated users to their personal dashboard's overview.
"""
@wraps(view_func)
def decorated_view(*args, **kwargs):
if not current_identity_is_tugraz_authenticated():
return redirect(url_for("invenio_theme_tugraz.overview"))
return view_func(*args, **kwargs)
return decorated_view
@blueprint.route("/me/overview")
@login_required
def overview():
"""Overview."""
url = current_user_resources.users_service.links_item_tpl.expand(
g.identity, current_user
)["avatar"]
is_tugraz_authenticated = current_identity_is_tugraz_authenticated()
return render_template(
"invenio_theme_tugraz/overview.html",
is_tugraz_authenticated=is_tugraz_authenticated,
user_avatar=url,
)
@blueprint.app_template_filter("make_dict_like")
def make_dict_like(value: str, key: str) -> Dict[str, str]:
"""Convert the value to a dict like structure.
in the form of a key -> value pair.
"""
return {key: value}
@blueprint.app_template_filter("cast_to_dict")
def cast_to_dict(attr_dict):
"""Return the dict structure of AttrDict variable."""
return AttrDict.to_dict(attr_dict)
def default_error_handler(e: Exception):
"""Called when an otherwise unhandled error occurs."""
# TODO: use sentry here once it's configured
# information we might want to log for debugging the error:
# - `flask.request`, a proxy to the current http-request in which the error occured
# - `flask.session`, a proxy to the current http-session
# - `e`, the passed-in exception
# to get proxied-to objects: `flask.request._get_current_object()`
return render_template(current_app.config["THEME_500_TEMPLATE"]), 500
def ui_blueprint(app): def ui_blueprint(app):
"""Blueprint for the routes and resources provided by Invenio-theme-tugraz.""" """Blueprint for the routes and resources provided by Invenio-theme-tugraz."""
routes = app.config.get("TUG_ROUTES") routes = app.config.get("TUG_ROUTES")
blueprint = Blueprint(
"invenio_theme_tugraz",
__name__,
template_folder="templates",
static_folder="static",
)
blueprint.add_url_rule(routes["index"], view_func=index) blueprint.add_url_rule(routes["index"], view_func=index)
blueprint.add_url_rule(routes["comingsoon"], view_func=comingsoon)
blueprint.add_url_rule(routes["guide"], view_func=guide)
blueprint.add_url_rule(routes["terms"], view_func=terms)
blueprint.add_url_rule(routes["gdpr"], view_func=gdpr)
@blueprint.app_template_filter("make_dict_like") # base case for any otherwise unhandled exception
def make_dict_like(value: str, key: str) -> Dict[str, str]: app.register_error_handler(Exception, default_error_handler)
"""Convert the value to a dict like structure.
in the form of a key -> value pair.
"""
return {key: value}
@blueprint.app_template_filter("cast_to_dict")
def cast_to_dict(attr_dict):
"""Return the dict structure of AttrDict variable."""
return AttrDict.to_dict(attr_dict)
return blueprint return blueprint
def records_serializer(records=None):
"""Serialize list of records."""
serializer = GlobalSearchJSONSerializer()
return [serializer.dump_obj(r.to_dict()) for r in records]
def index(): def index():
"""Frontpage.""" """Frontpage."""
records = FrontpageRecordsSearch()[:5].sort("-created").execute() records = FrontpageRecordsSearch()[:5].sort("-created").execute()
for r in records:
r = UIJSONSerializer().serialize_object_to_dict(r.to_dict())
return render_template( return render_template(
"invenio_theme_tugraz/index.html", "invenio_theme_tugraz/index.html", records=records_serializer(records)
records=records
) )
def comingsoon(): def locked(e):
"""Comingsoon.""" """Error page for status locked."""
return render_template("invenio_theme_tugraz/comingsoon.html") return render_template("invenio_theme_tugraz/423.html")
def guide():
"""TUGraz_Repository_Guide."""
locale = get_locale()
return redirect(url_for('static',
filename=f'documents/TUGraz_Repository_Guide_01_{locale}.pdf',
_external=True))
def terms():
"""Terms_And_Conditions."""
locale = get_locale()
return redirect(url_for('static',
filename=f'documents/TUGraz_Repository_Terms_And_Conditions_{locale}.pdf',
_external=True))
def gdpr():
"""General_Data_Protection_Rights."""
locale = get_locale()
return redirect(url_for('static',
filename=f'documents/TUGraz_Repository_General_Data_Protection_Rights_{locale}.pdf',
_external=True))
@pass_is_preview
@pass_record_or_draft
@pass_record_files
def record_detail(record=None, files=None, pid_value=None, is_preview=False):
"""Record detail page (aka landing page)."""
files_dict = None if files is None else files.to_dict()
return render_template(
"invenio_theme_tugraz/landingpage/detail.html",
record=UIJSONSerializer().serialize_object_to_dict(record.to_dict()),
pid=pid_value,
files=files_dict,
permissions=record.has_permissions_to(['edit', 'new_version', 'manage',
'update_draft', 'read_files']),
is_preview=is_preview,
)

View File

@@ -17,25 +17,10 @@ theme = WebpackThemeBundle(
entry={ entry={
"invenio-theme-tugraz-theme": "./less/invenio_theme_tugraz/theme.less", "invenio-theme-tugraz-theme": "./less/invenio_theme_tugraz/theme.less",
"invenio-theme-tugraz-js": "./js/invenio_theme_tugraz/theme.js", "invenio-theme-tugraz-js": "./js/invenio_theme_tugraz/theme.js",
# overrides RDM deposit form "invenio-theme-tugraz-unlock": "./js/invenio_theme_tugraz/unlock.js",
'invenio-theme-tugraz-rdm-deposit': './js/invenio_theme_tugraz/deposit/index.js',
}, },
dependencies={ dependencies={
# add any additional npm dependencies here... "jquery": "^3.2.1", # zammad-form, semantic-ui's modals
# Keep these dep: in sync with releases
"@babel/runtime": "^7.9.0",
'formik': '^2.1.4',
'luxon': '^1.23.0',
'path': '^0.12.7',
'prop-types': '^15.7.2',
'react-dnd': '^11.1.3',
'react-dnd-html5-backend': '^11.1.3',
'react-invenio-deposit': '^0.13.5',
'react-invenio-forms': '^0.7.0',
'react-dropzone': "^11.0.3",
'yup': '^0.27.0',
'@ckeditor/ckeditor5-build-classic': '^16.0.0',
'@ckeditor/ckeditor5-react': '^2.1.0',
}, },
) )
}, },

3
pyproject.toml Normal file
View File

@@ -0,0 +1,3 @@
[build-system]
requires = ["setuptools", "wheel", "babel>2.8"]
build-backend = "setuptools.build_meta"

View File

@@ -1,12 +0,0 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020-2021 Graz University of Technology.
#
# invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more
# details.
[pytest]
addopts = --isort --pydocstyle --pycodestyle --doctest-glob="*.rst" --doctest-modules --cov=invenio_theme_tugraz --cov-report=term-missing tests invenio_theme_tugraz
testpaths = tests invenio_theme_tugraz
live_server_scope = module

View File

@@ -16,18 +16,9 @@ set -o errexit
# Quit on unbound symbols # Quit on unbound symbols
set -o nounset set -o nounset
# Always bring down docker services
function cleanup() {
eval "$(docker-services-cli down --env)"
}
trap cleanup EXIT
python -m check_manifest --ignore ".*-requirements.txt" python -m check_manifest --ignore ".*-requirements.txt"
python -m sphinx.cmd.build -qnNW docs docs/_build/html python -m sphinx.cmd.build -qnN docs docs/_build/html
eval "$(docker-services-cli up --db ${DB:-postgresql} --search ${SEARCH:-elasticsearch} --cache ${CACHE:-redis} --env)"
python -m pytest python -m pytest
tests_exit_code=$? tests_exit_code=$?
python -m sphinx.cmd.build -qnNW -b doctest docs docs/_build/doctest python -m sphinx.cmd.build -qnN -b doctest docs docs/_build/doctest
exit "$tests_exit_code" exit "$tests_exit_code"

View File

@@ -1,11 +1,70 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright (C) 2020-2021 Graz University of Technology. # Copyright (C) 2020-2025 Graz University of Technology.
# #
# invenio-theme-tugraz is free software; you can redistribute it and/or # invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more # modify it under the terms of the MIT License; see LICENSE file for more
# details. # details.
[metadata]
name = invenio-theme-tugraz
version = attr: invenio_theme_tugraz.__version__
description = "Invenio module for TUGRAZ theme."
long_description = file: README.rst, CHANGES.rst
keywords = invenio theme invenioRDM TU-Graz
license = MIT
author = "Graz University of Technology"
author_email = mojib.wali@tugraz.at
url = https://github.com/tu-graz-library/invenio-theme-tugraz
platforms = any
classifiers =
Environment :: Web Environment
Intended Audience :: Developers
License :: OSI Approved :: MIT License
Operating System :: OS Independent
Programming Language :: Python
Topic :: Internet :: WWW/HTTP :: Dynamic Content
Topic :: Software Development :: Libraries :: Python Modules
Programming Language :: Python :: 3.12
Development Status :: 3 - Alpha
[options]
include_package_data = True
packages = find:
python_requires = >=3.12
zip_safe = False
install_requires =
invenio-assets>=2.0.0
invenio-i18n>=1.3.1
invenio_config_tugraz>=0.11.0
invenio_records_global_search>=0.0.1
invenio_records_marc21>=0.21.0
[options.extras_require]
tests =
invenio-app>=1.3.4,<2.0.0
invenio-previewer>=2.2.0
invenio-rdm-records<17.0.0
invenio-search[opensearch2]>=2.1.0
pytest<8.0.0
pytest-black-ng>=0.4.0
pytest-invenio>=2.1.0
Sphinx>=4.5.0
[options.entry_points]
invenio_base.apps =
invenio_theme_tugraz = invenio_theme_tugraz:InvenioThemeTugraz
invenio_base.blueprints =
invenio_theme_tugraz = invenio_theme_tugraz.views:ui_blueprint
invenio_i18n.translations =
messages = invenio_theme_tugraz
invenio_assets.webpack =
invenio_theme_tugraz_theme = invenio_theme_tugraz.webpack:theme
invenio_config.module =
invenio_theme_tugraz = invenio_theme_tugraz.config
invenio_base.finalize_app =
invenio_theme_tugraz = invenio_theme_tugraz.ext:finalize_app
[aliases] [aliases]
test = pytest test = pytest
@@ -22,6 +81,7 @@ add_ignore = D401
[compile_catalog] [compile_catalog]
directory = invenio_theme_tugraz/translations/ directory = invenio_theme_tugraz/translations/
use-fuzzy = True
[extract_messages] [extract_messages]
copyright_holder = Graz University of Technology copyright_holder = Graz University of Technology
@@ -37,20 +97,14 @@ output-dir = invenio_theme_tugraz/translations/
[update_catalog] [update_catalog]
input-file = invenio_theme_tugraz/translations/messages.pot input-file = invenio_theme_tugraz/translations/messages.pot
output-dir = invenio_theme_tugraz/translations/ output-dir = invenio_theme_tugraz/translations/
[flake8]
max-line-length = 88
extend-ignore = E203
select = C,E,F,W,B,B950
ignore = E501
[isort] [isort]
multi_line_output = 3 profile=black
include_trailing_comma = True
force_grid_wrap = 0
use_parentheses = True
ensure_newline_before_comments = True
line_length = 88
[pycodestyle] [check-manifest]
ignore = E203,E501 ignore =
*-requirements.txt
[tool:pytest]
addopts = --black --isort --pydocstyle --doctest-glob="*.rst" --doctest-modules --cov=invenio_theme_tugraz --cov-report=term-missing tests invenio_theme_tugraz
testpaths = tests invenio_theme_tugraz
live_server_scope = module

113
setup.py
View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
# Copyright (C) 2020-2021 Graz University of Technology. # Copyright (C) 2020-2022 Graz University of Technology.
# #
# invenio-theme-tugraz is free software; you can redistribute it and/or # invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more # modify it under the terms of the MIT License; see LICENSE file for more
@@ -8,113 +8,6 @@
"""invenio module for TUGRAZ theme.""" """invenio module for TUGRAZ theme."""
import os from setuptools import setup
from setuptools import find_packages, setup setup()
readme = open("README.rst").read()
history = open("CHANGES.rst").read()
tests_require = [
"pytest-invenio>=1.4.0",
"invenio-app>=1.3.0,<2.0.0",
]
# Should follow invenio-app-rdm
invenio_search_version = ">=1.4.0,<1.5.0"
invenio_db_version = ">=1.0.9,<1.1.0"
extras_require = {
"elasticsearch7": [f"invenio-search[elasticsearch7]{invenio_search_version}"],
"mysql": [f"invenio-db[mysql,versioning]{invenio_db_version}"],
"postgresql": [f"invenio-db[postgresql,versioning]{invenio_db_version}"],
"sqlite": [f"invenio-db[versioning]{invenio_db_version}"],
"docs": [
"Sphinx>=3",
],
"tests": tests_require,
}
extras_require["all"] = []
for name, reqs in extras_require.items():
if name[0] == ":" or name in (
"elasticsearch7",
"mysql",
"postgresql",
"sqlite",
):
continue
extras_require["all"].extend(reqs)
setup_requires = [
"Babel>=1.3",
"pytest-runner>=3.0.0,<5",
]
install_requires = [
"Flask-BabelEx>=0.9.4",
"Flask-WebpackExt>=1.0.0",
"invenio-assets>=1.2.0",
"invenio-i18n>=1.2.0",
"invenio_config_tugraz>=0.5.8",
]
packages = find_packages()
# Get the version string. Cannot be done with import!
g = {}
with open(os.path.join("invenio_theme_tugraz", "version.py"), "rt") as fp:
exec(fp.read(), g)
version = g["__version__"]
setup(
name="invenio-theme-tugraz",
version=version,
description=__doc__,
long_description=readme + "\n\n" + history,
keywords="invenio, theme, invenioRDM, TU-Graz, Graz University of Technology, statistics",
license="MIT",
author="Graz University of Technology",
author_email="mojib.wali@tugraz.at",
url="https://github.com/tu-graz-library/invenio-theme-tugraz",
packages=packages,
zip_safe=False,
include_package_data=True,
platforms="any",
entry_points={
"invenio_base.apps": [
"invenio_theme_tugraz = invenio_theme_tugraz:InvenioThemeTugraz",
],
"invenio_base.blueprints": [
"invenio_theme_tugraz = invenio_theme_tugraz.views:ui_blueprint",
],
"invenio_i18n.translations": [
"messages = invenio_theme_tugraz",
],
"invenio_assets.webpack": [
"invenio_theme_tugraz_theme = invenio_theme_tugraz.webpack:theme",
],
"invenio_config.module": [
"invenio_theme_tugraz = invenio_theme_tugraz.config",
],
},
extras_require=extras_require,
install_requires=install_requires,
setup_requires=setup_requires,
tests_require=tests_require,
classifiers=[
"Environment :: Web Environment",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Topic :: Internet :: WWW/HTTP :: Dynamic Content",
"Topic :: Software Development :: Libraries :: Python Modules",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Development Status :: 3 - Alpha",
],
)

View File

@@ -12,62 +12,21 @@ See https://pytest-invenio.readthedocs.io/ for documentation on which test
fixtures are available. fixtures are available.
""" """
import os
import shutil
import tempfile
import pytest import pytest
from flask import Flask from flask import Flask
from flask_babelex import Babel
from invenio_db import InvenioDB, db
from invenio_i18n import InvenioI18N from invenio_i18n import InvenioI18N
from invenio_search import InvenioSearch
from sqlalchemy_utils.functions import create_database, database_exists, drop_database
from invenio_theme_tugraz import InvenioThemeTugraz from invenio_theme_tugraz import InvenioThemeTugraz
@pytest.fixture(scope="module")
def celery_config():
"""Override pytest-invenio fixture.
TODO: Remove this fixture if you add Celery support.
"""
return {}
@pytest.fixture() @pytest.fixture()
def app(request): def app(request):
"""Basic Flask application.""" """Basic Flask application."""
instance_path = tempfile.mkdtemp()
app = Flask("testapp") app = Flask("testapp")
DB = os.getenv("SQLALCHEMY_DATABASE_URI", "sqlite://")
app.config.update( app.config.update(
I18N_LANGUAGES=[("en", "English"), ("de", "German")], I18N_LANGUAGES=[("en", "English"), ("de", "German")],
SQLALCHEMY_DATABASE_URI=DB,
SQLALCHEMY_TRACK_MODIFICATIONS=False,
) )
Babel(app)
InvenioDB(app)
InvenioSearch(app)
InvenioThemeTugraz(app) InvenioThemeTugraz(app)
InvenioI18N(app) InvenioI18N(app)
with app.app_context():
db_url = str(db.engine.url)
if db_url != "sqlite://" and not database_exists(db_url):
create_database(db_url)
db.create_all()
def teardown():
with app.app_context():
db_url = str(db.engine.url)
db.session.close()
if db_url != "sqlite://":
drop_database(db_url)
shutil.rmtree(instance_path)
request.addfinalizer(teardown)
app.test_request_context().push()
return app return app

View File

@@ -35,4 +35,4 @@ def test_init():
def test_app(app): def test_app(app):
"""Test extension initialization.""" """Test extension initialization."""
theme = InvenioThemeTugraz(app) _ = InvenioThemeTugraz(app)

View File

@@ -1,22 +0,0 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020-2021 Graz University of Technology.
#
# invenio-theme-tugraz is free software; you can redistribute it and/or
# modify it under the terms of the MIT License; see LICENSE file for more
# details.
"""Pytest configuration.
See https://pytest-invenio.readthedocs.io/ for documentation on which test
fixtures are available.
"""
import pytest
from invenio_app.factory import create_ui
@pytest.fixture(scope='module')
def create_app(instance_path):
"""Application factory fixture."""
return create_ui

View File

@@ -1,33 +0,0 @@
# # -*- coding: utf-8 -*-
# #
# # Copyright (C) 2020-2021 Graz University of Technology.
# #
# # invenio-theme-tugraz is free software; you can redistribute it and/or
# # modify it under the terms of the MIT License; see LICENSE file for more
# # details.
# """Test views."""
# from elasticsearch_dsl.utils import AttrDict
# from invenio_theme_tugraz.views import cast_to_dict, make_dict_like
# def test_make_dict_like():
# """Test make_dict_like."""
# access = {
# "access_right" : "open"
# }
# dicts = make_dict_like("open", "access_right")
# assert access == dicts
# def test_cast_to_dict():
# """Test cast_to_dict."""
# resource_type = {
# "subtype" : "publication-datamanagementplan",
# "type" : "publication"
# }
# expected = {'subtype': 'publication-datamanagementplan', 'type': 'publication'}
# attr = cast_to_dict(AttrDict(resource_type))
# assert expected == attr