From 475b290600f630257a9cc5e4d8367b9a015756e6 Mon Sep 17 00:00:00 2001 From: Dan Stillman Date: Sun, 24 Feb 2013 03:39:14 -0500 Subject: [PATCH] Revert "Merge pull request #252 from aurimasv/patch-1" This reverts commit d2e42bda299c2e16fe88a08c0378bf6008146903, reversing changes made to 8f263d0fd9a9a67eca43b6febd99be9d727ffdbf. --- chrome/content/zotero/xpcom/duplicates.js | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/chrome/content/zotero/xpcom/duplicates.js b/chrome/content/zotero/xpcom/duplicates.js index a9ffa96149..79953538ae 100644 --- a/chrome/content/zotero/xpcom/duplicates.js +++ b/chrome/content/zotero/xpcom/duplicates.js @@ -117,8 +117,8 @@ Zotero.Duplicates.prototype._findDuplicates = function () { } str = Zotero.Utilities.removeDiacritics(str) - .replace(/[ !-/:-@[-`{-~]+/g, ' ') // Convert (ASCII) punctuation to spaces - .trim() + .replace(/[!-/:-@[-`{-~]/g, ' ') // Convert (ASCII) punctuation to spaces + .replace(/ +/, ' ') // Normalize spaces .toLowerCase(); return str; @@ -194,7 +194,7 @@ Zotero.Duplicates.prototype._findDuplicates = function () { var isbnCache = {}; if (rows) { for each(var row in rows) { - isbnCache[row.itemID] = row.value.replace(/[^\dX]+/ig, '').toUpperCase(); //ignore formatting + isbnCache[row.itemID] = row.value; } } processRows(); @@ -209,7 +209,7 @@ Zotero.Duplicates.prototype._findDuplicates = function () { var doiCache = {}; if (rows) { for each(var row in rows) { - doiCache[row.itemID] = row.value.trim(); + doiCache[row.itemID] = row.value; } } processRows(); @@ -279,7 +279,6 @@ Zotero.Duplicates.prototype._findDuplicates = function () { } // Check for at least one match on last name + first initial of first name - var aCreatorRows, bCreatorRows; if (typeof creatorRowsCache[a.itemID] != 'undefined') { aCreatorRows = creatorRowsCache[a.itemID]; } @@ -288,7 +287,7 @@ Zotero.Duplicates.prototype._findDuplicates = function () { + "JOIN creators USING (creatorID) " + "JOIN creatorData USING (creatorDataID) " + "WHERE itemID=? ORDER BY orderIndex LIMIT 10"; - aCreatorRows = Zotero.DB.query(sql, a.itemID); + var aCreatorRows = Zotero.DB.query(sql, a.itemID); creatorRowsCache[a.itemID] = aCreatorRows; } @@ -301,12 +300,12 @@ Zotero.Duplicates.prototype._findDuplicates = function () { + "JOIN creators USING (creatorID) " + "JOIN creatorData USING (creatorDataID) " + "WHERE itemID=? ORDER BY orderIndex LIMIT 10"; - bCreatorRows = Zotero.DB.query(sql, b.itemID); + var bCreatorRows = Zotero.DB.query(sql, b.itemID); creatorRowsCache[b.itemID] = bCreatorRows; } // Match if no creators - if (!aCreatorRows && !bCreatorRows) { + if (!aCreatorRows && !bCreatorRows.length) { return 1; } @@ -316,11 +315,11 @@ Zotero.Duplicates.prototype._findDuplicates = function () { for each(var aCreatorRow in aCreatorRows) { var aLastName = normalizeString(aCreatorRow.lastName); - var aFirstInitial = aCreatorRow.fieldMode == 0 ? normalizeString(aCreatorRow.firstName).charAt(0) : false; + var aFirstInitial = aCreatorRow.fieldMode == 0 ? normalizeString(aCreatorRow.firstName.substr(1)) : false; for each(var bCreatorRow in bCreatorRows) { var bLastName = normalizeString(bCreatorRow.lastName); - var bFirstInitial = bCreatorRow.fieldMode == 0 ? normalizeString(bCreatorRow.firstName).charAt(0) : false; + var bFirstInitial = bCreatorRow.fieldMode == 0 ? normalizeString(bCreatorRow.firstName.substr(1)) : false; if (aLastName === bLastName && aFirstInitial === bFirstInitial) { return 1;