multi-account-post-schedule.../routes/index.js
2022-07-07 18:23:44 +02:00

89 lines
2.0 KiB
JavaScript

var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
// publier un message avec un certain compte
router.get('/publish', function(req, res, next) {
res.render('index', { title: 'Express' });
});
var sqlite3 = require('sqlite3');
function createDatabase() {
var newdb = new sqlite3.Database('masto_posts.db', (err) => {
if (err) {
console.log("create DB - Getting error " + err);
exit(1);
}
createTables(newdb);
});
}
function createTables(newdb) {
newdb.exec(`
create table posts_scheduled (
action_id int primary key not null,
post_username text not null,
content text not null,
medias text,
date_schedule datetime
);
`, () => {
getAllPosts(newdb);
});
}
function getAllPosts(db) {
db.all(`
select * from posts_scheduled p
orderyby p.action_id desc`, "les posts", (err, rows) => {
if(rows){
rows.forEach(row => {
console.log(row.post_username + "\t" +
row.content + "\t" +
row.medias);
});
}else{
console.log('no rows')
}
});
}
router.get('/init-db', function(req, res, next) {
createDatabase()
res.render('database', {});
});
router.get('/list', function(req, res, next) {
var db = new sqlite3.Database('../masto_posts.db', sqlite3.OPEN_READWRITE, (err) => {
if (err && err.code == "SQLITE_CANTOPEN") {
createDatabase();
return;
} else if (err) {
console.log("Getting error " + err);
exit(1);
}
// runQueries(db);
});
let posts_list = []
getAllPosts(db)
res.render('database', {posts_list: posts_list});
});
// publier le message en db dans la file
router.get('/publish-last-entry', function(req, res, next) {
res.render('index', { title: 'Express' });
});
module.exports = router;