todaysPrompt... refactored

This commit is contained in:
Andrzej Stepien 2023-08-12 12:41:36 +02:00
parent 700bacc4a4
commit 0c92bffa87
2 changed files with 27 additions and 10 deletions

View File

@ -3,7 +3,7 @@ import createNote from "./firefish-calls/createNote.mjs"
import makeText from "./makeText.mjs" import makeText from "./makeText.mjs"
import insertPublished from "./database-calls/insertPublished.mjs" import insertPublished from "./database-calls/insertPublished.mjs"
import logger from "./logger.mjs" import logger from "./logger.mjs"
import todaysPromptAlreadyPublished from "./database-calls/todaysPromptAlreadyPublished.mjs" import {todaysPromptAlreadyPublished} from "./database-calls/db.mjs"
export default async function checkAndPublish () { export default async function checkAndPublish () {

View File

@ -1,5 +1,6 @@
import Knex from 'knex' import Knex from 'knex'
import logger from '../logger.mjs' import logger from '../logger.mjs'
import { isoDate } from "../utilities.mjs"
export const db = Knex({ export const db = Knex({
client: 'sqlite3', // or 'better-sqlite3' client: 'sqlite3', // or 'better-sqlite3'
@ -7,13 +8,29 @@ export const db = Knex({
filename: "data/database" filename: "data/database"
}, },
useNullAsDefault: true useNullAsDefault: true
}) })
export const getWords = async (db) => { export const getWords = async () => {
const childLogger = logger.child({db}) const childLogger = logger.child({ db })
childLogger.trace("getWords called") childLogger.trace("getWords called")
return db return db
.select("word") .select("word")
.from("dictionary") .from("dictionary")
} }
export const valueExistsInTable = async (table,column,value) =>{
const number = await db(table)
.count('* as count')
.where(column, value)
.catch(error => { throw error })
return number[0].count > 0
}
export const todaysPromptAlreadyPublished = async () => {
return valueExistsInTable('published','date',isoDate())
}
export const wordIsAlreadyInBuffer = async (word) => {
return valueExistsInTable('buffer','word',word)
}