This is the code that runs https://bandolier.learnjsthehardway.com/ for you to review. It uses the https://git.learnjsthehardway.com/learn-javascript-the-hard-way/bandolier-template to create the documentation for the project.
https://bandolier.learnjsthehardway.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
708 B
27 lines
708 B
import logging from "../lib/logging.js";
|
|
import assert from "assert";
|
|
import { API } from "../lib/api.js";
|
|
import { knex } from "../lib/ormish.js";
|
|
|
|
const log = logging.create(import.meta.url);
|
|
|
|
export const get = async (req, res) => {
|
|
const api = new API(req, res);
|
|
const { media_id } = req.query;
|
|
|
|
try {
|
|
if(media_id) {
|
|
const media = await knex("media").where({id: media_id});
|
|
|
|
api.reply(200, media);
|
|
} else {
|
|
const media = await knex("media").whereNotNull("title").orderBy("id", "desc").orderBy("created_at", "desc");
|
|
api.reply(200, media);
|
|
}
|
|
} catch (error) {
|
|
log.error(error);
|
|
api.error(500, "Internal Server Error");
|
|
}
|
|
}
|
|
|
|
get.authenticated = false;
|
|
|