Compare commits

...

45 Commits

Author SHA1 Message Date
Mojib Wali
41bfcf0cee v2.0.7 2021-04-09 14:01:17 +02:00
Mojib Wali
bc1c9bcc9c depositform: increase the fileupload 2021-04-09 13:56:17 +02:00
Mojib Wali
ae21366bfa v2.0.6 2021-04-08 09:14:27 +02:00
Mojib Wali
9e92934451 bugfixes: configs & translations
* bugfixes: modified config vars
* refactor: text of instance message
* translations: adds new trans
* translation: refactor some german translation
* footer: adds handbook link
2021-04-08 09:13:58 +02:00
david
0df53c42fa style: translation and minor documentation 2021-04-07 10:39:57 +02:00
david
88d7125acf fix: rename, set and use env variable 2021-04-07 10:39:57 +02:00
David Eckhard
8425d410f2 feature: add test instance notification 2021-04-07 10:39:57 +02:00
Mojib Wali
c4f80c42a1 v2.0.5 2021-04-01 10:43:40 +02:00
Unix
4698c797b2 bugfix: adds datacite host url 2021-04-01 10:43:13 +02:00
Unix
0e5f08768d bugfix: password should b unicode
else: request Error UnicodeEncodeError
2021-04-01 10:43:13 +02:00
Mojib Wali
e4d38632a9 v2.0.4 2021-03-31 17:07:16 +02:00
Unix
4fa0e2851f doimint: removes link to doi.org 2021-03-31 17:02:40 +02:00
Mojib Wali
2c10cc885d v2.0.3 2021-03-31 15:08:32 +02:00
Mojib Wali
f993fda3f6 bugfix: space requires before next query 2021-03-31 15:07:48 +02:00
Mojib Wali
ecacf0ba59 v2.0.2 2021-03-31 09:51:54 +02:00
Unix
592d59e54d depositform: disable field languages 2021-03-31 08:53:44 +02:00
Mojib Wali
f40fb37ec4 v2.0.1 2021-03-29 11:20:47 +02:00
Unix
44e4b01332 bugfix: hyperlink no-decoration 2021-03-29 10:42:40 +02:00
Mojib Wali
97feb284cf v2.0.0 2021-03-29 10:07:03 +02:00
Unix
20fc3e62be bugfix: recent uploads filter only latest version 2021-03-29 09:46:16 +02:00
Mojib Wali
530d32d7c7 migrate: to invenio-app-rdm:v2 2021-03-29 09:41:35 +02:00
Mojib Wali
b27d54b6f0 v1.9.6 2021-03-23 11:43:52 +01:00
Mojib Wali
f81ca88835 footer: adds documentation link
* footer: adds documentation link

