diff --git a/Markdown Item URI with Citekey.js b/Markdown Item URI with Citekey.js index 6673230..0a85380 100644 --- a/Markdown Item URI with Citekey.js +++ b/Markdown Item URI with Citekey.js @@ -8,7 +8,7 @@ "maxVersion":"", "priority":200, "inRepository":false, - "lastUpdated":"2020-10-14" + "lastUpdated":"2020-11-30" } @@ -20,7 +20,7 @@ var year = date && !isNaN(date) ? date + ". " : (typeof item.date == 'undefined'? "" : item.date + ". "); var library_id = item.libraryID ? item.libraryID : ""; - var author_lastname = item.creators[0].lastName ? item.creators[0].lastName + ". " : ""; + var author_lastname = getValidAuthor(item); var title = item.title ? "*" + item.title + "*" : ""; var key = item.key; var citekey = item.citationKey ? `[[${item.citationKey}]]` : ""; @@ -28,3 +28,12 @@ Zotero.write(`[${author_lastname}${year}${title}](zotero://select/items/${library_id}_${key})${citekey}`); } } + + function getValidAuthor(item){ + if(item.creators && item.creators[0] && item.creators[0].lastName){ + return item.creators[0].lastName + ". "; + }else{ + return ""; + } + + } diff --git a/Markdown Item URI.js b/Markdown Item URI.js index 21c0880..55144fb 100644 --- a/Markdown Item URI.js +++ b/Markdown Item URI.js @@ -8,7 +8,7 @@ "maxVersion":"", "priority":200, "inRepository":false, - "lastUpdated":"2020-10-15" + "lastUpdated":"2020-11-30" } @@ -16,14 +16,23 @@ var item; while(item = Zotero.nextItem()) { var date = Zotero.Utilities.strToDate(item.date).year; - + var year = date && !isNaN(date) ? date + ". " : (typeof item.date == 'undefined'? "" : item.date + ". "); var library_id = item.libraryID ? item.libraryID : ""; - var author_lastname = item.creators[0].lastName ? item.creators[0].lastName + ". " : ""; + var author_lastname = getValidAuthor(item); var title = item.title ? "*" + item.title + "*" : ""; var key = item.key; Zotero.write(`[${author_lastname}${year}${title}](zotero://select/items/${library_id}_${key})`); } } + + function getValidAuthor(item){ + if(item.creators && item.creators[0] && item.creators[0].lastName){ + return item.creators[0].lastName + ". "; + }else{ + return ""; + } + + }