Use only SQL portion of dates to sort

This commit is contained in:
Dan Stillman 2009-08-09 21:02:34 +00:00
parent 89dbc278bd
commit 820d1cf28f

View File

@ -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 :