* landingpage: disable jump btn
2021-03-23 11:40:47 +01:00
Mojib Wali
39c19238dd v1.9.5 2021-03-19 14:40:29 +01:00
Mojib Wali
3f14a3ada4 PublisherField: makes field required
* Publisher: makes field required
* publisherField: change in helptext
2021-03-19 14:39:29 +01:00
Mojib Wali
0a5a78312e v1.9.4 2021-03-19 12:56:27 +01:00
Mojib Wali
0cc1635e3a bugfix: translation order for tug logo (#176) 2021-03-19 12:54:35 +01:00
Mojib Wali
0f8ebffaa2 Translations: updated 2021-03-19 11:14:16 +01:00
Unix
0e2c1a0f60 style: login form 2021-03-19 09:55:49 +01:00
Mojib Wali
4d902f014b v1.9.3 2021-03-18 08:28:20 +01:00
Mojib Wali
ea54a17c43 bugfix: adds check for scheme 'doi' 2021-03-17 17:11:00 +01:00
Mojib Wali
db01116eeb v1.9.2 2021-03-17 10:32:11 +01:00
Mojib Wali
ea92a2f563 dep: adds invenio_config_tugraz 2021-03-17 10:27:55 +01:00
Mojib Wali
a4558e02bf doimint: adds suffix config 2021-03-17 10:15:30 +01:00
Mojib Wali
c87e65d89f dep: bump in webpack 2021-03-17 09:40:05 +01:00
Mojib Wali
6360bcab7b doimint: adds positive message on doi register 2021-03-16 12:53:47 +01:00
Mojib Wali
95710c440e depositform: get doi from backend 2021-03-16 09:55:59 +01:00
David Eckhard
063ddc985a refactor: remove unused files 2021-03-16 08:37:04 +01:00
David Eckhard
6cb248644b feature: add doi retrieve endpoint 2021-03-16 08:37:04 +01:00
Mojib Wali
e3897c8d46 v1.9.1 2021-03-12 13:27:51 +01:00
Unix
dd4bc1ffdf bugfix: read env variables of datacite 2021-03-12 13:10:47 +01:00
Unix
046b009420 bugfix: removed css which caused the btn to disapear 2021-03-12 12:59:00 +01:00
Unix
6210a8bad9 global: adds copyrights 2021-03-12 12:59:00 +01:00
Unix
de83dd0d1b frontpage: show a message when there are no public record. 2021-03-12 12:59:00 +01:00
Unix
462fc27ae7 footer: adds target blank for extern link 2021-03-12 12:59:00 +01:00
67 changed files with 618 additions and 481 deletions

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 Mojib wali.
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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,5 +1,5 @@
..
Copyright (C) 2020 mojib wali.
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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -10,7 +10,7 @@ import {
} from "semantic-ui-react";
import { FieldArray } from "formik";
import { DoiRest, MapDatacite } from "datacite-rest";
import { FetchDoi, MapDatacite } from "datacite-rest";
export class DoiMint extends Component {
constructor(props) {
@@ -29,8 +29,12 @@ export class DoiMint extends Component {
this.metadata.identifiers.length > 0 &&
this.metadata.identifiers[0] != null
) {
this.is_doi = true;
this.id_doi = this.metadata.identifiers[0].identifier;
for(var identifier of this.metadata.identifiers){
if (identifier.scheme == "doi"){
this.is_doi = true;
this.id_doi = identifier.identifier;
}
}
}
// add metadata to the state
@@ -47,71 +51,73 @@ export class DoiMint extends Component {
// this should fetch a new doi
var pushDoi = (form) => {
// activate the loader
this.setState({
showLoader: true,
});
this.setState({
showLoader: true,
});
const url = this.configs.datacite_url;
const auth = {
username: this.configs.datacite_uname,
password: this.configs.datacite_pass,
};
// get the prefix from backend
const prefix = this.configs.datacite_prefix;
const suffix = this.configs.datacite_suffix;
const host_url = this.configs.datacite_host_url
// get mapped DOI
const mapped = MapDatacite(this.metadata, this.record.id, prefix);
if (prefix !== null && suffix !== null) {
// get mapped DOI
const mapped = MapDatacite(this.metadata, this.record.id, prefix, suffix, host_url);
const _doirest = new DoiRest(url);
const _fetchdoi = new FetchDoi("/getdoi");
// Create a new DOI
_doirest
.create(mapped, auth, this.configs.datacite_password_iv)
.then((data) => {
// if there is an error
if (data.data.errors) {
this.setState({
showLoader: false,
isError: true,
errorMsg: data.data.errors[0].title,
});
// if credentials are wrong!
} else if (data.code == 405) {
this.setState({
showLoader: false,
isError: true,
errorMsg: "Not configured!",
});
}
// new doi is fetched
else {
// add new identifier
const _identifiers = [
{
identifier: data.data.data.id,
scheme: "doi",
},
];
// submit the value to the form
this.setState({ identifiers: _identifiers });
form.setFieldValue("metadata.identifiers", this.state.identifiers);
// Create a new DOI
_fetchdoi
.create(mapped)
.then((data) => {
// if there is an error
if (data.data.errors) {
this.setState({
showLoader: false,
isError: true,
errorMsg: data.data.errors[0].title,
});
}
// new doi is fetched
else {
// add new identifier
const _identifiers = [
{
identifier: data.data.data.data.id,
scheme: "doi",
},
];
// submit the value to the form
this.setState({ identifiers: _identifiers });
form.setFieldValue(
"metadata.identifiers",
this.state.identifiers
);
this.is_doi = true;
// deactivate the loader
this.setState({
showLoader: false,
doi_id: this.state.identifiers[0].identifier,
});
}
})
.catch((error) => {
console.log("error", error);
this.is_doi = true;
// deactivate the loader
this.setState({
showLoader: false,
doi_id: this.state.identifiers[0].identifier,
});
}
})
.catch((error) => {
console.log("error", error);
});
} else {
this.setState({
showLoader: false,
isError: true,
errorMsg: "Not configured!",
});
}
};
// get a link of dio
var doiLink = (doiId) => {
window.open(`https://doi.org/${doiId}`, "_blank");
};
// // get a link of dio
// var doiLink = (doiId) => {
// window.open(`https://doi.org/${doiId}`, "_blank");
// };
return (
<Card className="actions">
@@ -175,14 +181,15 @@ export class DoiMint extends Component {
marginTop: "10px",
}}
>
{this.state.doi_id && (
<Message positive>
<Message.Header>A DOI is registered!</Message.Header>
<p>Please save the deposit. </p>
</Message>
)}
<Label
style={{
cursor: "pointer",
}}
size="large"
as="a"
color="blue"
onClick={() => doiLink(this.state.doi_id || this.id_doi)}
>
<strong>DOI: </strong>
<Label.Detail>{this.state.doi_id || this.id_doi}</Label.Detail>

View File

@@ -0,0 +1,47 @@
// This file is part of React-Invenio-Deposit
// Copyright (C) 2020 CERN.
// Copyright (C) 2020 Northwestern University.
// Copyright (C) 2021 Graz University of Technology.
//
// React-Invenio-Deposit 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, { Component } from 'react';
import PropTypes from 'prop-types';
import { FieldLabel, TextField } from 'react-invenio-forms';
export class PublisherField extends Component {
render() {
const { fieldPath, label, labelIcon, placeholder, required } = this.props;
return (
<TextField
fieldPath={fieldPath}
helpText={
'The publisher is used to formulate the citation, if you are plannig to mint a new DOI this publisher will be cited.'
}
label={
<FieldLabel htmlFor={fieldPath} icon={labelIcon} label={label} />
}
placeholder={placeholder}
required={required}
/>
);
}
}
PublisherField.propTypes = {
fieldPath: PropTypes.string.isRequired,
label: PropTypes.string,
labelIcon: PropTypes.string,
placeholder: PropTypes.string,
required: PropTypes.bool,
};
PublisherField.defaultProps = {
fieldPath: 'metadata.publisher',
label: 'Publisher',
labelIcon: 'building outline',
placeholder: 'Enter publisher name',
};

View File

@@ -33,7 +33,6 @@ import {
LanguagesField,
PublishButton,
PublicationDateField,
PublisherField,
ResourceTypeField,
SaveButton,
SubjectsField,
@@ -44,6 +43,7 @@ import {
} from "react-invenio-deposit";
import { AccordionField } from "react-invenio-forms";
import { DoiMint } from "./DoiMint";
import { PublisherField } from "./PublisherField";
export class RDMDepositForm extends Component {
constructor(props) {
@@ -279,14 +279,11 @@ export class RDMDepositForm extends Component {
config={this.config}
record={this.props.record}
files={this.props.files}
permissions={this.props.permissions}
>
<FormFeedback fieldPath="message" />
<Container style={{ marginTop: "10px" }}>
<DepositFormTitle
// TODO: make is_published part of the API response
// so we don't have to do this
isPublished={this.props.record.is_published}
/>
<DepositFormTitle />
<Grid>
<Grid.Row>
<Grid.Column width={11}>
@@ -296,7 +293,7 @@ export class RDMDepositForm extends Component {
label={"Files"}
ui={this.accordionStyle}
>
{this.noFiles && (
{this.noFiles && this.props.record.is_published && (
<p
style={{
textAlign: "center",
@@ -311,7 +308,7 @@ export class RDMDepositForm extends Component {
isDraftRecord={!this.props.record.is_published}
quota={{
maxFiles: 100,
maxStorage: 10 ** 10,
maxStorage: 14 ** 10,
}}
/>
</AccordionField>
@@ -431,8 +428,10 @@ export class RDMDepositForm extends Component {
label="Subjects"
labelIcon="tag"
/> */}
<LanguagesField
{/**TODO- enable once issue is solved:
* https://github.com/inveniosoftware/invenio-app-rdm/issues/738
*/}
{/* <LanguagesField
initialOptions={_get(
this.props.record,
"ui.languages",
@@ -445,10 +444,10 @@ export class RDMDepositForm extends Component {
key: item.id,
}))
}
/>
/> */}
<DatesField options={this.vocabularies.metadata.dates} />
<VersionField />
<PublisherField />
<PublisherField required />
<br />
</AccordionField>
{/**TODO: uncomment to use FundingField*/}
@@ -482,7 +481,7 @@ export class RDMDepositForm extends Component {
</Grid.Column>
<Ref innerRef={this.sidebarRef}>
<Grid.Column width={5} className="deposit-sidebar">
<Sticky context={this.sidebarRef} offset={20}>
<Sticky context={this.sidebarRef} offset={50}>
<Card className="actions">
<Card.Content>
<SaveButton fluid className="save-button" />
@@ -505,8 +504,11 @@ export class RDMDepositForm extends Component {
label={"Protection"}
labelIcon={"shield"}
/>
{this.config.data_cite &&(
<DoiMint record={this.props.record} config={this.config.data_cite}/>
{this.config.data_cite && (
<DoiMint
record={this.props.record}
config={this.config.data_cite}
/>
)}
</Sticky>
</Grid.Column>

View File

@@ -17,6 +17,7 @@ ReactDOM.render(
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,4 +1,5 @@
import $ from 'jquery';
import 'semantic-ui-css';
$(function() {
let scriptNode = document.createElement("hidden"); //needed for zammad script
@@ -17,6 +18,13 @@ $(function() {
});
});
// used for sticky test instance notification
$('.ui.sticky.test-instance')
.sticky({
context: 'body'
})
;
export function toggleVisibility(id) {
var element = document.getElementById(id);
var isHided = element.style.display === "none";

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.
@@ -47,5 +46,5 @@
margin-top: 10px;
}
.spacer-long{
margin-top: 20px;
margin-top: 30px;
}

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.
@@ -55,11 +54,6 @@
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 {
@@ -253,3 +247,10 @@ svg:not(:root) {
span.home-inline{
white-space: nowrap;
}
.test-instance{
text-align: center;
background-color: @notificationBackground;
border: solid @notificationBorder 1px;
z-index: 100000;
}

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.

View File

@@ -5,10 +5,6 @@
* it under the terms of the MIT License; see LICENSE file for more details.
*/
.title .dropdown {
display: none;
}
.top-bottom-padded {
margin: unset;
}

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.
@@ -25,3 +24,11 @@
//@import "../invenio_app_rdm/theme";
//@import "variables";
// used in various templates
// add no hyperlink decoration
.no-decoration{
color: inherit;
text-decoration: none;
transition: background-color 0.15s ease 0s, color 0.15s ease 0s;
}

View File

@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 TUGRAZ.
* Copyright (C) 2020 mojib wali.
* 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.
@@ -52,7 +51,7 @@
//account (signin, signup) specific
// account (signin, signup) specific
@primaryFormAccounts : #fff;
@formAccountsInputPlaceholder : silver;
@fieldInputSelectionBackground: #50a2ce;
@@ -68,3 +67,7 @@
// input
@outlineColor: #85B7D9;
// notification
@notificationBackground: #fffaf3;
@notificationBorder: #e2d5c2;

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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
@@ -17,7 +17,9 @@ INVENIO_THEME_TUGRAZ_DEFAULT_VALUE = _("TU Graz Repository")
INVENIO_THEME_TUGRAZ_BASE_TEMPLATE = "invenio_theme_tugraz/base.html"
"""TU Graz Default base template"""
INVENIO_THEME_TUGRAZ_ACCOUNT_BASE = "invenio_theme_tugraz/accounts/accounts_base.html"
INVENIO_THEME_TUGRAZ_ACCOUNT_BASE = (
"invenio_theme_tugraz/accounts/accounts_base.html"
)
"""TU Graz Default account base template"""
INVENIO_THEME_TUGRAZ_ICON = "images/icon_use.png"
@@ -26,9 +28,16 @@ INVENIO_THEME_TUGRAZ_ICON = "images/icon_use.png"
INVENIO_THEME_TUGRAZ_LOGIN_IMG = "images/login_logo.png"
"""TU Logo for forms"""
INVENIO_THEME_TUGRAZ_CONTACT_FORM = False
THEME_TUGRAZ_CONTACT_FORM = False
"""Enable/Disable Contact form."""
THEME_TUGRAZ_PRODUCTION = False
"""Production environment.
Can also be set as an environment variable in a .env file. Then the name
has to be 'INVENIO_THEME_TUGRAZ_PRODUCTION'.
"""
# Invenio-theme
# ============
# See https://invenio-theme.readthedocs.io/en/latest/configuration.html
@@ -67,7 +76,9 @@ THEME_SITENAME = _("Repository")
SECURITY_LOGIN_USER_TEMPLATE = "invenio_theme_tugraz/accounts/login_user.html"
"""Login template"""
SECURITY_REGISTER_USER_TEMPLATE = "invenio_theme_tugraz/accounts/register_user.html"
SECURITY_REGISTER_USER_TEMPLATE = (
"invenio_theme_tugraz/accounts/register_user.html"
)
"""Sigup template"""
# Invenio-I18N
@@ -110,7 +121,8 @@ TUG_ROUTES = {
"comingsoon": "/comingsoon",
"deposit_create": "/uploads/new",
"deposit_edit": "/uploads/<pid_value>",
"record_detail": "/records/<pid_value>"
"getdoi": "/getdoi",
"record_detail": "/records/<pid_value>",
}
# Datacite

View File

@@ -1,88 +0,0 @@
#!/usr/bin/env python
"""crypto helper module. see https://gist.github.com/marcoslin/8026990."""
import binascii
from Crypto import Random
from Crypto.Cipher import AES
# ------------------------------
# DEFINE Encryption Class
class Cryptor(object):
"""Crypto class implementation.
Provide encryption and decryption function that works with crypto-js.
https://code.google.com/p/crypto-js/
Padding implemented as per RFC 2315: PKCS#7 page 21
http://www.ietf.org/rfc/rfc2315.txt
The key to make pycrypto work with crypto-js are:
1. Use MODE_CFB. For some reason, crypto-js decrypted result from MODE_CBC
gets truncated
2. Use Pkcs7 padding as per RFC 2315, the default padding used by CryptoJS
3. On the JS side, make sure to wrap ciphertext with CryptoJS.lib.CipherParams.create()
"""
# AES-256 key (32 bytes)
KEY = "01ab38d5e05c92aa098921d9d4626107133c7e2ab0e4849558921ebcc242bcb0"
BLOCK_SIZE = 16
@classmethod
def _pad_string(cls, in_string):
"""Pad an input string according to PKCS#7."""
in_len = len(in_string)
pad_size = cls.BLOCK_SIZE - (in_len % cls.BLOCK_SIZE)
return in_string.ljust(in_len + pad_size, chr(pad_size))
@classmethod
def _unpad_string(cls, in_string):
"""Remove the PKCS#7 padding from a text string."""
in_len = len(in_string)
pad_size = ord(in_string[-1])
if pad_size > cls.BLOCK_SIZE:
raise ValueError("Input is not padded or padding is corrupt")
return in_string[: in_len - pad_size]
@classmethod
def generate_iv(cls, size=16):
"""Generate initialization vector."""
return Random.get_random_bytes(size)
@classmethod
def encrypt(cls, in_string, in_key, in_iv=None):
"""Return encrypted string.
@in_string: Simple str to be encrypted
@key: hexified key
@iv: hexified iv
"""
key = binascii.a2b_hex(in_key)
if in_iv is None:
iv = cls.generate_iv()
in_iv = binascii.b2a_hex(iv)
else:
iv = binascii.a2b_hex(in_iv)
aes = AES.new(key, AES.MODE_CFB, iv, segment_size=128)
padded = cls._pad_string(in_string).encode("utf-8")
encrypted = aes.encrypt(padded)
return in_iv, encrypted
@classmethod
def decrypt(cls, in_encrypted, in_key, in_iv):
"""Return encrypted string.
@in_encrypted: Base64 encoded
@key: hexified key
@iv: hexified iv
"""
key = binascii.a2b_hex(in_key)
iv = binascii.a2b_hex(in_iv)
aes = AES.new(key, AES.MODE_CFB, iv, segment_size=128)
decrypted = aes.decrypt(binascii.a2b_base64(in_encrypted).rstrip())
return cls._unpad_string(decrypted)

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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
@@ -34,5 +34,5 @@ class InvenioThemeTugraz(object):
def init_config(self, app):
"""Initialize configuration."""
for k in dir(config):
if k.startswith("INVENIO_THEME_TUGRAZ_"):
if k.startswith("INVENIO_THEME_TUGRAZ_") or k.startswith("THEME_TUGRAZ_"):
app.config.setdefault(k, getattr(config, k))

View File

@@ -1,7 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 TU Graz.
# Copyright (C) 2020 mojib wali.
# 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
@@ -22,4 +21,6 @@ class FrontpageRecordsSearch(RecordsSearch):
"""Default index and filter for frontpage search."""
index = "rdmrecords-records"
default_filter = Q("query_string", query=("access.record:public"))
default_filter = Q(
"query_string", query=(
"access.record:public " "AND versions.is_latest:true"))

View File

@@ -1,6 +1,5 @@
{#
Copyright (C) 2020 TUGRAZ
Copyright (C) 2020 mojib wali.
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
@@ -57,6 +56,12 @@
{%- endblock 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">
{% if not config.THEME_TUGRAZ_PRODUCTION %}
<div class="ui sticky test-instance">
<h4>{{_ ("Test Instance") }}</h4>
<p>{{_ ("This is the test instance of the TU Graz Repository.") }}</p>
</div>
{% endif %}
{%- block body %}
{%- block browserupgrade %}
<!--[if lt IE 8]>

View File

@@ -4,14 +4,14 @@
{%- if config.SECURITY_REGISTERABLE %}
<div class="short-menu-right-button">
<a href="{{ url_for('security.register') }}">
<a href="{{ url_for('security.register') }}" class="no-decoration">
{{_ ("Sign up")}}
</a>
</div>
{%- endif %}
<div class="short-menu-right-button">
<a href="{{url_for_security('login', next=request.path)}}" style="text-decoration:none">
<a href="{{url_for_security('login', next=request.path)}}" class="no-decoration">
{{_ ("Log in")}}
</a>
</div>
@@ -21,12 +21,12 @@
{%- if config.USERPROFILES %}
<div class="short-menu-right-button">
<a href="{{ url_for('invenio_userprofiles.profile') }}">
<a href="{{ url_for('invenio_userprofiles.profile') }}" class="no-decoration">
<i class="user icon"></i> {{ current_user.email }}
</a>
</div>
<div class="short-menu-right-button">
<a class="dropdown-item" href="{{url_for_security('logout')}}">
<a class="dropdown-item no-decoration" href="{{url_for_security('logout')}}">
{{_('Sign out')}}
</a>
</div>

View File

@@ -1,7 +1,5 @@
{#
Copyright (C) 2020 TUGRAZ
Copyright (C) 2020 mojib wali
Copyright (C) 2020 Nikita Lvov
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
@@ -14,30 +12,32 @@
{% from "invenio_accounts/_macros.html" import render_field, form_errors %}
{% block page_body %}
<div class="spacer-long"></div>
<div class="spacer-long"></div>
<div class="ui container">
<div class="ui centered grid">
<div class="ui centered grid padded">
<div class="ui padded segments big form">
<div class="ui padded segments huge form">
<div class="ui login segment padded">
<div class="divider hidden"></div>
{%- block form_header %}
<h3 class="ui login header">{{ _('Log in to Repository') }}</h3>
{%- endblock form_header %}
<div class="ui divider"></div>
<!--Log in with SSO-->
{%- if config.INVENIO_CONFIG_TUGRAZ_SHIBBOLETH %}
<div class="ui divider"></div>
<div class="login-page-button ui fluid large button">
<a href="{{ url_for('sso_saml.sso', idp='idp') }}" class="inverted tiny image label">
{% trans type='TUGRAZ' %} Log in with {{ type }}{% endtrans %}
<img src="{{ url_for('static', filename=config.INVENIO_THEME_TUGRAZ_ICON)}}" height="20px" />
</a>
</div>
<div class="spacer-long"></div>
<div class="ui inverted horizontal divider"><span class="text-color">{{_ ("Or")}}</span></div>
{%- endif %}
{%- block form_outer %}
{%- with form = login_user_form %}
<div style="padding-bottom: 20px;padding-top: 6px;">
<form action="{{ url_for_security('login') }}" method="POST" name="login_user_form" class="ui big form">
{{ form.hidden_tag() }}
{{ form_errors(form) }}
@@ -47,6 +47,7 @@
<i class="ui sign-in icon"></i>{{ _('Log In') }}
</button>
</form>
</div>
{%- endwith %}
{%- endblock form_outer %}
<div class="divider hidden"></div>

View File

@@ -1,6 +1,5 @@
{#
Copyright (C) 2020 TUGRAZ
Copyright (C) 2020 mojib wali.
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

View File

@@ -10,17 +10,20 @@
{%- 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 %}
<div id="deposit-form"></div>
{%- endblock 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() }}

View File

@@ -1,6 +1,5 @@
{#
Copyright (C) 2020 TUGRAZ
Copyright (C) 2020 mojib wali.
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
@@ -30,6 +29,16 @@
<h2>{{_ ("Repository")}}</h2>
<p class="bodytext">
<a href="https://tu-graz-library.github.io/docs-repository" title="Repository documentation" target="_blank">
{{_ ("Documentation")}} <i class="external alternate icon"></i>
</a>
<br>
<a
href="https://www.tugraz.at/fileadmin/user_upload/tugrazExternal/0c4b9c02-50a6-4a31-b5fd-24a0f93b69c5/TUGraz_Repository_Guide.pdf"
title="Quick guide" target="_blank">
{{_ ("Handbook")}} <i class="external alternate icon"></i>
</a>
<br>
<!-- <a href="{{ url_for('invenio_theme_tugraz.comingsoon') }}">
{{_ ("Impressum")}}<i class="angle right icon"></i>
</a>
@@ -69,13 +78,13 @@
<h2>{{_ ("Connected Services")}}</h2>
<p class="bodytext">
<a href="https://pure.tugraz.at" title="PURE">
<a href="https://pure.tugraz.at" title="PURE" target="_blank">
{{_ ("PURE")}} <i class="external alternate icon"></i></a><br>
<a href="http://campusonline.tugraz.at" title="CAMPUS online">
<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="CAMPUS online">
<a href="https://rdm.tugraz.at" title="Research Data Management" target="_blank">
{{_ ("Research Data Management")}} <i class="external alternate icon"></i></a><br>
</p>

View File

@@ -1,15 +1,19 @@
{#
Copyright (C) 2020 TUGRAZ
Copyright (C) 2020 mojib wali.
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.
#}
{% if not config.THEME_TUGRAZ_PRODUCTION %}
<div class="ui sticky test-instance">
<h4>{{_ ("Test Instance") }}</h4>
<p>{{_ ("This is the test instance of the TU Graz Repository.") }}</p>
</div>
{% endif %}
<header>
{%- block navbar %}
<nav>
{%- block navbar_header %}
@@ -20,7 +24,7 @@
<div class="ui grid stackable container">
<div class="three column row centered" style="padding-bottom: 0;">
<div class="two wide column main-menu-entry">
<a href="{{url_for('invenio_theme_tugraz.index')}}" title="Home">
<a href="{{url_for('invenio_theme_tugraz.index')}}" title="Home" class="no-decoration">
<span class="home-inline">
<svg shape-rendering="geometricPrecision" id="int-menu-q-home-icon"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg"
@@ -45,7 +49,7 @@
<!--TODO: remove this once above is uncommented-->
<div class="two wide column main-menu-entry">
<a href="{{url_for('invenio_app_rdm_records.deposit_search')}}">{{_ ("Uploads")}}</a>
<a href="{{url_for('invenio_app_rdm_records.deposit_search')}}" class="no-decoration">{{_ ("Uploads")}}</a>
</div>
</div>

View File

@@ -1,6 +1,5 @@
{#
Copyright (C) 2020 TUGRAZ
Copyright (C) 2020 mojib wali.
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
@@ -43,6 +42,12 @@
<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) %}
@@ -68,7 +73,7 @@
</div>
<h4>
<a href="{{ record_url }}">
<a href="{{ record_url }}" class="no-decoration">
{{r.metadata.title}}
</a>
</h4>
@@ -78,7 +83,7 @@
</p>
<p class="hidden-xs">
<a href="{{record_url}}">
<a href="{{record_url}}" class="no-decoration">
{{ r.metadata.description | striptags | truncate(300) }}
</a>
</p>
@@ -116,9 +121,11 @@
-->
{%- 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>
@@ -127,7 +134,7 @@
<!--contact us-->
<div class="ui segment" style="padding-bottom: 10px;">
<h4>{{_ ("Need help?")}}</h4>
{%- if config.INVENIO_THEME_TUGRAZ_CONTACT_FORM %}
{%- if config.THEME_TUGRAZ_CONTACT_FORM %}
<div style="padding-bottom: 10px;">
<a id="feedback-form" class="fluid ui button">
{{_ ("Contact us")}}

View File

@@ -7,9 +7,9 @@
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 %}
@@ -17,12 +17,34 @@
{%- set metadata = record.metadata %}
{%- block page_body %}
{% if permissions is defined and permissions.can_update_draft %}
<div
id="recordManagement"
data-recid='{{ record["id"] | tojson }}'>
<div class="banners">
{% if permissions is defined and permissions.can_edit %}
<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 %}
{% endif %}
{% if not record.versions.is_latest %}
<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">
@@ -33,9 +55,7 @@
<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>
{%- if metadata.version %}
<span class="label text-muted"> | Version {{ metadata.version }}</span>
{% endif %}
<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>
@@ -88,7 +108,7 @@
<div class="ui grid">
<div class="two column row top-bottom-padded font-small">
<div class="four wide column">
<p><b>Upload infromation</b></p>
<p><b>Upload information</b></p>
</div>
<div class="twelve wide column">
<span class="label text-muted">
@@ -98,7 +118,7 @@
</div>
</div>
{%- endblock record_footer -%}
{%- block jump -%}
<!-- {%- block jump -%}
<div class="ui grid">
<div class="centered row" id="jump-btn">
<a style="cursor: pointer;">
@@ -107,15 +127,15 @@
</a>
</div>
</div>
{%- endblock jump -%}
{%- endblock jump -%} -->
{%- endblock record_body %}
</div>
<div class="five wide column">
{% block record_sidebar %}
{%- include "invenio_app_rdm/records/details/side_bar.html" %}
<div style="text-align: center;">
{%- include "invenio_theme_tugraz/landingpage/doi.html" %}
</div>
{%- include "invenio_theme_tugraz/landingpage/doi.html" %}
</div>
{% endblock record_sidebar %}
</div>
</div>

View File

@@ -7,7 +7,11 @@
#}
{% if metadata.identifiers %}
{%- set id_doi = metadata.identifiers[0].identifier %}
{% for identifier in metadata.identifiers %}
{% if identifier.scheme == 'doi' %}
{%- set id_doi = identifier.identifier %}
<dd>
{% if id_doi %}
<span class="get-badge" data-toggle="tooltip" data-placement="bottom" style="cursor: pointer;"
@@ -34,3 +38,6 @@
{% endif %}
</dd>
{% endif %}
{% endfor %}
{% endif %}

View File

@@ -1,6 +1,5 @@
{#
Copyright (C) 2020 TUGRAZ
Copyright (C) 2020 mojib wali.
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
@@ -17,13 +16,13 @@
{%- for l in current_i18n.get_locales() %}
{%- if current_i18n.language != l.language %}
<a
href="{{ url_for('invenio_i18n.set_lang', lang_code=l.language) }}">{{ l.get_display_name().upper() [0:2]}}</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>
{%- endif %}
<div class="search-icon-header">
<a href="{{url_for('invenio_search_ui.search')}}">
<a href="{{url_for('invenio_search_ui.search')}}" class="no-decoration">
<svg class="short-menu-icon" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://www.w3.org/2000/svg" height="26.015" width="26.015" version="1.1"
xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"
@@ -61,7 +60,7 @@
<img height="51.862" src="{{ url_for('static', filename='images/library_logo.png')}}">
</div>
<div class="affiliation-text">
<a title="RDM" href="{{url_for('invenio_theme_tugraz.index')}}">
<a title="Home" href="{{url_for('invenio_theme_tugraz.index')}}" class="no-decoration">
TU GRAZ
<br>
{{_ ("REPOSITORY")}}
@@ -74,7 +73,7 @@
<!--Right-->
<div class="right floated right aligned six wide column">
<div class="affiliation-logo" id="int-header-logo">
<a href="https://www.tugraz.at" title="TU Graz Home" target="_blank">
<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-single">{{_ ("SCIENCE")}}</div>
<div class="affiliation-logo-claim-single">{{_ ("PASSION")}}</div>

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: invenio-theme-tugraz 1.0.4\n"
"Report-Msgid-Bugs-To: mojib.wali@tugraz.at\n"
"POT-Creation-Date: 2021-01-04 14:18+0100\n"
"POT-Creation-Date: 2021-04-08 08:50+0200\n"
"PO-Revision-Date: 2020-10-06 10:27+0200\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: de\n"
@@ -19,21 +19,21 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.0\n"
#: invenio_theme_tugraz/config.py:13 invenio_theme_tugraz/config.py:50
#: invenio_theme_tugraz/config.py:14 invenio_theme_tugraz/config.py:63
msgid "TU Graz Repository"
msgstr "TU Graz Repository"
#: invenio_theme_tugraz/config.py:53
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:31
#: invenio_theme_tugraz/config.py:66
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:30
msgid "Repository"
msgstr "Repository"
#: invenio_theme_tugraz/config.py:76
#: invenio_theme_tugraz/config.py:91
msgid "German"
msgstr "Deutsche"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:27
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:27
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:26
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:26
msgid "Invenio"
msgstr "Invenio"
@@ -46,8 +46,8 @@ msgid ""
"your research is stored safely for the future in TU Graz library for as "
"long as TU Graz library exists."
msgstr ""
"Ihre Forschung wird für die Zukunft sicher in der Bibliothek der TU Graz "
"gespeichert als solange die Bibliothek TU Graz existiert."
"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
msgid "Trusted"
@@ -58,8 +58,8 @@ msgid ""
"built and operated by CERN and OpenAIRE to ensure that everyone can join "
"in Open Science."
msgstr ""
"Gebaut und betrieben von CERN und OpenAIRE; um sicherzugehen, dass jedeR "
"Zugang zu Open Science hat"
"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
msgid "Citeable"
@@ -70,8 +70,8 @@ msgid ""
"every upload is assigned a Digital Object Identifier (DOI), to make them "
"citable and trackable."
msgstr ""
"Jeder Upload erhält eine DOI um sicherzustellen,dass er zitierbar und "
"auffindbar ist"
"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
msgid "No waiting time"
@@ -95,7 +95,7 @@ msgid ""
" via our restricted access mode."
msgstr ""
"Teilen Sie z.B. anonymisierte klinische Studiendaten nur mit "
"medizinischem Fachpersonalüber unseren eingeschränkten Zugriffsmodus."
"medizinischem Fachpersonal über unseren eingeschränkten Zugriffsmodus."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:8
msgid "Versioning"
@@ -103,7 +103,7 @@ msgstr "Versionierung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:8
msgid "Easily update your dataset with our versioning feature."
msgstr "Einfaches Updaten ihrer Datensätze mit unserere Versionierung."
msgstr "Einfaches Updaten ihrer Datensätze mit unserer Versionierung."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/benefits.html:9
msgid "Usage statisics"
@@ -113,177 +113,197 @@ msgstr "Nutzungsstatistiken"
msgid "All uploads display standards compliant usage statistics"
msgstr "Alle Uploads entsprechen den Standards der Nutzungsstatistiken."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:34
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:33
msgid "Documentation"
msgstr "Dokumentation"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:39
msgid "Handbook"
msgstr "Handbuch"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:44
msgid "Impressum"
msgstr "Imprint"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:38
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:48
msgid "Data protection"
msgstr "Datenschutzerklärung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:42
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:52
msgid "Feedback"
msgstr "Feedback"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:51
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:61
msgid "Features"
msgstr "Features"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:53
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:63
msgid "Scalability"
msgstr "Skalierbarkeit"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:55
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:65
msgid "Institutional integration"
msgstr "Institutionelle Einbindung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:57
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:67
msgid "Next Generation Repository"
msgstr "Repositorium der nächsten Generation"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:60
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:70
msgid "Repository Profiles"
msgstr "Repositorienprofile"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:62
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:72
msgid "Resilient"
msgstr "Resilient, widerstandsfähig"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:69
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:79
msgid "Connected Services"
msgstr "Verbundene Services "
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:73
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:83
msgid "PURE"
msgstr "PURE"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:76
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:86
msgid "CampusOnline"
msgstr "CampusOnline"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:79
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:89
msgid "Research Data Management"
msgstr "Forschungsdatenmanagement"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:86
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:96
msgid "Accessibility"
msgstr "Barrierefreiheit"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:87
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:97
msgid "Tipp:"
msgstr ""
msgstr "Tipp"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:87
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:97
msgid "Use Ctrl + and Crtl -"
msgstr "Verwenden Sie Strg+ und Strg-"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:87
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:97
msgid "to change the font size."
msgstr "Um die Schriftgröße zu ändern."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:35
#: 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 "Testumgebung"
#: 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 "Dies ist die Testumgebung des TU Graz Repositorys."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:39
msgid "Home"
msgstr "Startseite"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:48
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:52
msgid "Uploads"
msgstr "Hochladen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:24
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:27
msgid "Type and press enter to search"
msgstr "Suchbegriff eingeben und “Enter” drücken (?)"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:40
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:43
msgid "Recent uploads"
msgstr "Kürzlich hochgeladene Dateien"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:52
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:47
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/index.html:61
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/record_landing_page.html:33
msgid "Publication date"
msgstr "Datum der Veröffentlichung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:57
msgid "Version"
msgstr "Version"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:62
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:66
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/record_landing_page.html:38
msgid "Resource type"
msgstr "Art der Veröffentlichung"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:91
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:99
#, python-format
msgid ""
"\n"
" Uploaded on %(date)s\n"
" "
" Uploaded on %(date)s\n"
" "
msgstr "Hochgeladen am %(date)s\n"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:110
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:126
msgid "More"
msgstr "Mehr"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:119
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:136
msgid "Need help?"
msgstr "Brauchen Sie Hilfe?"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:123
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:140
msgid "Contact us"
msgstr "Kontaktiere uns"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:127
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:145
msgid "prioritizes all Recent uploads."
msgstr "Reiht die neuesten Uploads vor."
msgstr "reiht die neuesten Uploads vor."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:130
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:148
msgid "We can help with:"
msgstr "Wir können helfen bei:"
msgstr "Dabei können wir helfen:"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:135
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:153
msgid "Uploading your research data, software, preprints, etc."
msgstr "Hochladen Ihrer Forschungsdaten, Software, Preprints usw."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:136
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:154
msgid "One-on-one with"
msgstr "Eins-zu-eins mit"
msgstr "One-on-one mit"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:136
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:154
msgid "supporters."
msgstr "Unterstützern"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:137
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:155
msgid "Quota increases beyond our default policy."
msgstr "Erhöhung Ihres Kontingents über das vertraglich Zugesicherte hinaus."
msgstr "Quota Erhöhungen über unsere Standard Policy hinaus."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:138
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:156
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:143
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:161
msgid "Why use"
msgstr "Warum"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:67
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:66
#, fuzzy
msgid "REPOSITORY"
msgstr "Repository"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:69
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:68
msgid "LIBRARY & ARCHIVES"
msgstr "Bibliothek und Archiv"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:79
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:78
msgid "SCIENCE"
msgstr "Wissenschaft"
msgstr "WISSEN"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:79
msgid "PASSION"
msgstr "TECHNIK"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:80
msgid "PASSION"
msgstr "Leidenschaft"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:81
msgid "TECHNOLOGY"
msgstr "Technik"
msgstr "LEIDENSCHAFT"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:8
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:60
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:61
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:81
msgid "Sign up"
msgstr "Registrierung"
@@ -296,16 +316,16 @@ msgstr "Einloggen"
msgid "Sign out"
msgstr "Ausloggen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:24
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:23
msgid "Log in to Repository"
msgstr "Anmelden"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:32
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:30
#, python-format
msgid " Log in with %(type)s"
msgstr "Einloggen mit"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:36
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:35
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:55
msgid "Or"
msgstr "Oder"
@@ -314,12 +334,12 @@ msgstr "Oder"
msgid "Log In"
msgstr "Einloggen"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:59
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:60
#, python-format
msgid "New to %(sitename)s?"
msgstr "Neu im %(sitename)s?"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:69
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:70
msgid "Forgot password?"
msgstr "Passwort vergessen"
@@ -373,3 +393,31 @@ msgstr "RDM DOI Abzeichen"
msgid "DOI"
msgstr "DOI"
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:35
#, python-format
msgid ""
"\n"
" There is a %(link_start)snewer version%(link_end)s of the "
"record available.\n"
" "
msgstr ""
"Es ist eine %(link_start)sneuere Version%(link_end)s des Eintrags "
"verfügbar."
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:64
msgid "Open Access"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/doi.html:37
msgid "No minted DOI"
msgstr ""
#~ msgid "Version"
#~ msgstr "Version"
#~ msgid ""
#~ "\n"
#~ " Uploaded on %(date)s\n"
#~ " "
#~ msgstr "Hochgeladen am %(date)s\n"

View File

@@ -7,9 +7,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: invenio-theme-tugraz 1.3.1\n"
"Project-Id-Version: invenio-theme-tugraz 2.0.5\n"
"Report-Msgid-Bugs-To: mojib.wali@tugraz.at\n"
"POT-Creation-Date: 2021-01-04 14:18+0100\n"
"POT-Creation-Date: 2021-04-08 08:50+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,21 +18,21 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.9.0\n"
#: invenio_theme_tugraz/config.py:13 invenio_theme_tugraz/config.py:50
#: invenio_theme_tugraz/config.py:14 invenio_theme_tugraz/config.py:63
msgid "TU Graz Repository"
msgstr ""
#: invenio_theme_tugraz/config.py:53
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:31
#: invenio_theme_tugraz/config.py:66
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:30
msgid "Repository"
msgstr ""
#: invenio_theme_tugraz/config.py:76
#: invenio_theme_tugraz/config.py:91
msgid "German"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:27
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:27
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/accounts_base.html:26
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/base.html:26
msgid "Invenio"
msgstr ""
@@ -102,176 +102,196 @@ msgstr ""
msgid "All uploads display standards compliant usage statistics"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:34
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:33
msgid "Documentation"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:39
msgid "Handbook"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:44
msgid "Impressum"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:38
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:48
msgid "Data protection"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:42
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:52
msgid "Feedback"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:51
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:61
msgid "Features"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:53
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:63
msgid "Scalability"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:55
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:65
msgid "Institutional integration"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:57
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:67
msgid "Next Generation Repository"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:60
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:70
msgid "Repository Profiles"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:62
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:72
msgid "Resilient"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:69
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:79
msgid "Connected Services"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:73
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:83
msgid "PURE"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:76
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:86
msgid "CampusOnline"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:79
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:89
msgid "Research Data Management"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:86
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:96
msgid "Accessibility"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:87
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:97
msgid "Tipp:"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:87
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:97
msgid "Use Ctrl + and Crtl -"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:87
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/footer.html:97
msgid "to change the font size."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:35
#: 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:39
msgid "Home"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:48
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/header.html:52
msgid "Uploads"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:24
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:27
msgid "Type and press enter to search"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:40
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:43
msgid "Recent uploads"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:52
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:47
msgid "There are no public records to show."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:61
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/record_landing_page.html:33
msgid "Publication date"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:57
msgid "Version"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:62
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:66
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/record_landing_page.html:38
msgid "Resource type"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:91
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:99
#, python-format
msgid ""
"\n"
" Uploaded on %(date)s\n"
" "
" Uploaded on %(date)s\n"
" "
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:110
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:126
msgid "More"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:119
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:136
msgid "Need help?"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:123
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:140
msgid "Contact us"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:127
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:145
msgid "prioritizes all Recent uploads."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:130
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:148
msgid "We can help with:"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:135
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:153
msgid "Uploading your research data, software, preprints, etc."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:136
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:154
msgid "One-on-one with"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:136
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:154
msgid "supporters."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:137
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:155
msgid "Quota increases beyond our default policy."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:138
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:156
msgid "Scripts for automated uploading of larger datasets."
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:143
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/index.html:161
msgid "Why use"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:67
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:66
msgid "REPOSITORY"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:69
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:68
msgid "LIBRARY & ARCHIVES"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:79
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:78
msgid "SCIENCE"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:80
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:79
msgid "PASSION"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:81
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/navbar.html:80
msgid "TECHNOLOGY"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/header_login.html:8
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:60
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:61
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:81
msgid "Sign up"
msgstr ""
@@ -284,16 +304,16 @@ msgstr ""
msgid "Sign out"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:24
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:23
msgid "Log in to Repository"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:32
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:30
#, python-format
msgid " Log in with %(type)s"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:36
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:35
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/register_user.html:55
msgid "Or"
msgstr ""
@@ -302,12 +322,12 @@ msgstr ""
msgid "Log In"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:59
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:60
#, python-format
msgid "New to %(sitename)s?"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:69
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/accounts/login_user.html:70
msgid "Forgot password?"
msgstr ""
@@ -357,3 +377,20 @@ msgstr ""
msgid "DOI"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/detail.html:35
#, 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:64
msgid "Open Access"
msgstr ""
#: invenio_theme_tugraz/templates/invenio_theme_tugraz/landingpage/doi.html:37
msgid "No minted DOI"
msgstr ""

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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
@@ -12,4 +12,4 @@ This file is imported by ``invenio_theme_tugraz.__init__``,
and parsed by ``setup.py``.
"""
__version__ = "1.9.0"
__version__ = "2.0.7"

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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
@@ -9,10 +9,12 @@
"""invenio module for TUGRAZ theme."""
import binascii
from os import environ
from typing import Dict
import requests
from elasticsearch_dsl.utils import AttrDict
from flask import Blueprint, current_app, g, render_template
from flask import Blueprint, current_app, g, render_template, request
from flask_login import login_required
from flask_menu import current_menu
from invenio_app_rdm.records_ui.views.decorators import (
@@ -20,18 +22,17 @@ from invenio_app_rdm.records_ui.views.decorators import (
pass_record,
pass_record_files,
service,
user_permissions,
)
from invenio_app_rdm.records_ui.views.deposits import (
get_form_config,
get_search_url,
new_record,
)
from invenio_rdm_records.proxies import current_rdm_records
from invenio_rdm_records.resources.config import RDMDraftFilesResourceConfig
from invenio_rdm_records.resources.serializers import UIJSONSerializer
from invenio_rdm_records.services import RDMDraftFilesService
from .crypto import Cryptor
from .search import FrontpageRecordsSearch
@@ -50,6 +51,7 @@ def ui_blueprint(app):
blueprint.add_url_rule(routes["comingsoon"], view_func=comingsoon)
blueprint.add_url_rule(routes["deposit_create"], view_func=deposit_create)
blueprint.add_url_rule(routes["record_detail"], view_func=record_detail)
blueprint.add_url_rule(routes["getdoi"], view_func=retrieve_doi, methods=["POST"])
@blueprint.app_template_filter("make_dict_like")
def make_dict_like(value: str, key: str) -> Dict[str, str]:
@@ -82,22 +84,44 @@ def comingsoon():
def get_datacite_details():
"""Application credentials for DOI."""
url = current_app.config.get("INVENIO_DATACITE_URL") or ""
username = current_app.config.get("INVENIO_DATACITE_UNAME") or ""
password = current_app.config.get("INVENIO_DATACITE_PASS") or ""
prefix = current_app.config.get("INVENIO_DATACITE_PREFIX") or ""
password_iv, encrypted_password = Cryptor.encrypt(password, Cryptor.KEY)
prefix = environ.get("INVENIO_DATACITE_PREFIX")
suffix = environ.get("INVENIO_DATACITE_SUFFIX")
host_url = environ.get("INVENIO_SITE_HOSTNAME")
details = {
"datacite_url": url,
"datacite_uname": username,
"datacite_pass": binascii.b2a_base64(encrypted_password).rstrip(),
"datacite_prefix": prefix,
"datacite_password_iv": password_iv,
"datacite_suffix": suffix,
"datacite_host_url": host_url,
}
return details
@login_required
def retrieve_doi():
"""Retrieve DOI from datacite API."""
doi_metadata = request.get_json()
url = environ.get("INVENIO_DATACITE_URL")
username = environ.get("INVENIO_DATACITE_UNAME")
password = environ.get("INVENIO_DATACITE_PASS")
doi_response = requests.post(
url,
auth=(username, password.encode('utf-8')),
json=doi_metadata,
)
response_data = {"code": doi_response.status_code}
try:
doi_response.raise_for_status()
response_data["data"] = doi_response.json()
except requests.exceptions.RequestException:
response_data["errors"] = doi_response.json()["errors"]
return response_data, response_data["code"]
#
# TODO: change this override behaviour once
# PR is merged:
@@ -124,9 +148,7 @@ def deposit_create():
@pass_draft
def deposit_edit(draft=None, pid_value=None):
"""Edit an existing deposit."""
# TODO: should be embedded in record service
files_service = RDMDraftFilesService()
files_list = files_service.list_files(
files_list = current_rdm_records.draft_files_service.list_files(
id_=pid_value,
identity=g.identity,
links_config=RDMDraftFilesResourceConfig.links_config,
@@ -135,14 +157,6 @@ def deposit_edit(draft=None, pid_value=None):
serializer = UIJSONSerializer()
record = serializer.serialize_object_to_dict(draft.to_dict())
# TODO: get the `is_published` field when reading the draft
from invenio_pidstore.errors import PIDUnregistered
try:
service().draft_cls.pid.resolve(pid_value, registered_only=True)
record["is_published"] = True
except PIDUnregistered:
record["is_published"] = False
forms_config = get_form_config(apiUrl=f"/api/records/{pid_value}/draft")
forms_config["data_cite"] = get_datacite_details()
@@ -152,13 +166,13 @@ def deposit_edit(draft=None, pid_value=None):
record=record,
files=files_list.to_dict(),
searchbar_config=dict(searchUrl=get_search_url()),
permissions=draft.has_permissions_to(['new_version'])
)
@pass_record
@pass_record_files
@user_permissions(actions=['update_draft'])
def record_detail(record=None, files=None, pid_value=None, permissions=None):
def record_detail(record=None, files=None, pid_value=None):
"""Record detail page (aka landing page)."""
files_dict = None if files is None else files.to_dict()
return render_template(
@@ -166,5 +180,5 @@ def record_detail(record=None, files=None, pid_value=None, permissions=None):
record=UIJSONSerializer().serialize_object_to_dict(record.to_dict()),
pid=pid_value,
files=files_dict,
permissions=permissions,
permissions=record.has_permissions_to(['edit', 'new_version']),
)

View File

@@ -32,7 +32,7 @@ theme = WebpackThemeBundle(
'prop-types': '^15.7.2',
'react-dnd': '^11.1.3',
'react-dnd-html5-backend': '^11.1.3',
'react-invenio-deposit': '^0.11.10',
'react-invenio-deposit': '^0.12.0',
'react-invenio-forms': '^0.6.3',
'react-dropzone': "^11.0.3",
'yup': '^0.27.0',
@@ -40,7 +40,7 @@ theme = WebpackThemeBundle(
'@ckeditor/ckeditor5-react': '^2.1.0',
# datacite - rest api plugin
'datacite-rest': '^0.1.4',
'datacite-rest': '^0.1.8',
},
)

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -3,7 +3,7 @@
#
# Copyright (C) 2019-2020 CERN.
# Copyright (C) 2019-2020 Northwestern University.
# Copyright (C) 2020 Graz University of Technology.
# 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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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
@@ -20,9 +20,9 @@ tests_require = [
"invenio-app>=1.3.0,<2.0.0",
]
# Should follow inveniosoftware/invenio versions
invenio_search_version = ">=1.4.0,<2.0.0"
invenio_db_version = ">=1.0.5,<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}"],
@@ -58,10 +58,9 @@ install_requires = [
"invenio-i18n>=1.2.0",
"elasticsearch_dsl>=7.2.1",
"invenio_search>=1.4.0,<2.0.0",
"invenio_config_tugraz>=0.5.1",
# keep this package updated.
"invenio_app_rdm<=1.0.0",
# needed for DOI credential encryption
"pycryptodome==3.10.1",
"invenio_app_rdm==2.0.1",
]
packages = find_packages()

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright (C) 2020 mojib wali.
# 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

View File

@@ -1,6 +1,6 @@
# # -*- coding: utf-8 -*-
# #
# # Copyright (C) 2020 mojib wali.
# # 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