From ac8d88f08296aeceedb116e4577a1f6e8e514a9f Mon Sep 17 00:00:00 2001 From: Robbie Antenesse Date: Fri, 10 May 2019 10:08:49 -0600 Subject: [PATCH] Update simpleDefinition to definition and longDefinition to details --- src/constants.js | 4 ++-- src/js/dictionaryManagement.js | 5 ++++- src/js/render.js | 14 ++++++------- src/js/search.js | 38 +++++++++++++++++----------------- src/js/setupListeners.js | 4 ++-- src/js/utilities.js | 4 ++-- src/js/wordManagement.js | 8 +++---- 7 files changed, 40 insertions(+), 37 deletions(-) diff --git a/src/constants.js b/src/constants.js index 11abc87..d1a7a58 100644 --- a/src/constants.js +++ b/src/constants.js @@ -37,8 +37,8 @@ export const DEFAULT_DICTIONARY = { name: '', pronunciation: '', partOfSpeech: '', - simpleDefinition: '', - longDefinition: '', + definition: '', + details: '', wordId: 0 }, */ ], diff --git a/src/js/dictionaryManagement.js b/src/js/dictionaryManagement.js index bf466f6..92d01e6 100644 --- a/src/js/dictionaryManagement.js +++ b/src/js/dictionaryManagement.js @@ -99,7 +99,10 @@ export function migrateDictionary() { const fixStupidOldNonsense = string => string.replace(/"/g, '"').replace(/'/g, "'").replace(/\/g, '\\').replace(/
/g, '\n'); window.currentDictionary.description = fixStupidOldNonsense(window.currentDictionary.description); window.currentDictionary.words = window.currentDictionary.words.map(word => { - word.longDefinition = fixStupidOldNonsense(word.longDefinition); + word.definition = word.simpleDefinition; + delete word.simpleDefinition; + word.details = fixStupidOldNonsense(word.longDefinition); + delete word.longDefinition; return word; }); window.currentDictionary = Object.assign({}, DEFAULT_DICTIONARY, window.currentDictionary); diff --git a/src/js/render.js b/src/js/render.js index 9bcbe29..76be41b 100644 --- a/src/js/render.js +++ b/src/js/render.js @@ -154,7 +154,7 @@ export function renderWords() { // words.slice(pageStart, pageEnd).forEach(originalWord => { words.forEach(originalWord => { - let detailsMarkdown = removeTags(originalWord.longDefinition); + let detailsMarkdown = removeTags(originalWord.details); const references = detailsMarkdown.match(/\{\{.+?\}\}/g); if (references && Array.isArray(references)) { new Set(references).forEach(reference => { @@ -170,8 +170,8 @@ export function renderWords() { name: removeTags(originalWord.name), pronunciation: removeTags(originalWord.pronunciation), partOfSpeech: removeTags(originalWord.partOfSpeech), - simpleDefinition: removeTags(originalWord.simpleDefinition), - longDefinition: detailsMarkdown, + definition: removeTags(originalWord.definition), + details: detailsMarkdown, wordId: originalWord.wordId, }); wordsHTML += `
@@ -186,9 +186,9 @@ export function renderWords() {
-
${word.simpleDefinition}
+
${word.definition}
- ${md(word.longDefinition)} + ${md(word.details)}
`; @@ -261,10 +261,10 @@ export function renderEditForm(wordId = false) {
Save Changes diff --git a/src/js/search.js b/src/js/search.js index b643594..68c9b02 100644 --- a/src/js/search.js +++ b/src/js/search.js @@ -44,18 +44,18 @@ export function getMatchingSearchWords() { searchTerm = filters.caseSensitive ? searchTerm : searchTerm.toLowerCase(); let name = filters.ignoreDiacritics ? removeDiacritics(word.name) : word.name; name = filters.caseSensitive ? name : name.toLowerCase(); - let simpleDefinition = filters.ignoreDiacritics ? removeDiacritics(word.simpleDefinition) : word.simpleDefinition; - simpleDefinition = filters.caseSensitive ? simpleDefinition : simpleDefinition.toLowerCase(); - let longDefinition = filters.ignoreDiacritics ? removeDiacritics(word.longDefinition) : word.longDefinition; - longDefinition = filters.caseSensitive ? longDefinition : longDefinition.toLowerCase(); + let definition = filters.ignoreDiacritics ? removeDiacritics(word.definition) : word.definition; + definition = filters.caseSensitive ? definition : definition.toLowerCase(); + let details = filters.ignoreDiacritics ? removeDiacritics(word.details) : word.details; + details = filters.caseSensitive ? details : details.toLowerCase(); const isInName = filters.name && (filters.exact ? searchTerm == name : new RegExp(searchTerm, 'g').test(name)); const isInDefinition = filters.definition && (filters.exact - ? searchTerm == simpleDefinition - : new RegExp(searchTerm, 'g').test(simpleDefinition)); - const isInDetails = filters.details && new RegExp(searchTerm, 'g').test(longDefinition); + ? searchTerm == definition + : new RegExp(searchTerm, 'g').test(definition)); + const isInDetails = filters.details && new RegExp(searchTerm, 'g').test(details); return searchTerm === '' || isInName || isInDefinition || isInDetails; }); return matchingWords; @@ -82,21 +82,21 @@ export function highlightSearchTerm(word) { }); } if (filters.definition) { - const simpleDefinitionMatches = getIndicesOf(searchTerm, removeDiacritics(markedUpWord.simpleDefinition), filters.caseSensitive); - simpleDefinitionMatches.forEach((wordIndex, i) => { + const definitionMatches = getIndicesOf(searchTerm, removeDiacritics(markedUpWord.definition), filters.caseSensitive); + definitionMatches.forEach((wordIndex, i) => { wordIndex += ''.length * i; - markedUpWord.simpleDefinition = markedUpWord.simpleDefinition.substring(0, wordIndex) - + '' + markedUpWord.simpleDefinition.substr(wordIndex, searchTermLength) + '' - + markedUpWord.simpleDefinition.substr(wordIndex + searchTermLength); + markedUpWord.definition = markedUpWord.definition.substring(0, wordIndex) + + '' + markedUpWord.definition.substr(wordIndex, searchTermLength) + '' + + markedUpWord.definition.substr(wordIndex + searchTermLength); }); } if (filters.details) { - const longDefinitionMatches = getIndicesOf(searchTerm, removeDiacritics(markedUpWord.longDefinition), filters.caseSensitive); - longDefinitionMatches.forEach((wordIndex, i) => { + const detailsMatches = getIndicesOf(searchTerm, removeDiacritics(markedUpWord.details), filters.caseSensitive); + detailsMatches.forEach((wordIndex, i) => { wordIndex += ''.length * i; - markedUpWord.longDefinition = markedUpWord.longDefinition.substring(0, wordIndex) - + '' + markedUpWord.longDefinition.substr(wordIndex, searchTermLength) + '' - + markedUpWord.longDefinition.substr(wordIndex + searchTermLength); + markedUpWord.details = markedUpWord.details.substring(0, wordIndex) + + '' + markedUpWord.details.substr(wordIndex, searchTermLength) + '' + + markedUpWord.details.substr(wordIndex + searchTermLength); }); } } else { @@ -105,10 +105,10 @@ export function highlightSearchTerm(word) { markedUpWord.name = markedUpWord.name.replace(new RegExp(`(${searchTerm})`, regexMethod), `$1`); } if (filters.definition) { - markedUpWord.simpleDefinition = markedUpWord.simpleDefinition.replace(new RegExp(`(${searchTerm})`, regexMethod), `$1`); + markedUpWord.definition = markedUpWord.definition.replace(new RegExp(`(${searchTerm})`, regexMethod), `$1`); } if (filters.details) { - markedUpWord.longDefinition = markedUpWord.longDefinition.replace(new RegExp(`(${searchTerm})`, regexMethod), `$1`); + markedUpWord.details = markedUpWord.details.replace(new RegExp(`(${searchTerm})`, regexMethod), `$1`); } } return markedUpWord; diff --git a/src/js/setupListeners.js b/src/js/setupListeners.js index 8f7fc88..8c17c1e 100644 --- a/src/js/setupListeners.js +++ b/src/js/setupListeners.js @@ -156,8 +156,8 @@ function setupWordForm() { name: removeTags(name).trim(), pronunciation: removeTags(pronunciation).trim(), partOfSpeech: removeTags(partOfSpeech).trim(), - simpleDefinition: removeTags(definition).trim(), - longDefinition: removeTags(details).trim(), + definition: removeTags(definition).trim(), + details: removeTags(details).trim(), wordId: getNextId(), }; diff --git a/src/js/utilities.js b/src/js/utilities.js index 80102ac..ba9770e 100644 --- a/src/js/utilities.js +++ b/src/js/utilities.js @@ -123,8 +123,8 @@ export function generateRandomWords(numberOfWords) { name: word, pronunciation: '/' + word + '/', partOfSpeech: Math.random() > 0.5 ? 'Noun' : 'Verb', - simpleDefinition: word, - longDefinition: word + (index > 0 ? '\n\nRef: {{' + words[index - 1] + '}}' : ''), + definition: word, + details: word + (index > 0 ? '\n\nRef: {{' + words[index - 1] + '}}' : ''), wordId: getNextId(), }, false); }); diff --git a/src/js/wordManagement.js b/src/js/wordManagement.js index e7951c7..700744c 100644 --- a/src/js/wordManagement.js +++ b/src/js/wordManagement.js @@ -12,7 +12,7 @@ export function validateWord(word, wordId = false) { if (word.name === '') { errorMessage += '

Word field must not be blank.

'; } - if (word.simpleDefinition === '' && word.longDefinition === '') { + if (word.definition === '' && word.details === '') { errorMessage += '

You must enter Definition or Details.

'; } @@ -32,7 +32,7 @@ export function validateWord(word, wordId = false) { export function sortWords(render) { const { sortByDefinition } = window.currentDictionary.settings; - const sortBy = sortByDefinition ? 'simpleDefinition' : 'name'; + const sortBy = sortByDefinition ? 'definition' : 'name'; window.currentDictionary.words.sort((wordA, wordB) => { if (removeDiacritics(wordA[sortBy]).toLowerCase() === removeDiacritics(wordB[sortBy]).toLowerCase()) return 0; @@ -87,8 +87,8 @@ export function confirmEditWord() { name: removeTags(name).trim(), pronunciation: removeTags(pronunciation).trim(), partOfSpeech: removeTags(partOfSpeech).trim(), - simpleDefinition: removeTags(definition).trim(), - longDefinition: removeTags(details).trim(), + definition: removeTags(definition).trim(), + details: removeTags(details).trim(), wordId, };