mirror of
https://gitea.smigz.com/smiggiddy/odin-codeprojects.git
synced 2025-06-28 04:45:36 -04:00
trying stuff out
This commit is contained in:
parent
245597c494
commit
4be0ea5870
9 changed files with 50 additions and 37 deletions
|
@ -1,8 +1,7 @@
|
|||
const fs = require("node:fs");
|
||||
const { logging } = require("./middlewares/logging");
|
||||
const path = require("node:path");
|
||||
const express = require("express");
|
||||
const passport = require("passport");
|
||||
const passport = require("./middlewares/auth");
|
||||
const session = require("express-session");
|
||||
const SQLiteStore = require("connect-sqlite3")(session);
|
||||
|
||||
|
@ -17,25 +16,24 @@ app.use(express.static(assetsPath));
|
|||
|
||||
app.set("views", path.join(__dirname, "views"));
|
||||
app.set("view engine", "ejs");
|
||||
|
||||
app.use(
|
||||
session({
|
||||
store: new SQLiteStore({ dir: "./src/db/", db: "keynotes.db" }),
|
||||
secret: "keynotes.app",
|
||||
cookie: { maxAge: 7 * 24 * 60 * 60 * 1000 },
|
||||
secret: "keynotes",
|
||||
cookie: { maxAge: 7 * 24 * 60 * 60 * 1000, sameSite: "strict" },
|
||||
saveUninitialized: false,
|
||||
resave: false,
|
||||
}),
|
||||
);
|
||||
|
||||
app.use(passport.session());
|
||||
// app.use(passport.session());
|
||||
app.use(passport.authenticate("session"));
|
||||
app.use(express.urlencoded({ extended: false }));
|
||||
app.use(logging);
|
||||
app.use((req, res, next) => {
|
||||
res.locals.currentUser = req.user;
|
||||
next();
|
||||
});
|
||||
|
||||
app.use("/", indexRouter);
|
||||
app.use("/auth", authRouter);
|
||||
|
||||
|
|
|
@ -3,6 +3,11 @@ const db = require("../models/query");
|
|||
const { validationResult } = require("express-validator");
|
||||
|
||||
function loginGet(req, res, next) {
|
||||
console.log(req.user, req.session.cookie);
|
||||
console.table(req.session);
|
||||
if (!req.user && req.session.id) {
|
||||
req.session.id = null;
|
||||
}
|
||||
res.render("login", {
|
||||
pageTitle: "InspiredCliches | Login",
|
||||
errors: req.session.messages,
|
||||
|
@ -10,6 +15,7 @@ function loginGet(req, res, next) {
|
|||
}
|
||||
|
||||
function logOut(req, res, next) {
|
||||
res.clearCookie("connect.sid", { path: "/" });
|
||||
req.logout((err) => {
|
||||
if (err) return next(err);
|
||||
});
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
const db = require("../models/query");
|
||||
|
||||
function indexGet(req, res, next) {
|
||||
function indexGet(req, res) {
|
||||
if (res.locals.currentUser) {
|
||||
const keynotes = db.getEveryNote();
|
||||
const userLikedPosts = db.getLikesByUser(res.locals.currentUser.user_id);
|
||||
|
||||
res.render("feed", {
|
||||
return res.render("feed", {
|
||||
pageTitle: "InspiredCliches | Feed",
|
||||
keynotes: keynotes,
|
||||
userLikedPosts: userLikedPosts,
|
||||
|
@ -14,7 +14,7 @@ function indexGet(req, res, next) {
|
|||
res.render("home", { pageTitle: "InspiredCliches" });
|
||||
}
|
||||
|
||||
function addLike(req, res, next) {
|
||||
function addLike(req, res) {
|
||||
const { noteId } = req.query;
|
||||
|
||||
const noteExits = noteId ? db.getNoteById(noteId) : null;
|
||||
|
@ -30,15 +30,14 @@ function addLike(req, res, next) {
|
|||
res.redirect("/");
|
||||
}
|
||||
|
||||
function addNotePost(req, res, next) {
|
||||
function addNotePost(req, res) {
|
||||
const { message, media } = req.body;
|
||||
console.log("add note post");
|
||||
|
||||
if (res.locals.currentUser) {
|
||||
const userId = res.locals.currentUser.user_id;
|
||||
|
||||
db.putNewNote({ message: message, media: null, userId: userId });
|
||||
}
|
||||
|
||||
res.redirect("/");
|
||||
}
|
||||
|
||||
|
@ -55,11 +54,14 @@ function deleteNote(req, res) {
|
|||
}
|
||||
}
|
||||
|
||||
function addNoteGet(req, res, next) {
|
||||
res.render("note-form", { pageTitle: "InspiredCliches | New Note" });
|
||||
function addNoteGet(req, res) {
|
||||
if (res.locals.currentUser)
|
||||
return res.render("note-form", { pageTitle: "InspiredCliches | New Note" });
|
||||
|
||||
res.redirect("/");
|
||||
}
|
||||
|
||||
function getProfile(req, res, next) {
|
||||
function getProfile(req, res) {
|
||||
const { userId } = req.query;
|
||||
|
||||
const userExists = userId ? db.getUserById(userId) : null;
|
||||
|
|
|
@ -1,24 +1,15 @@
|
|||
const { Database } = require("bun:sqlite");
|
||||
const fs = require("node:fs");
|
||||
const path = require("node:path");
|
||||
const { mkdir } = require("node:fs/promises");
|
||||
const { stat } = require("node:fs");
|
||||
|
||||
const dbDirPath = path.join(path.dirname(__dirname), "/db");
|
||||
const dbDirPath = path.join(path.dirname(__dirname), "db");
|
||||
const dbPath = path.join(dbDirPath, "/keynotes.db");
|
||||
|
||||
async function makeDirectory(path) {
|
||||
const dirCreation = await mkdir(path);
|
||||
return dirCreation;
|
||||
if (!fs.existsSync(dbDirPath)) {
|
||||
fs.mkdirSync(dbDirPath);
|
||||
console.log(`Created DB Directory at ${dbDirPath}`);
|
||||
}
|
||||
|
||||
// Make sure DB path exists
|
||||
stat(dbDirPath, (err, stats) => {
|
||||
if (err !== null) {
|
||||
makeDirectory(dbDirPath);
|
||||
}
|
||||
});
|
||||
|
||||
const db = new Database(dbPath);
|
||||
// Enable WAL Mode
|
||||
db.exec("PRAGMA journal_mode = WAL;");
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
const db = require("./db");
|
||||
console.log(`${db.filename} test`);
|
||||
|
||||
function getEveryNote() {
|
||||
try {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue