Skip to content

Commit

Permalink
fix issue #2894: sort alphabetical will now parse float values starti…
Browse files Browse the repository at this point in the history
…ng at all titles and compare these.
  • Loading branch information
dredav authored and Rokt33r committed May 9, 2019
1 parent 12229a1 commit 5b63bed
Showing 1 changed file with 19 additions and 0 deletions.
19 changes: 19 additions & 0 deletions browser/main/NoteList/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,30 @@ const { remote } = require('electron')
const { dialog } = remote
const WP_POST_PATH = '/wp/v2/posts'

const matchStartingTitleNumber = new RegExp('^([0-9]*\.?[0-9]+).*$')

function sortByCreatedAt (a, b) {
return new Date(b.createdAt) - new Date(a.createdAt)
}

function sortByAlphabetical (a, b) {
const matchA = matchStartingTitleNumber.exec(a.title)
const matchB = matchStartingTitleNumber.exec(b.title)

if (matchA && matchA.length === 2 && matchB && matchB.length === 2) {
// Both note titles are starting with a float. We will compare it now.
const floatA = parseFloat(matchA[1])
const floatB = parseFloat(matchB[1])

if (floatA < floatB) {
return -1
} else if (floatA > floatB) {
return 1
}

// The float values are equal. We will compare the full title.
}

return a.title.localeCompare(b.title)
}

Expand Down

0 comments on commit 5b63bed

Please sign in to comment.