commit 820d1cf28f39305e6f9281b3524a1ffabb8e9498
parent 89dbc278bd9b17b7997f61daecf861d112447e3a
Author: Dan Stillman <dstillman@zotero.org>
Date: Sun, 9 Aug 2009 21:02:34 +0000
Use only SQL portion of dates to sort
Diffstat:
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/chrome/content/zotero/xpcom/itemTreeView.js b/chrome/content/zotero/xpcom/itemTreeView.js
@@ -934,6 +934,23 @@ Zotero.ItemTreeView.prototype.sort = function(itemID)
}
switch (columnField) {
+ case 'date':
+ fieldA = a.getField('date', true, true).substr(0, 10);
+ fieldB = b.getField('date', true, true).substr(0, 10);
+
+ // Display rows with empty values last
+ cmp = (fieldA == '' && fieldB != '') ? -1 :
+ (fieldA != '' && fieldB == '') ? 1 : 0;
+ if (cmp) {
+ return cmp;
+ }
+
+ cmp = (fieldA > fieldB) ? -1 : (fieldA < fieldB) ? 1 : 0;
+ if (cmp) {
+ return cmp;
+ }
+ break;
+
case 'type':
var typeA = Zotero.getString('itemTypes.'+Zotero.ItemTypes.getName(a.ref.itemTypeID));
var typeB = Zotero.getString('itemTypes.'+Zotero.ItemTypes.getName(b.ref.itemTypeID));
@@ -988,7 +1005,6 @@ Zotero.ItemTreeView.prototype.sort = function(itemID)
return cmp;
}
- //cmp = (fieldA > fieldB) ? -1 : (fieldA < fieldB) ? 1 : 0;
cmp = collation.compareString(1, fieldB, fieldA);
if (cmp) {
return cmp;
@@ -996,8 +1012,8 @@ Zotero.ItemTreeView.prototype.sort = function(itemID)
}
if (columnField != 'date') {
- fieldA = a.getField('date', true, true);
- fieldB = b.getField('date', true, true);
+ fieldA = a.getField('date', true, true).substr(0, 10);
+ fieldB = b.getField('date', true, true).substr(0, 10);
// Display rows with empty values last
cmp = (fieldA == '' && fieldB != '') ? -1 :