Uploading of articles.

This commit is contained in:
Matjaz
2022-01-10 22:53:06 +01:00
parent e52d5652c5
commit fb344d9939
3 changed files with 23 additions and 3 deletions

View File

@ -11,6 +11,6 @@ const gemini = new uplinkGemini.Gemini();
gemini.router.use('/', index);
gemini.router.use('/articles/', articles);
gemini.router.use('/articles/:item', articles_item);
gemini.router.use('/admin', admin);
gemini.router.use('/admin/', admin);
gemini.listen();

View File

@ -1,6 +1,26 @@
var fs = require('fs');
/* GET home page. */
function admin(req, res) {
res.send(`20 text/gemini\r\n\r\nHello Admin\r\n\r\n=> /articles/ 📓Articles\r\n=> / 🏡Home\r\n`)
if(req.protocol == 'titan:') {
console.log(req.content.toString());
var title = '';
var lines = req.content.toString().split('\n');
for(var i = 0; i < lines.length; i++) {
if(lines[i].startsWith('# ')) {
title = lines[i].replace('# ', '').trim().replace(/ /g, '-').toLowerCase().replace(/č/g,'c').replace(/š/g, 's').replace(/ž/g, 'z') + '.gmi';
console.log(title);
break;
}
}
try {
fs.writeFileSync('articles/' + title, req.content.toString());
} catch (error) {
res.error(51);
return;
}
}
res.send(`20 text/gemini\r\n\r\nHello Admin\r\n\r\n=> titan://localhost/admin/ Upload new article\r\n\r\n=> /articles/ 📓Articles\r\n=> / 🏡Home\r\n`)
}
module.exports = admin;

View File

@ -2,7 +2,7 @@
function index(request, response) {
var adminBlock = "";
if(request.clientCert.fingerprint == '96:19:A6:91:57:AF:E2:D3:E0:80:FC:35:4E:BD:2A:46:C9:2D:CB:53') {
adminBlock = '## Administration\r\n=> /admin Administration';
adminBlock = '## Administration\r\n=> /admin/ Administration';
}
response.send(`20 text/gemini\r\n
\`\`\` Uplink:SI Logo