Merge branch '3.0' into 3.1
Conflicts: chrome/content/zotero/xpcom/date.js
This commit is contained in:
commit
995091d0a1
1 changed files with 23 additions and 19 deletions
|
@ -228,29 +228,30 @@ Zotero.Date = new function(){
|
||||||
var _dayRe = null;
|
var _dayRe = null;
|
||||||
|
|
||||||
function strToDate(string) {
|
function strToDate(string) {
|
||||||
// Parse 'yesterday'/'today'/'tomorrow'
|
var date = {};
|
||||||
var lc = (string + '').toLowerCase();
|
|
||||||
if (lc == 'yesterday' || (Zotero.getString && lc === Zotero.getString('date.yesterday'))) {
|
|
||||||
string = Zotero.Date.dateToSQL(new Date(new Date().getTime() - 86400000)).substr(0, 10);
|
|
||||||
}
|
|
||||||
else if (lc == 'today' || (Zotero.getString && lc == Zotero.getString('date.today'))) {
|
|
||||||
string = Zotero.Date.dateToSQL(new Date()).substr(0, 10);
|
|
||||||
}
|
|
||||||
else if (lc == 'tomorrow' || (Zotero.getString && lc == Zotero.getString('date.tomorrow'))) {
|
|
||||||
string = Zotero.Date.dateToSQL(new Date(new Date().getTime() + 86400000)).substr(0, 10);
|
|
||||||
}
|
|
||||||
|
|
||||||
var date = {
|
|
||||||
order: ''
|
|
||||||
};
|
|
||||||
var parts = [];
|
|
||||||
|
|
||||||
// skip empty things
|
// skip empty things
|
||||||
if(!string) {
|
if(!string) {
|
||||||
return date;
|
return date;
|
||||||
}
|
}
|
||||||
|
|
||||||
string = string.toString().replace(/^\s+/, "").replace(/\s+$/, "").replace(/\s+/, " ");
|
date.order = '';
|
||||||
|
var parts = [];
|
||||||
|
|
||||||
|
// Parse 'yesterday'/'today'/'tomorrow'
|
||||||
|
var lc = (string + '').toLowerCase();
|
||||||
|
if (lc == 'yesterday' || (Zotero.getString && lc === Zotero.getString('date.yesterday'))) {
|
||||||
|
string = Zotero.Date.dateToSQL(new Date(Date.now() - 1000*60*60*24)).substr(0, 10);
|
||||||
|
}
|
||||||
|
else if (lc == 'today' || (Zotero.getString && lc == Zotero.getString('date.today'))) {
|
||||||
|
string = Zotero.Date.dateToSQL(new Date()).substr(0, 10);
|
||||||
|
}
|
||||||
|
else if (lc == 'tomorrow' || (Zotero.getString && lc == Zotero.getString('date.tomorrow'))) {
|
||||||
|
string = Zotero.Date.dateToSQL(new Date(Date.now() + 1000*60*60*24)).substr(0, 10);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
string = string.toString().replace(/^\s+|\s+$/g, "").replace(/\s+/, " ");
|
||||||
|
}
|
||||||
|
|
||||||
// first, directly inspect the string
|
// first, directly inspect the string
|
||||||
var m = _slashRe.exec(string);
|
var m = _slashRe.exec(string);
|
||||||
|
@ -442,13 +443,16 @@ Zotero.Date = new function(){
|
||||||
|
|
||||||
// clean up date part
|
// clean up date part
|
||||||
if(date.part) {
|
if(date.part) {
|
||||||
date.part = date.part.replace(/^[^A-Za-z0-9]+/, "").replace(/[^A-Za-z0-9]+$/, "");
|
date.part = date.part.replace(/^[^A-Za-z0-9]+|[^A-Za-z0-9]+$/g, "");
|
||||||
}
|
}
|
||||||
|
|
||||||
if(date.part === "" || date.part == undefined) {
|
if(date.part === "" || date.part == undefined) {
|
||||||
delete date.part;
|
delete date.part;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//make sure year is always a string
|
||||||
|
if(date.year || date.year === 0) date.year += '';
|
||||||
|
|
||||||
return date;
|
return date;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -787,4 +791,4 @@ Zotero.Date = new function(){
|
||||||
}
|
}
|
||||||
return _localeDateOrder;
|
return _localeDateOrder;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue