From 3a9adcc25ed1f1e410fe15abb917ccc87faa48bf Mon Sep 17 00:00:00 2001 From: Simon Kornblith Date: Sat, 20 Nov 2010 22:16:21 +0000 Subject: [PATCH] closes #1747, Improvements to OpenURL ContextObject support patch thanks to Avram --- chrome/content/zotero/xpcom/openurl.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/chrome/content/zotero/xpcom/openurl.js b/chrome/content/zotero/xpcom/openurl.js index 0b2d116eb6..d23c30dc78 100644 --- a/chrome/content/zotero/xpcom/openurl.js +++ b/chrome/content/zotero/xpcom/openurl.js @@ -133,7 +133,7 @@ Zotero.OpenURL = new function() { if(item.journalAbbreviation) co += _mapTag(item.journalAbbreviation, "stitle", version); if(item.volume) co += _mapTag(item.volume, "volume", version); if(item.issue) co += _mapTag(item.issue, "issue", version); - } else if(item.itemType == "book" || item.itemType == "bookSection") { + } else if(item.itemType == "book" || item.itemType == "bookSection" || item.itemType == "conferencePaper") { if(version == "0.1") { co += "&genre=book"; } else { @@ -143,6 +143,10 @@ Zotero.OpenURL = new function() { if(item.itemType == "book") { co += "&rft.genre=book"; if(item.title) co += _mapTag(item.title, (version == "0.1" ? "title" : "btitle"), version); + } else if (item.itemType == "conferencePaper") { + co += "&rft.genre=proceeding"; + if(item.title) co += _mapTag(item.title, "atitle", version) + if(item.proceedingsTitle) co += _mapTag(item.proceedingsTitle, (version == "0.1" ? "title" : "btitle"), version); } else { co += "&rft.genre=bookitem"; if(item.title) co += _mapTag(item.title, "atitle", version) @@ -198,6 +202,7 @@ Zotero.OpenURL = new function() { co += _mapTag(Zotero.Date.strToISO(item.date), (item.itemType == "patent" ? "appldate" : "date"), version); } if(item.pages) co += _mapTag(item.pages, "pages", version); + if(item.numPages) co += _mapTag(item.numPages, "tpages", version); if(item.ISBN) co += _mapTag(item.ISBN, "isbn", version); if(item.ISSN) co += _mapTag(item.ISSN, "issn", version); @@ -369,6 +374,8 @@ Zotero.OpenURL = new function() { item.publisher = value; } else if(key == "rft.place") { item.place = value; + } else if(key == "rft.tpages") { + item.numPages = value; } else if(key == "rft.edition") { item.edition = value; } else if(key == "rft.series") { @@ -453,4 +460,4 @@ Zotero.OpenURL = new function() { return ""; } } -} \ No newline at end of file +}