Compare commits

...

2 Commits

Author SHA1 Message Date
82702d786a Merge pull request 'fix random & search' (#24) from dev into master
Reviewed-on: #24
2022-05-06 17:29:53 +02:00
Flummi
155d496592 fix random & search 2022-05-06 17:29:55 +02:00
7 changed files with 19 additions and 17 deletions

View File

@ -1,3 +1,4 @@
import cfg from "../../inc/config.mjs";
import f0cklib from "../routeinc/f0cklib.mjs"; import f0cklib from "../routeinc/f0cklib.mjs";
export default (router, tpl) => { export default (router, tpl) => {
@ -5,8 +6,8 @@ export default (router, tpl) => {
let referer = req.headers.referer ?? ''; let referer = req.headers.referer ?? '';
let opts = {}; let opts = {};
if(referer.match(/f0ck\.me/)) { // parse referer if(referer.match(new RegExp(cfg.main.url.regex))) { // parse referer
referer = referer.split("f0ck.me")[1]; referer = referer.split(cfg.main.url.domain)[1];
const tmp = referer.match(/^\/?(?:\/tag\/(?<tag>.+?))?(?:\/user\/(?<user>.+?)\/(?<mode>f0cks|favs))?(?:\/(?<mime>image|audio|video))?(?:\/p\/(?<page>\d+))?(?:\/(?<itemid>\d+))?$/); const tmp = referer.match(/^\/?(?:\/tag\/(?<tag>.+?))?(?:\/user\/(?<user>.+?)\/(?<mode>f0cks|favs))?(?:\/(?<mime>image|audio|video))?(?:\/p\/(?<page>\d+))?(?:\/(?<itemid>\d+))?$/);
if(tmp) if(tmp)
opts = tmp.groups; opts = tmp.groups;
@ -31,7 +32,7 @@ export default (router, tpl) => {
}); });
} }
res.redirect(`/${data.link}${data.link.length != 0 ? "/" : ""}${data.itemid}`); res.redirect(`${data.link.main}${data.link.path}${data.itemid}`);
}); });
return router; return router;
}; };

View File

@ -18,7 +18,7 @@ export default (router, tpl) => {
select count(*) as total select count(*) as total
from "items" from "items"
where src ilike ${'%' + tag.substring(4) + '%'} where src ilike ${'%' + tag.substring(4) + '%'}
group by "items".id, "tags".tag group by "items".id
`).length; `).length;
} }
else { else {
@ -41,7 +41,8 @@ export default (router, tpl) => {
select * select *
from "items" from "items"
where src ilike ${'%' + tag.substring(4) + '%'} where src ilike ${'%' + tag.substring(4) + '%'}
group by "items".id, "tags".tag group by "items".id
order by "items".id desc
offset ${offset} offset ${offset}
limit ${_eps} limit ${_eps}
`; `;

View File

@ -25,7 +25,7 @@ export default async bot => {
return e.reply("no f0cks given! lol D:"); return e.reply("no f0cks given! lol D:");
e.reply([ e.reply([
`${cfg.main.url}/${rows[0].id}`, `${cfg.main.url.full}/${rows[0].id}`,
`user: ${rows[0].username} @ ${rows[0].usernetwork} ${rows[0].userchannel}`, `user: ${rows[0].username} @ ${rows[0].usernetwork} ${rows[0].userchannel}`,
`~${lib.formatSize(rows[0].size)}`, `~${lib.formatSize(rows[0].size)}`,
rows[0].mime, rows[0].mime,

View File

@ -24,7 +24,7 @@ export default async bot => {
if(rows.length === 0) if(rows.length === 0)
return e.reply("nothing found, f0cker"); return e.reply("nothing found, f0cker");
return e.reply(`f0ckrnd: ${cfg.main.url}/${rows[0].id} by: ${rows[0].username} (${rows[0].mime}, ~${lib.formatSize(rows[0].size)})`); return e.reply(`f0ckrnd: ${cfg.main.url.full}/${rows[0].id} by: ${rows[0].username} (${rows[0].mime}, ~${lib.formatSize(rows[0].size)})`);
} }
}]; }];
}; };

View File

@ -51,7 +51,7 @@ export default async bot => {
where src = ${link} where src = ${link}
`; `;
if(q_repost.length > 0) if(q_repost.length > 0)
return e.reply(`repost motherf0cker (link): ${cfg.main.url}/${q_repost[0].id}`); return e.reply(`repost motherf0cker (link): ${cfg.main.url.full}/${q_repost[0].id}`);
// generate uuid // generate uuid
const uuid = (await db` const uuid = (await db`
@ -120,7 +120,7 @@ export default async bot => {
where checksum = ${checksum} where checksum = ${checksum}
`; `;
if(q_repostc.length > 0) if(q_repostc.length > 0)
return e.reply(`repost motherf0cker (checksum): ${cfg.main.url}/${q_repostc[0].id}`); return e.reply(`repost motherf0cker (checksum): ${cfg.main.url.full}/${q_repostc[0].id}`);
await fs.promises.copyFile(`./tmp/${filename}`, `./public/b/${filename}`); await fs.promises.copyFile(`./tmp/${filename}`, `./public/b/${filename}`);
await fs.promises.unlink(`./tmp/${filename}`).catch(_=>{}); await fs.promises.unlink(`./tmp/${filename}`).catch(_=>{});
@ -241,7 +241,7 @@ export default async bot => {
} }
e.reply([ e.reply([
`[f0cked] link: ${cfg.main.url}/${itemid} | size: ${lib.formatSize(size)} | speed: ${speed}` + (tags.length > 0 ? ` | tags: ${tags.join(', ')}` : '') `[f0cked] link: ${cfg.main.url.full}/${itemid} | size: ${lib.formatSize(size)} | speed: ${speed}` + (tags.length > 0 ? ` | tags: ${tags.join(', ')}` : '')
]); ]);
}); });

View File

@ -15,8 +15,8 @@ export default async bot => {
return e.reply("lol no"); return e.reply("lol no");
const tags = (await lib.getTags(id)).map(t => t.tag); const tags = (await lib.getTags(id)).map(t => t.tag);
if(tags.length === 0) if(tags.length === 0)
return e.reply(`item ${cfg.main.url}/${id} has no tags!`); return e.reply(`item ${cfg.main.url.full}/${id} has no tags!`);
return e.reply(`item ${cfg.main.url}/${id} is tagged as: ${tags.join(', ')}`); return e.reply(`item ${cfg.main.url.full}/${id} is tagged as: ${tags.join(', ')}`);
} }
}, { }, {
name: "tags add", name: "tags add",
@ -73,8 +73,8 @@ export default async bot => {
const ntags = (await lib.getTags(id)).map(t => t.tag); const ntags = (await lib.getTags(id)).map(t => t.tag);
if(ntags.length === 0) if(ntags.length === 0)
return e.reply(`item ${cfg.main.url}/${id} has no tags!`); return e.reply(`item ${cfg.main.url.full}/${id} has no tags!`);
return e.reply(`item ${cfg.main.url}/${id} is now tagged as: ${ntags.join(', ')}`); return e.reply(`item ${cfg.main.url.full}/${id} is now tagged as: ${ntags.join(', ')}`);
} }
}, { }, {
name: "tags remove", name: "tags remove",
@ -126,8 +126,8 @@ export default async bot => {
const ntags = (await lib.getTags(id)).map(t => t.tag); const ntags = (await lib.getTags(id)).map(t => t.tag);
if(ntags.length === 0) if(ntags.length === 0)
return e.reply(`item ${cfg.main.url}/${id} has no tags!`); return e.reply(`item ${cfg.main.url.full}/${id} has no tags!`);
return e.reply(`item ${cfg.main.url}/${id} is now tagged as: ${ntags.join(', ')}`); return e.reply(`item ${cfg.main.url.full}/${id} is now tagged as: ${ntags.join(', ')}`);
} }
}] }]
}; };

View File

@ -25,7 +25,7 @@
<td><a href="/tag/{!! line.tag !!}">{!! line.tag !!}</a></td> <td><a href="/tag/{!! line.tag !!}">{!! line.tag !!}</a></td>
<td>{{ line.mime }}</td> <td>{{ line.mime }}</td>
<td><a href="/user/{!! line.username !!}/f0cks/{{ line.id }}">{!! line.username !!}</a></td> <td><a href="/user/{!! line.username !!}/f0cks/{{ line.id }}">{!! line.username !!}</a></td>
<td>{{ line.score.toFixed(2) }}</td> <td>{{ line.score?.toFixed(2) }}</td>
</tr> </tr>
@endeach @endeach
</tbody> </tbody>