www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules | README | LICENSE

commit 939719866ff0bbbb2824b9eee1d6edb6b419a6ae
parent a57dd18afa22c3c5087f2d54d41dc56556e86a35
Author: Dan Stillman <dstillman@zotero.org>
Date:   Thu, 22 Nov 2012 22:51:10 -0500

Fixes #199, Don't lowercase snapshot filenames

@aurimasv, let me know if this looks OK to you

Diffstat:
Mchrome/content/zotero/webpagedump/common.js | 2+-
Mchrome/content/zotero/webpagedump/domsaver.js | 15++++++++-------
Mchrome/content/zotero/xpcom/attachments.js | 5+++--
3 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/chrome/content/zotero/webpagedump/common.js b/chrome/content/zotero/webpagedump/common.js @@ -357,7 +357,7 @@ var wpdCommon = { // replace illegal characters // and shorten long file names getValidFileName: function (aFileName) { - aFileName = Zotero.File.getValidFileName(aFileName).toLowerCase(); + aFileName = Zotero.File.getValidFileName(aFileName); return Zotero.File.truncateFileName(aFileName, WPD_MAX_FILENAME_LENGTH); }, diff --git a/chrome/content/zotero/webpagedump/domsaver.js b/chrome/content/zotero/webpagedump/domsaver.js @@ -675,7 +675,7 @@ var wpdDOMSaver = { //returns a unique file name and registers it getUniqueFileNameAndRegister: function(fileName, sourceURL, content) { fileName = this.checkForEqualFilenames( - wpdCommon.getValidFileName(fileName).toLowerCase(), + wpdCommon.getValidFileName(fileName), sourceURL); this.registerFile(fileName, sourceURL, content); return fileName; @@ -683,7 +683,7 @@ var wpdDOMSaver = { //register filename, so we don't overwrite them later registerFile: function (newFileName, sourceURL, content) { - this.fileInfo[newFileName] = { + this.fileInfo[newFileName.toLowerCase()] = { url: sourceURL, downloaded: content } @@ -691,11 +691,12 @@ var wpdDOMSaver = { // is the file registered (e.g. downloaded)? isFileRegistered: function (newFileName) { - if (this.fileInfo[newFileName] != undefined) return true; + if (this.fileInfo[newFileName.toLowerCase()] != undefined) return true; return false; }, isDownloaded: function(fileName) { + fileName = fileName.toLowerCase(); if(!this.fileInfo[fileName]) return; return this.fileInfo[fileName].downloaded; }, @@ -705,16 +706,16 @@ var wpdDOMSaver = { // if no aURLSpec is passed, this generates a unique file name checkForEqualFilenames: function (newFileName, aURLSpec) { if (this.isFileRegistered(newFileName)) { - if (!aURLSpec || this.fileInfo[newFileName]["url"] != aURLSpec) { + if (!aURLSpec || this.fileInfo[newFileName.toLowerCase()]["url"] != aURLSpec) { // the file is already registered but from a different location // => probably not the same file, so we have to find a different name it (e.g. filename_001.ext) var seq = 1; var fileLR = wpdCommon.splitFileName(newFileName); if (!fileLR[1]) fileLR[1] = "dat"; newFileName = fileLR[0] + "_" + wpdCommon.addLeftZeros(seq++, 3) + "." + fileLR[1]; - while (this.fileInfo[newFileName] != undefined) { + while (this.fileInfo[newFileName.toLowerCase()] != undefined) { // is the file already registered with the new name? - if (aURLSpec && this.fileInfo[newFileName]["url"] == aURLSpec) return newFileName; // Yes -> so it�s already downloaded and we are finished + if (aURLSpec && this.fileInfo[newFileName.toLowerCase()]["url"] == aURLSpec) return newFileName; // Yes -> so it's already downloaded and we are finished newFileName = fileLR[0] + "_" + wpdCommon.addLeftZeros(seq++, 3) + "." + fileLR[1]; // No -> "increment" filename } } @@ -734,7 +735,7 @@ var wpdDOMSaver = { var aURL = wpdCommon.convertURLToObject(aURLSpec); // generate a filename - var newFileName = aURL.fileName.toLowerCase(); + var newFileName = aURL.fileName; if (!newFileName) newFileName = "untitled"; // same name but different location? newFileName = this.getUniqueFileNameAndRegister(newFileName, aURLSpec); diff --git a/chrome/content/zotero/xpcom/attachments.js b/chrome/content/zotero/xpcom/attachments.js @@ -547,8 +547,9 @@ Zotero.Attachments = new function(){ file.initWithFile(destDir); var fileName = Zotero.File.truncateFileName( - _getFileNameFromURL(url, mimeType).toLowerCase(), - 100); //make sure this matches WPD settings in webpagedump/common.js + _getFileNameFromURL(url, mimeType), + 100 //make sure this matches WPD settings in webpagedump/common.js + ); file.append(fileName) if (mimeType == 'application/pdf') {