mirror of
				https://github.com/TriliumNext/Notes.git
				synced 2025-10-31 21:11:30 +08:00 
			
		
		
		
	Merge pull request #451 from jaimeferj/bugfix/parseDatesOnSort
Fixes issue #441: Dates were not parsed on sorting
This commit is contained in:
		
						commit
						0ec3232c81
					
				| @ -68,8 +68,16 @@ class OrderByAndLimitExp extends Expression { | |||||||
|                     return larger; |                     return larger; | ||||||
|                 } |                 } | ||||||
| 
 | 
 | ||||||
|  |                  | ||||||
|  |                 // if both are dates, then parse them for dates comparison
 | ||||||
|  |                 if (typeof valA === "string" && this.isDate(valA) && | ||||||
|  |                     typeof valB === "string" && this.isDate(valB)) { | ||||||
|  |                     valA = new Date(valA); | ||||||
|  |                     valB = new Date(valB); | ||||||
|  |                 } | ||||||
|  | 
 | ||||||
|                 // if both are numbers, then parse them for numerical comparison
 |                 // if both are numbers, then parse them for numerical comparison
 | ||||||
|                 if (typeof valA === "string" && this.isNumber(valA) && |                 else if (typeof valA === "string" && this.isNumber(valA) && | ||||||
|                     typeof valB === "string" && this.isNumber(valB)) { |                     typeof valB === "string" && this.isNumber(valB)) { | ||||||
|                     valA = parseFloat(valA); |                     valA = parseFloat(valA); | ||||||
|                     valB = parseFloat(valB); |                     valB = parseFloat(valB); | ||||||
| @ -99,6 +107,10 @@ class OrderByAndLimitExp extends Expression { | |||||||
|         return noteSet; |         return noteSet; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     isDate(date: number | string) { | ||||||
|  |       return (new Date(date) !== "Invalid Date") && !isNaN(new Date(date)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     isNumber(x: number | string) { |     isNumber(x: number | string) { | ||||||
|         if (typeof x === 'number') { |         if (typeof x === 'number') { | ||||||
|             return true; |             return true; | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Elian Doran
						Elian Doran