Skip to content

Commit 5cd6563

Browse files
committed
export endpoint bugfixes
1 parent d8cdf45 commit 5cd6563

2 files changed

Lines changed: 17 additions & 1 deletion

File tree

server/services/exportMetadata.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ function export($export_format, $metadata_json) {
2727
echo json_encode($result);
2828
}
2929

30+
if ($format == "bibtex") {
31+
$format = "bib";
32+
}
33+
3034
if (isset($download) & $download==true ) {
3135
header('Content-type: application/text');
3236
header('Content-Disposition: attachment; filename=metadata.' . $format);

server/workers/api/src/apis/export.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,17 @@
44
from flask_restx import Namespace, Resource, fields
55
from bibtexparser.bwriter import BibTexWriter
66
from bibtexparser.bibdatabase import BibDatabase
7+
import dateutil.parser as parser
78

89
export_ns = Namespace("export", description="metadata export API operations")
910

11+
12+
def parse_date(date):
13+
parsed_date = {}
14+
tmp = parser.parse(date)
15+
parsed_date["year"] = tmp.year
16+
return parsed_date
17+
1018
def transform2bibtex(metadata):
1119
# TODO: add mapping from resulttype to ARTICLETYPE
1220
# possible published_in parser
@@ -15,7 +23,11 @@ def transform2bibtex(metadata):
1523
# use different field for ID
1624
title = metadata.get("title", "")
1725
author = metadata.get("authors", "")
18-
year = metadata.get("year", "")
26+
if year in metadata:
27+
parsed_date = parse_date(metadata.get("year", ""))
28+
year = parsed_date.year
29+
else:
30+
year = ""
1931
doi = metadata.get("doi", "")
2032
id = metadata.get("id", "")
2133
published_in = metadata.get("published_in", "")

0 commit comments

Comments
 (0)