package sqlite

const (
	queryPackageModulesCount     = `update packages set modules = $2 where id = $1;`
	queryPackagesModulesCreate   = `insert into packages_modules as pm (package, module) values ($1, $2) on conflict (package,module) do nothing;`
	queryPackagesUpdateLastCheck = `update packages set last_check = CURRENT_TIMESTAMP where id = $1;`
	queryPackagesModules         = `select modules.id, modules.name, modules.version from modules left join packages_modules on modules.id = packages_modules.module left join packages on packages.id = packages_modules.package where packages_modules.package = $1;`
	queryPackagesProcess         = `select id, name, url, comments, modules, issues, created, updated, last_check from packages where ROUND((JULIANDAY(CURRENT_TIMESTAMP) - JULIANDAY(last_check)) * 86400) > $1 or last_check is NULL`
	queryModulesProcess          = `select id, name, version, last_check from modules where ROUND((JULIANDAY(CURRENT_TIMESTAMP) - JULIANDAY(last_check)) * 86400) > $1 or last_check is NULL`
	queryPackagesModulesCount    = `update packages set modules = $2, last_check = CURRENT_TIMESTAMP where id = $1;`
	queryPackagesList            = `select id, name, url, comments, modules, issues, created, updated from packages;`
	queryPackagesLookup          = `select id, name, url, comments, modules, issues, created, updated from packages where id = $1;`
	queryCommentsCreate          = `insert into comments (comment) values ($1) returning id;`
	queryPackagesCreate          = `insert into packages as p (name, url) values ($1, $2) on conflict (url) do update set name = p.name returning *;`
	queryModulesList             = `select id, name, version from modules;`
	queryModulesCreate           = `insert into modules as m (name, version) values ($1, $2) on conflict (name,version) do update set last_check = CURRENT_TIMESTAMP returning *;`
	queryCommentsList            = `select id, text, created, updated from comments where package = $1;`
	queryHandlersList            = `select id, name, coverage from handlers where package = $1;`
)
