aktueller Stand lol

This commit is contained in:
Flummi
2021-05-15 13:58:24 +02:00
parent 4f35261e66
commit 964391f384
12 changed files with 529 additions and 28 deletions

View File

@ -96,9 +96,9 @@ router.get(/^\/api\/v2\/item\/[0-9]+$/, async (req, res) => {
}
});
router.get(/^\/api\/v2\/user\/.*(\/[0-9]+)?$/, async (req, res) => { // auf qs umstellen
router.get(/^\/api\/v2\/user\/.*(\/\d+)?$/, async (req, res) => { // auf qs umstellen
const user = req.url.split[3];
const eps = Math.min(req.url.split[4] || 50, 50);
const eps = +req.url.split[4] || 50;
try {
const rows = await sql.query(queries.user, [ user, eps ]);
res.reply({

View File

@ -14,5 +14,5 @@ export const queries = {
+ "(select id from items where id = (select max(id) from items where id < ?)) as prev "
+ "from items where items.id = ? limit 1",
p: (trend, order) => `select id, mime from items where id ${trend} ? order by id ${order} limit ?`,
user: "select id, mime, size, src, stamp, userchannel, username, usernetwork from items where username = ? limit ?"
user: "select id, mime, size, src, stamp, userchannel, username, usernetwork from items where username = ? order by stamp desc limit ?"
};

View File

@ -9,10 +9,12 @@ import tpl from "../tpl.mjs";
tpl.readdir("views");
//router.get(/^\/(audio\/?|image\/?|video\/?|user\/?)?(p\/\d+)?$/, async (req, res) => {
router.get(/^\/(audio\/?|image\/?|video\/?)?(p\/\d+)?$/, async (req, res) => {
try {
let mime = false;
let q = false;
//if(req.url.split[0] == "user")
if(['audio', 'image', 'video'].includes(req.url.split[0])) {
mime = req.url.split[0];
q = " where " + (mimes[mime] ? mimes[mime].map(_mime => `mime = "${_mime}"`).join(" or ") : null);
@ -89,6 +91,9 @@ router.get(/^\/((audio\/|video\/|image\/)?[0-9]+)$/, async (req, res) => {
const next = qnext[qnext.length - 1] ? qnext[qnext.length - 1].id : false;
const prev = qprev[0] ? qprev[0].id : false;
for(let t = 0; t < tags.length; t++)
tags[t].tag = tags[t].tag.replace(/[\u00A0-\u9999<>\&]/g, i => '&#'+i.charCodeAt(0)+';');
const data = {
user: {
name: query.username,

View File

@ -1,4 +1,38 @@
import mariadb from "mariadb";
import cfg from "../../config.json";
export default mariadb.createPool(cfg.sql);//.getConnection();
const sql = mariadb.createPool(cfg.sql);
export default sql;
//export default sql = mariadb.createPool(cfg.sql);//.getConnection();
/*const allowedMimes = [ "audio", "video", "image", "%" ];
const allowedColumns = [ "id", "mime", "size", "username", "userchannel", "usernetwork", "stamp", "dest", "src" ];
export const getItems = async ({
select = [],
user = "%",
mime = "%",
orderby = "stamp",
order = "desc",
offset = 0,
limit = 5
}) => {
select = (select.length === 0 ? allowedColumns : select).join(", ");
order = !["asc", "desc"].includes(order) ? "asc" : order;
offset = +offset;
limit = +limit;
mime = allowedMimes.filter(n => mime.startsWith(n))[0] ? mime : "%";
const query =
`select
${select}
from
items
where
username like ? and
mime like ?
order by ${orderby} ${order}
limit ?, ?
`;
return await sql.query(query, [ user, mime, offset, limit ]);
};*/

View File

@ -3,7 +3,7 @@ import sql from "../sql.mjs";
import lib from "../lib.mjs";
const _query = "select id, mime, size, username, userchannel, usernetwork, stamp from items where ";
const regex = /(https\:\/\/f0ck\.me|http\:\/\/fockmoonsb24iczs7odozzy5uktlzbcgp337nabrgffzxv5ihabgpvyd\.onion)\/(\d+|(?:b\/)(\w{8})\.(jpg|webm|gif|mp4|png|mov|mp3|ogg|flac))/gi;
const regex = /(https\:\/\/f0ck\.me|http\:\/\/fockmoonsb24iczs7odozzy5uktlzbcgp337nabrgffzxv5ihabgpvyd\.onion)(\/(video|image|audio))?\/(\d+|(?:b\/)(\w{8})\.(jpg|webm|gif|mp4|png|mov|mp3|ogg|flac))/gi;
export default async bot => {

View File

@ -51,7 +51,7 @@ export default async bot => {
//meta = JSON.parse((await exec(`youtube-dl -f "bestvideo[ext=mp4,filesize<${maxfilesize}k]+bestaudio/best" --skip-download --dump-json "${link}"`)).stdout);
}
catch(err) {
e.reply("(╯° °)╯︵ ┻━┻)");
//e.reply("(╯° °)╯︵ ┻━┻)");
console.error(err);
return;
}