individual page treats data as "lexicon" object

This commit is contained in:
Angela Quinton 2023-03-13 00:01:10 -04:00
parent e8c1461e63
commit f965ee2507

29
app.js
View file

@ -14,11 +14,21 @@ app.set('views', './src/views')
app.use(express.static('dist')) app.use(express.static('dist'))
const siteName = "Pronoun Site" const siteName = "Pronoun Monster"
function constructLexicon(nominative, accusative, pronominalPossessive, predicativePossessive, reflexive) {
return {
nominative: { name: "Nominative", value: nominative},
accusative: { name: "Accusative", value: accusative},
pronominalPossessive: { name: "Pronominal Possessive", value: pronominalPossessive},
predicativePossessive: { name: "Predicative Possessive", value: predicativePossessive},
reflexive: { name: "Reflexive", value: reflexive}
}
}
app.get('/', (req, res) => { app.get('/', (req, res) => {
const pageTitle = siteName; const pageTitle = siteName;
res.render('home', { siteName, pageTitle } ) res.render('home', { siteName, pageTitle, data } )
}) })
app.get('/:nominative/:accusative/:predicative_possessive/:reflexive', (req, res) => { app.get('/:nominative/:accusative/:predicative_possessive/:reflexive', (req, res) => {
@ -28,9 +38,11 @@ app.get('/:nominative/:accusative/:predicative_possessive/:reflexive', (req, res
predicative_possessive: predicativePossessive, predicative_possessive: predicativePossessive,
reflexive, reflexive,
} = req.params } = req.params
res.render('individual', {
nominative, accusative, pronominalPossessive: accusative, predicativePossessive, reflexive const lexicon = constructLexicon(nominative, accusative, accusative, predicativePossessive, reflexive);
}) const pageTitle = Object.values(lexicon).map(entry => entry.value).join("/") + " - " + siteName;
res.render('individual', { siteName, pageTitle, lexicon })
}) })
app.get('/:nominative/:accusative/:pronominal_possessive/:predicative_possessive/:reflexive', (req, res) => { app.get('/:nominative/:accusative/:pronominal_possessive/:predicative_possessive/:reflexive', (req, res) => {
@ -42,11 +54,10 @@ app.get('/:nominative/:accusative/:pronominal_possessive/:predicative_possessive
reflexive, reflexive,
} = req.params } = req.params
const pageTitle = [nominative, accusative, pronominalPossessive, predicativePossessive, reflexive].join("/") + " - " + siteName; const lexicon = constructLexicon(nominative, accusative, pronominalPossessive, predicativePossessive, reflexive);
const pageTitle = Object.values(lexicon).map(entry => entry.value).join("/") + " - " + siteName;
res.render('individual', { res.render('individual', { siteName, pageTitle, lexicon })
siteName, pageTitle, nominative, accusative, pronominalPossessive, predicativePossessive, reflexive
})
}) })
app.listen(3000) app.listen(3000)